From 7407f0c4965e97ad5896f86033871cccfa1b04a4 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 20 Dec 2021 09:12:31 -0500 Subject: gnu: python-msgpack: Update to 1.0.3. * gnu/packages/python-xyz.scm (python-msgpack): Update to 1.0.3. (python2-msgpack): Delete variable. --- gnu/packages/python-xyz.scm | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 302a81b4f5..86ddf181da 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -10635,13 +10635,13 @@ third-party code.") (define-public python-msgpack (package (name "python-msgpack") - (version "1.0.0") + (version "1.0.3") (source (origin (method url-fetch) (uri (pypi-uri "msgpack" version)) (sha256 (base32 - "1h5mxh84rcw04dvxy1qbfn2hisavfqgilh9k09rgyjhd936dad4m")))) + "07m84yisf8m6gr68ip9v6vzxax7kqbn8qxg7ir18clk1jgxwgzai")))) (build-system python-build-system) (arguments `(#:modules ((guix build utils) @@ -10689,9 +10689,6 @@ reading and writing MessagePack data.") "TRANSITIONAL = 1")) #t)))))))) -(define-public python2-msgpack - (package-with-python2 python-msgpack)) - (define-public python-netaddr (package (name "python-netaddr") -- cgit 1.4.1 From 4bbd57273235d69d888bd6cb4d97f288d6888106 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 20 Dec 2021 10:07:46 -0500 Subject: gnu: python-typed-ast: Update to 1.5.1. * gnu/packages/python-xyz.scm (python-typed-ast): Update to 1.5.1. --- gnu/packages/python-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 86ddf181da..d142ef6ae5 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -20778,7 +20778,7 @@ source bytes using the UTF-8 encoding and then rewrites Python 3.6 style (define-public python-typed-ast (package (name "python-typed-ast") - (version "1.4.2") + (version "1.5.1") (source (origin (method git-fetch) @@ -20786,7 +20786,7 @@ source bytes using the UTF-8 encoding and then rewrites Python 3.6 style (url "https://github.com/python/typed_ast") (commit version))) (sha256 - (base32 "1wr6pkvvrq6rzjjw88pd5xy8fy06msam4hlxbkglvdmwh4c083l0")) + (base32 "1xfcs5246c8v5600aaa8zs7ii4sxb62q6r3sb2fgazyjx97wrxd9")) (file-name (git-file-name name version)))) (build-system python-build-system) (arguments -- cgit 1.4.1 From 0be45b28a959ce0909c7f7b1232c3d9f40e87ea4 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 20 Dec 2021 10:23:40 -0500 Subject: gnu: python-curio: Disable newly failing 'test_timeout' test. * gnu/packages/python-xyz.scm (python-prettytable) [phases]{check}: Honor TESTS? and skip the 'test_timeout' test. --- gnu/packages/python-xyz.scm | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index d142ef6ae5..bc53c50f84 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -11022,11 +11022,16 @@ printing of sub-tables by specifying a row range.") `(#:phases (modify-phases %standard-phases (replace 'check - (lambda* (#:key inputs outputs #:allow-other-keys) - (add-installed-pythonpath inputs outputs) - (invoke "pytest" "-vv" "-k" - ;; Tries to open an outgoing connection. - "not test_ssl_outgoing")))))) + (lambda* (#:key inputs outputs tests? #:allow-other-keys) + (when tests? + (add-installed-pythonpath inputs outputs) + (invoke "pytest" "-vv" "-k" + (string-append + ;; Tries to open an outgoing connection. + "not test_ssl_outgoing " + ;; This test fails since Python 3.9.9 (see: + ;; https://github.com/dabeaz/curio/issues/347). + "and not test_timeout")))))))) (native-inputs (list python-pytest)) (home-page "https://github.com/dabeaz/curio") -- cgit 1.4.1 From 992b66a1244c0ccdca38083f7390b7d8795f6b2b Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 20 Dec 2021 11:07:57 -0500 Subject: gnu: python-typing: Update to 3.10.0.0. * gnu/packages/python-xyz.scm (python-typing): Update to 3.10.0.0. --- gnu/packages/python-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index bc53c50f84..f0696b1684 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -20871,13 +20871,13 @@ Python 3.6+ type hints.") (define-public python-typing (package (name "python-typing") - (version "3.7.4.3") + (version "3.10.0.0") (source (origin (method url-fetch) (uri (pypi-uri "typing" version)) (sha256 - (base32 "1j8wnz8c9s049w9xbf7ssr1dmgg4rz7vdfq7m880srzxhafgp1qi")))) + (base32 "0c5il4d68fd4qrm5k3dps70j0xz0n5krj6lhwn9vzpal3whsvd0k")))) (build-system python-build-system) (home-page "https://docs.python.org/3/library/typing.html") (synopsis "Type hints for Python") -- cgit 1.4.1 From b328a829fbec564ddf749e71ae34b6139d633874 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 20 Dec 2021 11:12:11 -0500 Subject: gnu: python-typing-extensions: Update to 4.0.1. * gnu/packages/python-xyz.scm (python-typing-extensions): Update to 4.0.1. [origin]: Use git-fetch. [tests?]: Disable. [phases]{unpack, build, install}: New phases. [native-inputs]: Add python-pypa-build, python-flit-core. [home-page]: Shorten URL. --- gnu/packages/python-xyz.scm | 44 ++++++++++++++++++++++++++++++++++---------- 1 file changed, 34 insertions(+), 10 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index f0696b1684..06acb02220 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -20895,17 +20895,41 @@ and other tools.") (define-public python-typing-extensions (package (name "python-typing-extensions") - (version "3.7.4.3") - (source - (origin - (method url-fetch) - (uri (pypi-uri "typing_extensions" version)) - (sha256 - (base32 - "0356ljrrplm917dqgpn8wjkw6j3mpp916gwxas7jhc3xc4xhgm4r")))) + (version "4.0.1") + (source (origin + ;; The test script is missing from the PyPI archive. + (method git-fetch) + (uri (git-reference + (url "https://github.com/python/typing") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0a35fh5wk9s538x0w3dz95y0avnhd2srzyv9s1a372711n8hdl4p")))) (build-system python-build-system) - (home-page - "https://github.com/python/typing/blob/master/typing_extensions/README.rst") + (arguments + (list + #:tests? #f ;requires Python's test module, not available in Guix + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'enter-source-directory + (lambda _ + (chdir "typing_extensions"))) + ;; XXX: PEP 517 manual build copied from python-isort. + (replace 'build + (lambda _ + (invoke "python" "-m" "build" "--wheel" "--no-isolation" "."))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "python" "src/test_typing_extensions.py")))) + (replace 'install + (lambda _ + (let ((whl (car (find-files "dist" "\\.whl$")))) + (invoke "pip" "--no-cache-dir" "--no-input" + "install" "--no-deps" "--prefix" #$output whl))))))) + (native-inputs (list python-pypa-build python-flit-core)) + (home-page "https://github.com/python/typing/typing_extensions") (synopsis "Experimental type hints for Python") (description "The typing_extensions module contains additional @code{typing} hints not -- cgit 1.4.1 From ded3b554f9c3a05424e0dfa46a751347a1f3c2a9 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 20 Dec 2021 11:03:18 -0500 Subject: gnu: python-astroid: Update to 2.9.0. * gnu/packages/python-xyz.scm (python-astroid): Update to 2.9.0. [native-inputs]: Add python-typing-extensions. [properties]: Delete field. (python2-astroid): Delete variable. --- gnu/packages/python-xyz.scm | 44 ++++---------------------------------------- 1 file changed, 4 insertions(+), 40 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 06acb02220..0a85ba2a14 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -18096,7 +18096,7 @@ multitouch applications.") (define-public python-astroid (package (name "python-astroid") - (version "2.6.6") + (version "2.9.0") (source (origin (method git-fetch) @@ -18105,12 +18105,12 @@ multitouch applications.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1amzf996inwmh4r3mlpzmch60xs6lrg86vppfnwl1y0l8r0y7zxh")))) + (base32 "19iiys4233cicpm48fd7lrkm31kk47qiv44wvk952rqbcn4rd2dh")))) (build-system python-build-system) (propagated-inputs (list python-lazy-object-proxy python-wrapt)) (native-inputs - (list python-pytest python-pytest-runner)) + (list python-pytest python-pytest-runner python-typing-extensions)) (home-page "https://github.com/PyCQA/astroid") (synopsis "Common base representation of python source code for pylint and other projects") @@ -18123,43 +18123,7 @@ multitouch applications.") additional methods and attributes for different usages. They include some support for static inference and local name scopes. Furthermore, astroid builds partial trees by inspecting living objects.") - (license license:lgpl2.1+) - (properties `((python2-variant . ,(delay python2-astroid)))))) - -(define-public python2-astroid - (let ((base (package-with-python2 - (strip-python2-variant python-astroid)))) - (package (inherit base) - ;; Version 2.x removes python2 support. - (version "1.6.5") - (source - (origin - (method url-fetch) - (uri (pypi-uri "astroid" version)) - (sha256 - (base32 - "0fir4b67sm7shcacah9n61pvq313m523jb4q80sycrh3p8nmi6zw")))) - (arguments - `(#:python ,python-2 - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'remove-spurious-test - (lambda _ - ;; https://github.com/PyCQA/astroid/issues/276 - (delete-file "astroid/tests/unittest_brain.py"))) - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (invoke "python" "-m" "unittest" "discover" - "-p" "unittest*.py"))))))) - (native-inputs `()) - (propagated-inputs - (list python2-backports-functools-lru-cache - python2-enum34 - python2-lazy-object-proxy - python2-singledispatch - python2-six - python2-wrapt))))) + (license license:lgpl2.1+))) (define-public python-isbnlib (package -- cgit 1.4.1 From 5b218cc14ad85c83ef0279f435f296125a033bdd Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 20 Dec 2021 14:51:53 -0500 Subject: gnu: python-flit: Update to 3.5.1, enable tests and apply guix style. * gnu/packages/python-xyz.scm (python-flit)[origin]: Fetch from pypi-uri, to ease updating the package. [phases]{bootstrap}: Delete phase. {build, install}: Do a PEP 517 build using pypa-build. {check}: New phase. [tests?]: Enable. [propagated-inputs]{python-pytoml, python-toml}: Remove. {python-pypa-build, python-tomli-w, python-flit-core, python-requests}: New inputs. {python-docutils}: New input, moved from... [native-inputs]: ... here. Apply guix style. {python-testpath}: Use the regular python-testpath package. [synopsis, description]: Re-indent. --- gnu/packages/python-xyz.scm | 122 +++++++++++++++----------------------------- 1 file changed, 41 insertions(+), 81 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 0a85ba2a14..4bb9046394 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -23937,92 +23937,52 @@ the syntactic logic to configure and launch jobs in an execution environment.") (define-public python-flit (package (name "python-flit") - (version "3.3.0") - ;; We fetch the sources via git because on pypi the package is split into - ;; two parts: flit and flit_core; flit_core cannot be built without flit. - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/takluyver/flit") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0mvyymw3zqsnip4x4ca6anr5rbx30hcmpqwrnhjwcm7s8mycd01x")))) + (version "3.5.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "flit" version)) + (sha256 + (base32 "04152qj46sqbnlrj7ch9p7svjrrlpzbk0qr39g2yr0s4f5vp6frf")))) (build-system python-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'build 'bootstrap - (lambda* (#:key inputs #:allow-other-keys) - (let ((home (string-append (getcwd) "/home"))) - (mkdir-p home) - (setenv "HOME" home)) - (for-each make-file-writable (find-files ".")) - (copy-recursively (assoc-ref inputs "python-testpath") - (string-append (getcwd) "/testpath")) - (substitute* "pyproject.toml" - (("\"testpath\",") "")) - (invoke "python" "bootstrap_dev.py"))) - (replace 'build - (lambda _ - ;; A ZIP archive should be generated, but it fails with "ZIP does - ;; not support timestamps before 1980". Luckily, - ;; SOURCE_DATE_EPOCH is respected, which we set to some time in - ;; 1980. - (setenv "SOURCE_DATE_EPOCH" "315532800") - (for-each (lambda (toml) - (invoke "python3" "-m" "flit" - "--debug" "--ini-file" toml - "build")) - '("testpath/pyproject.toml" - "pyproject.toml")) - (with-directory-excursion "flit_core" - (invoke "python" "build_dists.py")))) - (replace 'install - (lambda* (#:key inputs outputs #:allow-other-keys) - (add-installed-pythonpath inputs outputs) - (let ((out (assoc-ref outputs "out"))) - (delete-file-recursively "./home") - (for-each (lambda (wheel) - (format #true wheel) - (invoke "python" "-m" "pip" "install" - wheel (string-append "--prefix=" out))) - (append - (find-files "flit_core/dist" "\\.whl$") - (find-files "dist" "\\.whl$"))))))) - #:tests? #f)) ; XXX: Check requires network access. + (list + #:phases + #~(modify-phases %standard-phases + ;; XXX: PEP 517 manual build copied from python-isort. + (replace 'build + (lambda _ + (invoke "python" "-m" "build" "--wheel" "--no-isolation" "."))) + (replace 'check + (lambda* (#:key tests? inputs outputs #:allow-other-keys) + (when tests? + (setenv "HOME" "/tmp") + (setenv "FLIT_NO_NETWORK" "1")))) + (replace 'install + (lambda _ + (let ((whl (car (find-files "dist" "\\.whl$")))) + (invoke "pip" "--no-cache-dir" "--no-input" + "install" "--no-deps" "--prefix" #$output whl))))))) (propagated-inputs - (list python-pytoml python-toml)) + (list python-pypa-build + python-tomli-w + python-flit-core + python-docutils + python-requests)) (native-inputs - `(("python-docutils" ,python-docutils) - ("python-responses" ,python-responses) - ("python-pygments-github-lexers" ,python-pygments-github-lexers) - ("python-pytest" ,python-pytest) - ("python-pytest-cov" ,python-pytest-cov) - ("python-sphinx" ,python-sphinx) - ("python-sphinxcontrib-github-alt" ,python-sphinxcontrib-github-alt) - ;; This package needs testpath, but testpath also needs flit... - ("python-testpath" - ,(let ((name "python-testpath") - (version "0.4.4")) - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/jupyter/testpath") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1fwv4d3p54xx1x942s104irr35lszvv6jnr4nn1scsfvc0m1qmbk"))))))) + (list python-responses + python-pygments-github-lexers + python-pytest + python-pytest-cov + python-sphinx + python-sphinxcontrib-github-alt + python-testpath)) (home-page "https://flit.readthedocs.io/") - (synopsis - "Simple packaging tool for simple packages") - (description - "Flit is a simple way to put Python packages and modules on PyPI. Flit -packages a single importable module or package at a time, using the import -name as the name on PyPI. All subpackages and data files within a package -are included automatically.") + (synopsis "Simple packaging tool for simple packages") + (description "Flit is a simple way to put Python packages and modules on +PyPI. Flit packages a single importable module or package at a time, using +the import name as the name on PyPI. All subpackages and data files within a +package are included automatically.") (license license:bsd-3))) (define-public python-pathtools -- cgit 1.4.1 From b9839ee1c57455c199964bfbb212659080982c66 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 20 Dec 2021 15:13:47 -0500 Subject: gnu: python-platformdirs: Update to 2.4.0, run tests and fix metadata. * gnu/packages/python-xyz.scm (python-platformdirs): Update to 2.4.0. [phases]{pretend-version}: New phase. {check}: Override to run tests. [native-inputs]{python-setuptools-scm}: New input. --- gnu/packages/python-xyz.scm | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 4bb9046394..484f64a7d0 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -27499,17 +27499,30 @@ compatible with a wide range of versions of the Stripe API.") (define-public python-platformdirs (package (name "python-platformdirs") - (version "2.2.0") + (version "2.4.0") (source (origin (method url-fetch) (uri (pypi-uri "platformdirs" version)) (sha256 - (base32 "07hq5qrp7pqj63iczg01wbf5ii6f0ncd0dq5mzkdhsslmg9slbb3")))) + (base32 "1whycrymqpsl7nsaknmcybzyh4fg4kqk6vd7zwl28kfhnf05wyin")))) (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'pretend-version + ;; The version string is usually derived via setuptools-scm, but + ;; without the git metadata available, the version string is set to + ;; '0.0.0'. + (lambda _ + (setenv "SETUPTOOLS_SCM_PRETEND_VERSION" ,version))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "pytest"))))))) (native-inputs (list python-appdirs python-pytest python-pytest-cov - python-pytest-mock)) + python-pytest-mock python-setuptools-scm)) (home-page "https://github.com/platformdirs/platformdirs") (synopsis "Determine the appropriate platform-specific directories") (description "When writing applications, finding the right location to -- cgit 1.4.1 From d07d0835a98bcc2ea02ba8974e202512778b957e Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 20 Dec 2021 22:48:34 -0500 Subject: gnu: Add python-pysendfile. * gnu/packages/python-xyz.scm (python-pysendfile): New variable. --- gnu/packages/python-xyz.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 484f64a7d0..73bc870da9 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -10503,6 +10503,31 @@ add functionality and customization to your projects with their own plugins.") (define-public python2-straight-plugin (package-with-python2 python-straight-plugin)) +(define-public python-pysendfile + (package + (name "python-pysendfile") + (version "2.0.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pysendfile" version)) + (sha256 + (base32 "05qf0m32isflln1zjgxlpw0wf469lj86vdwwqyizp1h94x5l22ji")))) + (build-system python-build-system) + (arguments + (list + #:phases #~(modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (setenv "HOME" "/tmp") + (invoke "make" "test"))))))) + (home-page "https://github.com/giampaolo/pysendfile") + (synopsis "Python interface to sendfile(2)") + (description "The @{pysendfile} Python library provides an interface to +the @code{sendfile(2)} system call.") + (license license:expat))) + (define-public python-fonttools (package (name "python-fonttools") -- cgit 1.4.1 From 32f1ae36160a662035e41784f5320a65d5bf57f9 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 20 Dec 2021 23:11:28 -0500 Subject: gnu: Add python-pyftpdlib. * gnu/packages/python-xyz.scm (python-pyftpdlib): New variable. --- gnu/packages/python-xyz.scm | 60 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 73bc870da9..b4cb6180ef 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -10528,6 +10528,66 @@ add functionality and customization to your projects with their own plugins.") the @code{sendfile(2)} system call.") (license license:expat))) +(define-public python-pyftpdlib + (package + (name "python-pyftpdlib") + (version "1.5.6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pyftpdlib" version)) + (sha256 + (base32 "0pnv2byzmzg84q5nmmhn1xafvfil85qa5y52bj455br93zc5b9px")))) + (build-system python-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke + "pytest" + ;; Deselect failing tests. + "-k" (string-append + ;; Using Pytest instead of the Makefile causes the + ;; command line tests to fail on unknown Pytest + ;; arguments. + "not TestCommandLineParser " + ;; https://github.com/giampaolo/pyftpdlib/issues/478 + "and not test_use_gmt_times " + ;; https://github.com/giampaolo/pyftpdlib/issues/550 + "and not test_masquerade_address " + ;; https://github.com/giampaolo/pyftpdlib/issues/500 + "and not test_rest_on_stor " + "and not test_stor_ascii")))))))) + (native-inputs (list python-psutil python-pytest)) + (propagated-inputs (list python-pyopenssl python-pysendfile)) + (home-page "https://github.com/giampaolo/pyftpdlib/") + (synopsis "Asynchronous and scalable Python FTP server library") + (description "The Python FTP server library provides a high-level +interface to write efficient, scalable and asynchronous FTP servers with +Python. It is the most complete @url{http://www.faqs.org/rfcs/rfc959.html, +RFC-959} FTP server implementation available for Python, and has the following +traits: +@itemize +@item +It is lightweight, fast and scalable. +@item +It uses the @code{sendfile(2)} system call for uploads. +@item +It uses @code{epoll}, @code{kqueue} and @code{select} to handle concurrency +asynchronously. +@item +It supports FTPS (@url{http://tools.ietf.org/html/rfc4217, RFC-4217}), +IPv6 (RFC-2428), Unicode file names (@url{http://tools.ietf.org/html/rfc2640, +RFC-2640}) and MLSD/MLST commands (RFC-3659). +@item +It has a flexible system of @samp{authorizers} able to manage both +@samp{virtual} and @samp{real} users. +@end itemize") + (license license:expat))) + (define-public python-fonttools (package (name "python-fonttools") -- cgit 1.4.1 From b794dff00a86f2ba8b1dc200525f7da450671ac5 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 20 Dec 2021 23:23:23 -0500 Subject: gnu: Add python-fs. * gnu/packages/python-xyz.scm (python-fs): New variable. --- gnu/packages/python-xyz.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index b4cb6180ef..eebcb2bc6e 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -10588,6 +10588,38 @@ It has a flexible system of @samp{authorizers} able to manage both @end itemize") (license license:expat))) +(define-public python-fs + (package + (name "python-fs") + (version "2.4.14") + (source + (origin + (method url-fetch) + (uri (pypi-uri "fs" version)) + (sha256 + (base32 "0v5kqzi0vd8ar4j4qf5440nzwa9dcagpxb3q6k0cln4cqlmxqmcm")))) + (build-system python-build-system) + (arguments + (list + #:phases #~(modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (setenv "HOME" "/tmp") + (invoke "pytest" "-m" "not slow"))))))) + (propagated-inputs + (list python-appdirs python-pytz python-typing python-six)) + (native-inputs + (list python-mock python-parameterized python-pyftpdlib python-pytest)) + (home-page "https://github.com/PyFilesystem/pyfilesystem2/") + (synopsis "File system abstraction layer for Python") + (description "PyFilesystem's @code{FS} object is a file system abstraction +sharing similarities with Python's own @code{file} object for single files. +It allows opening all the files under a given directory recursively, as a +single @code{FS} object. This enables, for example, counting the combined +number of lines in the contained files easily.") + (license license:expat))) + (define-public python-fonttools (package (name "python-fonttools") -- cgit 1.4.1 From e5e533c221eb6fa9551d834fa8a97c6c0309ef1e Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Tue, 21 Dec 2021 00:48:01 -0500 Subject: gnu: python-fonttools: Update to 4.28.5. * gnu/packages/python-xyz.scm (python-fonttools): Update to 4.28.5 and hide the package. [properties]: New field. (python-fonttools-with-tests): New variable. --- gnu/packages/python-xyz.scm | 59 ++++++++++++++++++++++++++++++++------------- 1 file changed, 42 insertions(+), 17 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index eebcb2bc6e..d3ca531f68 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -10620,28 +10620,53 @@ single @code{FS} object. This enables, for example, counting the combined number of lines in the contained files easily.") (license license:expat))) +;;; Tests are left out in the main package to avoid cycles. (define-public python-fonttools - (package - (name "python-fonttools") - (version "4.6.0") - (source (origin - (method url-fetch) - (uri (pypi-uri "fonttools" version ".zip")) - (sha256 - (base32 - "1mq9kdzhcsp96bhv7smnrpdg1s4z5wh70bsl99c0jmcrahqdisqq")))) - (build-system python-build-system) - (native-inputs - (list unzip python-pytest python-pytest-runner)) - (home-page "https://github.com/fonttools/fonttools") - (synopsis "Tools to manipulate font files") - (description - "FontTools/TTX is a library to manipulate font files from Python. It + (hidden-package + (package + (name "python-fonttools") + (version "4.28.5") + (source (origin + (method url-fetch) + (uri (pypi-uri "fonttools" version ".zip")) + (sha256 + (base32 + "1jhl5n3rfqq7fznvsh6r80n7ylap1a7ppq1040y8cflhyz80ap2l")))) + (build-system python-build-system) + (native-inputs + (list unzip)) + (arguments '(#:tests? #f)) + (home-page "https://github.com/fonttools/fonttools") + (synopsis "Tools to manipulate font files") + (description + "FontTools/TTX is a library to manipulate font files from Python. It supports reading and writing of TrueType/OpenType fonts, reading and writing of AFM files, reading (and partially writing) of PS Type 1 fonts. The package also contains a tool called “TTX” which converts TrueType/OpenType fonts to and from an XML-based format.") - (license license:expat))) + (license license:expat) + (properties `((python2-variant . ,(delay python2-fonttools))))))) + +(define-public python-fonttools-with-tests + (package/inherit python-fonttools + (arguments + (substitute-keyword-arguments (package-arguments python-fonttools) + ((#:tests? _ #f) + #t) + ((#:phases phases '%standard-phases) + `(modify-phases ,phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "pytest")))))))) + (native-inputs + (modify-inputs (package-inputs python-fonttools) + (append python-pytest ;FIXME: indentation is broken + python-brotli + python-fs + python-scipy + python-zopfli))) + (properties (alist-delete 'hidden? (package-properties python-fonttools))))) ;; Fonttools 4.x dropped support for Python 2, so stick with 3.x here. (define-public python2-fonttools -- cgit 1.4.1 From ea0ed65c5928f49de3963911e8ec917e90a7941f Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Tue, 21 Dec 2021 10:33:08 -0500 Subject: gnu: python-matplotlib: Update to 3.5.1 and run tests in parallel. * gnu/packages/python-xyz.scm (python-matplotlib): Update to 3.5.1. [propagated-inputs]: Add python-fonttools, python-wxpython and python-packaging. [native-inputs]: Remove python-mock, python-wheel, unzip and jquery-ui. Add python-pytest-timeout, python-pytest-xdist, python-setuptools-scm and python-setuptools-scm-git-archive. [phases]: Delete trailing #t. {pretend-version}: New phase. {install-jquery-ui}: Delete phase. {check}: Honor TESTS?. Do not skip webagg tests anymore. Invoke using '-n' argument to run tests in parallel via pytest-xdist. {configure-environment}: Do not set LD_LIBRARY_PATH nor HOME. Rename setup.cfg to mplsetup.cfg. Set the backend to Agg. --- gnu/packages/python-xyz.scm | 169 +++++++++++++++++++++----------------------- 1 file changed, 79 insertions(+), 90 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index d3ca531f68..7d64e151be 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -6215,17 +6215,19 @@ comparison. (define-public python-matplotlib (package (name "python-matplotlib") - (version "3.4.3") + (version "3.5.1") (source (origin (method url-fetch) (uri (pypi-uri "matplotlib" version)) (sha256 - (base32 "06032j0ccjxldx4z9kf97qps2g36mfgvy1nap3b9n75kzmnm4kzw")))) + (base32 "076f8qi265x8jy89c03r3vv5h4is4ir5mawwrrrpp96314783sdj")))) (build-system python-build-system) - (propagated-inputs ; the following packages are all needed at run time + (propagated-inputs ; the following packages are all needed at run time `(("python-cycler" ,python-cycler) + ("python-fonttools" ,python-fonttools) ("python-kiwisolver" ,python-kiwisolver) + ("python-packaging" ,python-packaging) ("python-pyparsing" ,python-pyparsing) ("python-pygobject" ,python-pygobject) ("python-certifi" ,python-certifi) @@ -6236,6 +6238,7 @@ comparison. ("python-pillow" ,python-pillow) ("python-pytz" ,python-pytz) ("python-six" ,python-six) + ("python-wxpython" ,python-wxpython) ;; From version 1.4.0 'matplotlib' makes use of 'cairocffi' instead of ;; 'pycairo'. However, 'pygobject' makes use of a 'pycairo' 'context' ;; object. For this reason we need to import both libraries. @@ -6248,101 +6251,87 @@ comparison. qhull cairo glib - ;; FIXME: Add backends when available. - ;("python-wxpython" ,python-wxpython) tcl tk)) (native-inputs `(("pkg-config" ,pkg-config) ("python-pytest" ,python-pytest) - ("python-mock" ,python-mock) - ("python-wheel" ,python-wheel) - ("unzip" ,unzip) - ("jquery-ui" - ,(origin - (method url-fetch) - (uri "https://jqueryui.com/resources/download/jquery-ui-1.12.1.zip") - (sha256 - (base32 - "0kb21xf38diqgxcdi1z3s9ssq36pldvyqxy56hn6pcva6rs3c8zq")))))) + ("python-pytest-timeout" ,python-pytest-timeout) + ("python-pytest-xdist" ,python-pytest-xdist) + ("python-setuptools-scm" ,python-setuptools-scm) + ("python-setuptools-scm-git-archive" ,python-setuptools-scm-git-archive))) (arguments - `(#:phases - (modify-phases %standard-phases - ;; XXX We disable all image comparison tests because we're using a - ;; newer version of FreeType than matplotlib expects. This leads to - ;; minor differences throughout the tests. - (add-after 'unpack 'fix-and-disable-failing-tests - (lambda _ - (substitute* (append (find-files "lib/matplotlib/tests/" - "test_.*\\.py$") - (find-files "lib/mpl_toolkits/tests" - "test_.*\\.py$")) - (("^from matplotlib" match) - (string-append "import pytest\n" match)) - (("( *)@([^_]+_)*(image_comparison|check_figures_equal)" match - indent) - (string-append indent - "@pytest.mark.skip(reason=\"unknown minor image differences\")\n" - match))) - (substitute* "lib/matplotlib/tests/test_animation.py" - (("/bin/sh") (which "sh"))) - (for-each delete-file - ;; test_normal_axes, test_get_tightbbox_polar - '("lib/matplotlib/tests/test_axes.py" - "lib/matplotlib/tests/test_polar.py" - ;; We don't use the webagg backend and this test - ;; forces it. - "lib/matplotlib/tests/test_backend_webagg.py" - ;; test_outward_ticks - "lib/matplotlib/tests/test_tightlayout.py" - ;; test_hidden_axes fails with minor extent - ;; differences, possibly due to the use of a - ;; different version of FreeType. - "lib/matplotlib/tests/test_constrainedlayout.py" - ;; Fontconfig returns no fonts. - "lib/matplotlib/tests/test_font_manager.py")) - #t)) - (add-before 'install 'install-jquery-ui - (lambda* (#:key outputs inputs #:allow-other-keys) - (let* ((python-version (python-version - (assoc-ref inputs "python"))) - (dir - (string-append (assoc-ref outputs "out") - "/lib/python" python-version - "/site-packages" - "/matplotlib/backends/web_backend/"))) - (mkdir-p dir) - (invoke "unzip" - (assoc-ref inputs "jquery-ui") - "-d" dir)) - #t)) - (replace 'check - (lambda* (#:key outputs inputs #:allow-other-keys) - (add-installed-pythonpath inputs outputs) - (invoke "python" "tests.py" "-v" - "-m" "not network and not webagg"))) - (add-before 'build 'configure-environment - (lambda* (#:key outputs inputs #:allow-other-keys) - (let ((cairo (assoc-ref inputs "cairo"))) - ;; Setting this directory in the 'basedirlist' of 'setup.cfg' - ;; has not effect. - (setenv "LD_LIBRARY_PATH" (string-append cairo "/lib")) - (setenv "HOME" (getcwd)) - ;; Fix rounding errors when using the x87 FPU. - (when (string-prefix? "i686" ,(%current-system)) - (setenv "CFLAGS" "-ffloat-store")) - (call-with-output-file "setup.cfg" - (lambda (port) - (format port "[libs]~% + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'build 'pretend-version + ;; The version string is usually derived via setuptools-scm, but + ;; without the git metadata available, the version string is set to + ;; '0.0.0'. + (lambda _ + (setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version))) + (add-after 'unpack 'fix-and-disable-failing-tests + ;; XXX: Disable all image comparison tests because we're using a + ;; newer version of FreeType than matplotlib expects. This leads + ;; to minor differences throughout the tests. + (lambda _ + (substitute* (append (find-files "lib/matplotlib/tests/" + "test_.*\\.py$") + (find-files "lib/mpl_toolkits/tests" + "test_.*\\.py$")) + (("^from matplotlib" match) + (string-append "import pytest\n" match)) + (("( *)@([^_]+_)*(image_comparison|check_figures_equal)" match + indent) + (string-append indent "@pytest.mark.skip(\ +reason=\"unknown minor image differences\")\n" match))) + (substitute* "lib/matplotlib/tests/test_animation.py" + (("/bin/sh") (which "sh"))) + (for-each delete-file + ;; test_normal_axes, test_get_tightbbox_polar + '("lib/matplotlib/tests/test_axes.py" + "lib/matplotlib/tests/test_polar.py" + ;; We don't use the webagg backend and this test + ;; forces it. + "lib/matplotlib/tests/test_backend_webagg.py" + ;; test_outward_ticks + "lib/matplotlib/tests/test_tightlayout.py" + ;; test_hidden_axes fails with minor extent + ;; differences, possibly due to the use of a + ;; different version of FreeType. + "lib/matplotlib/tests/test_constrainedlayout.py" + ;; Fontconfig returns no fonts. + "lib/matplotlib/tests/test_font_manager.py")))) + (add-before 'build 'configure-environment + (lambda* (#:key inputs #:allow-other-keys) + ;; Fix rounding errors when using the x87 FPU. + (when (string-prefix? "i686" #$(%current-system)) + (setenv "CFLAGS" "-ffloat-store")) + (call-with-output-file "mplsetup.cfg" + (lambda (port) + (format port "\ +[libs] system_freetype = true system_qhull = true -[directories]~% -basedirlist = ~a,~a~% -[packages]~% -tests = True~%" - (assoc-ref inputs "tcl") - (assoc-ref inputs "tk"))))) - #t))))) + +[rc_options] +backend=Agg + +[directories] +basedirlist = ~a,~a + +[packages] +tests = True~%" (assoc-ref inputs "tcl") (assoc-ref inputs "tk")))))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + ;; Step out of the source directory to avoid interference. + (with-directory-excursion "/tmp" + ;; Run the installed tests, which is what we want since not + ;; everything gets built in the source directory. + (invoke "pytest" + "-n" (number->string (parallel-job-count)) + "-m" "not network" "--pyargs" "matplotlib")))))))) (home-page "https://matplotlib.org/") (synopsis "2D plotting library for Python") (description -- cgit 1.4.1 From c704bdd95bf72c2f74ca5daff18dfc1a84290766 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sat, 21 Nov 2020 01:00:48 -0500 Subject: gnu: python2-matplotlib: Update to 2.2.5. * gnu/packages/python-xyz.scm (python2-matplotlib): Update to 2.2.5. [phases]: Use G-exp. {install-jquery-ui}: Delete phase. JQuery is bundled in this release. [native-inputs]: Remove all exception pkg-config. [propagated-inputs]: Sort and explicitly specify all inputs to ease maintenance. --- gnu/packages/python-xyz.scm | 62 ++++++++++++++++++++------------------------- 1 file changed, 28 insertions(+), 34 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 7d64e151be..4d2572d77e 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -6346,53 +6346,47 @@ toolkits.") (define-public python2-matplotlib (let ((matplotlib (package-with-python2 (strip-python2-variant python-matplotlib)))) - (package (inherit matplotlib) - (version "2.2.4") + (package/inherit matplotlib + (version "2.2.5") (source (origin (method url-fetch) (uri (pypi-uri "matplotlib" version)) (sha256 (base32 - "09i1gnrra1590brc1f8d5rh2zvnknmfgzp613ab0462qkrwj15h2")))) + "1sk05fdai9rw35l983rw2ymvz0nafs7szs7yz4nxrpyr1j27l0x3")))) (arguments (substitute-keyword-arguments (package-arguments matplotlib) ((#:phases phases) - `(modify-phases ,phases - (replace 'install-jquery-ui - (lambda* (#:key outputs inputs #:allow-other-keys) - (let ((dir (string-append (assoc-ref outputs "out") - "/lib/python2.7/site-packages/" - "matplotlib/backends/web_backend/"))) - (mkdir-p dir) - (invoke "unzip" - (assoc-ref inputs "jquery-ui") - "-d" dir)))) - ;; Without this file mpl_toolkits cannot be imported. - (add-after 'install 'create-init-file - (lambda* (#:key outputs #:allow-other-keys) - (with-output-to-file - (string-append - (assoc-ref outputs "out") - "/lib/python2.7/site-packages/mpl_toolkits/__init__.py") - (lambda _ (display ""))))) - (delete 'fix-and-disable-failing-tests) - (delete 'check))))) ; These tests weren't run the the past. - ;; Make sure to use special packages for Python 2 instead - ;; of those automatically rewritten by package-with-python2. + #~(modify-phases #$phases + (add-after 'install 'create-init-file + (lambda _ + (with-output-to-file + (string-append + #$output + "/lib/python2.7/site-packages/mpl_toolkits/__init__.py") + (lambda _ (display ""))))) + (delete 'fix-and-disable-failing-tests) + (delete 'check))))) ; These tests weren't run the the past. + (native-inputs + `(("pkg-config" ,pkg-config))) (propagated-inputs - `(("python2-pycairo" ,python2-pycairo) - ("python2-backports-functools-lru-cache" - ,python2-backports-functools-lru-cache) + `(("gobject-introspection" ,gobject-introspection) + ("python2-backports-functools-lru-cache" ,python2-backports-functools-lru-cache) + ("python2-certifi" ,python2-certifi) + ("python2-cycler" ,python2-cycler) + ("python2-dateutil" ,python2-dateutil) ("python2-functools32" ,python2-functools32) + ("python2-kiwisolver" ,python2-kiwisolver) + ("python2-numpy" ,python2-numpy) + ("python2-pillow" ,python2-pillow) + ("python2-pycairo" ,python2-pycairo) ("python2-pygobject-2" ,python2-pygobject-2) + ("python2-pyparsing" ,python2-pyparsing) + ("python2-pytz" ,python2-pytz) + ("python2-six" ,python2-six) ("python2-subprocess32" ,python2-subprocess32) - ("python2-tkinter" ,python-2 "tk") - ,@(fold alist-delete (package-propagated-inputs matplotlib) - '("python-cairocffi" - "python-pycairo" - "python-pygobject" - "python-tkinter"))))))) + ("python2-tkinter" ,python-2 "tk")))))) (define-public python-matplotlib-documentation (package -- cgit 1.4.1 From 01a01c88f899af3d5673ba6994b50218769c10d2 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 17 Dec 2021 12:10:02 -0500 Subject: gnu: poetry: Update to 1.1.12. * gnu/packages/python-xyz.scm (poetry): Update to 1.1.12. [phases]{patch-setup-py}: Relax packaging version requirement. [propagated-inputs]{python-msgpack-transitional}: Replace with... {python-msgpack}: ... this. {python-requests-toolbelt-0.9.1}: Replace with... {python-requests-toolbelt}: ... this. {python-msgpack-transitional}: Delete variable. --- gnu/packages/python-xyz.scm | 44 +++++++------------------------------------- 1 file changed, 7 insertions(+), 37 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 4d2572d77e..8e2cb553b7 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -10788,32 +10788,6 @@ reading and writing MessagePack data.") (home-page "https://pypi.org/project/msgpack/") (license license:asl2.0))) -;; This msgpack library's name changed from "python-msgpack" to "msgpack" with -;; release 0.5. Some packages like borg still call it by the old name for now. -;; -(define-public python-msgpack-transitional - (package - (inherit python-msgpack) - (name "python-msgpack-transitional") - (version "0.5.6") - (source (origin - (method url-fetch) - (uri (pypi-uri "msgpack" version)) - (sha256 - (base32 - "1hz2dba1nvvn52afg34liijsm7kn65cmn06dl0xbwld6bb4cis0f")))) - (arguments - (substitute-keyword-arguments (package-arguments python-msgpack) - ((#:phases phases) - `(modify-phases ,phases - (add-after 'unpack 'configure-transitional - (lambda _ - ;; Keep using the old name. - (substitute* "setup.py" - (("TRANSITIONAL = False") - "TRANSITIONAL = 1")) - #t)))))))) - (define-public python-netaddr (package (name "python-netaddr") @@ -15918,29 +15892,25 @@ database, file, dict stores. Cachy supports python versions 2.7+ and 3.2+.") (define-public poetry (package (name "poetry") - (version "1.1.11") - ;; Poetry can only be built from source with Poetry. + (version "1.1.12") (source (origin (method url-fetch) (uri (pypi-uri "poetry" version)) (sha256 (base32 - "17pnf2j4adlm9fhyg5jkkvs8bzcigb6nj72vr0687fxybzsj4zbx")))) + "0rr54mvcfcv9cv6vw2122y28xvd2pwqpv2x8c8j5ayz3gwsy4rjw")))) (build-system python-build-system) (arguments - `(#:tests? #f ;; Pypi does not have tests. + `(#:tests? #f ;PyPI does not have tests #:phases (modify-phases %standard-phases (add-before 'build 'patch-setup-py (lambda _ (substitute* "setup.py" - ;; Allow newer versions of python-keyring. + ;; Relax some of the requirements. (("(keyring>=21.2.0),<22.0.0" _ keyring) keyring) - ;; TODO: remove after the next release cycle, - ;; when packaging has been updated. - (("packaging>=20.4,<21.0") "packaging>=20.0,<21.0")) - #t))))) + (("(packaging>=20.4),<21.0" _ packaging) packaging))))))) (propagated-inputs (list python-cachecontrol python-cachy @@ -15948,14 +15918,14 @@ database, file, dict stores. Cachy supports python versions 2.7+ and 3.2+.") python-clikit python-html5lib python-keyring - python-msgpack-transitional + python-msgpack python-packaging python-pexpect python-pip python-pkginfo python-poetry-core python-requests - python-requests-toolbelt-0.9.1 + python-requests-toolbelt python-shellingham python-tomlkit python-virtualenv)) -- cgit 1.4.1 From 3c9a98bf345c947f0c1bfce347ba26e326ea0869 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Wed, 22 Dec 2021 12:56:18 -0500 Subject: gnu: python-beautifulsoup4: Update to 4.10.0. * gnu/packages/python-xyz.scm (python-beautifulsoup4): Update to 4.10.0. [propagated-inputs]{python-html5lib, python-lxml}: New inputs. [arguments]: Delete field. (python2-beautifulsoup4): Peg at version 4.9.3. --- gnu/packages/python-xyz.scm | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 8e2cb553b7..8ffcee6732 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -9026,27 +9026,17 @@ the GObject Introspection bindings to libnotify for non-GTK applications.") (define-public python-beautifulsoup4 (package (name "python-beautifulsoup4") - (version "4.9.3") + (version "4.10.0") (source (origin (method url-fetch) (uri (pypi-uri "beautifulsoup4" version)) (sha256 (base32 - "09gbd49mwz86k572r1231x2rdp82p42zlnw0bz9b9mfi58r9wwl4")))) + "14c8z4gh9bi38agx9ls8ym5rscc02pc6f6hmliaqk08xa8yd4fn2")))) (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - ;; The Python 2 source is the definitive source of beautifulsoup4. We - ;; must use this conversion script when building with Python 3. The - ;; conversion script also runs the tests. - ;; For more information, see the file 'convert-py3k' in the source - ;; distribution. - (replace 'check - (lambda _ (invoke "./convert-py3k")))))) (propagated-inputs - (list python-soupsieve)) + (list python-soupsieve python-html5lib python-lxml)) (home-page "https://www.crummy.com/software/BeautifulSoup/bs4/") (synopsis @@ -9063,8 +9053,16 @@ converts incoming documents to Unicode and outgoing documents to UTF-8.") (define-public python2-beautifulsoup4 (let ((base (package-with-python2 (strip-python2-variant python-beautifulsoup4)))) - (package/inherit base - (arguments `(#:python ,python-2))))) + (package/inherit base + (version "4.9.3") ;last version to support Python 2 + (source + (origin + (method url-fetch) + (uri (pypi-uri "beautifulsoup4" version)) + (sha256 + (base32 + "09gbd49mwz86k572r1231x2rdp82p42zlnw0bz9b9mfi58r9wwl4")))) + (arguments `(#:python ,python-2))))) (define-public python-soupsieve (package -- cgit 1.4.1 From fa7b52ff577dc9b44c2dec6b4a1147640d1e4e28 Mon Sep 17 00:00:00 2001 From: Sarah Morgensen Date: Mon, 26 Jul 2021 19:56:46 -0700 Subject: gnu: python-pdfminer-six: Remove obsolete phase. * gnu/packages/python-xyz.scm (python-pdfminer-six)[arguments] <#:phases>: Remove 'make-files-writable phase. Signed-off-by: Maxim Cournoyer --- gnu/packages/python-xyz.scm | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 8ffcee6732..4be21e2023 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -14746,13 +14746,7 @@ module, adding support for Unicode strings.") #t)) (replace 'check (lambda _ - (invoke "make" "test"))) - (add-before 'reset-gzip-timestamps 'make-files-writable - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (for-each make-file-writable - (find-files out "\\.gz$")) - #t)))))) + (invoke "make" "test")))))) (propagated-inputs (list python-chardet python-cryptography python-sortedcontainers)) (native-inputs -- cgit 1.4.1 From 0c83eca7191b2b57b4f5d990c5386537fd289c6c Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 27 Dec 2021 22:23:46 -0500 Subject: gnu: python-xlrd: Update to 2.0.1. * gnu/packages/python-xyz.scm (python-xlrd): Update to 2.0.1. [source]: Use git-fetch. [arguments]: Delete field. [native-inputs]: Add python-pytest. --- gnu/packages/python-xyz.scm | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 4be21e2023..eed07de0ab 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -11002,23 +11002,20 @@ native modules.") (define-public python-xlrd (package (name "python-xlrd") - (version "1.2.0") + (version "2.0.1") (source (origin - (method url-fetch) - (uri (pypi-uri "xlrd" version)) + ;; The tests are not included in the PyPI archive. + (method git-fetch) + (uri (git-reference + (url "https://github.com/python-excel/xlrd") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1ci93fda4n67qhdvfl16zasyxrpygzk53hs6m8z0rd4dxrnb6vjl")))) + "170asszffvf6rh5w169ic4h5kxgjkmdl3060vw737d4g1qfifvzz")))) (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - ;; Some tests depend on writing a temporary file to the user's home - ;; directory. - (add-after 'unpack 'fix-tests - (lambda _ - (delete-file "tests/test_open_workbook.py") - #t))))) + (native-inputs + (list python-pytest)) (home-page "http://www.python-excel.org/") (synopsis "Library for extracting data from Excel files") (description "This package provides a library to extract data from -- cgit 1.4.1 From 00bad443ef75c289d703277a6224feadcc6b677a Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 27 Dec 2021 22:33:50 -0500 Subject: gnu: python-openpyxl: Update to 3.0.9. * gnu/packages/python-xyz.scm (python-openpyxl): Update to 3.0.9. --- gnu/packages/python-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index eed07de0ab..304473deea 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -2374,7 +2374,7 @@ of @code{xmlfile}.") (define-public python-openpyxl (package (name "python-openpyxl") - (version "3.0.5") + (version "3.0.9") (source (origin ;; We use the upstream repository, as the tests are not included in the @@ -2385,7 +2385,7 @@ of @code{xmlfile}.") (changeset version))) (file-name (string-append name "-" version "-checkout")) (sha256 - (base32 "0s6fgwwkcfz1bnrp5gjd4g2lcbl4a76147ylkrmkbabi2nf4xlli")))) + (base32 "1p8xvc2gjw6zyzbd7qdvc3x178sm00ymrbyh9539l4fpzgxh0j9c")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases -- cgit 1.4.1 From b92d09cda1163d4a1a1b449ea3e981e6ca1cf6d6 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 27 Dec 2021 22:34:06 -0500 Subject: gnu: python-xlwt: Add comment about maintainership of the package. The package appears to be abandoned. * gnu/packages/python-xyz.scm (python-xlwt): Add comment. --- gnu/packages/python-xyz.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 304473deea..cfd2d68219 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -11027,6 +11027,7 @@ Unicode-aware. It is not intended as an end-user tool.") (define-public python2-xlrd (package-with-python2 python-xlrd)) +;;; Note: this package is unmaintained since 2018 (archived on GitHub). (define-public python-xlwt (package (name "python-xlwt") -- cgit 1.4.1