summaryrefslogtreecommitdiff
path: root/gnu/packages/python-xyz.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-03-23 21:45:21 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-03-23 21:45:21 -0400
commit839bb4616f13171a23ad7937bf57d0a01d61d42a (patch)
tree01de78a5ce973b9fb7ac0f9216d64f736f8e163d /gnu/packages/python-xyz.scm
parent0357bbbcd850f9220078a62da3c30358b8983765 (diff)
parentef71e3290916583973724316e815cee840c1b6d8 (diff)
Merge remote-tracking branch 'origin/master' into staging.
With resolved conflicts in: gnu/packages/ibus.scm gnu/packages/image.scm gnu/packages/lisp.scm gnu/packages/virtualization.scm
Diffstat (limited to 'gnu/packages/python-xyz.scm')
-rw-r--r--gnu/packages/python-xyz.scm483
1 files changed, 357 insertions, 126 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e44c88d869..eae05edbd4 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -94,7 +94,7 @@
;;; Copyright © 2020, 2021 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2020 EuAndreh <eu@euandre.org>
;;; Copyright © 2021, 2022 Morgan Smith <Morgan.J.Smith@outlook.com>
-;;; Copyright © 2021, 2022 Sharlatan Hellseher <sharlatanus@gmail.com>
+;;; Copyright © 2021-2023 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2021 Ellis Kenyő <me@elken.dev>
;;; Copyright © 2021 LibreMiami <packaging-guix@libremiami.org>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
@@ -132,6 +132,9 @@
;;; Copyright © 2022 Garek Dyszel <garekdyszel@disroot.org>
;;; Copyright © 2022 Baptiste Strazzulla <bstrazzull@hotmail.fr>
;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr>
+;;; Copyright © 2023 Gabriel Wicki <gabriel@erlikon.ch>
+;;; Copyright © 2023 Amade Nemes <nemesamade@gmail.com>
+;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -257,7 +260,6 @@
#:use-module (gnu packages serialization)
#:use-module (guix packages)
#:use-module (guix download)
- #:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix hg-download)
#:use-module (guix gexp)
@@ -266,7 +268,6 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
- #:use-module (guix build-system trivial)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))
@@ -321,7 +322,7 @@ design}.")
(define-public python-jupytext
(package
(name "python-jupytext")
- (version "1.14.1")
+ (version "1.14.4")
(source
(origin
(method git-fetch)
@@ -330,7 +331,7 @@ design}.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0gqpvphrp2ja9ggadx0rrk0sqbpz6kqqg62qqmw4k17469lphc8c"))))
+ (base32 "19d443vx597zzxna09qpync9iic3mris80bwm3kd8xaxaq0zq9w4"))))
(build-system python-build-system)
(arguments
(list
@@ -353,6 +354,7 @@ design}.")
" and not "))))))))))
(native-inputs
(list git-minimal
+ pre-commit
python-autopep8
python-black
python-flake8
@@ -360,7 +362,6 @@ design}.")
python-isort
python-ipython-genutils
python-jupyter-server
- python-pre-commit
python-pytest
python-pyaml))
(propagated-inputs
@@ -1455,6 +1456,35 @@ top, lsof, netstat, ifconfig, who, df, kill, free, nice, ionice, iostat,
iotop, uptime, pidof, tty, taskset, pmap.")
(license license:bsd-3)))
+(define-public python-scapy
+ (package
+ (name "python-scapy")
+ (version "2.5.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "scapy" version))
+ (sha256
+ (base32
+ "1hpbbmpcn4dwj3z7i7sz4cnbpkaf57p7mvl3p84x9n2gflmhq9jv"))))
+ (arguments
+ '(#:tests? #f)) ; There is a test directory, but apparently no
+ ; automatic testing framework.
+ ;; The package has more optional dependencies such as ipython and
+ ;; matplotlib. If functionality is missing, these should be added.
+ ;; See
+ ;; https://scapy.readthedocs.io/en/latest/installation.html#optional-dependencies
+ (build-system python-build-system)
+ (home-page "https://scapy.net")
+ (synopsis "Python network packet crafting library")
+ (description
+ "Scapy is a Python library and executable for interactively
+manipulating network packets. It can forge or decode packets of a number
+of protocols, send them on the wire, capture them, store or read them
+using pcap files, match requests and replies, and so on.
+It can handle tasks such as scanning, tracerouting, probing, unit tests,
+attacks or network discovery.")
+ (license license:gpl2)))
+
(define-public python-shapely
(package
(name "python-shapely")
@@ -1617,7 +1647,6 @@ etc.")
(native-inputs
(list python-coverage
python-hypothesis
- python-pre-commit
python-py
python-pytest
python-pytest-benchmark
@@ -2527,7 +2556,7 @@ a library.")
(build-system python-build-system)
(arguments
`(#:tests? #f)) ;test suite not included in the release
- (home-page "http://www.grantjenks.com/docs/diskcache/")
+ (home-page "https://www.grantjenks.com/docs/diskcache/")
(synopsis "Disk and file backed cache library")
(description "DiskCache is a disk and file backed persistent cache.")
(license license:asl2.0)))
@@ -3182,7 +3211,7 @@ other Python program.")
(base32
"1f0jjqvamly4hn7f1palvq27z6yr694rfzyxrb6g0ysbbawxkvq9"))))
(build-system python-build-system)
- (home-page "http://agateau.com/projects/doxyqml")
+ (home-page "https://agateau.com/projects/doxyqml")
(synopsis "Doxygen input filter for QML files")
(description
"This package provides a Doxygen input filter for QML files.")
@@ -3804,6 +3833,28 @@ with sensible defaults out of the box.")
(base32 "06kbzd6sjfkqan3miwj9wqyddfxc2b6hi7p5s4dvqjb3gif2bdfj"))))
(arguments `())))
+(define-public python-clickgen
+ (package
+ (name "python-clickgen")
+ (version "2.1.3")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "clickgen" version))
+ (sha256
+ (base32
+ "010j9zz0gd2za5l4hibicypnfw721x0gxp3rr0329bc97vw5maha"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-pillow python-toml python-numpy-next python-attrs))
+ (inputs (list libx11 libpng libxcursor))
+ (native-inputs (list python-wheel))
+ (home-page "https://github.com/ful1e5/clickgen")
+ (synopsis "The hassle-free cursor building toolbox")
+ (description
+ "Clickgen is an API for building X11 and Windows cursors from .png files.
+clickgen is using @code{anicursorgen} and @code{xcursorgen} under the hood.")
+ (license license:expat)))
+
(define-public python-cligj
(package
(name "python-cligj")
@@ -4025,6 +4076,35 @@ cutting and pasting that code over and over.")
to Roman Numerals.")
(license license:psfl)))
+(define-public python-rollbar
+ (package
+ (name "python-rollbar")
+ (version "0.16.3")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "rollbar" version))
+ (sha256
+ (base32
+ "1qpd0j50wqli3867xmhwk65pm1cxjs60yg83mcvcf3kic3y3sc82"))))
+ (build-system python-build-system)
+ (native-inputs (list python-pytest-runner python-unittest2))
+ (inputs (list python-requests python-six python-httpx python-blinker
+ python-webob))
+ (home-page "https://github.com/rollbar/pyrollbar")
+ (synopsis "Notifier for exceptions, errors, and log messages to Rollbar")
+ (description
+ "Python SDK for reporting exceptions, errors, and log messages
+to @url{https://rollbar.com/, Rollbar}.
+
+Capabilities include:
+
+@itemize @bullet
+@item Sending messages and exceptions with arbitrary context
+@item Getting back aggregates
+@item Debugging production issues
+@end itemize")
+ (license license:expat)))
+
(define-public python-unidecode
(package
(name "python-unidecode")
@@ -4089,7 +4169,6 @@ memory usage and transliteration quality.")
(native-inputs
(list python-coverage
python-cryptography
- python-pre-commit
python-pytest
python-sphinx
python-sphinx-rtd-theme))
@@ -4279,6 +4358,40 @@ modules. It creates a special virtual environment such that @command{pip} or
work on your part.")
(license license:expat)))
+(define-public python-virtualenv-clone
+ (package
+ (name "python-virtualenv-clone")
+ (version "0.5.7")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/edwardgeorge/virtualenv-clone")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0p0d1y3axvjfnxlgwjx2374gikc8bmc82g0m7yashihbikh7pcxa"))))
+ (build-system python-build-system)
+ (arguments
+ (list #:phases #~(modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (delete-file "tox.ini")
+ (invoke "pytest" "-vvv" "tests")))))))
+ (native-inputs (list python-pytest
+ python-tox
+ python-virtualenv
+ python-coverage
+ python-wheel
+ python-tomli
+ python-hypothesis))
+ (home-page "https://github.com/edwardgeorge/virtualenv-clone")
+ (synopsis "Clone a non-relocatable virtualenv cleanly")
+ (description
+ "Clone non-relocatable virtualenvs without breaking site-packages.")
+ (license license:expat)))
+
(define-public python-uc-micro-py
(package
(name "python-uc-micro-py")
@@ -4675,7 +4788,7 @@ structure for Python.")
(define-public autokey
(package
(name "autokey")
- (version "0.95.10")
+ (version "0.96.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -4684,41 +4797,45 @@ structure for Python.")
(file-name (git-file-name name version))
(sha256
(base32
- "0f0cqfnb49wwdy7zl2f2ypcnd5pc8r8n7z7ssxkq20d4xfxlgamr"))))
- (build-system python-build-system)
+ "1v19196swihc12bcg0d9s07gfc3a44b9y7g6rqhb82qxm4p8jmbp"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ ;; XXX: skip test depending on .git/
+ (delete-file "tests/test_common.py")))))
+ (build-system pyproject-build-system)
(arguments
(list
- ;; Tests are deprecated and broken until next version, see
- ;; https://github.com/autokey/autokey/issues/327
- #:tests? #f
#:phases
#~(modify-phases %standard-phases
- (add-after 'unpack 'fix-paths
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "lib/autokey/scripting.py"
- (("\"wmctrl\"")
- (string-append "\"" (search-input-file inputs "bin/wmctrl") "\""))
- (("\"zenity\"")
- (string-append "\"" (search-input-file inputs "bin/zenity") "\"")))
- (substitute* "autokey-shell"
- (("'ipython3'")
- (string-append "'" (search-input-file inputs "bin/ipython3") "'"))
- (("'python3'")
- (string-append "'" (search-input-file inputs "bin/python3") "'")))))
;; Use 'prefix' instead of '=' to allow the user to use additional
;; GI paths from their autokey scripts. GUIX_PYTHONPATH is already
;; wrapped with prefix in python-build-system's wrap.
- (add-before 'wrap 'wrap-autokey-gi
- (lambda _
- (let ((gi-typelib-path (getenv "GI_TYPELIB_PATH")))
+ (add-before 'wrap 'wrap-autokey
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((gi-typelib-path (getenv "GI_TYPELIB_PATH"))
+ (path (map dirname
+ ;; see lib/autokey/UI_common_functions.py
+ (list (search-input-file inputs "/bin/wmctrl")
+ (search-input-file inputs "/bin/zenity")
+ (search-input-file inputs "/bin/ipython3")
+ (search-input-file inputs "/bin/python3")))))
(for-each
(lambda (program)
(wrap-program program
+ `("PATH" ":" prefix ,path)
`("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
(map (lambda (name)
(string-append #$output "/bin/" name))
'("autokey-gtk"
- "autokey-shell")))))))))
+ "autokey-shell"))))))
+ (add-before 'check 'setup-env-vars
+ (lambda _
+ ;; tests/test_macro.py wants LANG set
+ (setenv "LANG" "")
+ ;; required for tests/test_configmanager.py
+ (setenv "HOME" "/tmp"))))))
+ (native-inputs (list python-pytest python-pytest-cov python-pyhamcrest))
(inputs
(list bash-minimal ; for wrap-program
gtksourceview-3
@@ -4830,7 +4947,7 @@ leaf preserving the overall structure.")
(invoke "python" "test/alltests.py")
(format #t "test suite not run~%"))
#t)))))
- (home-page "http://docutils.sourceforge.net/")
+ (home-page "https://docutils.sourceforge.net/")
(synopsis "Python Documentation Utilities")
(description
"Docutils is a modular system for processing documentation into useful
@@ -6468,24 +6585,16 @@ readable format.")
(define-public python-pygit2
(package
(name "python-pygit2")
- (version "1.9.2")
+ (version "1.11.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pygit2" version))
(sha256
- (base32 "068bwhirigbh2435abyv4shdxgxvyfqf4dxfmhd4hihivwrl9290"))))
- (build-system python-build-system)
- (arguments
- `(#:phases (modify-phases %standard-phases
- (replace 'check
- (lambda* (#:key tests? #:allow-other-keys)
- (when tests?
- (invoke "pytest" "-v")))))))
- (propagated-inputs
- (list python-cached-property python-cffi libgit2))
- (native-inputs
- (list python-pytest))
+ (base32 "1v34xdvh6i5cn5srwicvp0i2kvv8fzsv0v9p72ng081nsczmhgvr"))))
+ (build-system pyproject-build-system)
+ (propagated-inputs (list python-cffi libgit2))
+ (native-inputs (list python-pytest))
(home-page "https://github.com/libgit2/pygit2")
(synopsis "Python bindings for libgit2")
(description "Pygit2 is a set of Python bindings to the libgit2 shared library.")
@@ -7589,6 +7698,7 @@ retrieve text and metadata from PDFs as well as merge entire files together.")
(package
(name "python-pillow")
(version "9.2.0")
+ (replacement python-pillow/security-fixes)
(source (origin
(method url-fetch)
(uri (pypi-uri "Pillow" version))
@@ -7636,6 +7746,10 @@ a general image processing tool.")
"http://www.pythonware.com/products/pil/license.htm"
"The PIL Software License"))))
+(define-public python-pillow/security-fixes
+ (package-with-patches python-pillow
+ (search-patches "python-pillow-CVE-2022-45199.patch")))
+
(define-public python-pillow-2.9
(package
(inherit python-pillow)
@@ -7675,6 +7789,26 @@ a general image processing tool.")
(description "This package is a fork of Pillow which adds support for SIMD
parallelism.")))
+(define-public python-pixelmatch
+ (package
+ (name "python-pixelmatch")
+ (version "0.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pixelmatch" version))
+ (sha256
+ (base32 "16b0cz136dcmj4dbr505igpql8dmqmr9vni5nbaa5kygjfjkdynh"))))
+ (build-system python-build-system)
+ (native-inputs (list python-pillow))
+ (home-page "https://github.com/whtsky/pixelmatch-py")
+ (synopsis "A pixel-level image comparison library")
+ (description "This package provides a pixel-level image comparison library
+for Python, originally created to compare screenshots in tests. Its features
+include accurate anti-aliased pixels detection and perceptual color difference
+metrics.")
+ (license license:isc)))
+
(define-public python-imagecodecs
(package
(name "python-imagecodecs")
@@ -8587,7 +8721,7 @@ wraps Python's standard library threading and multiprocessing objects.")
("bash-full" ,bash))) ;full Bash for 'test_replwrap.py'
(propagated-inputs
(list python-ptyprocess))
- (home-page "http://pexpect.readthedocs.org/")
+ (home-page "https://pexpect.readthedocs.org/")
(synopsis "Controlling interactive console applications")
(description
"Pexpect is a pure Python module for spawning child applications;
@@ -8649,7 +8783,7 @@ older Python versions.")
"1hq626mx5jl9zfl0wdrjkxsnh8qd98fqv322n68b9251xjk4bxqr"))))
(build-system python-build-system)
(native-inputs (list python-setuptools-scm python-toml))
- (home-page "http://importlib-resources.readthedocs.io/")
+ (home-page "https://importlib-resources.readthedocs.io/")
(synopsis "Read resources from Python packages")
(description
"@code{importlib_resources} is a backport of Python 3's standard library
@@ -8938,7 +9072,7 @@ releases.")
(build-system python-build-system)
(native-inputs
(list unzip))
- (home-page "http://cheeseshop.python.org/pypi/simplegeneric")
+ (home-page "https://cheeseshop.python.org/pypi/simplegeneric")
(synopsis "Python module for simple generic functions")
(description
"The simplegeneric module lets you define simple single-dispatch generic
@@ -9671,7 +9805,7 @@ computing.")
;; https://salsa.debian.org/python-team/packages/urwid/-/blob/debian/2.1.2-2/debian/changelog#L141
(lambda _
(delete-file "urwid/tests/test_vterm.py"))))))
- (home-page "http://urwid.org")
+ (home-page "https://urwid.org")
(synopsis "Console user interface library for Python")
(description
"Urwid is a curses-based UI/widget library for Python. It includes many
@@ -10880,6 +11014,25 @@ addition to a bunch of aliases.")
command pipeline functionality.")
(license license:bsd-3)))
+(define-public python-zipfly
+ (package
+ (name "python-zipfly")
+ (version "6.0.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "zipfly" version))
+ (sha256
+ (base32
+ "1h7g922a8lsqd69j8blgcgg0lcd8kz51b2p4glfqmgx4vi1nkick"))))
+ (build-system python-build-system)
+ (home-page "http://github.com/sandes/zipfly")
+ (synopsis "Zip archive generator")
+ (description "ZipFly is a zip archive generator. It was created to
+generate very large zip archives for immediate sending out to clients, or
+for writing large zip archives without memory inflation.")
+ (license license:bsd-2)))
+
(define-public python-zipstream-new
(package
(name "python-zipstream-new")
@@ -12371,7 +12524,7 @@ native modules.")
(build-system python-build-system)
(native-inputs
(list python-pytest))
- (home-page "http://www.python-excel.org/")
+ (home-page "https://www.python-excel.org/")
(synopsis "Library for extracting data from Excel files")
(description "This package provides a library to extract data from
spreadsheets using Microsoft Excel proprietary file formats @samp{.xls} and
@@ -12403,7 +12556,7 @@ Unicode-aware. It is not intended as an end-user tool.")
(invoke "nosetests" "-v")))))))
(native-inputs
`(("nose" ,python-nose)))
- (home-page "http://www.python-excel.org/")
+ (home-page "https://www.python-excel.org/")
(synopsis "Library for creating spreadsheet Excel files")
(description "@code{xlwt} is a library for writing data and formatting
information to older Excel files (i.e. .xls). The package itself is pure
@@ -12868,7 +13021,7 @@ primary use case is APIs defined before keyword-only parameters existed.")
(base32
"1fnhbi3rmk47l9851gbik0flfr64vs5j0hbqx24cafjap6gprxxf"))))
(build-system python-build-system)
- (home-page "http://pyasn1.sourceforge.net/")
+ (home-page "https://pyasn1.sourceforge.net/")
(synopsis "ASN.1 types and codecs")
(description
"This is an implementation of ASN.1 types and codecs in Python. It is
@@ -14195,7 +14348,7 @@ Jupyter kernels such as IJulia and IRKernel.")
(("def test_other_output") "def _test_other_output")))))))
(propagated-inputs
(list python-ipykernel python-ipython-genutils python-jupyter-client
- python-jupyter-core python-pygments python-pyqt-without-qtwebkit
+ python-jupyter-core python-pygments python-pyqt
python-pyzmq python-qtpy python-traitlets))
(native-inputs
(list python-flaky python-pytest python-pytest-qt))
@@ -14464,7 +14617,7 @@ tasks. It includes single-command deployment for the Django Girls tutorial.")
#t))))
#:tests? #f))
(propagated-inputs (list dialog))
- (home-page "http://pythondialog.sourceforge.net/")
+ (home-page "https://pythondialog.sourceforge.net/")
(synopsis "Python interface to the UNIX dialog utility")
(description
"A Python wrapper for the dialog utility. Its purpose is to
@@ -15256,6 +15409,19 @@ Pytest but stripped of Pytest specific details.")
(home-page "https://pypi.org/project/pluggy/")
(license license:expat)))
+;;; TODO: Make this the default python-pluggy in the next rebuild cycle.
+(define-public python-pluggy-next
+ (package
+ (inherit python-pluggy)
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pluggy" version))
+ (sha256
+ (base32
+ "0n8iadlas2z1b4h0fc73b043c7iwfvx9rgvqm1azjmffmhxkf922"))))))
+
(define-public python-plumbum
(package
(name "python-plumbum")
@@ -16164,7 +16330,7 @@ ISO 8859, etc.).")
(list qtbase-5))
(propagated-inputs
(list python-h5py python-numpy python-pyopengl python-scipy
- python-pyqt-without-qtwebkit))
+ python-pyqt))
(home-page "https://www.pyqtgraph.org")
(synopsis "Scientific graphics and GUI library for Python")
(description
@@ -16954,7 +17120,7 @@ multiple processes (imagine multiprocessing, billiard, futures, celery etc).
(("logging\\.DEBUG")
"logging.INFO"))
(invoke "python" "-m" "unittest" "t/test.py")))))))
- (home-page "http://tftpy.sourceforge.net/")
+ (home-page "https://tftpy.sourceforge.net/")
(synopsis "Python trivial file transfer protocol (TFTP) library")
(description "TFTPy is a trivial file transfer protocol (TFTP) Python
library. It can be used to act both as a TFTP client or TFTP server.")
@@ -19056,7 +19222,7 @@ numbers, real numbers, mixed types and more, and comes with a shell command
(search-patches "python-random2-getrandbits-test.patch"))))
(build-system python-build-system)
(native-inputs (list unzip))
- (home-page "http://pypi.python.org/pypi/random2")
+ (home-page "https://pypi.python.org/pypi/random2")
(synopsis "Python 3 version of the Python 2 @code{random} module")
(description
"This package provides a Python 3 ported version of Python 2.7’s
@@ -20836,7 +21002,7 @@ while only declaring the test-specific fields.")
(build-system python-build-system)
(native-inputs
(list python-pytest))
- (home-page "http://arcp.readthedocs.io/")
+ (home-page "https://arcp.readthedocs.io/")
(synopsis
"Archive and Package URI parser and generator")
(description
@@ -20981,7 +21147,6 @@ while only declaring the test-specific fields.")
(list python-flake8
python-flake8-bugbear
python-mypy
- python-pre-commit
python-pytest
python-pytz
python-simplejson))
@@ -21010,7 +21175,6 @@ datatypes to and from native Python datatypes.")
python-flake8-bugbear
python-flask
python-mock
- python-pre-commit
python-pytest
python-tox))
(home-page "https://github.com/marshmallow-code/marshmallow-jsonapi")
@@ -21046,7 +21210,6 @@ datatypes to and from native Python datatypes.")
python-flake8-bugbear
python-marshmallow
python-mypy
- python-pre-commit
python-pytest
python-pyyaml))
(home-page "https://github.com/marshmallow-code/apispec")
@@ -21074,8 +21237,8 @@ Swagger.")
python-flake8-bugbear
python-flask
python-mock
- python-pre-commit
python-pytest
+ python-pyyaml
python-tornado
python-tox))
(home-page "https://github.com/marshmallow-code/apispec-webframeworks")
@@ -21277,7 +21440,7 @@ functionality like full case-folding for case-insensitive matches in Unicode.")
(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")
+ (home-page "https://pyopengl.sourceforge.net")
(synopsis "Standard OpenGL bindings for Python")
(description
"PyOpenGL is the most common cross platform Python binding to OpenGL and
@@ -23888,7 +24051,7 @@ that is accessible to other projects developed in Cython.")
(propagated-inputs
(list python-sortedcontainers))
(arguments '(#:tests? #f)) ; Tests not included in release tarball.
- (home-page "http://www.grantjenks.com/docs/sortedcollections/")
+ (home-page "https://www.grantjenks.com/docs/sortedcollections/")
(synopsis "Python Sorted Collections")
(description "Sorted Collections is a Python sorted collections library.")
(license license:asl2.0)))
@@ -23914,7 +24077,7 @@ that is accessible to other projects developed in Cython.")
("python-distlib" ,python-distlib)
("python-filelock" ,python-filelock)
("python-six" ,python-six-bootstrap)))
- (home-page "http://www.grantjenks.com/docs/sortedcontainers/")
+ (home-page "https://www.grantjenks.com/docs/sortedcontainers/")
(synopsis "Sorted List, Sorted Dict, Sorted Set")
(description
"This package provides a sorted collections library, written in
@@ -24226,36 +24389,6 @@ Features:
@end itemize")
(license license:asl2.0)))
-(define-public python-pre-commit
- (package
- (name "python-pre-commit")
- (version "2.10.0")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "pre_commit" version))
- (sha256
- (base32 "1ycf6wpxrhxhdzz0vpryhbdxlwik5khgcvp3hxwvfr447a6k84zl"))))
- (build-system python-build-system)
- (arguments
- ;; Tests fail with "AttributeError: module 'pre_commit.resources' has no
- ;; attribute 'empty_template_setup'".
- `(#:tests? #false))
- (propagated-inputs
- (list python-cfgv
- python-identify
- python-importlib-metadata
- python-nodeenv
- python-pyyaml
- python-toml
- python-virtualenv))
- (home-page "https://github.com/pre-commit/pre-commit")
- (synopsis "Framework for managing multi-language pre-commit hooks")
- (description
- "This package provides a framework for managing and maintaining
-multi-language pre-commit hooks.")
- (license license:expat)))
-
(define-public python-precis-i18n
(package
(name "python-precis-i18n")
@@ -24430,19 +24563,33 @@ class in a @acronym{DRY, Don't Repeat Yourself} way.")
(define-public python-construct
(package
(name "python-construct")
- (version "2.10.56")
+ (version "2.10.68")
(source
(origin
- (method url-fetch)
- (uri (pypi-uri "construct" version))
+ ;; There are no tests in the PyPI tarball.
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/construct/construct")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
- (base32
- "0q86jjzsvy835h3c8pjj4619vbp7ihfg8njmyw86ym4qrpni7flp"))))
+ (base32 "1b59kq8scxhn9afqgmksk45n53gawylqm8gw3k0vmljg274xi7vf"))))
(build-system python-build-system)
(arguments
- `(#:tests? #f)) ; No tests exist.
+ (list #:phases
+ #~(modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "pytest" "-v" "tests/")))))))
+ (native-inputs
+ (list python-pytest python-pytest-benchmark))
(propagated-inputs
- (list python-extras python-arrow python-numpy python-ruamel.yaml))
+ (list python-arrow
+ python-cloudpickle
+ python-lz4
+ python-numpy
+ python-ruamel.yaml))
(home-page "https://construct.readthedocs.io")
(synopsis "Declarative and symmetrical parser and builder for binary data")
(description
@@ -25071,19 +25218,16 @@ for manual interpretation.")
(define-public python-bibtexparser
(package
(name "python-bibtexparser")
- (version "1.1.0")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "bibtexparser" version))
- (sha256
- (base32
- "0zwhfkrzf3n5847dbnfng92k7ak199l9v6x6ax3dgdidfpm6d2fz"))))
+ (version "1.4.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "bibtexparser" version))
+ (sha256
+ (base32
+ "1rmc178qqb8814v3pcfv4qgl8rxmkd11d56limkqmi776jyf4z6a"))))
(build-system python-build-system)
- (propagated-inputs
- (list python-pyparsing))
- (native-inputs
- (list python-future))
+ (propagated-inputs (list python-pyparsing))
+ (native-inputs (list python-future))
(home-page "https://github.com/sciunto-org/python-bibtexparser")
(synopsis "Python library to parse BibTeX files")
(description "BibtexParser is a Python library to parse BibTeX files.")
@@ -27009,7 +27153,7 @@ accessor layer.")
(define-public pyzo
(package
(name "pyzo")
- (version "4.12.5")
+ (version "4.12.7")
(source
(origin
(method git-fetch)
@@ -27019,7 +27163,7 @@ accessor layer.")
(file-name (git-file-name name version))
(sha256
(base32
- "0938dk9z1l248756h4z08si4n1i2rj02lbwgd04x49p97iclgwrn"))))
+ "15c92l0g3fziyn6cmjrbr57bz70cz8w282yjb370r36x2bpykbii"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -27159,7 +27303,7 @@ be necessary when using @code{cmd}.")
(("ctypes\\.util\\.find_library\\('tidy'\\)")
(format #f "'~a'" libtidy)))
#t))))))
- (inputs (list tidy))
+ (inputs (list tidy-html))
(home-page "https://github.com/countergram/pytidylib")
(synopsis "Python wrapper for HTML Tidy library")
(description
@@ -27673,17 +27817,17 @@ By default it uses the open Python vulnerability database Safety DB.")
(define-public python-pypandoc
(package
(name "python-pypandoc")
- (version "1.6.4")
+ (version "1.7.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pypandoc" version))
(sha256
(base32
- "149basv4pvzg9zm74cjz68x8s2n5fykyj7prgysb0qfmja73r83f"))))
+ "0l6a8ngzpx363q2jskxxkx6psfhqrvc4js80dmn16r3vw6m2cb40"))))
(build-system python-build-system)
(inputs
- (list pandoc))
+ (list pandoc python-pandocfilters))
(propagated-inputs
`(("wheel" ,python-wheel)))
(native-inputs
@@ -29240,8 +29384,7 @@ cons cells in Python.")
python-black
python-sympy
python-versioneer
- python-coverage
- python-pre-commit))
+ python-coverage))
(propagated-inputs
(list python-toolz python-cons python-multipledispatch
python-etuples python-logical-unification))
@@ -30054,7 +30197,7 @@ PyRSS2Gen builds the feed up by using a XML generator.")
(sha256
(base32 "12rznbnswfw0w7qfbvmmffr9r317gl1rqg36nijwzsklkjgks4fq"))))
(build-system python-build-system)
- (home-page "http://yapsy.sourceforge.net")
+ (home-page "https://yapsy.sourceforge.net")
(synopsis "Simple plugin system for Python applications")
(description "Yapsy, or Yet Another Plugin SYstem, is a small library
implementing the core mechanisms needed to build a plugin system into a wider
@@ -30707,7 +30850,7 @@ running and analyzing benchmarks. It features a simple API that can:
(when tests?
(invoke "pytest")))))))
(native-inputs (list python-pytest))
- (home-page "http://pydispatcher.sourceforge.net")
+ (home-page "https://pydispatcher.sourceforge.net")
(synopsis "Multi-producer-multi-consumer signal dispatching mechanism")
(description "PyDispatcher is an enhanced version of Patrick K. O’Brien’s
original @code{dispatcher.py} module. It provides the Python programmer with
@@ -30718,6 +30861,27 @@ provide the ability to selectively apply arguments to callable objects
and to reference instance methods using weak-references.")
(license license:bsd-3)))
+(define-public python-pyee
+ (package
+ (name "python-pyee")
+ (version "9.0.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyee" version))
+ (sha256
+ (base32 "0cjbxbqr9f8bn2h3ra69d550qj2r1hmsgrh5nx31ywmwia9c8w17"))))
+ (build-system python-build-system)
+ (propagated-inputs (list python-typing-extensions))
+ (native-inputs (list python-twisted python-trio))
+ (home-page "https://github.com/jfhbrook/pyee")
+ (synopsis "Emit events with Python")
+ (description
+ "This package provides a port of node.js's EventEmitter to python.
+Additionally, it includes a number of subclasses useful for implementing async
+and threaded programming in python, such as async/await.")
+ (license license:expat)))
+
(define-public python-queuelib
(package
(name "python-queuelib")
@@ -30765,7 +30929,7 @@ fashion.")
(substitute* "prober.py"
(("cmd = .cc")
(string-append "cmd = \"" #$(cc-for-target)))))))))
- (home-page "http://semanchuk.com/philip/posix_ipc/")
+ (home-page "https://semanchuk.com/philip/posix_ipc/")
(synopsis "POSIX IPC primitives for Python")
(description
"This package provides POSIX IPC primitives - semaphores, shared memory and
@@ -31729,6 +31893,52 @@ shared objects, and lift them up to the executable referenced by absolute
path.")
(license license:expat)))
+(define-public staticsite
+ (package
+ (name "staticsite")
+ (version "2.3")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/spanezz/staticsite")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1rhr25xydvnlrrcz389j3f6nknmczm5x11cagrji1qww70piwy08"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'use-themes-in-output
+ (lambda _
+ (substitute* "staticsite/global_settings.py"
+ (("/usr/share/staticsite") #$output))))
+ (add-after 'install 'install-themes
+ (lambda _
+ (let ((themedir (string-append #$output "/themes")))
+ (copy-recursively "themes" themedir)))))))
+ (native-inputs
+ (list perl-image-exiftool
+ python-dateutil
+ python-docutils
+ python-jinja2
+ python-markdown
+ python-pillow
+ python-pyinotify
+ python-pytz
+ python-pyyaml
+ python-ruamel.yaml
+ python-slugify
+ python-tornado
+ tzdata-for-tests))
+ (home-page "https://github.com/spanezz/staticsite")
+ (synopsis "Static site generator")
+ (description "Statistic is a static site generator based on Markdown and
+Jinja2.")
+ (license (list license:gpl3+ license:expat))))
+
(define-public python-pymonad
(package
(name "python-pymonad")
@@ -31766,6 +31976,27 @@ functions
@end itemize")
(license license:bsd-3)))
+(define-public python-markdown-strings
+ (package
+ (name "python-markdown-strings")
+ (version "3.3.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/awesmubarak/markdown_strings.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0064ni7s3k8hqw61wi9m31icxp61f8adhija2qsp46hclcwx7vz2"))))
+ (build-system python-build-system)
+ (propagated-inputs (list python-lxml python-six))
+ (home-page "https://github.com/awesmubarak/markdown_strings")
+ (synopsis "Python library to create markdown-formatted text")
+ (description "This package allows the programmatic creation of
+markdown-compliant strings.")
+ (license license:expat)))
+
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar