aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/python-xyz.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/python-xyz.scm')
-rw-r--r--gnu/packages/python-xyz.scm327
1 files changed, 279 insertions, 48 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index f0490f248c..9b71982c3a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -57,7 +57,7 @@
;;; Copyright © 2018, 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2018 Luther Thompson <lutheroto@gmail.com>
;;; Copyright © 2018 Vagrant Cascadian <vagrant@debian.org>
-;;; Copyright © 2019 Brett Gilio <brettg@posteo.net>
+;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2019 Sam <smbaines8@gmail.com>
;;; Copyright © 2019 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
@@ -1052,21 +1052,21 @@ standard.")
(define-public python-eventlet
(package
(name "python-eventlet")
- (version "0.20.1")
+ (version "0.25.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "eventlet" version))
(sha256
(base32
- "0f3q55mq4n021wb7qa53pz3ix6i2py64sap66vsaqm2scjw83m9s"))))
+ "1hgz8jq19wlz8vwqj900ry8cjv578nz4scc91mlc8944yid6573c"))))
(build-system python-build-system)
(propagated-inputs
`(("python-greenlet" ,python-greenlet)))
(arguments
;; TODO: Requires unpackaged 'enum-compat'.
'(#:tests? #f))
- (home-page "http://eventlet.net")
+ (home-page "https://eventlet.net")
(synopsis "Concurrent networking library for Python")
(description
"Eventlet is a concurrent networking library for Python that
@@ -3146,42 +3146,30 @@ interested parties to subscribe to events, or \"signals\".")
(define-public pelican
(package
(name "pelican")
- (version "4.0.1")
+ (version "4.2.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pelican" version))
(sha256
(base32
- "05yda7n6r0ll18fpdjzkzyr0ls8hbb86fnjyb33k9jvv5avah2lr"))))
+ "0mp7hjyhs38ag1hyfcy882g400z0babqi72pnli46dqijfhajzmy"))))
(build-system python-build-system)
(propagated-inputs
- `(("python-feedgenerator" ,python-feedgenerator)
+ `(("python-blinker" ,python-blinker)
+ ("python-dateutil" ,python-dateutil)
+ ("python-docutils" ,python-docutils)
+ ("python-feedgenerator" ,python-feedgenerator)
("python-jinja2" ,python-jinja2)
+ ("python-markdown" ,python-markdown)
("python-pygments" ,python-pygments)
- ("python-docutils" ,python-docutils)
("python-pytz" ,python-pytz)
- ("python-blinker" ,python-blinker)
- ("python-unidecode" ,python-unidecode)
("python-six" ,python-six)
- ("python-dateutil" ,python-dateutil)
- ("python-markdown" ,python-markdown)))
+ ("python-unidecode" ,python-unidecode)))
(home-page "https://getpelican.com/")
(arguments
`(;; XXX Requires a lot more packages to do unit tests :P
- #:tests? #f
- #:phases (modify-phases %standard-phases
- (add-before
- 'install 'adjust-requires
- ;; Since feedgenerator is installed from git, it doesn't
- ;; conform to the version requirements.
- ;;
- ;; We *do have* "feedgenerator >= 1.6", but strip off the
- ;; version requirement so setuptools doesn't get confused.
- (lambda _
- (substitute* "setup.py"
- (("['\"]feedgenerator.*?['\"]")
- "'feedgenerator'")))))))
+ #:tests? #f))
(synopsis "Python-based static site publishing system")
(description
"Pelican is a tool to generate a static blog from reStructuredText,
@@ -6332,21 +6320,26 @@ so it might be a tiny bit slower.")
(define-public python-waf
(package
(name "python-waf")
- (version "2.0.11")
+ (version "2.0.19")
(source (origin
(method url-fetch)
(uri (string-append "https://waf.io/"
"waf-" version ".tar.bz2"))
(sha256
(base32
- "13zrniwkmfqgsgzi9v5m1367fppp9yzrz6z2ny6hy8dmpb8mj4z4"))))
+ "19dvqbsvxz7ch03dh1v0znklrwxlz6yzddc3k9smzrrgny4jch6q"))))
(build-system python-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(replace 'build
(lambda _
- (invoke "python" "waf-light" "configure" "build")))
+ ;; XXX: Find a way to add all extra tools.
+ (let ((tools '("gccdeps"
+ "clang_compilation_database")))
+ (invoke "python" "waf-light" "configure" "build"
+ (string-append "--tools="
+ (string-join tools ","))))))
(replace 'check
(lambda _
(invoke "python" "waf" "--version")))
@@ -6818,7 +6811,7 @@ add functionality and customization to your projects with their own plugins.")
`(("unzip" ,unzip)
("python-pytest" ,python-pytest)
("python-pytest-runner" ,python-pytest-runner)))
- (home-page "https://github.com/behdad/fonttools")
+ (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
@@ -8513,13 +8506,13 @@ with a new public API, and RPython support.")
(define-public python-hy
(package
(name "python-hy")
- (version "0.13.0")
+ (version "0.17.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "hy" version))
(sha256
(base32
- "19sfymaksx9jhksfnb15ahid46mzrhdfzz6yy2craz2qnzvpmky8"))))
+ "1gdbqsirsdxj320wnp7my5awzs1kfs6m4fqmkzbd1zd47qzj0zfi"))))
(build-system python-build-system)
(arguments
'(#:phases
@@ -8538,7 +8531,11 @@ with a new public API, and RPython support.")
(propagated-inputs
`(("python-astor" ,python-astor)
("python-clint" ,python-clint)
- ("python-rply" ,python-rply)))
+ ("python-rply" ,python-rply)
+ ("python-fastentrypoints"
+ ,python-fastentrypoints)
+ ("python-funcparserlib"
+ ,python-funcparserlib)))
(home-page "http://hylang.org/")
(synopsis "Lisp frontend to Python")
(description
@@ -11002,14 +10999,14 @@ relays publish about themselves.")
(define-public python-pyserial
(package
(name "python-pyserial")
- (version "3.1.1")
+ (version "3.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pyserial" version))
(sha256
(base32
- "0k1nfdrxxkdlv4zgaqsdv8li0pj3gbh2pyxw8q2bsg6f9490amyn"))))
+ "09y68bczw324a4jb9a1cfwrbjhq179vnfkkkrybbksp0vqgl0bbf"))))
(build-system python-build-system)
(arguments
'(#:tests? #f)) ; FIXME: 3/49 tests are failing.
@@ -15544,14 +15541,14 @@ validation testing and application logic.")
(define-public python-numba
(package
(name "python-numba")
- (version "0.42.0")
+ (version "0.46.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "numba" version))
(sha256
(base32
- "03rqdfx0512lcri2bcpngx5k3jwfbqnanqj3n19c7d6h6hqxvq9x"))))
+ "1vnfzcq6fcnkmdms6114d49awvvj5181fl7z1wlha27qc2paxjy2"))))
(build-system python-build-system)
(arguments
`(#:modules ((guix build utils)
@@ -15568,7 +15565,7 @@ validation testing and application logic.")
#t))
(add-after 'unpack 'remove-failing-tests
(lambda _
- ;; FIXME: these tests fail for unknown reasons:
+ ;; FIXME: These tests fail for unknown reasons:
;; test_non_writable_pycache, test_non_creatable_pycache, and
;; test_frozen (all in numba.tests.test_dispatcher.TestCache).
(substitute* "numba/tests/test_dispatcher.py"
@@ -15581,10 +15578,20 @@ validation testing and application logic.")
;; These tests fail because we don't run the tests from the build
;; directory: test_setup_py_distutils, test_setup_py_setuptools
- ;; They ar in numba.tests.test_pycc.TestDistutilsSupport.
+ ;; They are in numba.tests.test_pycc.TestDistutilsSupport.
(substitute* "numba/tests/test_pycc.py"
(("def test(_setup_py_distutils|_setup_py_setuptools)" _ m)
(string-append "def guix_skip" m)))
+
+ ;; These tests fail because our version of Python does not have
+ ;; a recognizable front-end for the Numba distribution to use
+ ;; to check against.
+ (substitute* "numba/tests/test_entrypoints.py"
+ (("def test(_init_entrypoint)" _ m)
+ (string-append "def guix_skip" m)))
+ (substitute* "numba/tests/test_jitclasses.py"
+ (("def test(_jitclass_longlabel_not_truncated)" _ m)
+ (string-append "def guix_skip" m)))
#t))
(replace 'check
(lambda _
@@ -15651,17 +15658,25 @@ object-oriented library such as @code{scikit-learn}.")
(define-public python-dill
(package
(name "python-dill")
- (version "0.2.9")
+ (version "0.3.1.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "dill" version))
(sha256
- (base32 "0vwqyi6hyz2r29zydc78dqymkbc5y7gia16xcdh215cikxph9mpn"))))
+ (base32 "1704g8z70d210ksgbccs2v545v9w0wc6lx15m296alb7jf0yzn22"))))
(build-system python-build-system)
- ;; FIXME: The check phase fails with "don't know how to make test from: …".
- (arguments '(#:tests? #f))
- (home-page "https://pypi.org/project/dill")
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (with-directory-excursion "/tmp"
+ (invoke "nosetests" "-v"))
+ #t)))))
+ (native-inputs
+ `(("python-nose" ,python-nose)))
+ (home-page "https://pypi.org/project/dill/")
(synopsis "Serialize all of Python")
(description "Dill extends Python's @code{pickle} module for serializing
and de-serializing Python objects to the majority of the built-in Python
@@ -15677,18 +15692,38 @@ the saved state of the original interpreter session.")
(define-public python-multiprocess
(package
(name "python-multiprocess")
- (version "0.70.6.1")
+ (version "0.70.9")
(source
(origin
(method url-fetch)
(uri (pypi-uri "multiprocess" version))
(sha256
(base32
- "1ip5caz67b3q0553mr8gm8xwsb8x500jn8ml0gihgyfy52m2ypcq"))))
+ "1r882nvd44xqwbrclwqx5rhs80l6809rcvpc7pkpgnij06cvvmcz"))))
(build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'disable-broken-tests
+ (lambda _
+ ;; This test is broken as there is no keyboard interrupt.
+ (substitute* "py3.7/multiprocess/tests/__init__.py"
+ (("^(.*)def test_wait_result"
+ line indent)
+ (string-append indent
+ "@unittest.skip(\"Disabled by Guix\")\n"
+ line)))
+ #t))
+ ;; Tests must be run after installation.
+ (delete 'check)
+ (add-after 'install 'check
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (add-installed-pythonpath inputs outputs)
+ (invoke "python" "-m" "multiprocess.tests")
+ #t)))))
(propagated-inputs
`(("python-dill" ,python-dill)))
- (home-page "https://pypi.org/project/multiprocess")
+ (home-page "https://pypi.org/project/multiprocess/")
(synopsis "Multiprocessing and multithreading in Python")
(description
"This package is a fork of the multiprocessing Python package, a package
@@ -16499,14 +16534,14 @@ time-or-computationally-expensive properties quick and easy and works in Python
(define-public python-folium
(package
(name "python-folium")
- (version "0.10.0")
+ (version "0.10.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "folium" version))
(sha256
(base32
- "18fzxijsgrb95r0a8anc9ba5ijyw3nlnv3rpavfbkqa5v878x84f"))))
+ "0gcc267wxwxr57ry86pqpbiyfvl0g48hfvgy0f2mz9s58g87kgzd"))))
(build-system python-build-system)
(propagated-inputs
`(("python-branca" ,python-branca)
@@ -16881,3 +16916,199 @@ always possible to declare a command with the highest possible (and least
flexible) layer and then tune the behaviour with any of the lower layers
including the native API of @code{python-argparse}.")
(license license:lgpl3+))))
+
+(define-public python-ppft
+ (package
+ (name "python-ppft")
+ (version "1.6.6.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "ppft" version))
+ (sha256
+ (base32
+ "1z1invkhszc5d2mvgr221v7cszzifcc77mz0pv3wjp6x5q2768cy"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; there are none
+ (propagated-inputs
+ `(("python-six" ,python-six)))
+ (home-page "https://pypi.org/project/ppft/")
+ (synopsis "Fork of Parallel Python")
+ (description
+ "This package is a fork of Parallel Python. The Parallel Python
+module (@code{pp}) provides an easy and efficient way to create
+parallel-enabled applications for @dfn{symmetric multiprocessing} (SMP)
+computers and clusters. It features cross-platform portability and dynamic
+load balancing.")
+ (license license:bsd-3)))
+
+(define-public python-pox
+ (package
+ (name "python-pox")
+ (version "0.2.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pox" version))
+ (sha256
+ (base32
+ "0y17ckc2p6i6709s279sjdj4q459mpcc38ymg9zv9y6vl6jf3bq6"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (mkdir-p "/tmp/guix")
+ (setenv "SHELL" "bash")
+ (setenv "USERNAME" "guix")
+ (setenv "HOME" "/tmp/guix") ; must end on USERNAME...
+ (invoke "py.test" "-vv")
+ #t)))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("which" ,which)))
+ (home-page "https://pypi.org/project/pox/")
+ (synopsis "Python utilities for filesystem exploration and automated builds")
+ (description
+ "Pox provides a collection of utilities for navigating and manipulating
+filesystems. This module is designed to facilitate some of the low level
+operating system interactions that are useful when exploring a filesystem on a
+remote host. Pox provides Python equivalents of several shell commands such
+as @command{which} and @command{find}. These commands allow automated
+discovery of what has been installed on an operating system, and where the
+essential tools are located.")
+ (license license:bsd-3)))
+
+(define-public python-pathos
+ (package
+ (name "python-pathos")
+ (version "0.2.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pathos" version))
+ (sha256
+ (base32
+ "0in8hxdz7k081ijn6q94gr39ycy7363sx4zysmbwyvd7snqjrbi1"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (setenv "PYTHONPATH"
+ (string-append (getcwd) ":" (getenv "PYTHONPATH")))
+ (invoke "python" "./tests/__main__.py"))))))
+ (propagated-inputs
+ `(("python-dill" ,python-dill)
+ ("python-multiprocess" ,python-multiprocess)
+ ("python-pox" ,python-pox)
+ ("python-ppft" ,python-ppft)))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
+ (home-page "https://pypi.org/project/pathos/")
+ (synopsis
+ "Parallel graph management and execution in heterogeneous computing")
+ (description
+ "Python-pathos is a framework for heterogenous computing. It provides a
+consistent high-level interface for configuring and launching parallel
+computations across heterogenous resources. Python-pathos provides configurable
+launchers for parallel and distributed computing, where each launcher contains
+the syntactic logic to configure and launch jobs in an execution environment.")
+ (license license:bsd-3)))
+
+(define-public python-flit
+ (package
+ (name "python-flit")
+ (version "2.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "flit" version))
+ (sha256
+ (base32
+ "0h5vvmqinqzn97mr3ix7zx53af9ad4fimjjwqpx88yp8qhz4r5bc"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:tests? #f)) ; XXX: Check requires network access.
+ (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.")
+ (license license:bsd-3)))
+
+(define-public python-pathtools
+ (package
+ (name "python-pathtools")
+ (version "0.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pathtools" version))
+ (sha256
+ (base32
+ "1h7iam33vwxk8bvslfj4qlsdprdnwf8bvzhqh3jq5frr391cadbw"))))
+ (build-system python-build-system)
+ (home-page
+ "https://github.com/gorakhargosh/pathtools")
+ (synopsis "Path utilities for Python")
+ (description "Pattern matching and various utilities for file systems
+paths.")
+ (license license:expat)))
+
+(define-public python-fastentrypoints
+ (package
+ (name "python-fastentrypoints")
+ (version "0.12")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "fastentrypoints" version))
+ (sha256
+ (base32
+ "02s1j8i2dzbpbwgq2a3fiqwm3cnmhii2qzc0k42l0rdxd4a4ya7z"))))
+ (build-system python-build-system)
+ (home-page
+ "https://github.com/ninjaaron/fast-entry_points")
+ (synopsis
+ "Makes entry_points specified in setup.py load more quickly")
+ (description
+ "Using entry_points in your setup.py makes scripts that start really
+slowly because it imports pkg_resources. This package allows such setup
+scripts to load entry points more quickly.")
+ (license license:bsd-3)))
+
+(define-public python-funcparserlib
+ (package
+ (name "python-funcparserlib")
+ (version "0.3.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "funcparserlib" version))
+ (sha256
+ (base32
+ "07f9cgjr3h4j2m67fhwapn8fja87vazl58zsj4yppf9y3an2x6dp"))))
+ (native-inputs
+ `(("python-tox" ,python-tox)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "tox"))))))
+ (build-system python-build-system)
+ (home-page
+ "https://github.com/vlasovskikh/funcparserlib")
+ (synopsis
+ "Recursive descent parsing library based on functional combinators")
+ (description
+ "This package is a recursive descent parsing library for Python based on
+functional combinators. Parser combinators are just higher-order functions
+that take parsers as their arguments and return them as result values.")
+ (license license:expat)))