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.scm933
1 files changed, 779 insertions, 154 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6575589eee..190e199b17 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -82,6 +82,7 @@
;;; Copyright © 2020 Yuval Kogman <nothingmuch@woobling.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
+;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -419,13 +420,13 @@ data for video and audio files.")
(define-public python-psutil
(package
(name "python-psutil")
- (version "5.7.0")
+ (version "5.7.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "psutil" version))
(sha256
- (base32 "03jykdi3dgf1cdal9bv4fq9zjvzj9l9bs99gi5ar81sdl5nc2pk8"))))
+ (base32 "1svv985vmqsls35kmvp3vhh26nsgz229324s9k29awf6qgqhm6ch"))))
(build-system python-build-system)
(arguments
;; FIXME: some tests do not return and time out. Some tests fail because
@@ -561,10 +562,10 @@ and function call return values in a human-readable way.")
(build-system python-build-system)
(native-inputs
`(("python-mock" ,python-mock)))
- (home-page "https://github.com/binstar/clyent")
+ (home-page "https://github.com/Anaconda-Platform/clyent")
(synopsis "Command line client library")
- (description "Clyent is a Python command line utiliy library. It is used
-by @code{binstar}, @code{binstar-build} and @code{chalmers}.")
+ (description "Clyent is a Python command line utility library. It is used
+by @code{binstar}, @code{binstar-build}, and @code{chalmers}.")
(license license:bsd-3)))
(define-public python2-clyent
@@ -651,13 +652,13 @@ and verifies that it matches the intended target hostname.")
(define-public python-bitarray
(package
(name "python-bitarray")
- (version "1.2.1")
+ (version "1.4.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "bitarray" version))
(sha256
(base32
- "1kxrlxfj9nrx512sfwifwl9z4v6ky3qschl0zmk3s3dvc3s7bmif"))))
+ "177fj6wbw5jln54wpp6plcqy2329wjkwqwvgz7022rrg3xfrq49g"))))
(build-system python-build-system)
(home-page "https://github.com/ilanschnell/bitarray")
(synopsis "Efficient arrays of booleans")
@@ -1123,20 +1124,18 @@ multiple Unicode code points, e.g. \"G\" + acute-accent)
(define-public python-humanfriendly
(package
(name "python-humanfriendly")
- (version "4.4.1")
+ (version "8.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "humanfriendly" version))
(sha256
(base32
- "0pisgizjql86785jchfjv217g0lsgk114g2lja5j4y3lsc3b9szi"))))
+ "04ixg8b7p6xc8x8lffhi7wfl77xhszakhd0s6j0cf6a84j8yqlmz"))))
(build-system python-build-system)
(arguments
`(;; XXX: Tests depend on coloredlogs, which in turn depends on humanfriendly.
#:tests? #f))
- (propagated-inputs
- `(("python-monotonic" ,python-monotonic)))
(home-page "https://humanfriendly.readthedocs.io")
(synopsis "Human-friendly input and output in Python")
(description
@@ -1145,10 +1144,16 @@ text interfaces more user-friendly. It includes tools to parse and format
numbers, file sizes, and timespans, timers for long-running operations, menus
to allow the user to choose from a list of options, and terminal interaction
helpers.")
+ (properties `((python2-variant . ,(delay python2-humanfriendly))))
(license license:expat)))
(define-public python2-humanfriendly
- (package-with-python2 python-humanfriendly))
+ (let ((base (package-with-python2
+ (strip-python2-variant python-humanfriendly))))
+ (package (inherit base)
+ (propagated-inputs
+ `(("python2-monotonic" ,python2-monotonic)
+ ,@(package-propagated-inputs base))))))
(define-public python-textparser
(package
@@ -1308,7 +1313,7 @@ bits instead of primitive data types like @code{char}, @code{int}, etc.")
;; not included with the PyPI archive.
(method git-fetch)
(uri (git-reference
- (url "https://github.com/eerimoq/cantools.git")
+ (url "https://github.com/eerimoq/cantools")
(commit version)))
(file-name (git-file-name name version))
(sha256
@@ -1699,14 +1704,14 @@ after Andy Lester’s Perl module WWW::Mechanize.")
(define-public python-simplejson
(package
(name "python-simplejson")
- (version "3.14.0")
+ (version "3.17.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "simplejson" version))
(sha256
(base32
- "1lkv3xlf7ryzi69zqfdbkvpxdfy1rg1rq2yzcnxgf4km5m6difqy"))))
+ "108yf3252fy4ndqab7h46raksxfhcn113bzy2yd8369vidrjnjrb"))))
(build-system python-build-system)
(home-page "http://simplejson.readthedocs.org/en/latest/")
(synopsis
@@ -2048,7 +2053,7 @@ and is not compatible with JSON.")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/SCons/scons.git")
+ (url "https://github.com/SCons/scons")
(commit version)))
(file-name (git-file-name name version))
(sha256
@@ -2391,17 +2396,47 @@ files.")
(define-public python2-pyld
(package-with-python2 python-pyld))
+(define-public python-cli-helpers
+ (package
+ (name "python-cli-helpers")
+ (version "2.0.1")
+ (source
+ (origin
+ ;; There's no source tarball on PyPI.
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dbcli/cli_helpers")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1bg2iw9l5dip0kbs00hajdk2v18wvhssbnq8hdf71278qf0wks5l"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
+ (propagated-inputs
+ `(("python-wcwidth" ,python-wcwidth)
+ ("python-configobj" ,python-configobj)
+ ("python-tabulate" ,python-tabulate)
+ ("python-terminaltables" ,python-terminaltables)))
+ (home-page "https://github.com/dbcli/cli_helpers")
+ (synopsis "Helpers for building command-line apps")
+ (description
+ "CLI Helpers is a Python package that makes it easy to perform common
+tasks when building command-line apps. It's a helper library for command-line
+interfaces.")
+ (license license:bsd-3)))
+
(define-public python-click
(package
(name "python-click")
- (version "7.0")
+ (version "7.1.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "click" version))
(sha256
(base32
- "1mzjixd4vjbjvzb6vylki9w1556a9qmdh35kzmq6cign46av952v"))))
+ "06kbzd6sjfkqan3miwj9wqyddfxc2b6hi7p5s4dvqjb3gif2bdfj"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -2410,12 +2445,13 @@ files.")
(lambda* (#:key inputs #:allow-other-keys)
(let ((glibc (assoc-ref inputs ,(if (%current-target-system)
"cross-libc" "libc"))))
- (substitute* "click/_unicodefun.py"
+ (substitute* "src/click/_unicodefun.py"
(("'locale'")
(string-append "'" glibc "/bin/locale'"))))
#t))
(replace 'check
(lambda _
+ (setenv "PYTHONPATH" (string-append "./src:" (getenv "PYTHONPATH")))
(invoke "python" "-m" "pytest"))))))
(native-inputs
`(("python-pytest" ,python-pytest)))
@@ -2431,6 +2467,18 @@ with sensible defaults out of the box.")
(define-public python2-click
(package-with-python2 python-click))
+(define-public python-click-5
+ (package (inherit python-click)
+ (name "python-click")
+ (version "5.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "click" version))
+ (sha256
+ (base32 "0njsm0wn31l21bi118g5825ma5sa3rwn7v2x4wjd7yiiahkri337"))))
+ (arguments `())))
+
(define-public python-wheel
(package
(name "python-wheel")
@@ -3396,7 +3444,7 @@ software version simply.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/tantale/deprecated.git")
+ (url "https://github.com/tantale/deprecated")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -3432,7 +3480,7 @@ to deprecate classes, functions or methods.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/PyGithub/PyGithub.git")
+ (url "https://github.com/PyGithub/PyGithub")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -3499,7 +3547,7 @@ ecosystem, but can naturally be used also by other projects.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/robotframework/robotframework.git")
+ (url "https://github.com/robotframework/robotframework")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -3548,7 +3596,7 @@ process automation (RPA).")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/boakley/robotframework-lint.git")
+ (url "https://github.com/boakley/robotframework-lint")
(commit commit)))
(file-name (git-file-name name version))
(sha256
@@ -3579,7 +3627,7 @@ utility, a static analysis tool (linter) for Robot Framework source files.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/robotframework/SSHLibrary.git")
+ (url "https://github.com/robotframework/SSHLibrary")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -3808,20 +3856,18 @@ Server (PLS).")
(define-public python-language-server
(package
(name "python-language-server")
- (version "0.32.0")
+ (version "0.34.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-language-server" version))
(sha256
(base32
- "0j5swacmjps9sas1gfwg0xi84rmjhfhz20cwg3k4058d20rs20ip"))))
+ "0gfjjlj7yg2nf8wkbrshwaljkwlqja4n7s1x949f495anmkg8vxr"))))
(build-system python-build-system)
(propagated-inputs
`(("python-pluggy" ,python-pluggy)
("python-jsonrpc-server" ,python-jsonrpc-server)
- ;; Note: Remove the special versions of Jedi and Parso when updating
- ;; this package.
("python-jedi" ,python-jedi)
("python-yapf" ,python-yapf)
("python-pyflakes" ,python-pyflakes)
@@ -3984,7 +4030,7 @@ and is very extensible.")
;; git-reference because tests are not included in pypi source tarball
;; https://issues.guix.gnu.org/issue/36755#2
(uri (git-reference
- (url "https://github.com/projectmallard/mallard-ducktype.git")
+ (url "https://github.com/projectmallard/mallard-ducktype")
(commit version)))
(file-name (git-file-name name version))
(sha256
@@ -4390,7 +4436,7 @@ color scales, and color space conversion easy. It has support for:
,(origin ; The build script expects scipy-sphinx-theme as a git submodule
(method git-fetch)
(uri (git-reference
- (url "https://github.com/scipy/scipy-sphinx-theme.git")
+ (url "https://github.com/scipy/scipy-sphinx-theme")
(commit "c466764e2231ba132c09826b5b138fffa1cfcec3")))
(sha256
(base32
@@ -4480,6 +4526,26 @@ library, libgit2 implements Git plumbing.")
;; GPL2.0 only, with linking exception.
(license license:gpl2)))
+(define-public python-patiencediff
+ (package
+ (name "python-patiencediff")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "patiencediff" version))
+ (sha256
+ (base32
+ "0yjk50lsd4gnllxls925xbcdxwvmda37w2a1shk0p1nvl3fcha6q"))))
+ (build-system python-build-system)
+ (home-page "https://www.breezy-vcs.org/")
+ (synopsis "Python implementation of the patiencediff algorithm")
+ (description
+ "This package contains a Python implementation of the @code{patiencediff}
+algorithm. Patiencediff provides a good balance of performance, nice output for
+humans, and implementation simplicity.")
+ (license license:gpl2)))
+
(define-public python-pyparsing
(package
(name "python-pyparsing")
@@ -4617,7 +4683,7 @@ To address this and enable easy cycling over arbitrary @code{kwargs}, the
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/njsmith/colorspacious.git")
+ (url "https://github.com/njsmith/colorspacious")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -5011,7 +5077,7 @@ as the original project seems to have been abandoned circa 2007.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/pagekite/PySocksipyChain.git")
+ (url "https://github.com/pagekite/PySocksipyChain")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -5234,7 +5300,7 @@ Python's distutils.")
;; source from a (semi-arbitrary, i.e. latest as of now) git commit.
(method git-fetch)
(uri (git-reference
- (url "https://github.com/dieterv/elib.intl.git")
+ (url "https://github.com/dieterv/elib.intl")
(commit "d09997cfef")))
(file-name (string-append name "-" version "-checkout"))
(sha256
@@ -5334,6 +5400,22 @@ a general image processing tool.")
(define-public python2-pillow
(package-with-python2 python-pillow))
+(define-public python-pillow-2.9
+ (package
+ (inherit python-pillow)
+ (version "2.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "Pillow" version))
+ (sha256
+ (base32
+ "0ada7lf3lmbdsqm3b7ja920p1pllyfhmqndr85ikpj77fmz9s5qg"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments python-pillow)
+ ((#:tests? _ #f) #f)))
+ (properties '((hidden? #t)))))
+
(define-public python-roifile
(package
(name "python-roifile")
@@ -5436,11 +5518,12 @@ experimental data and metadata at the Laboratory for Fluorescence Dynamics.")
("python-psutil" ,python-psutil)))
(native-inputs
`(("python-pytest" ,python-pytest)))
- (home-page "https://github.com/imageio/imageio")
- (synopsis "Read and write image, video, scientific, and volumetric data formats")
+ (home-page "https://imageio.github.io/")
+ (synopsis "Library for reading and writing a wide range of image data")
(description
- "This package provides a Python library for reading and writing a wide
-range of image, video, scientific, and volumetric data formats.")
+ "Imageio is a Python library that provides an easy interface to read and
+write a wide range of image data, including animated images, video, volumetric
+data, and scientific formats.")
(license license:bsd-2)))
(define-public python-pycparser
@@ -5530,9 +5613,6 @@ similar to Fourier transforms, the difference being that Fourier transforms are
localized only in frequency instead of in time and frequency.")
(license license:expat)))
-(define-public python2-pywavelets
- (package-with-python2 python-pywavelets))
-
(define-public python-pywinrm
(package
(name "python-pywinrm")
@@ -5781,7 +5861,7 @@ memoizing PEG/Packrat parser in Python.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/pygridtools/gridmap.git")
+ (url "https://github.com/pygridtools/gridmap")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -5812,7 +5892,7 @@ cluster without needing to write any wrapper code yourself.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/nickstenning/honcho.git")
+ (url "https://github.com/nickstenning/honcho")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -5967,6 +6047,29 @@ all the newest features of the standard @code{pathlib} can be used also on
older Python versions.")
(license license:expat)))
+(define-public python-importlib-resources
+ (package
+ (name "python-importlib-resources")
+ (version "3.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "importlib_resources" version))
+ (sha256
+ (base32
+ "1hq626mx5jl9zfl0wdrjkxsnh8qd98fqv322n68b9251xjk4bxqr"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-setuptools-scm" ,python-setuptools-scm)
+ ("python-toml" ,python-toml)))
+ (home-page "http://importlib-resources.readthedocs.io/")
+ (synopsis "Read resources from Python packages")
+ (description
+ "@code{importlib_resources} is a backport of Python 3's standard library
+@code{importlib.resources} module for Python 2.7, and Python 3.")
+ (properties `((python2-variant . ,(delay python2-importlib-resources))))
+ (license license:asl2.0)))
+
(define-public python2-importlib-resources
(package
(name "python2-importlib-resources")
@@ -6963,14 +7066,14 @@ the GObject Introspection bindings to libnotify for non-GTK applications.")
(define-public python-beautifulsoup4
(package
(name "python-beautifulsoup4")
- (version "4.7.1")
+ (version "4.9.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "beautifulsoup4" version))
(sha256
(base32
- "0j2kycz2dxgx68xzjm7rxg5xn6v61gq5ifvxyg99slmqkybnal4l"))))
+ "1mvzlw3pzbhsvl3z8784s5h7iiflm2hggiy1fxyrrxwnbc8lvk3k"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -7006,14 +7109,14 @@ converts incoming documents to Unicode and outgoing documents to UTF-8.")
(define-public python-soupsieve
(package
(name "python-soupsieve")
- (version "1.9.5")
+ (version "2.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "soupsieve" version))
(sha256
(base32
- "1nhd0q0ifwva9wn645s6pn74p1rd97asn3qfg75nphx1wkgcbhg2"))))
+ "0ch2rhvsbwfpvzm4kzy81rclbzr533yv83hzg1gx55byfa0w37d5"))))
(build-system python-build-system)
(arguments `(#:tests? #f))
;;XXX: 2 tests fail currently despite claming they were to be
@@ -7030,10 +7133,19 @@ some are not yet implemented).")
(properties `((python2-variant . ,(delay python2-soupsieve))))
(license license:expat)))
+;; This is the last version that supports python-2
(define-public python2-soupsieve
(let ((base (package-with-python2 (strip-python2-variant python-soupsieve))))
(package
(inherit base)
+ (version "1.9.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "soupsieve" version))
+ (sha256
+ (base32
+ "1apgqxngi1216h1cyvrvj9gy3wf45mh1lz4n76j26jf3k36bm1br"))))
(propagated-inputs
`(("python2-backports-functools-lru-cache"
,python2-backports-functools-lru-cache)
@@ -7382,30 +7494,47 @@ falling into the Python interpreter.")
(define-public python2-q
(package-with-python2 python-q))
-(define-public python2-xlib
+(define-public python-xlib
(package
- (name "python2-xlib")
- (version "0.14")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://sourceforge/python-xlib/python-xlib"
- "/" version "/"
- "python-xlib-" version ".tar.gz"))
- (sha256
- (base32
- "1sv0447j0rx8cgs3jhjl695p5pv13ihglcjlrrz1kq05lsvb0wa7"))))
+ (name "python-xlib")
+ (version "0.27")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/python-xlib/python-xlib")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "09kimic8rhprx3q8nzalc4aggg42ahqm4v5qcj8dm68yvxfdk986"))))
(build-system python-build-system)
(arguments
- `(#:python ,python-2 ;Python 2 only
- #:tests? #f)) ;no tests
- (home-page "http://python-xlib.sourceforge.net/")
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'start-xserver
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((xorg-server (assoc-ref inputs "xorg-server")))
+ ;; There must be a running X server and make check doesn't
+ ;; start one. Therefore we must do it.
+ (system (format #f "~a/bin/Xvfb :1 &" xorg-server))
+ (setenv "DISPLAY" ":1")
+ #t))))))
+ (native-inputs
+ `(("python-mock" ,python-mock)
+ ("python-setuptools-scm" ,python-setuptools-scm)
+ ("python-six" ,python-six)
+ ("xorg-server" ,xorg-server)))
+ (home-page "https://github.com/python-xlib/python-xlib")
(synopsis "Python X11 client library")
(description
- "The Python X Library is intended to be a fully functional X client
-library for Python programs. It is useful to implement low-level X clients.
-It is written entirely in Python.")
+ "The Python X Library is intended to be a fully functional
+X client library for Python programs. It is useful to implement
+low-level X clients. It is written entirely in Python.")
(license license:gpl2+)))
+(define-public python2-xlib
+ (package-with-python2 python-xlib))
+
(define-public python-singledispatch
(package
(name "python-singledispatch")
@@ -8706,7 +8835,7 @@ Python Package Index (PyPI).")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/trendmicro/tlsh.git")
+ (url "https://github.com/trendmicro/tlsh")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -8767,6 +8896,26 @@ a hash value.")
(define-public python2-termcolor
(package-with-python2 python-termcolor))
+(define-public python-terminaltables
+ (package
+ (name "python-terminaltables")
+ (version "3.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "terminaltables" version))
+ (sha256
+ (base32
+ "109vhldk6nv1z3hzp4dyqf6rjvlhl0y2k5k7qcm9fcrq5swhxszk"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/Robpol86/terminaltables")
+ (synopsis
+ "Generate simple tables in terminals from a nested list of strings")
+ (description
+ "This package makes it easy to draw tables in terminal/console
+applications from a list of lists of strings. It supports multi-line rows.")
+ (license license:expat)))
+
(define-public python-libarchive-c
(package
(name "python-libarchive-c")
@@ -10051,7 +10200,7 @@ visual (yet text based) progress to long running operations.")
(base32
"1zvf6zs5hzrc03p9nfs4p16vhilqikycvv1yk0pxn8s07fdhvzji"))))
(build-system python-build-system)
- (home-page "http://github.com/germangh/python-progressbar")
+ (home-page "https://github.com/germangh/python-progressbar")
(synopsis "Text progress bar library for Python")
(description
"This package provides a text progress bar library for Python. This
@@ -11354,6 +11503,29 @@ functionality in a modular way, allowing you to extend your panel with your
own code, responding to click events and updating clock every second.")
(license license:bsd-3)))
+(define-public python2-selectors2
+ (package
+ (name "python2-selectors2")
+ (version "2.0.1")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "selectors2" version))
+ (sha256
+ (base32
+ "110qr00b9axz1f1jm12b495jkvrz80smknxvssqlhwk0dx67rdw1"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:python ,python-2))
+ (native-inputs
+ `(("python2-mock" ,python2-mock)
+ ("python2-psutil" ,python2-psutil)))
+ (home-page "https://www.github.com/SethMichaelLarson/selectors2")
+ (synopsis "Backport of the selectors module from Python 3.5+")
+ (description
+ "This package provides a drop-in replacement for the @code{selectors}
+module in Python 3.5 and later.")
+ (license license:expat)))
+
(define-public python-tblib
(package
(name "python-tblib")
@@ -11400,13 +11572,13 @@ multiple processes (imagine multiprocessing, billiard, futures, celery etc).
(define-public python-greenlet
(package
(name "python-greenlet")
- (version "0.4.15")
+ (version "0.4.16")
(source (origin
(method url-fetch)
(uri (pypi-uri "greenlet" version))
(sha256
(base32
- "1g4g1wwc472ds89zmqlpyan3fbnzpa8qm48z3z1y6mlk44z485ll"))))
+ "0v2571d0av1hz3yx63gvmnrinyn57nnvibg4zkl9frv74b3yl1kf"))))
(build-system python-build-system)
(home-page "https://greenlet.readthedocs.io/")
(synopsis "Lightweight in-process concurrent programming")
@@ -11450,13 +11622,13 @@ graphviz.")
(define-public python-gevent
(package
(name "python-gevent")
- (version "20.5.0")
+ (version "20.6.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "gevent" version))
(sha256
(base32
- "1yppsrs0ccld9j9zfbsd0bxb987b2zkh2ar7whjxcrqzpkvg3iqx"))
+ "1ldmppgghfphdaazjw6wq2i17xcmsjb2jsizfa4cjlg812zjlg52"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -11575,15 +11747,15 @@ graphviz.")
"known_failures.py" "--ignore" "skipped_tests.txt"))))))
(propagated-inputs
`(("python-greenlet" ,python-greenlet)
- ("python-objgraph" ,python-objgraph)))
+ ("python-objgraph" ,python-objgraph)
+ ("python-zope.event" ,python-zope-event)
+ ("python-zope.interface" ,python-zope-interface)))
(native-inputs
`(("python-six" ,python-six)
;; For tests.
("python-dnspython" ,python-dnspython)
- ("python-psutil" ,python-psutil)
- ("python-zope.event" ,python-zope-event)
- ("python-zope.interface" ,python-zope-interface)))
+ ("python-psutil" ,python-psutil)))
(inputs
`(("c-ares" ,c-ares)
("libev" ,libev)))
@@ -11601,18 +11773,19 @@ to provide a high-level synchronous API on top of the libev event loop.")
(package
(inherit base)
(native-inputs `(,@(package-native-inputs base)
- ("python-mock" ,python2-mock))))))
+ ("python-mock" ,python2-mock)
+ ("python2-selectors2" ,python2-selectors2))))))
(define-public python-fastimport
(package
(name "python-fastimport")
- (version "0.9.6")
+ (version "0.9.8")
(source
(origin
(method url-fetch)
(uri (pypi-uri "fastimport" version))
(sha256
- (base32 "1aqjsin4rmqm7ln4j0p73fzxifws6c6ikgyhav7r137m2ixsxl43"))))
+ (base32 "1fb3b7y3sw55f6wykxx478ybkirz0l52lgdqmbhmc0h0jzmyiwmj"))))
(build-system python-build-system)
(home-page "https://github.com/jelmer/python-fastimport")
(synopsis "VCS fastimport parser and generator in Python")
@@ -12182,6 +12355,37 @@ It supports TSIG authenticated messages and EDNS0.")
(define-public python2-dnspython
(package-with-python2 python-dnspython))
+(define-public python-py3dns
+ (package
+ (name "python-py3dns")
+ (version "3.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "py3dns" version))
+ (sha256
+ (base32
+ "1r25f0ys5p37bhld7m7n4gb0lrysaym3w318w2f8bncq7r3d81qz"))))
+ (build-system python-build-system)
+ ;; This package wants to read /etc/resolv.conf. We can't patch it without
+ ;; removing functionality so we copy from Nix and "just don't build it".
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-source
+ (lambda _
+ (substitute* "setup.py"
+ (("import DNS") "")
+ (("DNS.__version__") (string-append "\"" ,version "\"")))
+ #t)))
+ #:tests? #f)) ; Also skip the tests.
+ (home-page "https://launchpad.net/py3dns")
+ (synopsis "Python 3 DNS library")
+ (description "This Python 3 module provides a DNS API for looking up DNS
+entries from within Python 3 modules and applications. This module is a
+simple, lightweight implementation.")
+ (license license:psfl)))
+
(define-public python-email-validator
(package
(name "python-email-validator")
@@ -12754,7 +12958,7 @@ discovery, monitoring and configuration.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/schematics/schematics.git")
+ (url "https://github.com/schematics/schematics")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -13108,21 +13312,21 @@ English stemmer.")
(package-with-python2 python-snowballstemmer))
(define-public python-setproctitle
-(package
- (name "python-setproctitle")
- (version "1.1.10")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "setproctitle" version))
- (sha256
+ (package
+ (name "python-setproctitle")
+ (version "1.1.10")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "setproctitle" version))
+ (sha256
(base32
- "163kplw9dcrw0lffq1bvli5yws3rngpnvrxrzdw89pbphjjvg0v2"))))
- (build-system python-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-before 'check 'patch-Makefile
+ "163kplw9dcrw0lffq1bvli5yws3rngpnvrxrzdw89pbphjjvg0v2"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'patch-Makefile
;; Stricly this is only required for the python2 variant.
;; But adding a phase in an inherited package seems to be
;; cumbersum. So we patch even for python3.
@@ -13133,30 +13337,30 @@ English stemmer.")
(("\\$\\(PYTHON\\) [^ ]which nosetests[^ ] ")
(string-append nose "/bin/nosetests "))))
#t)))
- (replace 'check
+ (replace 'check
(lambda _
(setenv "PYTHON" (or (which "python3") (which "python")))
- (setenv "PYCONFIG" (or (which "python3-config")
- (which "python-config")))
+ (setenv "PYCONFIG" (string-append (or (which "python3-config")
+ (which "python-config"))
+ " --embed"))
(setenv "CC" "gcc")
;; No need to extend PYTHONPATH to find the built package, since
;; the Makefile will build anyway
(invoke "make" "check"))))))
- (native-inputs
- `(("procps" ,procps))) ; required for tests
- (home-page
- "https://github.com/dvarrazzo/py-setproctitle")
- (synopsis
- "Setproctitle implementation for Python to customize the process title")
- (description "The library allows a process to change its title (as displayed
+ (native-inputs
+ `(("procps" ,procps))) ; required for tests
+ (home-page "https://github.com/dvarrazzo/py-setproctitle")
+ (synopsis
+ "Setproctitle implementation for Python to customize the process title")
+ (description "The library allows a process to change its title (as displayed
by system tools such as ps and top).
Changing the title is mostly useful in multi-process systems, for
example when a master process is forked: changing the children's title
allows identifying the task each process is busy with. The technique
is used by PostgreSQL and the OpenSSH Server for example.")
- (license license:bsd-3)
- (properties `((python2-variant . ,(delay python2-setproctitle))))))
+ (license license:bsd-3)
+ (properties `((python2-variant . ,(delay python2-setproctitle))))))
(define-public python2-setproctitle
(let ((base (package-with-python2
@@ -13352,6 +13556,93 @@ network.")
(define-public python2-argcomplete
(package-with-python2 python-argcomplete))
+(define-public python-csscompressor
+ (package
+ (name "python-csscompressor")
+ (version "0.9.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "csscompressor" version))
+ (sha256
+ (base32
+ "018ssffvlpnc1salmnpyl52c11glzzwj4k9f757hl4pkpjnjp8mg"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "py.test"))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
+ (home-page "https://github.com/sprymix/csscompressor")
+ (synopsis "Python port of YUI CSS Compressor")
+ (description
+ "This package provides a python port of YUI CSS Compressor.")
+ (license license:bsd-3)))
+
+(define-public python-rcssmin
+ (package
+ (name "python-rcssmin")
+ (version "1.0.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "rcssmin" version))
+ (sha256
+ (base32
+ "0w42l4dhxghcz7pj3q7hkxp015mvb8z2cq9sfxbl31npsfavd1ya"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "python" "run_tests.py" "tests"))))))
+ (home-page "http://opensource.perlig.de/rcssmin/")
+ (synopsis "CSS Minifier")
+ (description "The minifier is based on the semantics of the YUI compressor,
+which itself is based on the rule list by Isaac Schlueter.")
+ (license license:asl2.0)))
+
+(define-public python-rjsmin
+ (package
+ (name "python-rjsmin")
+ (version "1.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "rjsmin" version))
+ (sha256
+ (base32
+ "0cmc72rlkvzz8fl89bc83czkx0pcvhzj7yn7m29r8pgnf5fcfpdi"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (for-each delete-file (find-files "bench" "\\.js$"))
+ #t))))
+ (build-system python-build-system)
+ (arguments
+ '(#:tests? #f ; Not all test files included.
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key inputs outputs tests? #:allow-other-keys)
+ (add-installed-pythonpath inputs outputs)
+ (if tests?
+ (invoke "py.test" "-vv" "tests")
+ #t))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
+ (home-page "http://opensource.perlig.de/rjsmin/")
+ (synopsis "Javascript Minifier")
+ (description "@code{rJSmin} is a javascript minifier written in Python. The
+minifier is based on the semantics of jsmin.c by Douglas Crockford. The module
+is a re-implementation aiming for speed, so it can be used at runtime (rather
+than during a preprocessing step).")
+ (license license:asl2.0)))
+
(define-public python-xopen
(package
(name "python-xopen")
@@ -14175,6 +14466,27 @@ builds partial trees by inspecting living objects.")
,@(alist-delete "python-typed-ast"
(package-propagated-inputs base)))))))
+(define-public python-isbnlib
+ (package
+ (name "python-isbnlib")
+ (version "3.10.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "isbnlib" version))
+ (sha256
+ (base32
+ "07qhykv0x60d5rsx5pj6s4q15ri4znczscll3xmpf6gyclac1592"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; No test
+ (home-page "https://github.com/xlcnd/isbnlib")
+ (synopsis "Python library to work with ISBN strings")
+ (description "@code{python-isbnlib} is a (pure) python library that provides
+several useful methods and functions to validate, clean, transform, hyphenate and
+get metadata for ISBN strings. Its origin was as the core of isbntools. This short
+version, is suitable to be include as a dependency in other projects.")
+ (license license:lgpl3+)))
+
(define-public python-isort
(package
(name "python-isort")
@@ -14214,7 +14526,7 @@ editors.")
(define-public python2-backports-functools-lru-cache
(package
(name "python2-backports-functools-lru-cache")
- (version "1.5")
+ (version "1.6.1")
(source
(origin
(method url-fetch)
@@ -14222,7 +14534,7 @@ editors.")
(uri (pypi-uri "backports.functools_lru_cache" version))
(sha256
(base32
- "06jgv8gib4fhky0p5cmxdghvsgjyzcdgk48k8pxb1ccf11znk64x"))))
+ "0jidrkk2w6bhjm197plxiaxrav64mgcrign0bfyr7md2ilc5zplg"))))
(build-system python-build-system)
(native-inputs
`(("python2-setuptools-scm" ,python2-setuptools-scm)))
@@ -14258,6 +14570,28 @@ in other versions.")
(define-public python2-configparser
(package-with-python2 python-configparser))
+(define-public python-mamba
+ (package
+ (name "python-mamba")
+ (version "0.11.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "mamba" version))
+ (sha256
+ (base32
+ "0bpbgz9v63rpanjjpc8bnvrr8fkms5rzylh77xrcki1x6az7gnsz"))))
+ (build-system python-build-system)
+ (arguments `(#:tests? #f)) ; No test
+ (propagated-inputs
+ `(("python-clint" ,python-clint)
+ ("python-coverage" ,python-coverage)))
+ (home-page "https://nestorsalceda.com/mamba/")
+ (synopsis "Test runner for Python")
+ (description
+ "Mamba is a Behaviour-Driven Development tool for Python developers.
+Is heavily influenced from RSpec, Mocha, Jasmine or Ginkgo.")
+ (license license:expat)))
+
(define-public python-mando
(package
(name "python-mando")
@@ -15145,7 +15479,7 @@ Swagger 2.0).")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/rochacbruno/flasgger.git")
+ (url "https://github.com/rochacbruno/flasgger")
(commit version)))
(file-name (git-file-name name version))
(sha256
@@ -15335,40 +15669,73 @@ functionality like full case-folding for case-insensitive matches in Unicode.")
(define-public python2-regex
(package-with-python2 python-regex))
-(define-public python2-pyopengl
+(define-public python-pyopengl
(package
- (name "python2-pyopengl")
- (version "3.1.0")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "PyOpenGL" version))
- (sha256
- (base32
- "1byxjj6a8rwzhxhjqlc588zdad2qwxdd7vlam2653ylll31waiwv"))))
- (arguments
- `(#:python ,python-2))
- (build-system python-build-system)
- (home-page "http://pyopengl.sourceforge.net")
- (synopsis "Standard OpenGL bindings for Python")
- (description
- "PyOpenGL is the most common cross platform Python binding to OpenGL and
+ (name "python-pyopengl")
+ (version "3.1.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "PyOpenGL" version))
+ (sha256
+ (base32
+ "091lp9bpqi8yf1nmyg19xmvw611lrzq2q94cl1k5gnlh0c6vl1s1"))))
+ (build-system python-build-system)
+ (inputs
+ `(("mesa" ,mesa)
+ ("freeglut" ,freeglut)
+ ("glu" ,glu)))
+ (arguments
+ `(#:tests? #f ; Tests fail: AttributeError: 'GLXPlatform' object has no
+ ;attribute 'OSMesa'
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'fix-paths
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (substitute* '("OpenGL/platform/ctypesloader.py")
+ (("filenames_to_try = \\[\\]") "filenames_to_try = [name]"))
+ (substitute* '("OpenGL/platform/glx.py" "tests/check_glut_load.py")
+ (("'GL'")
+ (string-append "'" (assoc-ref inputs "mesa") "/lib/libGL.so'"))
+ (("'GLU'")
+ (string-append "'" (assoc-ref inputs "glu") "/lib/libGLU.so'"))
+ (("'glut',")
+ (string-append "'" (assoc-ref inputs "freeglut") "/lib/libglut.so',"))
+ (("'GLESv1_CM'")
+ (string-append "'" (assoc-ref inputs "mesa") "/lib/libGLESv1_CM.so'"))
+ (("'GLESv2'")
+ (string-append "'" (assoc-ref inputs "mesa") "/lib/libGLESv2.so'")))
+ ;; Not providing libgle. It seems to be very old.
+ #t)))))
+ (home-page "http://pyopengl.sourceforge.net")
+ (synopsis "Standard OpenGL bindings for Python")
+ (description
+ "PyOpenGL is the most common cross platform Python binding to OpenGL and
related APIs. The binding is created using the standard @code{ctypes}
library.")
- (license license:bsd-3)))
+ (license license:bsd-3)))
-(define-public python2-pyopengl-accelerate
+(define-public python-pyopengl-accelerate
(package
- (inherit python2-pyopengl)
- (name "python2-pyopengl-accelerate")
- (version "3.1.0")
+ (inherit python-pyopengl)
+ (name "python-pyopengl-accelerate")
+ (version "3.1.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "PyOpenGL-accelerate" version))
(sha256
(base32
- "0464c1ifzk0k92lyndikmvzjgnx1y25r7bkkc8pnxm4kp1q4czwj"))))
+ "01iggy5jwxv7lxnj51zbmlbhag9wcb7dvrbwgi97i90n0a5m3r8j"))))
+ (inputs
+ `(("mesa" ,mesa)
+ ("python-numpy" ,python-numpy))) ; for cython module
+ ; numpy_formathandler, thus not propagated
+ (arguments
+ `(#:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'fix-paths))))
(synopsis "Acceleration code for PyOpenGL")
(description
"This is the Cython-coded accelerator module for PyOpenGL.")))
@@ -15678,7 +16045,7 @@ executed more than a given number of times during a given period.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/kovidgoyal/dukpy.git")
+ (url "https://github.com/kovidgoyal/dukpy")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -16145,7 +16512,7 @@ and works only with Python 2 and NumPy < 1.9.")
(origin (method git-fetch)
;; Source tarball on PyPI doesn't include tests.
(uri (git-reference
- (url "https://github.com/hsoft/send2trash.git")
+ (url "https://github.com/hsoft/send2trash")
(commit version)))
(file-name (git-file-name name version))
(sha256
@@ -16257,7 +16624,7 @@ files, and Makefiles.")
(invoke "py.test"))))))
(native-inputs
`(("python-pytest" ,python-pytest)))
- (home-page "http://github.com/Suor/whatever")
+ (home-page "https://github.com/Suor/whatever")
(synopsis "Make anonymous functions by partial application of operators")
(description "@code{whatever} provides an easy way to make anonymous
functions by partial application of operators.")
@@ -16274,7 +16641,7 @@ functions by partial application of operators.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/Suor/funcy.git")
+ (url "https://github.com/Suor/funcy")
(commit version)))
(sha256
(base32 "1s98vkjnq3zq71737hn8xa15kssvmy1sfzsll3vrlv53902418mw"))
@@ -16289,7 +16656,7 @@ functions by partial application of operators.")
(native-inputs
`(("python-pytest" ,python-pytest)
("python-whatever" ,python-whatever)))
- (home-page "http://github.com/Suor/funcy")
+ (home-page "https://github.com/Suor/funcy")
(synopsis "Functional tools")
(description "@code{funcy} is a library that provides functional tools.
Examples are:
@@ -16393,7 +16760,7 @@ source bytes using the UTF-8 encoding and then rewrites Python 3.6 style
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/python/typed_ast.git")
+ (url "https://github.com/python/typed_ast")
(commit version)))
(sha256
(base32 "0l0hz809f7i356kmqkvfsaswiidb98j9hs9rrjnfawzqcbffzgyb"))
@@ -16834,7 +17201,7 @@ manager compatible with @code{asyncio}.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/miracle2k/python-glob2.git")
+ (url "https://github.com/miracle2k/python-glob2")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -17024,7 +17391,7 @@ user-space file systems in Python.")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/pybind/pybind11.git")
+ (url "https://github.com/pybind/pybind11")
(commit (string-append "v" version))))
(sha256
(base32
@@ -17069,19 +17436,20 @@ inferring type information using compile-time introspection.")
(define-public python-fasteners
(package
(name "python-fasteners")
- (version "0.14.1")
+ (version "0.15")
(source
(origin
(method url-fetch)
(uri (pypi-uri "fasteners" version))
(sha256
(base32
- "063y20kx01ihbz2mziapmjxi2cd0dq48jzg587xdsdp07xvpcz22"))))
+ "1vzmz1xh38b84dv0f4hlp7arwmx8wjlih6lf964bpy8dnyk6s5rs"))))
(build-system python-build-system)
(propagated-inputs
`(("python-monotonic" ,python-monotonic)
- ("python-six" ,python-six)
- ("python-testtools" ,python-testtools)))
+ ("python-six" ,python-six)))
+ (native-inputs
+ `(("python-testtools" ,python-testtools)))
(home-page "https://github.com/harlowja/fasteners")
(synopsis "Python package that provides useful locks")
(description
@@ -17922,7 +18290,7 @@ on regular expressions.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/rholder/retrying.git")
+ (url "https://github.com/rholder/retrying")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -18383,14 +18751,13 @@ time-or-computationally-expensive properties quick and easy and works in Python
(define-public python-folium
(package
(name "python-folium")
- (version "0.10.1")
+ (version "0.11.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "folium" version))
(sha256
- (base32
- "0gcc267wxwxr57ry86pqpbiyfvl0g48hfvgy0f2mz9s58g87kgzd"))))
+ (base32 "19sclsq3xcjfa7bavzjpyn6rl9b15jbc76n5aag4cwhqqamqj1sl"))))
(build-system python-build-system)
(propagated-inputs
`(("python-branca" ,python-branca)
@@ -18720,7 +19087,7 @@ bindings for Python 2.5+ and 3.")))
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/oinume/iocapture.git")
+ (url "https://github.com/oinume/iocapture")
(commit commit)))
(file-name (git-file-name name version))
(sha256
@@ -18760,7 +19127,7 @@ standard error channel (stderr) in your program.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/neithere/argh.git")
+ (url "https://github.com/neithere/argh")
(commit commit)))
(file-name (git-file-name name version))
(sha256
@@ -18878,9 +19245,9 @@ essential tools are located.")
(synopsis
"Parallel graph management and execution in heterogeneous computing")
(description
- "Python-pathos is a framework for heterogenous computing. It provides a
+ "Python-pathos is a framework for heterogeneous computing. It provides a
consistent high-level interface for configuring and launching parallel
-computations across heterogenous resources. Python-pathos provides configurable
+computations across heterogeneous 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)))
@@ -19066,9 +19433,9 @@ and cuts down boilerplate code when testing libraries for asyncio.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1sk9i8czxgsbrswsf1nlb4c82vgnlzi8zrvrxdip92w2z8hqh43y"))))
+ (base32 "1sk9i8czxgsbrswsf1nlb4c82vgnlzi8zrvrxdip92w2z8hqh43y"))
+ (patches (search-patches "python-aionotify-0.2.0-py3.8.patch"))))
(build-system python-build-system)
- (native-inputs `(("python-asynctest" ,python-asynctest)))
(home-page "https://github.com/rbarrois/aionotify")
(synopsis "Asyncio-powered inotify library")
(description
@@ -19589,7 +19956,12 @@ logging in Python. It also provides some custom formatters and handlers.")
"150av2pylsjy8ykrpyi0vzy2q24s9rhh2ya01zvwnvj9j5dspviz"))))
(build-system python-build-system)
(arguments
- `(#:tests? #f))
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "python" "setup.py" "testr" "--slowest"
+ "--testr-args=until-failure"))))))
(propagated-inputs
`(("python-click" ,python-click)
("python-daiquiri" ,python-daiquiri)
@@ -19650,7 +20022,7 @@ HTML-containing files.")
;; sample.json5 is missing from PyPi source tarball
(method git-fetch)
(uri (git-reference
- (url "https://github.com/dpranke/pyjson5.git")
+ (url "https://github.com/dpranke/pyjson5")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -19692,7 +20064,7 @@ replacement for dictionaries where immutability is desired.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/matrix-org/python-unpaddedbase64.git")
+ (url "https://github.com/matrix-org/python-unpaddedbase64")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -20334,3 +20706,256 @@ For the most part it's transliterated from C, the major differences are:
@end itemize
")
(license license:gpl3+)))
+
+(define-public python-jinxed
+ (package
+ (name "python-jinxed")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "jinxed" version))
+ (sha256
+ (base32
+ "1n7vl03rhjd0xhjgbjlh8x9f8yfbhamcwkgvs4jg7g5qj8f0wk89"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'set-environment-variables
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((ncurses (assoc-ref inputs "ncurses")))
+ (setenv "TERM" "LINUX")
+ (setenv "TERMINFO" (string-append ncurses "/share/terminfo"))
+ #t))))
+ #:tests? #f)) ; _curses.error: setupterm: could not find terminal
+ (native-inputs
+ `(("ncurses" ,ncurses)))
+ (home-page "https://github.com/Rockhopper-Technologies/jinxed")
+ (synopsis "Jinxed Terminal Library")
+ (description
+ "Jinxed is an implementation of a subset of the Python curses library.")
+ (license license:mpl2.0)))
+
+(define-public python-blessed
+ (package
+ (name "python-blessed")
+ (version "1.17.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "blessed" version))
+ (sha256
+ (base32
+ "1wdj342sk22hfrg0n91x2qnqsbzbiyq9y009v3pxnvfzn9bx0wbn"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Don't get hung up on Windows test failures.
+ (delete-file "blessed/win_terminal.py") #t))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-jinxed" ,python-jinxed)
+ ("python-six" ,python-six)
+ ("python-wcwidth" ,python-wcwidth)))
+ (native-inputs
+ `(("python-mock" ,python-mock)
+ ("python-pytest" ,python-pytest)))
+ (home-page "https://github.com/jquast/blessed")
+ (synopsis "Wrapper around terminal capabilities")
+ (description
+ "Blessed is a thin, practical wrapper around terminal styling, screen
+positioning, and keyboard input.")
+ (license license:expat)))
+
+(define-public python-readme-renderer
+ (package
+ (name "python-readme-renderer")
+ (version "26.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "readme_renderer" version))
+ (sha256
+ (base32
+ "13fnrv7z3y0yfafzcjbl55cqxncvbxadr72ql4l29pgyvrqxpsfb"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-bleach" ,python-bleach)
+ ("python-docutils" ,python-docutils)
+ ("python-pygments" ,python-pygments)
+ ("python-six" ,python-six)))
+ (native-inputs
+ `(("python-mock" ,python-mock)
+ ("python-pytest" ,python-pytest)))
+ (home-page "https://github.com/pypa/readme_renderer")
+ (synopsis "Render README files in Warehouse")
+ (description
+ "Readme Renderer is a library that will safely render arbitrary README
+files into HTML. It is designed to be used in Warehouse to render the
+@code{long_description} for packages. It can handle Markdown, reStructuredText,
+and plain text.")
+ (license license:asl2.0)))
+
+(define-public python-lazr-delegates
+ (package
+ (name "python-lazr-delegates")
+ (version "2.0.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "lazr.delegates" version))
+ (sha256
+ (base32
+ "1rdnl85j9ayp8n85l0ciip621j9dcziz5qnmv2m7krgwgcn31vfx"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "python" "setup.py" "nosetests"))))))
+ (native-inputs
+ `(("python-nose" ,python-nose)))
+ (propagated-inputs
+ `(("python-zope-interface" ,python-zope-interface)))
+ (home-page "https://launchpad.net/lazr.delegates")
+ (synopsis "Easily write objects that delegate behavior")
+ (description
+ "The @code{lazr.delegates} package makes it easy to write objects that
+delegate behavior to another object. The new object adds some property or
+behavior on to the other object, while still providing the underlying interface,
+and delegating behavior.")
+ (license license:lgpl3)))
+
+(define-public python-lazr-config
+ (package
+ (name "python-lazr-config")
+ (version "2.2.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "lazr.config" version))
+ (sha256
+ (base32
+ "11xpddgyhyj7sf27wbmrq5lnqk21wnprx3ajycgwlxjamh6sgffd"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "python" "-s" "-m" "nose" "-P" "lazr"))))))
+ (native-inputs
+ `(("python-nose" ,python-nose)))
+ (propagated-inputs
+ `(("python-lazr-delegates" ,python-lazr-delegates)
+ ("python-zope-interface" ,python-zope-interface)))
+ (home-page "https://launchpad.net/lazr.config")
+ (synopsis "Create configuration schemas and process and validate configurations")
+ (description
+ "The LAZR config system is typically used to manage process configuration.
+Process configuration is for saying how things change when we run systems on
+different machines, or under different circumstances. This system uses ini-like
+file format of section, keys, and values. The config file supports inheritance
+to minimize duplication of information across files. The format supports schema
+validation.")
+ (license license:lgpl3)))
+
+(define-public python-flufl-bounce
+ (package
+ (name "python-flufl-bounce")
+ (version "3.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "flufl.bounce" version))
+ (sha256
+ (base32
+ "01lg1b0jpf8605mzaz9miq3nray6s7a7gc8n4wzg5nsxl8fglcp4"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-atpublic" ,python-atpublic)
+ ("python-zope-interface" ,python-zope-interface)))
+ (native-inputs
+ `(("python-nose2" ,python-nose2)))
+ (home-page "https://fluflbounce.readthedocs.io/en/latest/")
+ (synopsis "Email bounce detectors")
+ (description "The @code{flufl.bounce} library provides a set of heuristics
+and an API for detecting the original bouncing email addresses from a bounce
+message. Many formats found in the wild are supported, as are VERP and
+RFC 3464.")
+ (license (list license:asl2.0
+ license:lgpl3)))) ; only for setup_headers.py
+
+(define-public python-flufl-i18n
+ (package
+ (name "python-flufl-i18n")
+ (version "3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "flufl.i18n" version))
+ (sha256
+ (base32
+ "1flwpn1xhgc957zj3zxw92dhdjh0lsy0hdvzq32dzqpsajfsvq1r"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-atpublic" ,python-atpublic)))
+ (home-page "https://flufli18n.readthedocs.io")
+ (synopsis "API for Python internationalization")
+ (description
+ "This package provides a high level, convenient API for managing
+internationalization translation contexts in Python application. There is a
+simple API for single-context applications, such as command line scripts which
+only need to translate into one language during the entire course of thei
+execution. There is a more flexible, but still convenient API for multi-context
+applications, such as servers, which may need to switch language contexts for
+different tasks.")
+ (license license:asl2.0)))
+
+(define-public python-flufl-lock
+ (package
+ (name "python-flufl-lock")
+ (version "4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "flufl.lock" version))
+ (sha256
+ (base32
+ "055941zyma3wfx25jhm8wcsghpv3jc3iwi1gdrdjhzcnfhn62lxq"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-atpublic" ,python-atpublic)
+ ("python-psutil" ,python-psutil)))
+ (home-page "https://flufllock.readthedocs.io")
+ (synopsis "NFS-safe file locking with timeouts for POSIX systems")
+ (description
+ "The @dfn{flufl.lock} package provides NFS-safe file locking with
+timeouts for POSIX systems. It is similar to the @code{O_EXCL} option of the
+@code{open} system call but uses a lockfile. Lock objects support lock-breaking
+and have a maximum lifetime built-in.")
+ (license (list license:asl2.0
+ license:lgpl3)))) ; only for setup_helpers.py
+
+(define-public python-flufl-testing
+ (package
+ (name "python-flufl-testing")
+ (version "0.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "flufl.testing" version))
+ (sha256
+ (base32
+ "1nkm95mhcfhl4x5jgs6y97ikszaxsfh07nyawsih6cxxm6l62641"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-nose2" ,python-nose2)))
+ (home-page "https://gitlab.com/warsaw/flufl.testing")
+ (synopsis "Collection of test tool plugins")
+ (description
+ "This package contains a small collection of test tool plugins for
+@code{nose2} and @code{flake8}.")
+ (license license:asl2.0)))