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.scm125
1 files changed, 110 insertions, 15 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 9fac87648a..f0490f248c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -67,6 +67,7 @@
;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2019 Wiktor Żelazny <wzelazny@vurv.cz>
;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
+;;; Copyright © 2019 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -15889,41 +15890,63 @@ append on old values. Partd excels at shuffling operations.")
(define-public python2-partd
(package-with-python2 python-partd))
+(define-public python-fsspec
+ (package
+ (name "python-fsspec")
+ (version "0.6.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "fsspec" version))
+ (sha256
+ (base32
+ "1g9ba8v04s1nrh7pvzfm2md7ivl2mrz3hcq3y9d1a44gd62h17zj"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; there are none
+ (home-page "https://github.com/intake/filesystem_spec")
+ (synopsis "File-system specification")
+ (description "The purpose of this package is to produce a template or
+specification for a file-system interface, that specific implementations
+should follow, so that applications making use of them can rely on a common
+behavior and not have to worry about the specific internal implementation
+decisions with any given backend.")
+ (license license:bsd-3)))
+
(define-public python-dask
(package
(name "python-dask")
- (version "1.2.2")
+ (version "2.9.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "dask" version))
(sha256
- (base32 "0b29gvf96gmp20wicly3v3mhyc93zbm3mdv935fka6x0wax7cy2y"))))
+ (base32 "1w1hqr8vyx6ygwflj2737dcy0mmgvrc0s602gnny8pzlcbs9m76b"))))
(build-system python-build-system)
- ;; A single test out of 5000+ fails. This test is marked as xfail when
- ;; pytest-xdist is used.
(arguments
`(#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'disable-broken-test
+ (add-after 'unpack 'disable-broken-tests
(lambda _
+ ;; This test is marked as xfail when pytest-xdist is used.
(substitute* "dask/tests/test_threaded.py"
(("def test_interrupt\\(\\)" m)
(string-append "@pytest.mark.skip(reason=\"Disabled by Guix\")\n"
m)))
- (when (which "python2")
- ;; This test fails with recent Pandas:
- ;; <https://github.com/dask/dask/issues/3794>.
- (substitute* "dask/dataframe/tests/test_dataframe.py"
- (("def test_info\\(\\)" m)
- (string-append "@pytest.mark.skip(reason=\"Disabled by Guix\")\n"
- m))))
+ ;; This one fails with a type error:
+ ;; TypeError: Already tz-aware, use tz_convert to convert.
+ (substitute* "dask/dataframe/tests/test_shuffle.py"
+ (("def test_set_index_timestamp\\(\\)" m)
+ (string-append "@pytest.mark.skip(reason=\"Disabled by Guix\")\n"
+ m)))
#t))
(replace 'check
(lambda _ (invoke "pytest" "-vv"))))))
(propagated-inputs
`(("python-cloudpickle" ,python-cloudpickle)
+ ("python-fsspec" ,python-fsspec)
("python-numpy" ,python-numpy)
+ ("python-packaging" ,python-packaging)
("python-pandas" ,python-pandas)
("python-partd" ,python-partd)
("python-toolz" ,python-toolz)
@@ -15942,9 +15965,6 @@ larger-than-memory or distributed environments. These parallel collections
run on top of the dynamic task schedulers. ")
(license license:bsd-3)))
-(define-public python2-dask
- (package-with-python2 python-dask))
-
(define-public python-ilinkedlist
(package
(name "python-ilinkedlist")
@@ -16786,3 +16806,78 @@ services to what you expect in your tests.")
(define-public python2-ujson
(package-with-python2 python-ujson))
+
+(define-public python-iocapture
+ ;; The latest release is more than a year older than this commit.
+ (let ((commit "fdc021c431d0840303908dfc3ca8769db383595c")
+ (revision "1"))
+ (package
+ (name "python-iocapture")
+ (version "0.1.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/oinume/iocapture.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1mkbhqibxvgwg0p7slr8dfraa3g2s6bsayladhax2jccwj4kcndz"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (delete 'check)
+ (add-after 'install 'check
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (add-installed-pythonpath inputs outputs)
+ (invoke "py.test" "-v" "tests")
+ #t)))))
+ (propagated-inputs
+ `(("python-flexmock" ,python-flexmock)
+ ("python-pytest" ,python-pytest)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-six" ,python-six)))
+ (home-page "https://github.com/oinume/iocapture")
+ (synopsis "Python capturing tool for stdout and stderr")
+ (description
+ "This package helps you to capture the standard out (stdout) and the
+standard error channel (stderr) in your program.")
+ (license license:expat))))
+
+(define-public python-argh
+ ;; There are 21 commits since the latest release containing important
+ ;; improvements.
+ (let ((commit "dcd3253f2994400a6a58a700c118c53765bc50a4")
+ (revision "1"))
+ (package
+ (name "python-argh")
+ (version (git-version "0.26.2" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/neithere/argh.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1p5h3dnpbsjmqrvil96s71asc6i3gpinmbrabqmwnrsxprz7r3ns"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-iocapture" ,python-iocapture)
+ ("python-mock" ,python-mock)
+ ("python-pytest" ,python-pytest)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-pytest-xdist" ,python-pytest-xdist)
+ ("python-tox" ,python-tox)))
+ (home-page "https://github.com/neithere/argh/")
+ (synopsis "Argparse wrapper with natural syntax")
+ (description
+ "python-argh is a small library that provides several layers of
+abstraction on top of @code{python-argparse}. The layers can be mixed. It is
+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+))))