summaryrefslogtreecommitdiff
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.scm545
1 files changed, 363 insertions, 182 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index c26a766d64..7e0a738d51 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -77,6 +77,10 @@
;;; Copyright © 2020 Lars-Dominik Braun <ldb@leibniz-psychology.org>
;;; Copyright © 2020 Alex ter Weele <alex.ter.weele@gmail.com>
;;; Copyright © 2020 Matthew Kraai <kraai@ftbfs.org>
+;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
+;;; Copyright © 2020 Josh Holland <josh@inv.alid.pw>
+;;; Copyright © 2020 Yuval Kogman <nothingmuch@woobling.org>
+;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -847,14 +851,14 @@ of the netcdf4 package before.")
(define-public python-netcdf4
(package
(name "python-netcdf4")
- (version "1.4.2")
+ (version "1.5.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "netCDF4" version))
(sha256
(base32
- "0c0sklgrmv15ygliin8qq0hp7vanmbi74m6zpi0r1ksr0hssyd5r"))))
+ "1gn35mb2yc263pci720aik8ymz41lrvxlrn3z83vyjwghiashg1a"))))
(build-system python-build-system)
(arguments
'(#:phases
@@ -1203,17 +1207,25 @@ class.")
(define-public python-can
(package
(name "python-can")
- (version "3.3.2")
+ (version "3.3.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-can" version))
(sha256
(base32
- "0bkbxi45sckzir6s0j3h01pkfn4vkz3ymih2zjp7zw77wz0vbvsz"))))
+ "123lz1bl6xf3d0fvxzr4bg4884yg4m9s21z6xd2m68zhnbv9rmpc"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'relax-version-requirements
+ (lambda _
+ (substitute* "setup.py"
+ (("mock~=2\\.0") "mock")
+ (("coverage<5") "coverage")
+ (("pytest~=4\\.3") "pytest")
+ (("hypothesis~=4\\.56") "hypothesis"))
+ #t))
(add-after 'unpack 'fix-broken-tests
;; The tests try to run two scripts it expects should be
;; in PATH, but they aren't at this time (see:
@@ -1228,6 +1240,7 @@ class.")
("python-wrapt" ,python-wrapt)))
(native-inputs
`(("python-codecov" ,python-codecov)
+ ("python-coverage" ,python-coverage)
("python-future" ,python-future)
("python-hypothesis" ,python-hypothesis)
("python-mock" ,python-mock)
@@ -1242,7 +1255,7 @@ class.")
controller area network (CAN) support for Python developers; providing common
abstractions to different hardware devices, and a suite of utilities for
sending and receiving messages on a CAN bus.")
- (license license:gpl3+)))
+ (license license:lgpl3+)))
(define-public python-diskcache
(package
@@ -1656,38 +1669,30 @@ human-friendly syntax.")
(define-public python2-schedule
(package-with-python2 python-schedule))
-(define-public python2-mechanize
+(define-public python-mechanize
(package
- (name "python2-mechanize")
- (version "0.2.5")
+ (name "python-mechanize")
+ (version "0.4.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "mechanize" version))
(sha256
(base32
- "0rj7r166i1dyrq0ihm5rijfmvhs8a04im28lv05c0c3v206v4rrf"))))
+ "1z9kqcwb8gfq2l6i42z624kxpd8692a0c8gw2x5bbm7n848w2mb3"))))
(build-system python-build-system)
- (arguments
- `(#:python ,python-2 ; apparently incompatible with Python 3
- #:tests? #f))
- ;; test fails with message
- ;; AttributeError: 'module' object has no attribute 'test_pullparser'
- ;; (python-3.3.2) or
- ;; AttributeError: 'module' object has no attribute 'test_urllib2_localnet'
- ;; (python-2.7.5).
- ;; The source code is from March 2011 and probably not up-to-date
- ;; with respect to python unit tests.
- (home-page "http://wwwsearch.sourceforge.net/mechanize/")
+ (propagated-inputs
+ `(("python-html5lib" ,python-html5lib)))
+ (home-page "https://github.com/python-mechanize/mechanize")
(synopsis
"Stateful programmatic web browsing in Python")
(description
"Mechanize implements stateful programmatic web browsing in Python,
after Andy Lester’s Perl module WWW::Mechanize.")
- (license (license:non-copyleft
- "file://COPYING"
- "See COPYING in the distribution."))))
+ (license license:bsd-3)))
+(define-public python2-mechanize
+ (package-with-python2 python-mechanize))
(define-public python-simplejson
(package
@@ -1747,23 +1752,44 @@ Python 3.3+.")
(define-public python2-pyicu
(package-with-python2 python-pyicu))
-(define-public python2-dogtail
- ;; Python 2 only, as it leads to "TabError: inconsistent use of tabs and
- ;; spaces in indentation" with Python 3.
+(define-public python-dogtail
(package
- (name "python2-dogtail")
- (version "0.9.9")
+ (name "python-dogtail")
+ (version "0.9.11")
(source (origin
(method url-fetch)
- (uri (pypi-uri "dogtail" version))
+ (uri
+ (string-append
+ "https://gitlab.com/dogtail/dogtail/-/raw/released/"
+ "dogtail-" version ".tar.gz"))
(sha256
(base32
- "0p5wfssvzr9w0bvhllzbbd8fnp4cca2qxcpcsc33dchrmh5n552x"))))
+ "0sr38z7b2n12bvfd4xw4b5dnnhkn5zl3h0ymmnnzavcihfqia6l0"))))
(build-system python-build-system)
- (arguments `(#:python ,python-2
- #:tests? #f)) ; invalid command "test"
- ;; Currently no offical homepage.
- (home-page "https://pypi.org/project/dogtail/")
+ (arguments
+ `(#:tests? #f ; TODO Launching dbus for the tests
+ ; fails
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ (invoke "dbus-run-session" "--" "nosetests" "-v" "tests/"))
+ #t)))))
+ (propagated-inputs
+ `(("python-pygobject" ,python-pygobject)
+ ("python-pycairo" ,python-pycairo)
+ ("python-pyatspi" ,python-pyatspi)))
+ (native-inputs
+ `(("python-nose" ,python-nose)
+ ("gtk+" ,gtk+)
+ ("xvfb" ,xorg-server)
+ ("dbus" ,dbus)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("gobject-introspection" ,gobject-introspection)))
+ (home-page "https://gitlab.com/dogtail/dogtail/")
(synopsis "GUI test tool and automation framework written in Python")
(description
"Dogtail is a GUI test tool and automation framework written in Python.
@@ -1772,6 +1798,9 @@ applications. dogtail scripts are written in Python and executed like any
other Python program.")
(license license:gpl2+)))
+(define-public python2-dogtail
+ (package-with-python2 python-dogtail))
+
(define-public python-empy
(package
(name "python-empy")
@@ -2992,14 +3021,14 @@ for Python.")
(define-public python-jinja2
(package
(name "python-jinja2")
- (version "2.11.1")
+ (version "2.11.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Jinja2" version))
(sha256
(base32
- "0l72c11n959yzb8d3ankckb6yhjhm6x729zm7rkpk040qzxpy64k"))))
+ "1c1v3djnr0ymp5xpy1h3h60abcaqxdlm4wsqmls9rxby88av5al9"))))
(build-system python-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
@@ -3699,14 +3728,14 @@ which can produce feeds in RSS 2.0, RSS 0.91, and Atom formats.")
(define-public python-toml
(package
(name "python-toml")
- (version "0.9.4")
+ (version "0.10.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "toml" version))
(sha256
(base32
- "0bdbpbip67wdm6c7xwc6mmbmskyradj4cdxn1iibj4fcx1nbv1lf"))))
+ "03wbqm5cn685cwx2664hjdpz370njl7lf0yal8s0dkp5w4mn2swj"))))
(build-system python-build-system)
(arguments
`(#:tests? #f)) ;no tests suite in release
@@ -3720,20 +3749,19 @@ Language (TOML) configuration files.")
(define-public python-jsonrpc-server
(package
(name "python-jsonrpc-server")
- (version "0.3.2")
+ (version "0.3.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-jsonrpc-server" version))
(sha256
(base32
- "0ddgdp26dfxaz6isjbb12974b3rxavgsqrn2zrmck62cmipg5g05"))))
+ "0dzya99nbi4mw7q85vmyw1wfgbx5dpmysnvm0bwx5m4xbi4zafy7"))))
(build-system python-build-system)
(propagated-inputs
- `(("python-future" ,python-future)
- ("python-mock" ,python-mock)
+ `(("python-mock" ,python-mock)
("python-pytest" ,python-pytest)
- ("python-ujson" ,python-ujson)))
+ ("python-ujson" ,python-ujson-1)))
(home-page
"https://github.com/palantir/python-jsonrpc-server")
(synopsis "JSON RPC 2.0 server library")
@@ -3969,14 +3997,14 @@ provides additional functionality on the produced Mallard documents.")
(define-public python-cython
(package
(name "python-cython")
- (version "0.29.16")
+ (version "0.29.17")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Cython" version))
(sha256
(base32
- "01gs10myw0rw4jsikvqs0859fg7gficxhv508cxvnb4l9wl5a9r3"))))
+ "1wnaz40hdw4mg5acz5gqb6bhjhn4cvfxg0xdzfy7aa6qn665hqb3"))))
(build-system python-build-system)
;; we need the full python package and not just the python-wrapper
;; because we need libpython3.3m.so
@@ -4963,33 +4991,30 @@ as the original project seems to have been abandoned circa 2007.")
(package-with-python2 python-socksipy-branch))
(define-public python-socksipychain
- (let ((commit "eb5ee8741ce006ac0c5c3e2e83204062c348c155")
- (revision "1")
- (version "2.1.1"))
- (package
- (name "python-socksipychain")
- (version (git-version version revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/pagekite/PySocksipyChain.git")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0fpphn6xnpm7qk8a914s4abycsbq9w6qkci07my632v0fylnm5n7"))))
- (build-system python-build-system)
- (arguments
- `(#:tests? #f)) ; Tests try to access the network.
- (home-page "http://pagekite.net/wiki/Floss/PySocksipyChain/")
- (synopsis "Python SOCKS module with chained proxies support")
- (description
- "SocksiPyChain is a modified version of the SocksiPy SOCKS module, which
+ (package
+ (name "python-socksipychain")
+ (version "2.1.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/pagekite/PySocksipyChain.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "02pp994qmiivkdx4y6az5q80l6rzy8g6d2ipvp7kns7lsxvmc2y7"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:tests? #f)) ; Tests try to access the network.
+ (home-page "http://pagekite.net/wiki/Floss/PySocksipyChain/")
+ (synopsis "Python SOCKS module with chained proxies support")
+ (description
+ "SocksiPyChain is a modified version of the SocksiPy SOCKS module, which
adds support for arbitrary chaining of proxy servers and various modes of
TLS/SSL encryption. It was developed for use in PageKite, and also includes
a simple netcat replacement with chaining support.")
- (license license:bsd-3))))
+ (license license:bsd-3)))
(define-public python-pycodestyle
(package
@@ -5056,14 +5081,14 @@ where key might be occurred more than once in the container.")
(define-public python-orderedmultidict
(package
(name "python-orderedmultidict")
- (version "0.7.11")
+ (version "1.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "orderedmultidict" version))
(sha256
(base32
- "0dls862ibm7qbq4fnvwx0xn1v9hwyzywbff8xjjdr42dd75208yw"))))
+ "1idjbl933avgaadscrjw1np3xkvnz3phq0l8vw5qs0rqcjx9b65q"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -5290,14 +5315,14 @@ a general image processing tool.")
(define-public python-pycparser
(package
(name "python-pycparser")
- (version "2.19")
+ (version "2.20")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pycparser" version))
(sha256
(base32
- "1cr5dcj9628lkz1qlwq3fv97c25363qppkmcayqvd05dpy573259"))))
+ "1w0m3xvlrzq4lkbvd1ngfm8mdw64r1yxy6n7djlw6qj5d0km6ird"))))
(outputs '("out" "doc"))
(build-system python-build-system)
(native-inputs
@@ -5768,6 +5793,25 @@ them as the version argument or in a SCM managed file.")
(define-public python2-setuptools-scm
(package-with-python2 python-setuptools-scm))
+(define-public python-sexpdata
+ (package
+ (name "python-sexpdata")
+ (version "0.0.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "sexpdata" version))
+ (sha256
+ (base32
+ "1q4lsjyzzqrdv64l0pv4ij9nd8gqhvxqcrpxc2xpxs652sk2gj0s"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/jd-boyd/sexpdata")
+ (synopsis "S-expression parser for Python")
+ (description
+ "Sexpdata is an S-expression parser/serializer. It has load and dump
+functions like pickle, json or PyYAML module.")
+ (license license:bsd-3)))
+
(define-public python-pathlib2
(package
(name "python-pathlib2")
@@ -5897,6 +5941,25 @@ need to use the older and less efficient @code{pkg_resources} package.")
("python-contextlib2" ,python2-contextlib2-bootstrap)
("python-importlib-resources" ,python2-importlib-resources-bootstrap))))))
+(define-public python-importmagic
+ (package
+ (name "python-importmagic")
+ (version "0.1.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "importmagic" version))
+ (sha256
+ (base32
+ "1n7qxa1snj06aw45mcfz7bxc46zp7fxj687140g2k6jcnyjmfxrz"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/alecthomas/importmagic")
+ (synopsis "Library for adding, removing and managing Python imports")
+ (description
+ "Importmagic is a Python library for automatically managing imports by
+finding unresolved symbols in Python code and their corresponding imports.")
+ (license license:bsd-3)))
+
(define-public python-jaraco-packaging
(package
(name "python-jaraco-packaging")
@@ -6847,14 +6910,14 @@ some are not yet implemented).")
(define-public python-netifaces
(package
(name "python-netifaces")
- (version "0.10.7")
+ (version "0.10.9")
(source
(origin
(method url-fetch)
(uri (pypi-uri "netifaces" version))
(sha256
(base32
- "1gccklrcplbbqh81g1mdgpa5y8na7kkf29cq2ka3f5a2fp5hyndx"))))
+ "1wxby874kcr3pp4ygzk5aiarbzhg1yi093d56s1qg4k2s7yrzvid"))))
(build-system python-build-system)
(home-page "https://github.com/al45tair/netifaces")
(synopsis
@@ -7262,14 +7325,13 @@ It is written entirely in Python.")
(define-public python-backports-csv
(package
(name "python-backports-csv")
- (version "1.0.5")
+ (version "1.0.7")
(source
(origin
(method url-fetch)
(uri (pypi-uri "backports.csv" version))
(sha256
- (base32
- "1imzbrradkfn8s2m1qcimyn74dn1mz2p3j381jljn166rf2i6hlc"))))
+ (base32 "0vdx5jlhs91iizc8j8l8811nqprwvdx39pgkdc82w2qkfgzxyxqj"))))
(build-system python-build-system)
(home-page "https://github.com/ryanhiebert/backports.csv")
(synopsis "Backport of Python 3's csv module for Python 2")
@@ -7902,13 +7964,13 @@ should be stored on various operating systems.")
(define-public python-llfuse
(package
(name "python-llfuse")
- (version "1.3.5")
+ (version "1.3.6")
(source (origin
(method url-fetch)
(uri (pypi-uri "llfuse" version ".tar.bz2"))
(sha256
(base32
- "1n7a90jww3ly49fm7x27m3xw3la3qfrnykcakga654g6kcyjlhbf"))))
+ "1j9fzxpgmb4rxxyl9jcf84zvznhgi3hnh4hg5vb0qaslxkvng8ii"))))
(build-system python-build-system)
(inputs
`(("fuse" ,fuse)
@@ -8400,14 +8462,14 @@ versions of Python.")
(define-public python-idna
(package
(name "python-idna")
- (version "2.8")
+ (version "2.9")
(source
(origin
(method url-fetch)
(uri (pypi-uri "idna" version))
(sha256
(base32
- "01rlkigdxg17sf9yar1jl8n18ls59367wqh59hnawlyg53vb6my3"))))
+ "1jxp2pdi8y4asi7ka1zhx3yx09kv8kzj533f0ds7viz49b0x323m"))))
(build-system python-build-system)
(home-page "https://github.com/kjd/idna")
(synopsis "Internationalized domain names in applications")
@@ -8787,6 +8849,29 @@ functions to find and load entry points.")
(define-public python2-entrypoints
(package-with-python2 python-entrypoints))
+(define-public python-epc
+ (package
+ (name "python-epc")
+ (version "0.0.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "epc" version))
+ (sha256
+ (base32
+ "09bx1ln1bwa00917dndlgs4k589h8qx2x080xch5m58p92kjwkd1"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-sexpdata" ,python-sexpdata)))
+ (native-inputs
+ `(("python-nose" ,python-nose)))
+ (home-page "https://github.com/tkf/python-epc")
+ (synopsis "Remote procedure call (RPC) stack for Emacs Lisp and Python")
+ (description
+ "Python-EPC can call elisp functions from Python and Python functions
+from elisp.")
+ (license license:gpl3)))
+
(define-public python-nbconvert
(package
(name "python-nbconvert")
@@ -8909,17 +8994,18 @@ interactive computing.")
(define-public python-widgetsnbextension
(package
(name "python-widgetsnbextension")
- (version "3.4.2")
+ (version "3.5.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "widgetsnbextension" version))
(sha256
(base32
- "0rc2nivdy7k4m3vljx7wdh2jh11djapcgwhvzlbs0isl8gl8nqgs"))))
+ "1ismyaxbv9d56yqqqb8xl58hg0iq0bbyy014a53y1g3hfbc8g7q7"))))
(build-system python-build-system)
(propagated-inputs
- `(("python-ipykernel" ,python-ipykernel)
+ `(("python-ipykernel"
+ ,(prompt-toolkit-2-instead-of-prompt-toolkit python-ipykernel))
("python-notebook" ,python-notebook)))
(native-inputs
`(("python-certifi" ,python-certifi)
@@ -8936,17 +9022,18 @@ notebooks.")
(define-public python-ipywidgets
(package
(name "python-ipywidgets")
- (version "5.2.2")
+ (version "7.5.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ipywidgets" version))
(sha256
(base32
- "1lk0qrr5l9a0z7qkkn30hv5832whxwxymf1l576fmmad0n7hkxms"))))
+ "15sww2mvnkqlvx55gwa82v05062a8j1xpncnqna4k9sl53hgcig9"))))
(build-system python-build-system)
(propagated-inputs
- `(("python-ipython" ,python-ipython)
+ `(("python-ipython" ,(prompt-toolkit-2-instead-of-prompt-toolkit
+ python-ipython))
("python-traitlets" ,python-traitlets)
("python-widgetsnbextension" ,python-widgetsnbextension)))
(native-inputs
@@ -8966,19 +9053,20 @@ in the data.")
(define-public python-jupyter-console
(package
(name "python-jupyter-console")
- (version "6.0.0")
+ (version "6.1.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "jupyter_console" version))
(sha256
(base32
- "1xdjw11cppf1fxvwkw2bk13ckkwas3bdah8baingn9296mvfi31h"))))
+ "06s3kr5vx0l1y1b7fxb04dmrppscl7q69sl9yyfr0d057d1ssvkg"))))
(build-system python-build-system)
(propagated-inputs
- `(("python-ipykernel" ,python-ipykernel)
+ `(("python-ipykernel" ,(prompt-toolkit-2-instead-of-prompt-toolkit
+ python-ipykernel))
("python-jupyter-client" ,python-jupyter-client)
- ("python-prompt-toolkit" ,python-prompt-toolkit)
+ ("python-prompt-toolkit" ,python-prompt-toolkit-2)
("python-pygments" ,python-pygments)))
(native-inputs
`(("python-nose" ,python-nose)))
@@ -9479,16 +9567,17 @@ applications.")
(define-public python-apipkg
(package
(name "python-apipkg")
- (version "1.4")
+ (version "1.5")
(source (origin
(method url-fetch)
(uri (pypi-uri "apipkg" version))
(sha256
(base32
- "1iks5701qnp3dlr3q1d9qm68y2plp2m029irhpz92a44psfkjf1f"))))
+ "1xhak74yj3lqflvpijg15rnkklrigvsp5q7s4as4h6a157d8q8ip"))))
(build-system python-build-system)
(native-inputs
- `(("python-pytest" ,python-pytest)))
+ `(("python-pytest" ,python-pytest)
+ ("python-setuptools-scm" ,python-setuptools-scm)))
(synopsis "Namespace control and lazy-import mechanism")
(description "With apipkg you can control the exported namespace of a Python
package and greatly reduce the number of imports for your users. It is a small
@@ -9496,9 +9585,6 @@ pure Python module that works on virtually all Python versions.")
(home-page "https://github.com/pytest-dev/apipkg")
(license license:expat)))
-(define-public python2-apipkg
- (package-with-python2 python-apipkg))
-
(define-public python-execnet
(package
(name "python-execnet")
@@ -10043,14 +10129,14 @@ python-xdo for newer bindings.)")
(define-public python-mako
(package
(name "python-mako")
- (version "1.1.1")
+ (version "1.1.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Mako" version))
(sha256
(base32
- "193mds7lv91pphnvn6c1n55rhjkgq94asdzgrsb2fiqx7rrsd119"))))
+ "17bd6r9ynp4hyfckkia0bb8gpd98f42jfl5rmzdpbld59bbcaf9i"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@@ -11396,14 +11482,14 @@ network support library.")
(define-public python-ply
(package
(name "python-ply")
- (version "3.10")
+ (version "3.11")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ply" version))
(sha256
(base32
- "1jxsr1d2f732r6ljhvm827113dckwl6qwakfvpbdhcbhvpvlmscn"))))
+ "18qx113g9bi1ac4indd5phma82zcdq601lxncp3vjn43m2mc3iq0"))))
(build-system python-build-system)
(home-page "http://www.dabeaz.com/ply/")
(synopsis "Python Lex & Yacc")
@@ -11411,9 +11497,6 @@ network support library.")
It uses LR parsing and does extensive error checking.")
(license license:bsd-3)))
-(define-public python2-ply
- (package-with-python2 python-ply))
-
(define-public python-tabulate
(package
(name "python-tabulate")
@@ -11663,17 +11746,26 @@ implementation has been adapted, improved, and fixed from Molten.")
(define-public python-shellingham
(package
(name "python-shellingham")
- (version "1.3.1")
+ (version "1.3.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "shellingham" version))
(sha256
- (base32
- "1q7kws7w4x2hji3g7y0ni9ddk4sd676ylrb3db54gbpys6xj6nwq"))))
+ (base32 "07kmia2hvd2q7wik89m82hig9mqr2faynvy38vxq5fm0ps11jv2p"))))
(build-system python-build-system)
- (home-page
- "https://github.com/sarugaku/shellingham")
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'restore-setup.py
+ ;; setup.py will return in the next release.
+ ;; <https://github.com/sarugaku/shellingham/issues/33>
+ (lambda _
+ (with-output-to-file "setup.py"
+ (lambda _
+ (display "from setuptools import setup\nsetup()\n")))
+ #t)))))
+ (home-page "https://github.com/sarugaku/shellingham")
(synopsis "Tool to detect surrounding shell")
(description
"Shellingham detects what shell the current Python executable is
@@ -12049,14 +12141,14 @@ collections of data.")
(define-public python-prompt-toolkit
(package
(name "python-prompt-toolkit")
- (version "2.0.7")
+ (version "3.0.5")
(source
(origin
(method url-fetch)
- (uri (pypi-uri "prompt_toolkit" version ".tar.gz"))
+ (uri (pypi-uri "prompt_toolkit" version))
(sha256
(base32
- "0fgacqk73w7s932vy46pan2yp8rvjmlkag20xvaydh9mhf6h85zx"))))
+ "1j3x5s4gp4ih73sbcni0a0vffbzvrxbrbnkvb3fzjgxn810ilgan"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -12070,12 +12162,11 @@ collections of data.")
(add-installed-pythonpath inputs outputs)
(invoke "py.test"))))))
(propagated-inputs
- `(("python-wcwidth" ,python-wcwidth)
- ("python-six" ,python-six)
- ("python-pygments" ,python-pygments)))
+ `(("python-wcwidth" ,python-wcwidth)))
(native-inputs
`(("python-pytest" ,python-pytest)))
- (home-page "https://github.com/jonathanslenders/python-prompt-toolkit")
+ (home-page
+ "https://github.com/prompt-toolkit/python-prompt-toolkit")
(synopsis "Library for building command line interfaces in Python")
(description
"Prompt-Toolkit is a library for building interactive command line
@@ -12085,11 +12176,31 @@ code completion, incremental search, support for Chinese double-width
characters, mouse support, and auto suggestions.")
(license license:bsd-3)))
+(define-public python-prompt-toolkit-2
+ (package (inherit python-prompt-toolkit)
+ (name "python-prompt-toolkit")
+ (version "2.0.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "prompt_toolkit" version))
+ (sha256
+ (base32
+ "0fgacqk73w7s932vy46pan2yp8rvjmlkag20xvaydh9mhf6h85zx"))))
+ (propagated-inputs
+ `(("python-wcwidth" ,python-wcwidth)
+ ("python-six" ,python-six)
+ ("python-pygments" ,python-pygments)))))
+
+(define-public prompt-toolkit-2-instead-of-prompt-toolkit
+ (package-input-rewriting/spec
+ `(("python-prompt-toolkit" . ,(const python-prompt-toolkit-2)))))
+
(define-public python2-prompt-toolkit
- (package-with-python2 python-prompt-toolkit))
+ (package-with-python2 python-prompt-toolkit-2))
(define-public python-prompt-toolkit-1
- (package (inherit python-prompt-toolkit)
+ (package (inherit python-prompt-toolkit-2)
(version "1.0.15")
(source
(origin
@@ -12468,27 +12579,26 @@ discovery, monitoring and configuration.")
(define-public python-odfpy
(package
(name "python-odfpy")
- (version "1.3.3")
+ (version "1.4.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "odfpy" version))
(sha256
(base32
- "1a6ms0w9zfhhkqhvrnynwwbxrivw6hgjc0s5k7j06npc7rq0blxw"))))
+ "1v1qqk9p12qla85yscq2g413l3qasn6yr4ncyc934465b5p6lxnv"))))
(arguments
- `(#:modules ((srfi srfi-1)
- (guix build python-build-system)
- (guix build utils))
- #:phases
+ `(#:phases
(modify-phases %standard-phases
(replace 'check
- ;; The test runner invokes python2 and python3 for test*.py.
- ;; To avoid having both in inputs, we replicate it here.
(lambda _
- (for-each (lambda (test-file) (invoke "python" test-file))
- (find-files "tests" "^test.*\\.py$"))
- #t)))))
+ (setenv "PYTHONPATH" (string-append "./build/lib:"
+ (getenv "PYTHONPATH")))
+ (invoke "pytest" "-vv"))))))
(build-system python-build-system)
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
+ (propagated-inputs
+ `(("python-defusedxml" ,python-defusedxml)))
(home-page "https://github.com/eea/odfpy")
(synopsis "Python API and tools to manipulate OpenDocument files")
(description "Collection of libraries and utility programs written in
@@ -13014,33 +13124,16 @@ PNG, JPEG, JPEG2000 and GIF files in pure Python.")
(define-public python-argcomplete
(package
(name "python-argcomplete")
- (version "1.10.3")
+ (version "1.11.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "argcomplete" version))
(sha256
(base32
- "02jkc44drb0yjz6x28lvg6rj607n8r2irdpdvyylm8xnycn54zx3"))))
+ "0h1przxffrhqvi46k40pzjsvdrq4zc3sl1pc96kkigqppq0vdrss"))
+ (patches (search-patches "python-argcomplete-1.11.1-fish31.patch"))))
(build-system python-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'embed-tool-references
- (lambda _
- (substitute* "argcomplete/bash_completion.d/python-argcomplete.sh"
- ((" grep")
- (string-append " " (which "grep")))
- ((" egrep")
- (string-append " " (which "egrep")))
- (("elif which")
- (string-append "elif " (which "which")))
- (("\\$\\(which")
- (string-append "$(" (which "which"))))
- #t)))))
- (inputs
- `(("grep" ,grep)
- ("which" ,which)))
(native-inputs
`(("python-coverage" ,python-coverage)
("python-flake8" ,python-flake8)
@@ -13818,37 +13911,22 @@ clone, while other processes access the original tree.")
(define-public python-astroid
(package
(name "python-astroid")
- (version "2.3.3")
+ (version "2.4.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "astroid" version))
(sha256
- (base32 "0fnibsl2cb5mvzbfm7sycj85smx48f8w8m7ks1sqlmpr9ps0gski"))))
+ (base32 "1h99jal7ax07xna1djw5z7hpgb8vjrl3hrrg49p1phljwniww5sc"))))
(build-system python-build-system)
(propagated-inputs
`(("python-lazy-object-proxy" ,python-lazy-object-proxy)
("python-six" ,python-six)
- ("python-typed-ast" ,python-typed-ast)
("python-wrapt" ,python-wrapt)))
(native-inputs
`(("python-dateutil" ,python-dateutil)
- ("python-nose" ,python-nose)
("python-pytest" ,python-pytest)
("python-pytest-runner" ,python-pytest-runner)))
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'remove-spurious-test
- (lambda _
- ;; This can be removed after upgrading from python-3.7
- ;; https://github.com/PyCQA/astroid/issues/593
- ;; https://bugs.python.org/issue34056
- (delete-file "astroid/tests/unittest_modutils.py")
- #t))
- (replace 'check
- (lambda _
- (invoke "pytest" "astroid"))))))
(home-page "https://github.com/PyCQA/astroid")
(synopsis "Common base representation of python source code for pylint and
other projects")
@@ -14066,7 +14144,7 @@ exception message with a traceback that points to the culprit.")
(define-public python-mwclient
(package
(name "python-mwclient")
- (version "0.10.0")
+ (version "0.10.1")
(source
(origin
(method git-fetch)
@@ -14076,8 +14154,7 @@ exception message with a traceback that points to the culprit.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32
- "1c3q6lwmb05yqywc4ya98ca7hsl15niili8rccl4n1yqp77c103v"))))
+ (base32 "120snnsh9n5svfwkyj1w9jrxf99jnqm0jk282yypd3lpyca1l9hj"))))
(build-system python-build-system)
(propagated-inputs
`(("python-requests-oauthlib" ,python-requests-oauthlib)
@@ -15026,16 +15103,22 @@ window memory map manager.")
(define-public python-regex
(package
(name "python-regex")
- (version "2019.04.14")
+ (version "2020.6.8")
(source (origin
(method url-fetch)
(uri (pypi-uri "regex" version))
(sha256
(base32
- "1a6hhfs6l6snr1z654ay6wzbmwdkmv282fzfkd5hk2d1n73y8v6m"))))
- ;; TODO: Fix and enable regex_test.py tests that complain about the
- ;; test.support module not existing.
+ "1b3k0zi1pd99q5mk7ri7vcx2y1mq5inm9hk8dryqyhrpkmh4xdp9"))))
(build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (add-installed-pythonpath inputs outputs)
+ (invoke "python" "-c"
+ "from regex.test_regex import test_main; test_main()"))))))
(home-page "https://bitbucket.org/mrabarnett/mrab-regex")
(synopsis "Alternative regular expression module")
(description "This regular expression implementation is backwards-
@@ -18324,6 +18407,50 @@ services to what you expect in your tests.")
(define-public python-ujson
(package
(name "python-ujson")
+ (version "2.0.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "ujson" version))
+ (sha256
+ (base32
+ "18z9gb9ggy1r464b9q1gqs078mqgrkj6dys5a47529rqk3yfybdx"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin (delete-file-recursively "deps") #t))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'link-to-system-double-conversion
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((d-c (assoc-ref inputs "double-conversion")))
+ (substitute* "setup.py"
+ (("./deps/double-conversion/double-conversion\"")
+ (string-append d-c "/include/double-conversion\""))
+ (("-lstdc++" stdc)
+ (string-append "-L" d-c "/lib\","
+ " \"-ldouble-conversion\","
+ " \"" stdc)))
+ #t)))
+ (replace 'check
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (add-installed-pythonpath inputs outputs)
+ (invoke "pytest"))))))
+ (native-inputs
+ `(("double-conversion" ,double-conversion)
+ ("python-setuptools-scm" ,python-setuptools-scm)
+ ("python-pytest" ,python-pytest)))
+ (home-page "https://github.com/ultrajson/ultrajson")
+ (synopsis "Ultra fast JSON encoder and decoder for Python")
+ (description
+ "UltraJSON is an ultra fast JSON encoder and decoder written in pure C with
+bindings for Python 3.")
+ (license license:bsd-3)))
+
+(define-public python-ujson-1
+ (package
+ (inherit python-ujson)
(version "1.35")
(source
(origin
@@ -18332,17 +18459,16 @@ services to what you expect in your tests.")
(sha256
(base32
"11jz5wi7mbgqcsz52iqhpyykiaasila4lq8cmc2d54bfa3jp6q7n"))))
- (build-system python-build-system)
+ (arguments
+ '(#:phases %standard-phases))
+ (native-inputs '())
(home-page "http://www.esn.me")
- (synopsis
- "Ultra fast JSON encoder and decoder for Python")
(description
"UltraJSON is an ultra fast JSON encoder and decoder written in pure C with
- bindings for Python 2.5+ and 3.")
- (license license:bsd-3)))
+bindings for Python 2.5+ and 3.")))
-(define-public python2-ujson
- (package-with-python2 python-ujson))
+(define-public python2-ujson-1
+ (package-with-python2 python-ujson-1))
(define-public python-iocapture
;; The latest release is more than a year older than this commit.
@@ -18749,7 +18875,8 @@ and cuts down boilerplate code when testing libraries for asyncio.")
(uri (pypi-uri "shouldbe" version))
(sha256
(base32
- "16zbvjxf71dl4yfbgcr6idyim3mdrfvix1dv8b95p0s9z07372pj"))))
+ "16zbvjxf71dl4yfbgcr6idyim3mdrfvix1dv8b95p0s9z07372pj"))
+ (patches (search-patches "python-shouldbe-0.1.2-cpy3.8.patch"))))
(build-system python-build-system)
(propagated-inputs
`(("python-forbiddenfruit" ,python-forbiddenfruit)))
@@ -19895,3 +20022,57 @@ allows you, from Python code, to “fix” invalid (X)HTML markup.")
(define-public python2-pytidylib
(package-with-python2 python-pytidylib))
+
+(define-public python-mujson
+ (package
+ (name "python-mujson")
+ (version "1.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "mujson" version))
+ (sha256
+ (base32
+ "0wbj6r8yzsdx2b0kbldlkznr1a9nn33za2q9x3g0hbg420dwzn97"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/mattgiles/mujson")
+ (synopsis "Use the fastest JSON functions available at import time")
+ (description "This packages selects the fastest JSON functions available
+at import time.")
+ (license license:expat)))
+
+(define-public python-bashlex
+ (package
+ (name "python-bashlex")
+ (version "0.14")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "bashlex" version))
+ (sha256
+ (base32
+ "1z9g96fgsfpdwawp4sb5x6hbdhmda7kgmcrqlf9xx4bs1f8f14js"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'pregenerate-yacc-tables
+ (lambda _
+ ;; parser.py caches tables, which attempts to write to site lib
+ ;; see https://github.com/idank/bashlex/issues/51
+ (invoke "python" "-c" "import bashlex"))))))
+ (home-page
+ "https://github.com/idank/bashlex")
+ (synopsis "Python parser for bash")
+ (description "@code{bashlex} is a Python port of the parser used
+internally by GNU bash.
+
+For the most part it's transliterated from C, the major differences are:
+
+@itemize
+@item it does not execute anything
+@item it is reentrant
+@item it generates a complete AST
+@end itemize
+")
+ (license license:gpl3+)))