[PATCH] gnu: Add python-sphinx-autodoc-typehints.

  • Done
  • quality assurance status badge
Details
3 participants
  • Efraim Flashner
  • Jelle Licht
  • sirgazil
Owner
unassigned
Submitted by
sirgazil
Severity
normal
S
S
sirgazil wrote on 12 Feb 2020 01:14
(address . guix-patches@gnu.org)(name . sirgazil)(address . sirgazil@zoho.com)
20200212001420.24513-1-sirgazil@zoho.com
* gnu/packages/sphinx.scm (python-sphinx-autodoc-typehints): New variable.
---
gnu/packages/sphinx.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
index 4e4abccb04..41bde173c3 100644
--- a/gnu/packages/sphinx.scm
+++ b/gnu/packages/sphinx.scm
@@ -13,6 +13,7 @@
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2019 Alexandros Theodotou <alex@zrythm.org>
;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
+;;; Copyright © 2020 sirgazil <sirgazil@zoho.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -597,3 +598,27 @@ to be able to read and render the Doxygen xml output.")
"A utility tool that provides several features that make it easy to
translate and to apply translation to Sphinx generated document.")
(license license:bsd-2)))
+
+(define-public python-sphinx-autodoc-typehints
+ (package
+ (name "python-sphinx-autodoc-typehints")
+ (version "1.10.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "sphinx-autodoc-typehints" version))
+ (sha256
+ (base32
+ "1w6zy3cyp24jsdi8dcynrinafw2a0k5vblqy9lncm6j7cw0iicx6"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-setuptools-scm" ,python-setuptools-scm)))
+ (propagated-inputs
+ `(("python-sphinx" ,python-sphinx)))
+ (home-page "https://github.com/agronholm/sphinx-autodoc-typehints")
+ (synopsis "Type hints support for the Sphinx autodoc extension")
+ (description
+ "This extension allows you to use Python 3 annotations for
+documenting acceptable argument types and return value types of
+functions.")
+ (license license:expat)))
--
2.25.0
E
E
Efraim Flashner wrote on 12 Feb 2020 08:48
(name . sirgazil)(address . sirgazil@zoho.com)(address . 39572@debbugs.gnu.org)
20200212074827.GE26092@E5400
Overall the package looks good. I ran into an issue with the tests,
namely that they weren't run. (This is becoming a common issue with our
python packages as they change how the test suite is run)

On Tue, Feb 11, 2020 at 07:14:20PM -0500, sirgazil via Guix-patches via wrote:
Toggle quote (35 lines)
> * gnu/packages/sphinx.scm (python-sphinx-autodoc-typehints): New variable.
> ---
> gnu/packages/sphinx.scm | 25 +++++++++++++++++++++++++
> 1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
> index 4e4abccb04..41bde173c3 100644
> --- a/gnu/packages/sphinx.scm
> +++ b/gnu/packages/sphinx.scm
> @@ -13,6 +13,7 @@
> ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
> ;;; Copyright © 2019 Alexandros Theodotou <alex@zrythm.org>
> ;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
> +;;; Copyright © 2020 sirgazil <sirgazil@zoho.com>
> ;;;
> ;;; This file is part of GNU Guix.
> ;;;
> @@ -597,3 +598,27 @@ to be able to read and render the Doxygen xml output.")
> "A utility tool that provides several features that make it easy to
> translate and to apply translation to Sphinx generated document.")
> (license license:bsd-2)))
> +
> +(define-public python-sphinx-autodoc-typehints
> + (package
> + (name "python-sphinx-autodoc-typehints")
> + (version "1.10.3")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (pypi-uri "sphinx-autodoc-typehints" version))
> + (sha256
> + (base32
> + "1w6zy3cyp24jsdi8dcynrinafw2a0k5vblqy9lncm6j7cw0iicx6"))))
> + (build-system python-build-system)

I added the following snippet here to run the tests:

(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
(invoke "pytest"))))))

And added python-pytest to the native-inputs but it turns out that
wasn't enough:

starting phase `check'
ImportError while loading conftest '/tmp/guix-build-python-sphinx-autodoc-typehints-1.10.3.drv-0/sphinx-autodoc-typehints-1.10.3/tests/conftest.py'.
tests/conftest.py:8: in <module>
from sphobjinv import Inventory
E ModuleNotFoundError: No module named 'sphobjinv'
command "pytest" failed with status 4

According to here¹ there are a couple of other dependencies that are
needed to run the tests, including sphobjinv which isn't packaged yet.

Toggle quote (15 lines)
> + (native-inputs
> + `(("python-setuptools-scm" ,python-setuptools-scm)))
> + (propagated-inputs
> + `(("python-sphinx" ,python-sphinx)))
> + (home-page "https://github.com/agronholm/sphinx-autodoc-typehints")
> + (synopsis "Type hints support for the Sphinx autodoc extension")
> + (description
> + "This extension allows you to use Python 3 annotations for
> +documenting acceptable argument types and return value types of
> +functions.")
> + (license license:expat)))
> --
> 2.25.0
>


--
Efraim Flashner <efraim@flashner.co.il> ????? ?????
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAl5DrcgACgkQQarn3Mo9
g1HGexAAnHg/N0Wr/fBA30k2/HJ4f/Mr7Jd0pDi3H/j23wE69UBbGH2I17y4oBIe
s1eq/J8rvncU7VXv2CZMYv2KMBBOlnfRxQ85c7iK1iHXKh3duhG+iFBW2LHmXaWD
47dJ5dtv+rO60zV9yRP44LTyweqPLMnbvxWeJjEJZg3q9fvkCdW+QbTzJ58WTMs0
uObXhcfSgMoQeMo4f4/2VFzmgL70DOcfS6GiInHug0I3SujlJ2Ok8wdVVWH7gBA+
9bbQI+r0DvppJpcrQPJpv4RGGkinNap/Azh9RBzjjqQent/pSew7UFxXvJqVc5of
2ukomCYcECPXHWdGXf0V/85hUmuXAnc27gKOzHtlTuR5a0GxTtl2Afp4RD/Mt7Ve
pKonCFQmiAyrbpwaPRqoaXfOmSPO/8Jf2kvv72YlSmqL+f2pCEezTxThfUg5Bsfk
P7YY4q9P/bmbBpt174FouI/9TnQQ6cDQsJU2atcyWSBjS4Tv5HA+zq3BQ5aF0EA3
RN/ClbPrHAsgN9SXoILNiLKil4Spt6GFhSNHwiMNSJpQjnrziogN3QNhGCI5pa58
uErOtNuyNq6hEuQ6eNMwDfxUkcf7vcXGkAzm/IZ8oMBf7TUBydn64wezkM6Y2GE2
ZfJKaUxum/+sHJ2ikOgJd8tqb0F96d33ds9zrcewNfWXlncW/6M=
=4Ld7
-----END PGP SIGNATURE-----


S
S
sirgazil wrote on 12 Feb 2020 15:28
(name . Efraim Flashner)(address . efraim@flashner.co.il)(name . 39572)(address . 39572@debbugs.gnu.org)
17039ccc811.f87a728432739.1646525153556191072@zoho.com
---- On Wed, 12 Feb 2020 02:48:27 -0500 Efraim Flashner <efraim@flashner.co.il> wrote ----
> Overall the package looks good. I ran into an issue with the tests,
> namely that they weren't run. (This is becoming a common issue with our
> python packages as they change how the test suite is run)
>
> On Tue, Feb 11, 2020 at 07:14:20PM -0500, sirgazil via Guix-patches via wrote:
> > * gnu/packages/sphinx.scm (python-sphinx-autodoc-typehints): New variable.
> > ---
> > gnu/packages/sphinx.scm | 25 +++++++++++++++++++++++++
> > 1 file changed, 25 insertions(+)
> >
> > diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
> > index 4e4abccb04..41bde173c3 100644
> > --- a/gnu/packages/sphinx.scm
> > +++ b/gnu/packages/sphinx.scm
> > @@ -13,6 +13,7 @@
> > ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
> > ;;; Copyright © 2019 Alexandros Theodotou <alex@zrythm.org>
> > ;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
> > +;;; Copyright © 2020 sirgazil <sirgazil@zoho.com>
> > ;;;
> > ;;; This file is part of GNU Guix.
> > ;;;
> > @@ -597,3 +598,27 @@ to be able to read and render the Doxygen xml output.")
> > "A utility tool that provides several features that make it easy to
> > translate and to apply translation to Sphinx generated document.")
> > (license license:bsd-2)))
> > +
> > +(define-public python-sphinx-autodoc-typehints
> > + (package
> > + (name "python-sphinx-autodoc-typehints")
> > + (version "1.10.3")
> > + (source
> > + (origin
> > + (method url-fetch)
> > + (uri (pypi-uri "sphinx-autodoc-typehints" version))
> > + (sha256
> > + (base32
> > + "1w6zy3cyp24jsdi8dcynrinafw2a0k5vblqy9lncm6j7cw0iicx6"))))
> > + (build-system python-build-system)
>
> I added the following snippet here to run the tests:
>
> (arguments
> `(#:phases
> (modify-phases %standard-phases
> (replace 'check
> (lambda _
> (invoke "pytest"))))))
>
> And added python-pytest to the native-inputs but it turns out that
> wasn't enough:
>
> starting phase `check'
> ImportError while loading conftest '/tmp/guix-build-python-sphinx-autodoc-typehints-1.10.3.drv-0/sphinx-autodoc-typehints-1.10.3/tests/conftest.py'.
> tests/conftest.py:8: in <module>
> from sphobjinv import Inventory
> E ModuleNotFoundError: No module named 'sphobjinv'
> command "pytest" failed with status 4
>
> According to here¹ there are a couple of other dependencies that are
> needed to run the tests, including sphobjinv which isn't packaged yet.

Oh, I read "extras_require" as "completely optional". I'll be more careful with that.


> > + (native-inputs
> > + `(("python-setuptools-scm" ,python-setuptools-scm)))
> > + (propagated-inputs
> > + `(("python-sphinx" ,python-sphinx)))
> > + (synopsis "Type hints support for the Sphinx autodoc extension")
> > + (description
> > + "This extension allows you to use Python 3 annotations for
> > +documenting acceptable argument types and return value types of
> > +functions.")
> > + (license license:expat)))
> > --
> > 2.25.0
> >
>
>
> --
> Efraim Flashner <efraim@flashner.co.il> ????? ?????
> GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
> Confidentiality cannot be guaranteed on emails sent or received unencrypted
>


Thank you very much for your review, Efraim. I'll check if I'm able to package whatever is missing.
J
J
Jelle Licht wrote on 20 Jun 2023 23:39
Re: bug#39572: [PATCH] gnu: Add python-sphinx-autodoc-typehints.
(name . 39572)(address . 39572-done@debbugs.gnu.org)
87r0q56cf3.fsf@fsfe.org
We now have python-sphinx-autodoc-typehints@1.18.3 available in guix
master. Closing!
- Jelle
Closed
?