From 74c5a6afa6d1691bc939b86fe9baeb7390f418aa Mon Sep 17 00:00:00 2001 From: Troy Figiel Date: Sat, 30 Dec 2023 11:44:31 +0100 Subject: gnu: Add python-hdf5storage. * gnu/packages/python-xyz.scm (python-hdf5storage): New variable. Change-Id: If54c5f4b634658854bbe9312dce194643fe23733 --- gnu/packages/python-xyz.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index f8bb943122..c102aad161 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -2279,6 +2279,30 @@ access to HDF5 files, datasets and groups using established Python and NumPy concepts.") (license license:bsd-3))) +(define-public python-hdf5storage + (package + (name "python-hdf5storage") + (version "0.1.19") + (source + (origin + (method url-fetch) + (uri (pypi-uri "hdf5storage" version)) + (sha256 + (base32 "11pgxsqap9l7jsf52649q9mpj8a0w6p9im929lpr9s26ynnnn6ks")))) + (build-system pyproject-build-system) + (propagated-inputs (list python-h5py python-numpy)) + (native-inputs (list python-nose)) + (home-page "https://github.com/frejanordsiek/hdf5storage") + (synopsis "Read and write Python data types from and to HDF5 files") + (description + "This Python package provides high-level utilities to read and write a +variety of Python types from and to @acronym{HDF5, Hierarchical Data Format} +formatted files. This package also provides support for MATLAB MAT v7.3 +formatted files, which are HDF5 files with a different extension and some +extra metadata. Because HDF5 and MAT files might need to be read from +untrusted sources, pickling is avoided in this package.") + (license license:bsd-2))) + (define-public python-hjson ;; Using commit from master branch as the PyPI version does not contain ;; the hjson/tests/ directory. -- cgit v1.2.3 From 5137af3e2060699434bb5a515b94dd74dad2f6f6 Mon Sep 17 00:00:00 2001 From: Troy Figiel Date: Mon, 1 Jan 2024 18:23:40 +0100 Subject: gnu: Add python-jaraco-text. * gnu/packages/python-xyz.scm (python-jaraco-text): New variable. Signed-off-by: Mathieu Othacehe --- gnu/packages/python-xyz.scm | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index c102aad161..72070f6f3c 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -145,7 +145,7 @@ ;;; Copyright © c4droid ;;; Copyright © 2023 Janneke Nieuwenhuizen ;;; Copyright © 2023 Attila Lendvai -;;; Copyright © 2023 Troy Figiel +;;; Copyright © 2023, 2024 Troy Figiel ;;; ;;; This file is part of GNU Guix. ;;; @@ -10562,6 +10562,41 @@ releases.") (description "This package provides testing support by jaraco.") (license license:expat))) +(define-public python-jaraco-text + (package + (name "python-jaraco-text") + (version "3.12.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "jaraco.text" version)) + (sha256 + (base32 "0b2rmx0sa61f75lkkr4nfaj3mkgmn3x9c1akpwarfbmksk42b7iq")))) + (build-system pyproject-build-system) + ;; Do not test pyproject.toml with python-pytest-checkdocs as it tries to + ;; download dependencies. + (arguments + '(#:test-flags '("-k" "not project"))) + (propagated-inputs (list python-autocommand python-inflect + python-jaraco-context python-jaraco-functools + python-more-itertools)) + ;; TODO: Add python-pytest-ruff to native-inputs once it has been + ;; packaged. + (native-inputs (list python-pytest + python-pytest-black + python-pytest-checkdocs + python-pytest-cov + python-pytest-enabler + python-pytest-mypy)) + (home-page "https://github.com/jaraco/jaraco.text") + (synopsis "Provides various routines for text manipulation") + (description + "This package provides handy routines for dealing with text, +such as wrapping, substitution, trimming, stripping, prefix and suffix +removal, line continuation, indentation, comment processing, identifier +processing, values parsing, case insensitive comparison, and more.") + (license license:expat))) + (define-public python-simplegeneric (package (name "python-simplegeneric") -- cgit v1.2.3 From da2c3005191929b3a0990615c3e9053a669d53b3 Mon Sep 17 00:00:00 2001 From: Troy Figiel Date: Mon, 1 Jan 2024 18:34:38 +0100 Subject: gnu: Add python-jaraco-collections. * gnu/packages/python-xyz.scm (python-jaraco-collections): New variable. Signed-off-by: Mathieu Othacehe --- gnu/packages/python-xyz.scm | 61 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 72070f6f3c..99d9a79744 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -10398,6 +10398,67 @@ finding unresolved symbols in Python code and their corresponding imports.") class constructs.") (license license:expat))) +(define-public python-jaraco-collections + (package + (name "python-jaraco-collections") + (version "5.0.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "jaraco.collections" version)) + (sha256 + (base32 "0s7y3jr7c173k38pck1b17kxnvx2fl0qh9m9gdf64pr9kz8fi00n")))) + (build-system pyproject-build-system) + ;; Do not test pyproject.toml with python-pytest-checkdocs as it tries to + ;; download dependencies. + (arguments + '(#:test-flags '("-k" "not project"))) + (propagated-inputs (list python-jaraco-text)) + ;; TODO: Add python-pytest-ruff to native-inputs once it has been + ;; packaged. + (native-inputs (list python-pytest + python-pytest-black + python-pytest-checkdocs + python-pytest-cov + python-pytest-enabler + python-pytest-mypy)) + (home-page "https://github.com/jaraco/jaraco.collections") + (synopsis "Provides various collection objects") + (description + "This package provides models and classes to supplement the +standard library @code{collections} module. Examples include +@itemize +@item +RangeMap: A mapping that accepts a range of values for keys. +@item +Projection: A subset over an existing mapping. +@item +KeyTransformingDict: Generalized mapping with keys transformed by a function. +@item +FoldedCaseKeyedDict: A dict whose string keys are case-insensitive. +@item +BijectiveMap: A map where keys map to values and values back to their keys. +@item +ItemsAsAttributes: A mapping mix-in exposing items as attributes. +@item +IdentityOverrideMap: A map whose keys map by default to themselves unless overridden. +@item +FrozenDict: A hashable, immutable map. +@item +Enumeration: An object whose keys are enumerated. +@item +Everything: A container that contains all things. +@item +Least, Greatest: Objects that are always less than or greater than any other. +@item +pop_all: Return all items from the mutable sequence and remove them from that sequence. +@item +DictStack: A stack of dicts, great for sharing scopes. +@item +WeightedLookup: A specialized RangeMap for selecting an item by weights. +@end itemize") + (license license:expat))) + ;;; Variant used to break a cycle with python-pytest-enabler. (define-public python-jaraco-context-bootstrap (hidden-package -- cgit v1.2.3 From def734936f4dbe320f3102a0a646f0f478b0eaa6 Mon Sep 17 00:00:00 2001 From: Troy Figiel Date: Sat, 30 Dec 2023 11:36:37 +0100 Subject: gnu: python-h5py: Enable tests. * gnu/packages/python-xyz.scm (python-h5py)[native-inputs]: Add python-ipython and python-pytest. Change-Id: Ia1cae8bce802805c9d9b38a3bf515423f9b719b4 Signed-off-by: Mathieu Othacehe --- gnu/packages/python-xyz.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 99d9a79744..329b5f1b70 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -2257,8 +2257,7 @@ library.") "0pyr6z4h2xqbp49yx2i1401gl6yqh03h771zslwcy0201hpxiskg")))) (build-system python-build-system) (arguments - `(#:tests? #f ; no test target - #:phases + '(#:phases (modify-phases %standard-phases (add-after 'unpack 'fix-hdf5-paths (lambda* (#:key inputs #:allow-other-keys) @@ -2268,7 +2267,7 @@ library.") (inputs (list hdf5-1.10)) (native-inputs - (list python-cython python-pkgconfig pkg-config)) + (list python-cython python-ipython python-pkgconfig python-pytest pkg-config)) (home-page "https://www.h5py.org/") (synopsis "Read and write HDF5 files from Python") (description -- cgit v1.2.3 From 76470d47c56c2abc67e9a5dc20acd67f0426fd02 Mon Sep 17 00:00:00 2001 From: Troy Figiel Date: Sat, 30 Dec 2023 12:06:37 +0100 Subject: gnu: python-h5py: Reformat with guix style. * gnu/packages/python-xyz.scm (python-h5py): Reformat with guix style. Change-Id: I9c8fabcb8a438909ff70a2c98c9e01b3a82079f3 Signed-off-by: Mathieu Othacehe --- gnu/packages/python-xyz.scm | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 329b5f1b70..1ed0b24199 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -2250,24 +2250,21 @@ library.") (version "3.8.0") (source (origin - (method url-fetch) - (uri (pypi-uri "h5py" version)) - (sha256 - (base32 - "0pyr6z4h2xqbp49yx2i1401gl6yqh03h771zslwcy0201hpxiskg")))) + (method url-fetch) + (uri (pypi-uri "h5py" version)) + (sha256 + (base32 "0pyr6z4h2xqbp49yx2i1401gl6yqh03h771zslwcy0201hpxiskg")))) (build-system python-build-system) (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'fix-hdf5-paths - (lambda* (#:key inputs #:allow-other-keys) - (setenv "HDF5_DIR" (assoc-ref inputs "hdf5"))))))) - (propagated-inputs - (list python-six python-numpy)) - (inputs - (list hdf5-1.10)) - (native-inputs - (list python-cython python-ipython python-pkgconfig python-pytest pkg-config)) + '(#:phases (modify-phases %standard-phases + (add-after 'unpack 'fix-hdf5-paths + (lambda* (#:key inputs #:allow-other-keys) + (setenv "HDF5_DIR" + (assoc-ref inputs "hdf5"))))))) + (propagated-inputs (list python-six python-numpy)) + (inputs (list hdf5-1.10)) + (native-inputs (list pkg-config python-cython python-ipython + python-pkgconfig python-pytest)) (home-page "https://www.h5py.org/") (synopsis "Read and write HDF5 files from Python") (description -- cgit v1.2.3 From fe9a30f2f662c8289d40c55979de43aee58a88e9 Mon Sep 17 00:00:00 2001 From: Troy Figiel Date: Sun, 7 Jan 2024 18:06:10 +0100 Subject: gnu: Add python-multimethod. * gnu/packages/python-xyz.scm (python-multimethod): New variable. Signed-off-by: Mathieu Othacehe --- gnu/packages/python-xyz.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 1ed0b24199..46a5e81cb4 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -31744,6 +31744,30 @@ graph can be output for rendering by GraphViz or yEd.") function implementations based on the types of the arguments.") (license license:bsd-3))) +(define-public python-multimethod + (package + (name "python-multimethod") + (version "1.10") + (source + (origin + ;; No tests in the PyPI tarball. + (method git-fetch) + (uri (git-reference + (url "https://github.com/coady/multimethod") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "07xv92q7f4bkp6dzkqvcv0zxr11729qdak4s3ldmbhdwgsf44g5h")))) + (build-system pyproject-build-system) + (native-inputs (list python-pytest)) + (home-page "https://github.com/coady/multimethod") + (synopsis "Python support for multiple argument dispatching") + (description + "This package provides a decorator for adding multiple argument +dispatching to functions. The decorator creates a multimethod object as +needed and registers the function with its annotations.") + (license license:asl2.0))) + (define-public python-logical-unification (package (name "python-logical-unification") -- cgit v1.2.3 From ea785c2bb83ba6c2fb650e008f0bb8b7bbc25f4a Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Sat, 23 Dec 2023 16:33:25 +0100 Subject: gnu: python-wand: Fix libmagick access. * gnu/packages/python-xyz.scm (python-wand): [build-system]: Use pyproject-build-system. [arguments](phases): Delete phase check. Replace phase find-magickwand by phase harcode-lib-path. Change-Id: I3ddf7045a404f76743c14a5b8183ce9f3196ffd1 Signed-off-by: Mathieu Othacehe --- gnu/packages/python-xyz.scm | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 46a5e81cb4..37d7dd0dd5 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -2594,18 +2594,18 @@ conventions and aliases in the same expression.") (uri (pypi-uri "Wand" version)) (sha256 (base32 "1jpwm956vm35hmgjndr2jwrcql0bwvpsl88q5nr0x8ppxa2380gm")))) - (build-system python-build-system) + (build-system pyproject-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'find-magickwand - (lambda* (#:key inputs #:allow-other-keys) - (setenv "MAGICK_HOME" (assoc-ref inputs "imagemagick")) - (setenv "WAND_MAGICK_LIBRARY_SUFFIX" ".Q16"))) - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (invoke "pytest" "-vv"))))))) + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'hardcode-lib-path + (lambda _ + (substitute* "wand/api.py" + (("os\\.environ\\.get\\('MAGICK_HOME'\\)") + (string-append "\"" #$(this-package-input "imagemagick") "\"")) + (("os\\.environ\\.get\\('WAND_MAGICK_LIBRARY_SUFFIX'\\)") + "\".Q16\""))))))) (native-inputs (list python-pytest)) (inputs -- cgit v1.2.3 From 1e3f1f9f92c1d3727d1ef69aa11455286abd0ebc Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Mon, 15 Jan 2024 20:56:22 +0000 Subject: gnu: Remove python-activepapers. This package fails to build and has been not maintained since 2017. * gnu/packages/python-xyz.scm (python-activepapers): Remove variable. Reported-by: Troy Figiel Change-Id: Id1e968cd4e06919a80ad05e5c8d3fb207426fdde --- gnu/packages/python-xyz.scm | 52 --------------------------------------------- 1 file changed, 52 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 37d7dd0dd5..52895212ad 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -24135,58 +24135,6 @@ profiling, and getting datetime-aware @acronym{UTC, Coordinated Universal Time} values as well as an event scheduler.") (license license:expat))) -(define-public python-activepapers - (package - (name "python-activepapers") - (version "0.2.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "ActivePapers.Py" version)) - (sha256 - (base32 - "12wkhjh90ffipjzv10swndp2xv9hd7xrxvg6v0n4n3i411pj4xb8")))) - (build-system python-build-system) - (arguments - `(#:modules ((ice-9 ftw) - (srfi srfi-1) - (guix build utils) - (guix build python-build-system)) - - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'delete-python2-code - (lambda _ - (for-each delete-file - '("lib/activepapers/builtins2.py" - "lib/activepapers/standardlib2.py" - "lib/activepapers/utility2.py")))) - (replace 'check - (lambda _ - ;; Deactivate the test cases that download files - (setenv "NO_NETWORK_ACCESS" "1") - ;; For some strange reason, some tests fail if nosetests runs all - ;; test modules in a single execution. They pass if each test - ;; module is run individually. - (for-each (lambda (filename) - (invoke "nosetests" - (string-append "tests/" filename))) - (scandir "tests" - (lambda (filename) - (string-suffix? ".py" filename))))))))) - (native-inputs - (list python-tempdir python-nose)) - (propagated-inputs - (list python-h5py)) - (home-page "https://www.activepapers.org/") - (synopsis "Executable papers for scientific computing") - (description - "ActivePapers is a tool for working with executable papers, which -combine data, code, and documentation in single-file packages, -suitable for publication as supplementary material or on repositories -such as figshare or Zenodo.") - (license license:bsd-3))) - (define-public python-semver (package (name "python-semver") -- cgit v1.2.3 From bba2fa646d6367a332288768d9ace01e00e61187 Mon Sep 17 00:00:00 2001 From: Troy Figiel Date: Sat, 13 Jan 2024 18:58:33 +0100 Subject: gnu: Add python-krb5. * gnu/packages/python-xyz.scm (python-krb5): New variable. Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-xyz.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 52895212ad..9c982126a2 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -19500,6 +19500,25 @@ and pluralizes English words, and transforms strings from CamelCase to underscored string.") (license license:expat))) +(define-public python-krb5 + (package + (name "python-krb5") + (version "0.5.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "krb5" version)) + (sha256 + (base32 "1jivws8dsscsmyqngbc71r4qw8qmn98pqmhylz01r5dd1ljfw9bi")))) + (build-system pyproject-build-system) + (inputs (list mit-krb5)) + (native-inputs (list python-cython python-k5test python-pytest)) + (home-page "https://github.com/jborean93/pykrb5") + (synopsis "Kerberos API bindings for Python") + (description "This library provides Python functions that wraps the +Kerberos 5 C API.") + (license license:expat))) + (define-public python-pylev (package (name "python-pylev") -- cgit v1.2.3 From 7061f0b1d0b5d8f62a59479ad99ed0c8843e3aef Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Mon, 15 Jan 2024 21:27:48 +0000 Subject: gnu: python-pyspnego: Propagate python-krb5. * gnu/packages/python-xyz.scm (python-pyspnego)[propagated-inputs]: Add python-krb5. Change-Id: I2c8ccbd66394cb90ea047f7327d05ecbfe2ec22d --- gnu/packages/python-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 9c982126a2..1ca5d7f8fd 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -7643,7 +7643,7 @@ color scales, and color space conversion easy. It has support for: (native-inputs (list python-pytest python-pytest-mock)) (propagated-inputs - (list python-cryptography python-gssapi python-ruamel.yaml)) + (list python-cryptography python-gssapi python-krb5 python-ruamel.yaml)) (home-page "https://github.com/jborean93/pyspnego") (synopsis "Python SPNEGO library") (description "The @code{pyspnego} Python library handles Negotiate, NTLM, -- cgit v1.2.3 From 7a2d1287795318d40850949c88679fcbb4f78b4b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 15 Jan 2024 22:31:53 +0100 Subject: gnu: Add python-namex. * gnu/packages/python-xyz.scm (python-namex): New variable. Change-Id: I02d4ed5e426f0b432c27086aa90628ae54759ca2 --- gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 1ca5d7f8fd..f224ab4eb8 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -21104,6 +21104,26 @@ JSON) codec.") ;; number of files with other licenses. (list license:gpl2+ license:asl2.0 license:lgpl2.1+ license:cc-by-sa3.0)))) +(define-public python-namex + (package + (name "python-namex") + (version "0.0.7") + (source + (origin + (method url-fetch) + (uri (pypi-uri "namex" version)) + (sha256 + (base32 "16ynrq245c3nywv476izrc4bcacm9gxjzgr67ng91g929ny6bfl4")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #false)) ;there are none + (home-page "https://github.com/fchollet/namex") + (synopsis + "Separate implementation and public API surface of Python packages") + (description + "This package provides a simple utility to separate the +implementation of your Python package and its public API surface.") + (license license:asl2.0))) + (define-public python-natsort (package (name "python-natsort") -- cgit v1.2.3 From aa51d1d25fbfd711e5f863c0c818f6b05f33c6db Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 15 Jan 2024 22:44:17 +0100 Subject: gnu: Add python-nr-date. * gnu/packages/python-xyz.scm (python-nr-date): New variable. Change-Id: I4251aef073df29ccada70f1398bce38cfb8962ba --- gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index f224ab4eb8..8d0564e25b 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -1429,6 +1429,26 @@ generator MkDocs.") bindings to the C++ random forest implementation, ranger, using Cython.") (license license:gpl3+))) +(define-public python-nr-date + (package + (name "python-nr-date") + (version "2.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "nr_date" version)) + (sha256 + (base32 "1rnjyykjp41mqz6h1vx18jblq97gi5m5x7dgasyaihnd7fhswhq6")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #false)) ;there are none + (propagated-inputs (list python-dataclasses)) + (native-inputs (list python-poetry-core)) + (home-page "https://github.com/NiklasRosenstein/python-nr.date") + (synopsis "Fast, regex-based date parsing library in plain Python") + (description "This package provides a fast, regex-based date parsing +library in pure Python.") + (license license:expat))) + (define-public python-slixmpp (package (name "python-slixmpp") -- cgit v1.2.3 From 7dfe41aa71a4a4a9d6065a44e9c6271717215b3e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 15 Jan 2024 22:45:31 +0100 Subject: gnu: Add python-nr-stream. * gnu/packages/python-xyz.scm (python-nr-stream): New variable. Change-Id: I59489156e4675a64a31b1cb7f62b7c845c005ce8 --- gnu/packages/python-xyz.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 8d0564e25b..b4cccad062 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -1449,6 +1449,25 @@ bindings to the C++ random forest implementation, ranger, using Cython.") library in pure Python.") (license license:expat))) +(define-public python-nr-stream + (package + (name "python-nr-stream") + (version "1.1.5") + (source + (origin + (method url-fetch) + (uri (pypi-uri "nr_stream" version)) + (sha256 + (base32 "0rag4vbjnalkyfcarx6yipn11ih2hmc3pfldava4c6n6pz31c0pb")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #false)) ;there are none + (native-inputs (list python-poetry-core)) + (home-page "https://github.com/NiklasRosenstein/python-nr.stream") + (synopsis "Stream and Optional classes for Python") + (description "This package provides a @code{Stream} and @code{Optional} +class.") + (license license:expat))) + (define-public python-slixmpp (package (name "python-slixmpp") -- cgit v1.2.3 From 6b81503bae62a23ecf4045e9dfe145ead90c5332 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 15 Jan 2024 22:46:44 +0100 Subject: gnu: Add python-typeapi. * gnu/packages/python-xyz.scm (python-typeapi): New variable. Change-Id: Id89f3152bcd593d677c4fcb7c98d586cd50e820b --- gnu/packages/python-xyz.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index b4cccad062..8fb1d5fc19 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -19979,6 +19979,36 @@ feels like an AST.") (arguments '(#:tests? #f)) (native-inputs '())))) +(define-public python-typeapi + (package + (name "python-typeapi") + (version "2.1.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "typeapi" version)) + (sha256 + (base32 "1652fc04gn6nkw8izim0g7v586f64fla6clinp5xq9rf739w3cs9")))) + (build-system pyproject-build-system) + (arguments + (list + #:tests? #false ;there are none + #:phases + '(modify-phases %standard-phases + (add-after 'unpack 'patch-build-system + (lambda _ + (substitute* "pyproject.toml" + (("^docs =.*") "docs = []\n"))))))) + (propagated-inputs (list python-typing-extensions)) + (native-inputs (list python-poetry-core)) + (home-page "https://pypi.org/project/typeapi/") + (synopsis "Type hints") + (description "The typeapi package provides an object-oriented interface +for introspecting PEP484 type hints at runtime, including forward references +that make use of the more recent PEP585 and PEP604 type hint features in +Python versions that don't natively support them.") + (license license:expat))) + (define-public python-typing-inspect (package (name "python-typing-inspect") -- cgit v1.2.3 From 97692be94855aab806433d16f0eb9adaab0f8916 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 15 Jan 2024 22:47:43 +0100 Subject: gnu: Add python-databind-core. * gnu/packages/python-xyz.scm (python-databind-core): New variable. Change-Id: I45bf0ec5ef123ea20c50e2ca3caf930bfba45eea --- gnu/packages/python-xyz.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 8fb1d5fc19..88cd0227de 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -536,6 +536,51 @@ workspaces. @end itemize") (license license:gpl3+))) +(define-public python-databind-core + (package + (name "python-databind-core") + (version "4.4.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "databind.core" version)) + (sha256 + (base32 "130hr19kbzizx9n2q7cwfzfk20ii3cqmqjrzb16psnafll303k2d")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'fix-name + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((sitedir (site-packages inputs outputs)) + (dist-info + (string-append sitedir "/databind_core-" #$version ".dist-info"))) + (substitute* (string-append dist-info "/METADATA") + (("Name: databind-core") + "Name: databind.core")) + (substitute* (string-append dist-info "/RECORD") + (("databind_core") "databind.core")) + (rename-file dist-info + (string-append sitedir + "/databind.core-" + #$version ".dist-info")))))))) + (propagated-inputs + (list python-deprecated + python-nr-date + python-nr-stream + python-typeapi + python-typing-extensions)) + (native-inputs + (list python-poetry-core python-pytest)) + (home-page "https://niklasrosenstein.github.io/python-databind/core/") + (synopsis + "Library for de-/serializing Python dataclasses") + (description + "Databind is a library inspired by jackson-databind to de-/serialize +Python dataclasses.") + (license license:expat))) + (define-public python-fire (package (name "python-fire") -- cgit v1.2.3 From 12ae026e51c8b031a413de2c9b483e68f1efaac0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 15 Jan 2024 22:49:51 +0100 Subject: gnu: Add python-databind-json. * gnu/packages/python-xyz.scm (python-databind-json): New variable. Change-Id: Iaab64e28ba6772c14704ff67cffab21a2f555460 --- gnu/packages/python-xyz.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 88cd0227de..61958d5eac 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -581,6 +581,47 @@ workspaces. Python dataclasses.") (license license:expat))) +(define-public python-databind-json + (package + (name "python-databind-json") + (version "4.4.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "databind.json" version)) + (sha256 + (base32 "1lm864d7arfq0pw64hyc83bwn1z94wjg7a22q1xf0qkjynqs70gg")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'fix-name + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((sitedir (site-packages inputs outputs)) + (dist-info + (string-append sitedir "/databind_json-" #$version ".dist-info"))) + (substitute* (string-append dist-info "/METADATA") + (("Name: databind-json") + "Name: databind.json")) + (substitute* (string-append dist-info "/RECORD") + (("databind_json") "databind.json")) + (rename-file dist-info + (string-append sitedir + "/databind.json-" + #$version ".dist-info")))))))) + (propagated-inputs + (list python-databind-core python-nr-date + python-typeapi python-typing-extensions)) + (native-inputs (list python-poetry-core python-pytest)) + (home-page "https://niklasrosenstein.github.io/python-databind/json/") + (synopsis + "De-/serialize Python dataclasses to or from JSON payloads") + (description + "The @code{databind.json} package implements the de-/serialization to or +from JSON payloads using the @code{databind.core} framework.") + (license license:expat))) + (define-public python-fire (package (name "python-fire") -- cgit v1.2.3 From ddde736722f73ff92b3ea691ab95d14ddf6ed138 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 15 Jan 2024 22:50:14 +0100 Subject: gnu: Add python-docspec. * gnu/packages/python-xyz.scm (python-docspec): New variable. Change-Id: I3103bde3483273a335156b38de742f493fd366f1 --- gnu/packages/python-xyz.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 61958d5eac..58a1a2b3cd 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -622,6 +622,31 @@ Python dataclasses.") from JSON payloads using the @code{databind.core} framework.") (license license:expat))) +(define-public python-docspec + (package + (name "python-docspec") + (version "2.2.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "docspec" version)) + (sha256 + (base32 "1zqmdrc6k8pprra8p3wpzq2ml2gph1cfjmsyg07f8b8fvizffm28")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #false)) ;there are none + (propagated-inputs + (list python-databind-core + python-databind-json + python-deprecated)) + (native-inputs + (list python-poetry-core)) + (home-page "https://github.com/NiklasRosenstein/python-docspec") + (synopsis "Represent API documentation of programming languages") + (description + "Docspec is a JSON object specification for representing API +documentation of programming languages.") + (license license:expat))) + (define-public python-fire (package (name "python-fire") -- cgit v1.2.3 From 8721b9c1fb9c0bbab95477548f417551ad2b03dd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 16 Jan 2024 11:37:07 +0100 Subject: gnu: Add python-nr-util. * gnu/packages/python-xyz.scm (python-nr-util): New variable. Change-Id: I26dda5e5bc03334fb476e3f1fd2fa6aaf93a91c3 --- gnu/packages/python-xyz.scm | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 58a1a2b3cd..3973b02ce7 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -1579,6 +1579,48 @@ library in pure Python.") class.") (license license:expat))) +(define-public python-nr-util + (package + (name "python-nr-util") + (version "0.8.12") + (source + (origin + (method url-fetch) + (uri (pypi-uri "nr.util" version)) + (sha256 + (base32 "1x0l4811dskwrk83l2xzdcldx2iazlrx5wxkg41jz7fr6ch9qm54")))) + (build-system pyproject-build-system) + (arguments + (list + #:tests? #false ;there are none + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-build-system + (lambda _ + (substitute* "pyproject.toml" + (("^config =.*") "config = []\n")))) + (add-after 'install 'fix-name + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((sitedir (site-packages inputs outputs)) + (dist-info + (string-append sitedir "/nr_util-" #$version ".dist-info"))) + (substitute* (string-append dist-info "/METADATA") + (("Name: nr-util") + "Name: nr.util")) + (substitute* (string-append dist-info "/RECORD") + (("nr_util") "nr.util")) + (rename-file dist-info + (string-append sitedir + "/nr.util-" + #$version ".dist-info")))))))) + (propagated-inputs (list python-deprecated python-typing-extensions)) + (native-inputs (list python-poetry-core)) + (home-page "https://github.com/NiklasRosenstein/python-nr.util") + (synopsis "General purpose Python utility library") + (description "This package provides a general purpose Python utility +library.") + (license license:expat))) + (define-public python-slixmpp (package (name "python-slixmpp") -- cgit v1.2.3 From 1fcf3d2a0c26f642a69ce5d192cc9575e70cd703 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 16 Jan 2024 11:56:34 +0100 Subject: gnu: Add python-docspec-python. * gnu/packages/python-xyz.scm (python-docspec-python): New variable. Change-Id: Ic607d0a34a8601dd464251edd8c8509314b7489c --- gnu/packages/python-xyz.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 3973b02ce7..7de2ecbe65 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -647,6 +647,36 @@ from JSON payloads using the @code{databind.core} framework.") documentation of programming languages.") (license license:expat))) +(define-public python-docspec-python + (package + (name "python-docspec-python") + (version "2.2.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "docspec_python" version)) + (sha256 + (base32 "0n8m52vxmlvkj7p5jmd4rfdks65rrp4q4vzak44y6kbg9l5qa6y4")))) + (build-system pyproject-build-system) + (arguments + (list + #:tests? #false ;there are none + #:phases + '(modify-phases %standard-phases + (add-after 'unpack 'relax-requirements + (lambda _ + ;; We don't have black 23. + (substitute* "pyproject.toml" + (("23.1.0") "22.3.0"))))))) + (propagated-inputs (list python-black python-docspec python-nr-util)) + (native-inputs (list python-poetry-core)) + (home-page "https://github.com/NiklasRosenstein/docspec/") + (synopsis "Produce docspec data from Python source code") + (description + "This package provides a parser based on @code{lib2to3} producing +@code{docspec} data from Python source code.") + (license license:expat))) + (define-public python-fire (package (name "python-fire") -- cgit v1.2.3 From b05fe5c7636c74a574046bf60232a61d750ceb1c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 16 Jan 2024 12:21:07 +0100 Subject: gnu: python-yapf: Update to 0.32.0. * gnu/packages/python-xyz.scm (python-yapf): Update to 0.32.0. [build-system]: Use pyproject-build-system. [native-inputs]: Add python-pytest. [propagated-inputs]: Add python-importlib-metadata, python-platformdirs, and python-tomli. Change-Id: I30fa0b9d643f6585624da87d5c1a1edbb59425c4 --- gnu/packages/python-xyz.scm | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 7de2ecbe65..50d9f51e38 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -24628,15 +24628,19 @@ such as lines length, trailing spaces, indentation, etc.") (define-public python-yapf (package (name "python-yapf") - (version "0.29.0") + (version "0.32.0") (source (origin (method url-fetch) (uri (pypi-uri "yapf" version)) (sha256 (base32 - "1pj3xzblmbssshi889b6n9hwqbjpabw6j0fimlng2sshd3226bki")))) - (build-system python-build-system) + "06vxqski7qss2h2iy4fd04czym0cwjrzkaab9h03wzpg6xfhixd3")))) + (build-system pyproject-build-system) + (propagated-inputs + (list python-importlib-metadata python-platformdirs python-tomli)) + (native-inputs + (list python-pytest)) (home-page "https://github.com/google/yapf") (synopsis "Formatter for Python code") (description "YAPF is a formatter for Python code. It's based off of -- cgit v1.2.3 From 33d0a549e93c7323a4894b30ea9ae208e0ac3a36 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 16 Jan 2024 12:36:08 +0100 Subject: gnu: Add python-pydoc-markdown. * gnu/packages/python-xyz.scm (python-pydoc-markdown): New variable. Change-Id: I03e45c2b87f626f7a8113d785c72c14a301d79be --- gnu/packages/python-xyz.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 50d9f51e38..93ff734f72 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -7210,6 +7210,51 @@ errors when data is invalid.") Interfaces} via data models provided in the JSON format.") (license license:expat))) +(define-public python-pydoc-markdown + (package + (name "python-pydoc-markdown") + (version "4.8.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pydoc_markdown" version)) + (sha256 + (base32 "02vzlrd18r8wi0b64vq2gnbhaadysg9rnbylf9sf2v9q65z94v7v")))) + (build-system pyproject-build-system) + (arguments + (list + #:tests? #false ;there are none + #:phases + '(modify-phases %standard-phases + ;; This is probably not a good idea, but it wants a rather old + ;; version of docstring-parser. + (add-after 'unpack 'relax-requirements + (lambda _ + (substitute* "pyproject.toml" + (("docstring-parser = .*") + "docstring-parser = \"^0\"\n"))))))) + (propagated-inputs (list python-click + python-databind-core + python-databind-json + python-docspec + python-docspec-python + python-docstring-parser + python-jinja2 + python-nr-util + python-pyyaml + python-requests + python-tomli + python-tomli-w + python-watchdog + python-yapf)) + (native-inputs (list python-poetry-core)) + (home-page "https://pypi.org/project/pydoc-markdown/") + (synopsis "Create Python API documentation in Markdown format") + (description "Pydoc-Markdown is a tool to create Python API documentation +in Markdown format. Instead of executing your Python code like so many other +documentation tools, it parses it using docspec instead.") + (license license:expat))) + (define-public python-pydocstyle (package (name "python-pydocstyle") -- cgit v1.2.3 From ce451cdcb8f36ca48d4fe70f2235f406a86ed7b8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 6 Jan 2024 11:24:26 +0100 Subject: gnu: Add python-cython-0.29.35. * gnu/packages/python-xyz.scm (python-cython-0.29.35): New variable. Change-Id: I09ec851a2051e885f6417524bbeeb81b743bef0b --- gnu/packages/python-xyz.scm | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 93ff734f72..3000caa5ff 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2014, 2015 Federico Beffa ;;; Copyright © 2015 Omar Radwan ;;; Copyright © 2015 Pierre-Antoine Rault -;;; Copyright © 2015-2023 Ricardo Wurmus +;;; Copyright © 2015-2024 Ricardo Wurmus ;;; Copyright © 2015, 2016, 2020 Christine Lemmer-Webber ;;; Copyright © 2015 Eric Dvorsak ;;; Copyright © 2015, 2016 David Thompson @@ -7538,6 +7538,20 @@ programming language and the extended Cython programming language. It makes writing C extensions for Python as easy as Python itself.") (license license:asl2.0))) +;; Needed for scipy +(define-public python-cython-0.29.35 + (package + (inherit python-cython) + (name "python-cython") + (version "0.29.35") + (source (origin + (method url-fetch) + (uri (pypi-uri "Cython" version)) + (sha256 + (base32 + "09y5r22nyswqpwc02agla1bnzh2jx2db25pnq9pc5cq8pyh1yf3f")))) + (properties '()))) + (define-public python-cython-3 (package (inherit python-cython) -- cgit v1.2.3 From 1d9169847886985f2b45fddc458d92244f311a68 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 6 Jan 2024 11:24:39 +0100 Subject: gnu: Add pybind11-2.10. * gnu/packages/python-xyz.scm (pybind11-2.10): New variable. Change-Id: Ia7915af3baca36b0677d3f762046585abc473f56 --- gnu/packages/python-xyz.scm | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 3000caa5ff..b29dd2a386 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -25802,6 +25802,22 @@ library: to minimize boilerplate code in traditional extension modules by inferring type information using compile-time introspection.") (license license:bsd-3))) +;; Needed for scipy +(define-public pybind11-2.10 + (package + (inherit pybind11) + (name "pybind11") + (version "2.10.4") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pybind/pybind11") + (commit (string-append "v" version)))) + (sha256 + (base32 + "0rbcfvl7y472sykzdq3vrkw83kar0lpzhk3wq9yj9cdydl8cpfcz")) + (file-name (git-file-name name version)))))) + ;; This is needed for python-vaex-core. (define-public pybind11-2.3 (package -- cgit v1.2.3 From 1fb5d95e75e1271e16bc51db21eb1205ebc4c777 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 6 Jan 2024 11:25:07 +0100 Subject: gnu: python-doit: Update to 0.36.0. * gnu/packages/python-xyz.scm (python-doit): Update to 0.36.0. [build-system]: Use pyproject-build-system. [arguments]: Disable test_execute test. [propagated-inputs]: Remove python-pyinotify; add python-importlib-metadata. [description]: Add missing spaces between two sentences. Change-Id: I1d046201c9bef63477f8fb0a2f8494bffbbbc711 --- gnu/packages/python-xyz.scm | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index b29dd2a386..22c76aa201 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -33003,18 +33003,20 @@ of several plugins.") (define-public python-doit (package (name "python-doit") - (version "0.34.0") + (version "0.36.0") (source (origin (method url-fetch) (uri (pypi-uri "doit" version)) (sha256 - (base32 "0bf0m9n0hyjvjpv051zd26725j8jr23gyvc37v3kkadwbh8dxwcf")))) - (build-system python-build-system) + (base32 "1g1lwaxb9q3a6c24sr3gw5bspsk5frbrk2frb7z25jqljp67rl3i")))) + (build-system pyproject-build-system) + ;; This is not a serious test failure. It's probably due to the load path + ;; at test time. + (arguments (list #:test-flags '(list "-k" "not test_execute"))) (propagated-inputs - (list python-cloudpickle python-pyinotify)) - (native-inputs - (list python-pytest)) + (list python-cloudpickle python-importlib-metadata)) + (native-inputs (list python-pytest)) (home-page "https://pydoit.org") (synopsis "Automation tool to execute any kind of task in a build-tools fashion") @@ -33023,7 +33025,7 @@ build-tools to execute any kind of task. A task describes some computation to be done (actions), and contains some extra meta-data. The actions can be external programs or Python functions. A -single task may define more than one action.doit uses the task’s meta-data +single task may define more than one action. doit uses the task’s meta-data to: @itemize -- cgit v1.2.3 From 1c91d457246428935dfe7761f3b9318d29c6a510 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 6 Jan 2024 11:26:30 +0100 Subject: gnu: Add python-pyproject-metadata-0.7. * gnu/packages/python-xyz.scm (python-pyproject-metadata-0.7): New variable. Change-Id: I7c47c911fa2a33c0b5711b0009f31b3e32c1c1d7 --- gnu/packages/python-xyz.scm | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 22c76aa201..ef481dfc1e 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -13262,6 +13262,22 @@ validate this input and generate a PEP 643-compliant metadata file (e.g. @file{PKG-INFO}).") (license license:expat))) +(define-public python-pyproject-metadata-0.7 + (package + (inherit python-pyproject-metadata) + (name "python-pyproject-metadata") + (version "0.7.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/FFY00/python-pyproject-metadata") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0yvs59ymz5gdix34a95wxlxvk9bnvjgrzsnmnc3ws7whpfv3yasm")))))) + ;; pep621 was renamed to pyproject-metadata. (define-public python-pep621 (deprecated-package "python-pep621" python-pyproject-metadata)) -- cgit v1.2.3 From 08f48f29395ef9d3423c7e19047bf08bd55fe645 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 6 Jan 2024 11:28:24 +0100 Subject: gnu: Add python-pydevtool. * gnu/packages/python-xyz.scm (python-pydevtool): New variable. Change-Id: I325b81fa6421094a5a64084c06e66b8fa136e270 --- gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index ef481dfc1e..d4b2f18bb0 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -33073,6 +33073,26 @@ to: "This package provides a port of the serialize and unserialize functions of PHP for Python") (license license:bsd-3))) +(define-public python-pydevtool + (package + (name "python-pydevtool") + (version "0.3.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pydevtool" version)) + (sha256 + (base32 "12pwhvvm4pgvfxj18ylb66drxm28b2cpb5rbxqrsrk1k7m7vmqr5")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #false)) ;no tests + (propagated-inputs (list python-doit python-rich-click)) + (home-page "https://github.com/pydoit/pydevtool") + (synopsis "CLI dev tools powered by pydoit") + (description "This package provides command line tools, powered by pydoit. +It offers integration with @code{click} and @code{rich} for custom CLI and +these linters: @code{pycodestlye}, @code{pyflakes}") + (license license:expat))) + (define-public nikola (package (name "nikola") -- cgit v1.2.3 From 299455fef23fe878edfdede7bde254df067e623a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 7 Jan 2024 23:58:08 +0100 Subject: gnu: python-tifffile: Update to 2023.12.9. * gnu/packages/python-xyz.scm (python-tifffile): Update to 2023.12.9. [propagated-inputs]: Remove python-imagecodecs. [native-inputs]: Add python-pytest. Change-Id: I2567bef390e286ed4399cc67b80a9df503f53c0a --- gnu/packages/python-xyz.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index d4b2f18bb0..df21076493 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -9485,19 +9485,21 @@ regions of interest, geometric shapes, paths, text, etc for image overlays.") (define-public python-tifffile (package (name "python-tifffile") - (version "2021.4.8") + (version "2023.12.9") (source (origin (method url-fetch) (uri (pypi-uri "tifffile" version)) (sha256 (base32 - "16r0hw7shka1bqf28bv198lj2jhf2r9gy3s5zv4nf5cfsfm8pajm")))) + "1f6d8qdlq0zlksfdhp1mhj9icpwhw4cz47r4i80m6r0a328xmlcx")))) (build-system python-build-system) ;; Tests require lfdfiles, which depends on tifffile (arguments `(#:tests? #f)) (propagated-inputs - (list python-numpy python-imagecodecs)) + (list python-numpy)) + (native-inputs + (list python-pytest)) (home-page "https://www.lfd.uci.edu/~gohlke/") (synopsis "Read and write TIFF(r) files") (description "This package lets you read image and metadata from many -- cgit v1.2.3 From 6fbbffd6efeed580faf9bb1e315a9875f6178276 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 7 Jan 2024 23:58:57 +0100 Subject: gnu: python-lazy-loader: Update to 0.3. * gnu/packages/python-xyz.scm (python-lazy-loader): Update to 0.3. [native-inputs]: Add python-pre-commit. Change-Id: Id4f8b61e6e60dd6da04beb8c1e4d064dc34d994c --- gnu/packages/python-xyz.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index df21076493..12f649ff15 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -20293,16 +20293,18 @@ inspection of types defined in the Python standard typing module.") (define-public python-lazy-loader (package (name "python-lazy-loader") - (version "0.2") + (version "0.3") (source (origin (method url-fetch) (uri (pypi-uri "lazy_loader" version)) (sha256 (base32 - "12piaj94m5wbx33cxb80xgnsvzgya6cp90zj12qsq064fm8pmp0f")))) + "0dwghffnsjjf4pi4gwbl43rx04jmap375hdamafs5cpm6j78js1v")))) (build-system pyproject-build-system) (native-inputs - (list python-pytest python-pytest-cov)) + (list python-pre-commit + python-pytest + python-pytest-cov)) (propagated-inputs (list python-flit-core)) (home-page "https://scientific-python.org/specs/spec-0001/") -- cgit v1.2.3 From 32edfc4a8509649c4c20a9c46d21cbe281b9a9d1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 8 Jan 2024 00:00:19 +0100 Subject: gnu: python-imageio: Update to 2.33.1. * gnu/packages/python-xyz.scm (python-imageio): Update to 2.33.1. [propagated-inputs]: Remove python-psutil; add python-tifffile. [native-inputs]: Add python-black, python-flake8, python-fsspec, and python-pytest-cov. Change-Id: I5c64d939f5ee94ac9ec8fdbd7b51cd978b7df0fb --- gnu/packages/python-xyz.scm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 12f649ff15..95e8258a74 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -9717,14 +9717,14 @@ from FFMPEG, reliably terminating the process when done.") (define-public python-imageio (package (name "python-imageio") - (version "2.26.0") + (version "2.33.1") (source (origin (method url-fetch) (uri (pypi-uri "imageio" version)) (sha256 (base32 - "0dgddhi5dlpry5j4d3256v09pcziyj3ii47yx0zi68xprm11d7qn")))) + "1kn1gj9vc1mkirs39x3nkw2d56paiagi24kkxksrig9pn502swkq")))) (build-system pyproject-build-system) (arguments (list @@ -9751,9 +9751,10 @@ from FFMPEG, reliably terminating the process when done.") (delete-file "tests/test_freeimage.py")))))) (inputs (list freeimage)) (propagated-inputs - (list python-imageio-ffmpeg python-numpy python-pillow python-psutil)) + (list python-imageio-ffmpeg python-numpy python-pillow python-tifffile)) (native-inputs - (list python-pytest)) + (list python-black python-flake8 python-fsspec python-pytest + python-pytest-cov)) (home-page "https://imageio.github.io/") (synopsis "Library for reading and writing a wide range of image data") (description -- cgit v1.2.3 From 2057f778a449754dcd741d80910dd4fca3f27c63 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 8 Jan 2024 11:35:41 +0100 Subject: gnu: python-pypng: Update to 0.20220715.0. * gnu/packages/python-xyz.scm (python-pypng): Update to 0.20220715.0. [build-system]: Use pyproject-build-system. [arguments]: Add 'pre-check phase. [native-inputs]: Add python-pytest. Change-Id: Ic47c653f94a688048383eba216f01d7987625680 --- gnu/packages/python-xyz.scm | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 95e8258a74..d611f52e57 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -28937,14 +28937,24 @@ lowercase.") (define-public python-pypng (package (name "python-pypng") - (version "0.0.20") + (version "0.20220715.0") (source (origin (method url-fetch) (uri (pypi-uri "pypng" version)) (sha256 - (base32 "02qpa22ls41vwsrzw9r9qhj1nhq05p03hb5473pay6y980s86chh")))) - (build-system python-build-system) + (base32 "1hg24zja235bkbny82hx7sy7qlzfbabxph2lvqaq61vgm4xl773k")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + '(modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda _ + (setenv "PYTHONPATH" + (string-append (getcwd) "/code:" + (getenv "GUIX_PYTHONPATH")))))))) + (native-inputs (list python-pytest)) (home-page "https://github.com/drj11/pypng") (synopsis "Pure Python PNG image encoder/decoder") (description -- cgit v1.2.3 From e759380796589e20bf1a4ed18ee9632430932464 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 8 Jan 2024 11:36:23 +0100 Subject: gnu: python-matplotx: Disable test_png test. * gnu/packages/python-xyz.scm (python-matplotx)[arguments]: Disable test_png test. Change-Id: I19a954786d828a1b717c9c4021ad7f5c6172366c --- gnu/packages/python-xyz.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index d611f52e57..d9df72abb4 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -8652,7 +8652,9 @@ three-way Venn diagrams in @code{matplotlib}.") (list #:test-flags ;; This test fails with ValueError: not enough values to unpack. - #~(list "--deselect" "tests/test_spy.py::test_cli"))) + #~(list "--deselect" "tests/test_spy.py::test_cli" + ;; XXX: unknown failure + "--deselect" "tests/test_spy.py::test_png"))) (home-page "https://github.com/nschloe/matplotx") (synopsis "Minimal matplotlib styles") (description -- cgit v1.2.3 From 9ea9346168c446267fdaa46d72b19ce7c356944e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 8 Jan 2024 19:46:02 +0100 Subject: gnu: Add python-cppy. * gnu/packages/python-xyz.scm (python-cppy): New variable. Change-Id: I584fcddc3430960098d65f1916278a7473249a87 --- gnu/packages/python-xyz.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index d9df72abb4..73aae0b6d5 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -8687,6 +8687,25 @@ clean plots with a minimalistic style.") complex-valued functions.") (license license:gpl3+))) +(define-public python-cppy + (package + (name "python-cppy") + (version "1.2.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "cppy" version)) + (sha256 + (base32 "06zysv86j7wqb1rl88ab4clbjf7iahhv9gfyqlasr18hggqkpd43")))) + (build-system pyproject-build-system) + (home-page "https://github.com/nucleic/cppy") + (synopsis "C++ header library for Python extension modules") + (description "This package is a small C++ header library which makes it +easier to write Python extension modules. The primary feature is a +@code{PyObject} smart pointer which automatically handles reference counting +and provides convenience methods for performing common object operations.") + (license license:bsd-3))) + (define-public python-perfplot (package (name "python-perfplot") -- cgit v1.2.3 From c7646437a2616f2167e6b54c6e9e4d90a31027f4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 8 Jan 2024 20:02:04 +0100 Subject: gnu: Add python-contourpy. * gnu/packages/python-xyz.scm (python-contourpy): New variable. Change-Id: Icbbe4a358242095fae36639c5c039c029eea4ee3 --- gnu/packages/python-xyz.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 73aae0b6d5..ee48db20a7 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -174,6 +174,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages bdw-gc) + #:use-module (gnu packages build-tools) #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) @@ -1004,6 +1005,46 @@ as functions or string constants to form colored terminal output.") into dataclasses.") (license license:expat))) +(define-public python-contourpy + (package + (name "python-contourpy") + (version "1.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "contourpy" version)) + (sha256 + (base32 "088bhyh6m6q0h637wiq2paqhwn76hqvvbhqwacfx4a1qhv1lcc75")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + ;; All these tests require matplotlib, but matplotlib requires contourpy + ;; now. + '(list "-k" "not test_mypy" + "--ignore=tests/test_config.py" + "--ignore=tests/test_filled.py" + "--ignore=tests/test_lines.py" + "--ignore=tests/test_renderer.py"))) + (propagated-inputs (list python-mypy + python-numpy + python-pillow + python-pytest + python-pytest-cov + python-pytest-xdist + python-selenium + python-sphinx + python-sphinx-copybutton + python-wurlitzer)) + (native-inputs (list meson-python pybind11-2.10 pkg-config)) + (home-page "https://contourpy.readthedocs.io/") + (synopsis + "Python library for calculating contours of 2D quadrilateral grids") + (description + "ContourPy is a Python library for calculating contours of 2D +quadrilateral grids. It is written in C++11 and wrapped using pybind11.") + (license license:bsd-3))) + (define-public python-yaspin (package (name "python-yaspin") -- cgit v1.2.3 From 82b7c3077f3f7eb705432bfa1e7e03f863ee2872 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 8 Jan 2024 20:18:02 +0100 Subject: gnu: python-matplotlib: Update to 3.8.2. * gnu/packages/python-xyz.scm (python-matplotlib): Update to 3.8.2. [build-system]: Use pyproject-build-system. [arguments]: Enable more tests; simplify custom 'check phase. [propagated-inputs]: Remove gobject-introspection, python-cairocffi, python-certifi, python-pygobject, python-pytz, python-six, and python-wxpython; add python-contourpy and python-importlib-resources. [native-inputs]: Add pybind11. Change-Id: Ie34826882fdcc20fac3b09130bcd0f4ad4f76b07 --- gnu/packages/python-xyz.scm | 55 +++++++++++++++++++-------------------------- 1 file changed, 23 insertions(+), 32 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index ee48db20a7..980fe08400 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -8414,16 +8414,25 @@ comparison. (define-public python-matplotlib (package (name "python-matplotlib") - (version "3.5.2") + (version "3.8.2") (source (origin (method url-fetch) (uri (pypi-uri "matplotlib" version)) (sha256 - (base32 "18h78s5ld1i6mz00w258hy29909nfr3ddq6ry9kq18agw468bks8")))) - (build-system python-build-system) + (base32 "18amhxyxa6yzy1nwky4ggdgvvxnbl3qz2lki05vfx0dqf6w7ia81")))) + (build-system pyproject-build-system) (arguments (list + #:test-flags + '(list "-m" "not network" + "-k" + (string-append + ;; This one fails with a small difference in the upper left. + "not test_figure_legend_outside" + ;; The 'test_lazy_auto_backend_selection' fails + ;; because it would require an X server; skip it. + " and not test_lazy_auto_backend_selection")) #:phases #~(modify-phases %standard-phases (add-before 'build 'pretend-version @@ -8487,49 +8496,30 @@ backend=Agg basedirlist = ~a,~a [packages] -tests = True~%" (assoc-ref inputs "tcl") (assoc-ref inputs "tk")))))) +tests = True~%" #$(this-package-input "tcl") #$(this-package-input "tk")))))) (replace 'check - (lambda* (#:key tests? #:allow-other-keys) + (lambda* (#:key tests? test-flags #:allow-other-keys) (when tests? ;; Step out of the source directory to avoid interference. (with-directory-excursion "/tmp" ;; Run the installed tests, which is what we want since not ;; everything gets built in the source directory. - (invoke "pytest" - "-n" (number->string (parallel-job-count)) - "-m" "not network" "--pyargs" "matplotlib" - "-k" - (string-append - ;; The 'test_lazy_auto_backend_selection' fails - ;; because it would require an X server; skip it. - "not test_lazy_auto_backend_selection" - ;; test_getattr fails for the GTK backend because - ;; of an unexpected warning from Python 3.10 - ;; (via the gi module): - ;; https://gitlab.gnome.org/GNOME/pygobject/-/issues/494 - " and not test_getattr"))))))))) - (propagated-inputs - (list gobject-introspection - python-cairocffi - python-certifi + (apply invoke "pytest" + "-n" (number->string (parallel-job-count)) + "--pyargs" "matplotlib" + test-flags)))))))) + (propagated-inputs + (list python-contourpy python-cycler python-dateutil python-fonttools-minimal + python-importlib-resources python-kiwisolver python-numpy python-packaging python-pillow - ;; ;; 'pycairo'. However, 'pygobject' makes use of a 'pycairo' 'context' - ;; ;; From version 1.4.0 'matplotlib' makes use of 'cairocffi' instead of - ;; ;; https://cairocffi.readthedocs.io/en/stable/cffi_api.html#converting-pycairo-wrappers-to-cairocffi - ;; ;; object. For this reason we need to import both libraries. - ;; python-pycairo - python-pygobject python-pyparsing - python-pytz - python-six - `(,python "tk") - python-wxpython)) + `(,python "tk"))) (inputs (list cairo freetype @@ -8540,6 +8530,7 @@ tests = True~%" (assoc-ref inputs "tcl") (assoc-ref inputs "tk")))))) tk)) (native-inputs (list pkg-config + pybind11 python-pytest python-pytest-timeout python-pytest-xdist -- cgit v1.2.3 From c647bd42a3f7e03b1eb2e4d196c79de3be237f3b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 8 Jan 2024 22:05:13 +0100 Subject: gnu: python-seaborn: Update to 0.13.1. * gnu/packages/python-xyz.scm (python-seaborn): Update to 0.13.1. [propagated-inputs]: Add python-ipykernel, python-mypy, python-nbconvert, python-numpydoc, python-pyyaml, and python-statsmodels. [native-inputs]: Add python-flake8, python-pre-commit, python-pytest-cov, and python-pytest-xdist; remove python-pypa-build. Change-Id: Id1ed6cfaf7e0950e99c06900fd68fb1ab884bee0 --- gnu/packages/python-xyz.scm | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 980fe08400..1964b8eb9f 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -257,6 +257,7 @@ #:use-module (gnu packages shells) #:use-module (gnu packages sphinx) #:use-module (gnu packages ssh) + #:use-module (gnu packages statistics) #:use-module (gnu packages swig) #:use-module (gnu packages tcl) #:use-module (gnu packages terminals) @@ -12576,17 +12577,32 @@ SVG, EPS, PNG and terminal output.") (define-public python-seaborn (package (name "python-seaborn") - (version "0.12.0") + (version "0.13.1") (source (origin (method url-fetch) (uri (pypi-uri "seaborn" version)) (sha256 (base32 - "08vvnp4ps86857imxz2l5xi2vir5xdcdp3apq4badb4b5llifgw9")))) + "0ycibcs6kvd3xi4zsxna81claqifyb9dn6z6jwc5x7lqqplnbbdz")))) (build-system pyproject-build-system) - (propagated-inputs (list python-pandas python-matplotlib python-numpy - python-scipy)) - (native-inputs (list python-flit-core python-pypa-build python-pytest)) + (propagated-inputs + (list python-ipykernel + python-matplotlib + python-mypy + python-nbconvert + python-numpy + python-numpydoc + python-pandas + python-pyyaml + python-scipy + python-statsmodels)) + (native-inputs + (list python-flake8 + python-flit-core + python-pre-commit + python-pytest + python-pytest-cov + python-pytest-xdist)) (home-page "https://seaborn.pydata.org/") (synopsis "Statistical data visualization") (description -- cgit v1.2.3 From 745b208767825f7b5539deb3830053e3f4f2a504 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Jan 2024 14:59:39 +0100 Subject: gnu: python-pint: Update to 0.23. * gnu/packages/python-xyz.scm (python-pint): Update to 0.23. [arguments]: Disable "test_load_definitions_stage_2" test. [native-inputs]: Remove python-dask, python-distributed, python-importlib-metadata, python-setuptools-scm, python-sparse, python-uncertainties, and python-xarray; add python-pytest-benchmark. [propagated-inputs]: Add python-uncertainties. Change-Id: I98baae3369e5ffeea96355d9509296771c33dc50 --- gnu/packages/python-xyz.scm | 33 ++++++++++++++++----------------- 1 file changed, 16 insertions(+), 17 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 1964b8eb9f..7d70b80e0e 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -1406,30 +1406,29 @@ Markdown. All extensions are found under the module namespace of pymdownx.") (define-public python-pint (package (name "python-pint") - (version "0.22") + (version "0.23") (source (origin (method url-fetch) (uri (pypi-uri "Pint" version)) (sha256 (base32 - "0cs4lsvngrkfzpnrmxcwz728m47y0xbw1knksz51cc6gpdm9y4rd")))) + "1d69dqs0j907x4hgz2k8f3zjzhgs9zvlw2k0gi955g3dc28rnl71")))) (build-system pyproject-build-system) (arguments - ;; This single test tries to write to $HOME/.cache/pint. - (list #:test-flags #~'("-k" "not test_auto"))) - (native-inputs - (list python-dask - python-distributed - python-importlib-metadata - python-pytest ;for pytest-subtests - python-pytest-cov - python-pytest-mpl - python-pytest-subtests - python-setuptools-scm - python-sparse - python-uncertainties - python-xarray)) - (propagated-inputs (list python-typing-extensions)) + (list + #:test-flags + '(list "-k" (string-append + ;; This test tries to write to $HOME/.cache/pint. + "not test_auto" + ;; Fails with "Group USCSLengthInternational already + ;; present in registry" + " and not test_load_definitions_stage_2")))) + (native-inputs + (list python-pytest python-pytest-benchmark python-pytest-cov + python-pytest-mpl python-pytest-subtests)) + (propagated-inputs + (list python-typing-extensions + python-uncertainties)) (home-page "https://github.com/hgrecco/pint") (synopsis "Physical quantities module") (description -- cgit v1.2.3 From 50dbb9561f20ff47bee845d5c36837ae653e9875 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Jan 2024 15:51:45 +0100 Subject: gnu: python-fit-nbinom: Disable tests. * gnu/packages/python-xyz.scm (python-fit-nbinom)[arguments]: Disable tests. Change-Id: I980480a3326dccc67930d34474832712005d1bb2 --- gnu/packages/python-xyz.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 7d70b80e0e..b1d57a0215 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -731,6 +731,7 @@ and variables you'll need already imported and created. (build-system pyproject-build-system) (arguments (list + #:tests? #false ;there are none #:phases '(modify-phases %standard-phases (add-after 'unpack 'remove-invalid-syntax -- cgit v1.2.3 From 0c6db478ec40237db69d751acf64441556183e23 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 10 Jan 2024 15:44:25 +0100 Subject: gnu: python-pint: Add missing input. This is a follow-up to commit 23b8601cd2cf90ed11a51ca6db133083433e74d8. Without this input the version string will be 0.0.0. * gnu/packages/python-xyz.scm (python-pint)[native-inputs]: Add python-setuptools-scm. Change-Id: Id621e459f119d7268cdcc41ef93bcae135e842d1 --- gnu/packages/python-xyz.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index b1d57a0215..8da5288ca0 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -1426,7 +1426,8 @@ Markdown. All extensions are found under the module namespace of pymdownx.") " and not test_load_definitions_stage_2")))) (native-inputs (list python-pytest python-pytest-benchmark python-pytest-cov - python-pytest-mpl python-pytest-subtests)) + python-pytest-mpl python-pytest-subtests + python-setuptools-scm)) (propagated-inputs (list python-typing-extensions python-uncertainties)) -- cgit v1.2.3 From e8f68ea3341f9ab755abc90b38b29c0540b3c168 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 10 Jan 2024 18:54:12 +0100 Subject: gnu: Add python-asyncinject. * gnu/packages/python-xyz.scm (python-asyncinject): New variable. Change-Id: I2647e8340bca2efabc222d19155d330b1a5ff16f --- gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 8da5288ca0..eb4dfcd4bb 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -21201,6 +21201,26 @@ multitouch applications.") Design spec without sacrificing ease of use or application performance.") (license license:expat))) +(define-public python-asyncinject + (package + (name "python-asyncinject") + (version "0.6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "asyncinject" version)) + (sha256 + (base32 "0x57idiy19lzyn32klgm06r223z8gr2aqqk91gysbshq7jg8g3pf")))) + (build-system pyproject-build-system) + (native-inputs (list python-pytest python-pytest-asyncio)) + (home-page "https://github.com/simonw/asyncinject") + (synopsis + "Run async workflows using pytest-fixtures-style dependency injection") + (description + "This package lets you run asynchronous workflows using +pytest-fixtures-style dependency injection.") + (license license:asl2.0))) + (define-public python-asynckivy (package (name "python-asynckivy") -- cgit v1.2.3 From fbe02335754e9bfafe0b0fc5d78433d183939150 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 10 Jan 2024 19:50:17 +0100 Subject: gnu: python-click-default-group: Update to 1.2.4. * gnu/packages/python-xyz.scm (python-click-default-group): Update to 1.2.4. [build-system]: Use pyproject-build-system. [native-inputs]: Add python-flit-core and python-pytest. Change-Id: I7e617ee57499542b7e832bb5ea24417b70e8cf85 --- gnu/packages/python-xyz.scm | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index eb4dfcd4bb..0e64919a3e 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -17007,18 +17007,19 @@ applications.") (define-public python-click-default-group (package (name "python-click-default-group") - (version "1.2.2") + (version "1.2.4") (source (origin (method url-fetch) - (uri (pypi-uri "click-default-group" version)) + (uri (pypi-uri "click_default_group" version)) (sha256 (base32 - "015r78jk8gznfw0dphpwaqcx5mhg5822b55w5xbb6i7sin70wmnr")))) - (build-system python-build-system) - (arguments - `(#:tests? #f)) ; no target + "07i5w47lbihcb3cvs08vynz725z9skvhhzrarnk6qi8dxjckqgzb")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #false)) ;there are none (propagated-inputs (list python-click)) + (native-inputs + (list python-flit-core python-pytest)) (synopsis "Extends click.Group") (description "This package extends click.Group to invoke a command without explicit subcommand name.") -- cgit v1.2.3 From 8ef784e84c25be373472b6bfad9115fce2b122b2 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 11 Jan 2024 14:42:15 +0100 Subject: gnu: python-adjusttext: Disable tests. * gnu/packages/python-xyz.scm (python-adjusttext)[arguments]: Disable tests. Change-Id: Ib1002de20a6e301f43bb34f64f7299d4316d8a67 --- gnu/packages/python-xyz.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 0e64919a3e..92f00eca2a 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -833,6 +833,7 @@ features of the Python's built-in dict.") (base32 "05zf0xn7ab40dan213fwbp1z4rybih8dphf9mzb2ddmbafxq41mv")))) (build-system pyproject-build-system) + (arguments (list #:tests? #false)) ;there are none (propagated-inputs (list python-matplotlib python-numpy)) (home-page "https://github.com/Phlya/adjustText") (synopsis "Adjust text position in matplotlib plots to minimize overlaps") -- cgit v1.2.3 From c3210ae8e235177fe6ca42016040c4b58b0fff3d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 11 Jan 2024 15:01:36 +0100 Subject: gnu: python-mysql-connector-python: Defuse time bomb. Additional tests fail due to expired certificates. Disable them. * gnu/packages/python-xyz.scm (python-mysql-connector-python)[arguments]: Disable six additional tests. Change-Id: I99b5f15736af89c0281ab7aca56c1bd3958d1a46 --- gnu/packages/python-xyz.scm | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 92f00eca2a..095e74c844 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -1309,10 +1309,26 @@ variables into the markdown template") (substitute* "tests/test_bugs.py" (("def test_change_user") "def _do_not_test_change_user") (("def test_lost_connection") "def _do_not_test_lost_connection") - (("def test_kill_query") "def _do_not_test_kill_query")) + (("def test_kill_query") "def _do_not_test_kill_query") + ;; These all fail because of expired certificates. + (("def test_cext_verify_server_certificate") + "def _do_not_test_cext_verify_server_certificate") + (("def test_pure_verify_server_certificate") + "def _do_not_test_pure_verify_server_certificate") + (("def test_verify_server_name_cext_cnx") + "def _do_not_test_verify_server_name_cext_cnx") + (("def test_verify_server_name_pure_cnx") + "def _do_not_test_verify_server_name_pure_cnx")) (substitute* "tests/test_connection.py" (("def test_allow_local_infile_in_path") - "def _do_not_test_allow_local_infile_in_path")) + "def _do_not_test_allow_local_infile_in_path") + ;; This fails because of expired certificates. + (("def test_connect_with_unix_socket") + "def _do_not_test_connect_with_unix_socket")) + (substitute* "tests/test_mysqlx_connection.py" + ;; This fails because of expired certificates. + (("def test_ssl_connection") + "def _do_not_test_ssl_connection")) (substitute* "tests/test_constants.py" (("def test_deprecated") "def _do_not_test_deprecated")) -- cgit v1.2.3 From 53c65baa3d4590d78c7660369bac0e69d3804503 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 11 Jan 2024 15:36:51 +0100 Subject: gnu: python-dask: Propagate click. * gnu/packages/python-xyz.scm (python-dask)[native-inputs]: Move python-click from here... [propagated-inputs]: ...to here. Change-Id: I1a1617d9cb00268d9fc26f4fe6c9ecc6d0a2e375 --- gnu/packages/python-xyz.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 095e74c844..a806166569 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -27053,7 +27053,8 @@ parentdir_prefix = dask- (add-before 'check 'pre-check (lambda _ (chdir "/tmp")))))) (propagated-inputs - (list python-cloudpickle + (list python-click ;needed at runtime + python-cloudpickle python-fsspec python-importlib-metadata ;needed at runtime for dask/_compatibility.py python-numpy @@ -27063,8 +27064,7 @@ parentdir_prefix = dask- python-toolz python-pyyaml)) (native-inputs - (list python-click - python-importlib-metadata + (list python-importlib-metadata python-pytest python-pytest-runner python-pytest-rerunfailures python-versioneer)) (home-page "https://github.com/dask/dask/") -- cgit v1.2.3 From b8085c9240d0202a759eaaae531b2c1b01bef035 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 16 Jan 2024 14:16:10 +0100 Subject: gnu: python-pyls-black: Fix build. * gnu/packages/patches/python-pyls-black-41.patch: New patch. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/python-xyz.scm (python-pyls-black)[source]: Add patch. [build-system]: Use pyproject-build-system. [arguments]: Disable one failing test. Change-Id: I14b2982644e58c0b43d76838febc6dfceb220b15 --- gnu/local.mk | 1 + gnu/packages/patches/python-pyls-black-41.patch | 45 +++++++++++++++++++++++++ gnu/packages/python-xyz.scm | 7 ++-- 3 files changed, 51 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/python-pyls-black-41.patch (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/local.mk b/gnu/local.mk index ed4e82772e..34bed91fc3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1796,6 +1796,7 @@ dist_patch_DATA = \ %D%/packages/patches/python-random2-getrandbits-test.patch \ %D%/packages/patches/python-poppler-qt5-fix-build.patch \ %D%/packages/patches/python-pyreadstat-link-libiconv.patch \ + %D%/packages/patches/python-pyls-black-41.patch \ %D%/packages/patches/python-pypdf-annotate-tests-appropriately.patch \ %D%/packages/patches/python-pytorch2-system-libraries.patch \ %D%/packages/patches/python-sip-include-dirs.patch \ diff --git a/gnu/packages/patches/python-pyls-black-41.patch b/gnu/packages/patches/python-pyls-black-41.patch new file mode 100644 index 0000000000..5a1ebd2f54 --- /dev/null +++ b/gnu/packages/patches/python-pyls-black-41.patch @@ -0,0 +1,45 @@ +From ada6a999e4f5cca21a2133e449f4576dbe9a64d2 Mon Sep 17 00:00:00 2001 +From: Isaac Dadzie <4581114+idadzie@users.noreply.github.com> +Date: Fri, 4 Feb 2022 21:18:37 +0000 +Subject: [PATCH] Add support for black 22.1.0 + +Make changes to support black 22.1.0, which changed the return type +of 'find_project_root' to a tuple. + +Resolves: #40 +--- + pyls_black/plugin.py | 8 +++++++- + setup.cfg | 2 +- + 2 files changed, 8 insertions(+), 2 deletions(-) + +diff --git a/pyls_black/plugin.py b/pyls_black/plugin.py +index dc5d482..e4f4d98 100644 +--- a/pyls_black/plugin.py ++++ b/pyls_black/plugin.py +@@ -73,7 +73,13 @@ def load_config(filename: str) -> Dict: + + root = black.find_project_root((filename,)) + +- pyproject_filename = root / "pyproject.toml" ++ # Note: find_project_root returns a tuple in 22.1.0+ ++ try: ++ # Keeping this to not break backward compatibility. ++ pyproject_filename = root / "pyproject.toml" ++ except TypeError: ++ _root, _ = root ++ pyproject_filename = _root / "pyproject.toml" + + if not pyproject_filename.is_file(): + return defaults +diff --git a/setup.cfg b/setup.cfg +index 036cec2..57fbe4f 100644 +--- a/setup.cfg ++++ b/setup.cfg +@@ -1,6 +1,6 @@ + [metadata] + name = pyls-black +-version = 0.4.7 ++version = 0.4.8 + author = Rupert Bedford + author_email = rupert@rupertb.com + description = Black plugin for the Python Language Server diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index a806166569..e486a73023 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -2666,6 +2666,7 @@ Unicode-to-LaTeX conversion.") (file-name (git-file-name name version)) (sha256 (base32 "0bkhfnlik89j3yamr20br4wm8975f20v33wabi2nyxvj10whr5dj")) + (patches (search-patches "python-pyls-black-41.patch")) ;; Patch to work with python-lsp-server. Taken from ;; . (modules '((guix build utils))) @@ -2681,9 +2682,11 @@ Unicode-to-LaTeX conversion.") "pylsp_format_range") (("from pyls([ \\.])" _ char) (string-append "from pylsp" char))))))) - (build-system python-build-system) + (build-system pyproject-build-system) (arguments - `(#:test-target "pytest")) + (list + #:test-flags + '(list "-k" "not test_load_config_target_version"))) (propagated-inputs (list python-black python-lsp-server python-tomli)) (native-inputs -- cgit v1.2.3 From 224f8d543b2f64178a0307c19ffc975d3757248a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 16 Jan 2024 15:33:57 +0100 Subject: gnu: Add python-strenum. * gnu/packages/python-xyz.scm (python-strenum): New variable. Change-Id: I6b6d64024db9358ea0a65cfd6c7cd6f94747de42 --- gnu/packages/python-xyz.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'gnu/packages/python-xyz.scm') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index e486a73023..ceab4f0993 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -14066,6 +14066,24 @@ almost any existing Python modules, and an easy way for outside developers to add functionality and customization to your projects with their own plugins.") (license license:expat))) +(define-public python-strenum + (package + (name "python-strenum") + (version "0.4.15") + (source + (origin + (method url-fetch) + (uri (pypi-uri "StrEnum" version)) + (sha256 + (base32 "1zrfr1shin5wyfnfxc7jpk013594wasrp4ni9l70fhjlf2mvb3w7")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #false)) ;there are none. + (home-page "https://github.com/irgeek/StrEnum") + (synopsis "Enum that inherits from str") + (description "StrEnum is a Python @code{enum.Enum} that inherits from +@code{str} to complement @code{enum.IntEnum} in the standard library.") + (license license:expat))) + (define-public python-pysendfile (package (name "python-pysendfile") -- cgit v1.2.3