Compare commits

...

21 commits

Author SHA1 Message Date
Sharlatan Hellseher
6de01dfdfa
gnu: python-srsly: Update to 2.5.1.
* gnu/packages/python-xyz.scm (python-srsly): Update to 2.5.1.
[arguments] <test-flags>: Provide option to run tests again installed
module, skip 3 failing tests.
<phases>: Remove 'build-extensions.
[native-inputs]: Remove python-wheel.

Change-Id: I4ee33c5ec18caeb6fbb5685e15bc557918f3612c
2025-10-01 00:36:56 +01:00
Sharlatan Hellseher
25f4edfb88
gnu: python-pathy: Move to python-web.
* gnu/packages/python-xyz.scm (python-pathy): Move from here ...
* gnu/packages/python-web.scm: ... to here.

Change-Id: I6e8bc42e2ea2b57cd9b5d4b54b7618339edaf520
2025-10-01 00:36:56 +01:00
Sharlatan Hellseher
309927a2e5
gnu: python-pathy: Update to 0.11.0.
* gnu/packages/python-xyz.scm (python-pathy): Update to 0.11.0.
[propagated-inputs]: Remove python-smart-open; add python-pathlib-abc and
python-smart-open-6.
[native-inputs]: Remove python-wheel.

Change-Id: I84d58b53e808a6e2d1ab183235c689a3864abfcd
2025-10-01 00:36:56 +01:00
Sharlatan Hellseher
3549922107
gnu: Add python-smart-open-6.
* gnu/packages/python-web.scm (python-smart-open-6): New variable.

Change-Id: I937ab8f574ddb9559f3863e6a988a77b0a1dd01f
2025-10-01 00:36:56 +01:00
Sharlatan Hellseher
a2de5f9480
gnu: Add python-pathlib-abc.
* gnu/packages/python-xyz.scm (python-pathlib-abc): New variable.

Change-Id: If356aa8eab82d2542eb556395e7b8403a18cddc8
2025-10-01 00:36:56 +01:00
Sharlatan Hellseher
56c97d665b
gnu: python-murmurhash: Move to pyhton-crypto.
* gnu/packages/python-xyz.scm (python-murmurhash): Move from here ...
* gnu/packages/python-crypto.scm: ... to here.
* gnu/packages/machine-learning.scm: Add python-crypto module.

Change-Id: I59a26e82622112736b5a331dd948d9aa91255207
2025-10-01 00:36:56 +01:00
Sharlatan Hellseher
812a676ddf
gnu: python-murmurhash: Update to 1.0.10.
* gnu/packages/python-xyz.scm (python-murmurhash): Update to 1.0.10.
[native-inputs]: Remove python-wheel.

Change-Id: I14773c9fd43d24c90af5bcd301dd34894f1ba283
2025-10-01 00:36:56 +01:00
Sharlatan Hellseher
f0184ea657
gnu: python-langcodes: Update to 3.5.0.
* gnu/packages/python-xyz.scm (python-langcodes): Update to 3.5.0.
[build-system]: Switch to pyproject-build-system.
[propagated-inputs]: Add python-language-data.
[native-inputs]: Add python-setuptools and python-setuptools-scm.

Change-Id: I0fc376639843eecdd3489f5b8cc861fb5708d09d
2025-10-01 00:36:56 +01:00
Sharlatan Hellseher
9b6376b618
gnu: Add python-language-data.
* gnu/packages/python-xyz.scm (python-language-data): New variable.

Change-Id: Ib43630b752992cd647c61adfa127276d0dbd7120
2025-10-01 00:36:55 +01:00
Sharlatan Hellseher
9046b7f873
gnu: Add python-marisa-trie.
* gnu/packages/python-xyz.scm (python-marisa-trie): New variable.

Change-Id: I34aab5ffbc9b1b05ee5c820a3806bbae2e8c14be
2025-10-01 00:36:55 +01:00
Sharlatan Hellseher
d3b2c73dd5
gnu: python-id: Fix license.
* gnu/packages/python-xyz.scm (python-id) [license]: Fix it.

Change-Id: Idd307cba21347fb7a8d5e9d1d190a650b0fb4e5b
2025-10-01 00:36:55 +01:00
Sharlatan Hellseher
b874f261d4
gnu: python-anyascii: Update to 0.3.3.
* gnu/packages/python-xyz.scm (python-anyascii): Update to 0.3.3.
[native-inputs]: Remove python-setuptools; add python-pytest.

Change-Id: I6317366173a65cbc1493700ab46abd8b1b0964f0
2025-10-01 00:36:47 +01:00
Maxim Cournoyer
3fa30960ea
gnu: mesa-opencl: Introduce rust-bindgen-cli-next to avoid mesa rebuild.
* gnu/packages/rust-apps.scm (rust-bindgen-cli-next): New variant.
(rust-bindgen-cli) [inputs]: Revert to use default clang.
* gnu/packages/gl.scm (mesa-opencl) [native-inputs]: Replace rust-bindgen-cli
with rust-bindgen-cli-next.

Change-Id: Ia1acb30869d368f54a3b41250ef4d95ebbcd90b0
2025-10-01 08:29:13 +09:00
Maxim Cournoyer
b733de0dce
gnu: mesa-opencl-icd: Deprecate in favor of mesa-opencl.
The previously used Clover backend has been removed.

* gnu/packages/gl.scm (mesa-opencl-icd): Define as deprecated, using as
replacement...
(mesa-opencl): ... this, absorbing its icd file adjusting phase.
[#:modules]: New field.
[#:phases] {use-absolute-file-name-in-rusticl}: New phase.

Change-Id: If7ff766557dd37928e70d8e3ae03d7f1f467ab8a
2025-10-01 08:07:19 +09:00
Maxim Cournoyer
e2f6d4f961
gnu: mesa-opencl: Use the new rusticl OpenCL backend.
The previously used Clover backend has been removed.

* gnu/packages/gl.scm (mesa-opencl) [#:configure-flags]: Remove
gallium-opencl flag. Add gallium-rusticl and gallium-rusticl-enable-drivers.
* gnu/packages/rust-apps.scm (rust-bindgen-cli) [inputs]: Replace clang with
clang-18.

Change-Id: I4e3557816c9a5bb5c652295f1351c3bd8eac608d
2025-10-01 07:25:37 +09:00
Cayetano Santos
8dc37e181c
gnu: osvvm: Implement checks.
* gnu/packages/electronics.scm (osvvm)[arguments]<#:phases>: Add check.
[native-inputs]: Add nvc, tcl, tcllib, and which.

Change-Id: Ia3567f908834c29093d36aa50aebcfae3fb98b18
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-10-01 06:49:59 +09:00
Cayetano Santos
0d5caff88d
gnu: nvc: Use autogen and keep osvvm test script.
* gnu/packages/electronics.scm (nvc)<#:phases>: Remove clean-up; add
fix-autogen and keep-osvvm-tests.

Change-Id: Ib14f21b0f072313bba06c2b9dd1d7a7f67270a51
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-10-01 06:49:59 +09:00
Sharlatan Hellseher
536b57810a
gnu: python-types-toml: Update to 0.10.8.20240310.
* gnu/packages/python-xyz.scm (python-types-toml): Update to 0.10.8.20240310.
[arguments] <tests?>: No tests.
[native-inputs]: Remove python-wheel.

Change-Id: I92c8805fb5c73da38ab8040a9acab7a1c4ac673d
2025-09-30 19:46:18 +01:00
Jake Forster
7961294cbd
gnu: python-s3fs: Update to 2025.9.0.
* gnu/packages/python-web.scm (python-s3fs): Update to 2025.9.0.

Change-Id: Ib7d66f46f81c340bb0f9359f5c4ce8a7d8648b62
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-09-30 19:46:15 +01:00
Jake Forster
69baf529ea
gnu: python-fsspec: Update to 2025.9.0.
Fixes build of python-uproot.

* gnu/packages/python-xyz.scm (python-fsspec): Update to 2025.9.0.
[home-page]: Fix permanent redirect.

Change-Id: Iecdefa053ccdc0928f7250b4fa0b8e2600cfb35f
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-09-30 19:46:03 +01:00
Hartmut Goebel
faac1c2bf0
import/pypi: Improve renaming procedure.
PyPI canonicalizes dashes to underscores, while the former tests for
converting to Guix-compliant name compared using dashes.  Solve this by
canonicalizing to dashes prior to comparing.

* guix/import/pypi.scm (python->package-name): Canonicalize names prior to
testing.

Change-Id: Iba2003720adba82a7f6e3f6319b2699e369163ed
2025-09-30 19:36:53 +02:00
8 changed files with 268 additions and 136 deletions

View file

@ -1000,9 +1000,17 @@ which allows one to install the M8 firmware on any Teensy.")
(string-append "--with-bash-completion=" #$output (string-append "--with-bash-completion=" #$output
"/share/bash-completion/completions")) "/share/bash-completion/completions"))
#:phases #~(modify-phases %standard-phases #:phases #~(modify-phases %standard-phases
(add-after 'unpack 'clean-up (add-after 'unpack 'fix-autogen
(lambda _ (lambda _
(delete-file "autogen.sh")))))) (substitute* "autogen.sh"
(("cd") "# cd"))))
;; This scripts is necessary for testing osvvm.
(add-after 'install 'keep-osvvm-tests
(lambda _
(mkdir-p (string-append #$output "/test"))
(install-file
"../source/test/test-osvvm.tcl"
(string-append #$output "/test")))))))
(native-inputs (native-inputs
(list automake (list automake
autoconf autoconf
@ -1347,7 +1355,16 @@ GUI for sigrok.")
;; Default conflicts with read-only /gnu/store. ;; Default conflicts with read-only /gnu/store.
(substitute* "osvvm/OsvvmVhdlSettings.pro" (substitute* "osvvm/OsvvmVhdlSettings.pro"
(("\\[FindOsvvmSettingsDirectory\\]") (("\\[FindOsvvmSettingsDirectory\\]")
" \"\" "))))))) " \"\" "))))
(add-after 'fix-scripts 'check
(lambda _
(setenv "OSVVM_DIR" (getcwd))
(setenv "OSVVM_MUST_BUILD" (getcwd))
(invoke "tclsh"
(string-append #$(this-package-native-input "nvc")
"/test/test-osvvm.tcl")))))))
(native-inputs
(list nvc tcl tcllib which))
(native-search-paths (native-search-paths
(list (search-path-specification (list (search-path-specification
(variable "OSVVM") (variable "OSVVM")

View file

@ -12,7 +12,7 @@
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020, 2021, 2022, 2023 Maxim Cournoyer <maxim@guixotic.coop> ;;; Copyright © 2020, 2021, 2022, 2023, 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2020 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2020 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru> ;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
;;; Copyright © 2021-2025 John Kehayias <john.kehayias@protonmail.com> ;;; Copyright © 2021-2025 John Kehayias <john.kehayias@protonmail.com>
@ -62,6 +62,7 @@
#:use-module (gnu packages python-build) #:use-module (gnu packages python-build)
#:use-module (gnu packages python-xyz) #:use-module (gnu packages python-xyz)
#:use-module (gnu packages rust) #:use-module (gnu packages rust)
#:use-module (gnu packages rust-apps)
#:use-module (gnu packages tls) #:use-module (gnu packages tls)
#:use-module (gnu packages video) #:use-module (gnu packages video)
#:use-module (gnu packages vulkan) #:use-module (gnu packages vulkan)
@ -351,7 +352,7 @@ also known as DXTn or DXTC) for Mesa.")
(native-inputs (native-inputs
(append (append
(list bison (list bison
clang-18 clang-18 ;ensure rust-bindgen-cli uses the same
flex flex
gettext-minimal gettext-minimal
glslang glslang
@ -655,33 +656,38 @@ from software emulation to complete hardware acceleration for modern GPUs.")
(inherit (package-source mesa)))) (inherit (package-source mesa))))
(arguments (arguments
(substitute-keyword-arguments (package-arguments mesa) (substitute-keyword-arguments (package-arguments mesa)
((#:modules modules)
(cons '(ice-9 textual-ports) modules))
((#:configure-flags flags) ((#:configure-flags flags)
#~(cons "-Dgallium-opencl=standalone" #$flags)))))) #~(cons* "-Dgallium-rusticl=true"
;; Enable all drivers by default.
(define-public mesa-opencl-icd (string-append "-Dgallium-rusticl-enable-drivers="
(package/inherit mesa-opencl "iris,llvmpipe,nouveau,panfrost,radeonsi,r600")
(name "mesa-opencl-icd") #$flags))
(arguments ((#:phases phases)
(substitute-keyword-arguments (package-arguments mesa) #~(modify-phases #$phases
((#:configure-flags flags) (add-after 'install 'use-absolute-file-name-in-rusticl.icd
#~(cons "-Dgallium-opencl=icd"
(delete "-Dgallium-opencl=standalone" #$flags)))
((#:phases phases)
#~(modify-phases #$phases
(add-after 'install 'mesa-icd-absolute-path
(lambda _ (lambda _
;; Use absolute path for OpenCL platform library. ;; Use absolute path for OpenCL platform library. Otherwise
;; Otherwise we would have to set LD_LIBRARY_PATH=LIBRARY_PATH ;; we would have to set LD_LIBRARY_PATH=LIBRARY_PATH for
;; for ICD in our applications to find OpenCL platform. ;; Rusticl in our applications to find the OpenCL platform.
(use-modules (guix build utils)
(ice-9 textual-ports))
(let* ((out #$output) (let* ((out #$output)
(mesa-icd (string-append out "/etc/OpenCL/vendors/mesa.icd")) (rusticl.icd (string-append
(old-path (call-with-input-file mesa-icd get-string-all)) out "/etc/OpenCL/vendors/rusticl.icd"))
(new-path (string-append out "/lib/" (string-trim-both old-path)))) (old-path (call-with-input-file rusticl.icd
get-string-all))
(new-path (string-append out "/lib/"
(string-trim-both old-path))))
(if (file-exists? new-path) (if (file-exists? new-path)
(call-with-output-file mesa-icd (call-with-output-file rusticl.icd
(lambda (port) (format port "~a\n" new-path))))))))))))) (lambda (port) (format port "~a\n" new-path)))))))))))
(native-inputs (modify-inputs (package-native-inputs mesa)
(replace "rust-bindgen-cli" rust-bindgen-cli-next)))))
;;; ICD was part of the Gallium (Clover) OpenCL driver, which was replaced
;;; with Rusticl.
(define-public mesa-opencl-icd
(deprecated-package "mesa-opencl-icd" mesa-opencl))
(define-public mesa-headers (define-public mesa-headers
(package/inherit mesa (package/inherit mesa

View file

@ -121,6 +121,7 @@
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages python-build) #:use-module (gnu packages python-build)
#:use-module (gnu packages python-check) #:use-module (gnu packages python-check)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-science) #:use-module (gnu packages python-science)
#:use-module (gnu packages python-web) #:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz) #:use-module (gnu packages python-xyz)

View file

@ -26,6 +26,7 @@
;;; Copyright © 2020, 2021 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020, 2021 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021, 2022, 2023 Maxim Cournoyer <maxim@guixotic.coop> ;;; Copyright © 2021, 2022, 2023 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2022 Antero Mejr <antero@mailbox.org> ;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
;;; Copyright © 2023 Juliana Sims <juli@incana.org> ;;; Copyright © 2023 Juliana Sims <juli@incana.org>
;;; Copyright © 2023, 2025 Zheng Junjie <z572@z572.online> ;;; Copyright © 2023, 2025 Zheng Junjie <z572@z572.online>
@ -132,6 +133,53 @@ on the Blowfish password hashing algorithm, as described in
Password Scheme\"} by Niels Provos and David Mazieres.") Password Scheme\"} by Niels Provos and David Mazieres.")
(license license:asl2.0))) (license license:asl2.0)))
(define-public python-murmurhash
(package
(name "python-murmurhash")
(version "1.0.10")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/explosion/murmurhash")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "02ny4391kbrssq9bf7kq75615ragvbjhsqi9hgv7wiaiz6yai1k8"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'fix-installation
(lambda* (#:key inputs outputs #:allow-other-keys)
(with-directory-excursion
(string-append (site-packages inputs outputs) "/murmurhash")
(delete-file-recursively "tests")
(delete-file "mrmr.pyx")
(for-each
(lambda (file)
(chmod file #o555))
(find-files "." "\\.so$")))))
;; XXX: Otherwise ModuleNotFoundError, and --pyargs doesn't seem
;; to fix the issue.
(replace 'check
(lambda args
(copy-recursively "murmurhash/tests" "tests")
(delete-file-recursively "murmurhash")
(with-directory-excursion "tests"
(apply (assoc-ref %standard-phases 'check) args)))))))
(native-inputs
(list python-cython
python-murmurhash3
python-pytest
python-setuptools))
(home-page "https://github.com/explosion/murmurhash")
(synopsis "Cython bindings for MurmurHash2")
(description
"This package provides Cython bindings for MurmurHash2.")
(license license:expat)))
(define-public python-passlib (define-public python-passlib
(package (package
(name "python-passlib") (name "python-passlib")

View file

@ -1339,6 +1339,33 @@ feaatures are:
in Python 3.13 by PEP-594.") in Python 3.13 by PEP-594.")
(license license:psfl))) (license license:psfl)))
(define-public python-pathy
(package
(name "python-pathy")
(version "0.11.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pathy" version))
(sha256
(base32 "0vbhcfg8g74g90bzmdgxr1jyvwhadvlr2w9wyvs6xxwb1dmhwgdv"))))
(build-system pyproject-build-system)
(native-inputs
(list python-mock
python-pytest
python-setuptools))
(propagated-inputs
(list python-pathlib-abc
python-smart-open-6
python-typer))
(home-page "https://github.com/justindujardin/pathy")
(synopsis "Path interface for local and cloud bucket storage")
(description "Pathy is a python package (with type annotations) for
working with Cloud Bucket storage providers using a @code{pathlib} interface.
It provides @code{pathlib.Path} subclasses for local and cloud bucket
storage.")
(license license:asl2.0)))
(define-public python-portend (define-public python-portend
(package (package
(name "python-portend") (name "python-portend")
@ -6867,13 +6894,13 @@ Betamax that may possibly end up in the main package.")
(define-public python-s3fs (define-public python-s3fs
(package (package
(name "python-s3fs") (name "python-s3fs")
(version "2025.7.0") (version "2025.9.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "s3fs" version)) (uri (pypi-uri "s3fs" version))
(sha256 (sha256
(base32 "0b82wqf70q1srsjb7xbbjhlzm08lbghzm1pbwdam2x6prb09wzsy")))) (base32 "0c5w09ryyfwlrqbhxgn1yl2kl1ksmz2481vjs1l4k9lyy5z2ai3d"))))
(build-system pyproject-build-system) (build-system pyproject-build-system)
;; TODO: Many tests fail with "No such file or directory" raised by the ;; TODO: Many tests fail with "No such file or directory" raised by the
;; HTTP client. ;; HTTP client.
@ -10775,6 +10802,25 @@ library for Python.")
GCS, Azure Blob Storage, gzip, bz2, etc.)") GCS, Azure Blob Storage, gzip, bz2, etc.)")
(license license:expat))) (license license:expat)))
(define-public python-smart-open-6
(package
(inherit python-smart-open)
(name "python-smart-open")
(version "6.4.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/piskvorky/smart_open")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1vpx37b6lsb6iwi59776ywjrqk1czv8arlhaf9073lrsbilqvj3x"))))
(arguments
(list
;; XXX: Tests need some older native inputs, disable for now.
#:tests? #f))))
(define-public python-w3lib (define-public python-w3lib
(package (package
(name "python-w3lib") (name "python-w3lib")

View file

@ -1050,7 +1050,7 @@ supports:
(description (description
"This package provides a tool for generating @code{OIDC, OpenID Connect} "This package provides a tool for generating @code{OIDC, OpenID Connect}
identities.") identities.")
(license #f))) (license license:asl2.0)))
(define-public python-jsonpath-ng (define-public python-jsonpath-ng
(package (package
@ -1078,6 +1078,32 @@ comparison operators, as defined in the original
@url{http://goessner.net/articles/JsonPath/, JSONPath} proposal.") @url{http://goessner.net/articles/JsonPath/, JSONPath} proposal.")
(license license:asl2.0))) (license license:asl2.0)))
(define-public python-language-data
(package
(name "python-language-data")
(version "1.3.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "language_data" version))
(sha256
(base32 "1v6pp8z2wxj3hafl62hbx8sbinpp9cr0r7y80rfi8mcmlf5fy03n"))))
(build-system pyproject-build-system)
(native-inputs
(list python-pytest
python-setuptools
python-setuptools-scm))
(propagated-inputs
(list python-marisa-trie))
(home-page "https://github.com/georgkrause/language_data")
(synopsis "Supplementary data about languages used by the langcodes module")
(description
"language_data is a supplement to the langcodes module, for working with
standardized codes for human languages. It stores the more bulky and
hard-to-index data about languages, particularly what they are named in
various languages.")
(license license:expat)))
(define-public python-log-symbols (define-public python-log-symbols
(package (package
(name "python-log-symbols") (name "python-log-symbols")
@ -1102,6 +1128,30 @@ comparison operators, as defined in the original
be displayed on the terminal, with color if possible, for logging purposes.") be displayed on the terminal, with color if possible, for logging purposes.")
(license license:expat))) (license license:expat)))
(define-public python-marisa-trie
(package
(name "python-marisa-trie")
(version "1.3.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "marisa_trie" version))
(sha256
(base32 "0nzq9yc3qdpnnvhi9zlp6vcpk6id5lx3943pm7zgir1h5z8py44p"))))
(build-system pyproject-build-system)
(native-inputs
(list python-cython
python-hypothesis
python-pytest
python-readme-renderer
python-setuptools))
(home-page "https://github.com/pytries/marisa-trie")
(synopsis "Static memory-efficient Trie-like structures for Python")
(description
"This package provides static memory-efficient and fast Trie-like structures
for Python.")
(license license:expat)))
(define-public python-multiplex (define-public python-multiplex
(package (package
(name "python-multiplex") (name "python-multiplex")
@ -1175,6 +1225,26 @@ of Ordered Set.")
your terminal.") your terminal.")
(license license:expat))) (license license:expat)))
(define-public python-pathlib-abc
(package
(name "python-pathlib-abc")
(version "0.1.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pathlib_abc" version))
(sha256
(base32 "1gjsj7r331i54kbisy0zz1h9icx1hv6n97jaj5s7f3wvj7fpnkh8"))))
(build-system pyproject-build-system)
(native-inputs (list python-pytest python-hatchling))
(home-page "https://github.com/barneygale/pathlib-abc")
(synopsis "Python base classes for rich path objects")
(description
"This package is a preview of pathlib functionality planned for a future
release of Python; specifically, it provides three ABCs that can be used to
implement path classes for non-local filesystems")
(license license:psfl)))
(define-public python-pbs-installer (define-public python-pbs-installer
(package (package
(name "python-pbs-installer") (name "python-pbs-installer")
@ -14006,29 +14076,6 @@ all the newest features of the standard @code{pathlib} can be used also on
older Python versions.") older Python versions.")
(license license:expat))) (license license:expat)))
(define-public python-pathy
(package
(name "python-pathy")
(version "0.10.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "pathy" version))
(sha256
(base32
"12v196q3rai33cfzrmb9pqfqv7ailngssjdrzdf8gzym9hdygmjc"))))
(build-system pyproject-build-system)
(propagated-inputs
(list python-smart-open python-typer))
(native-inputs (list python-mock python-pytest python-setuptools
python-wheel))
(home-page "https://github.com/justindujardin/pathy")
(synopsis "Path interface for local and cloud bucket storage")
(description "Pathy is a python package (with type annotations) for
working with Cloud Bucket storage providers using a @code{pathlib} interface.
It provides @code{pathlib.Path} subclasses for local and cloud bucket
storage.")
(license license:asl2.0)))
(define-public python-importlib-resources (define-public python-importlib-resources
(package (package
(name "python-importlib-resources") (name "python-importlib-resources")
@ -30689,7 +30736,7 @@ values. Partd excels at shuffling operations.")
(define-public python-fsspec (define-public python-fsspec
(package (package
(name "python-fsspec") (name "python-fsspec")
(version "2025.7.0") (version "2025.9.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -30698,7 +30745,7 @@ values. Partd excels at shuffling operations.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1r7vv64qf7ynw81jn0xn5axz709a8fd0bl7w9131aqzqj7a00ppy")))) (base32 "1f11jjp7xd4q9a5lmb00i5l9v36162gjr6h1hkfzvgq78xa735xp"))))
(build-system pyproject-build-system) (build-system pyproject-build-system)
(arguments (arguments
(list (list
@ -30729,7 +30776,7 @@ values. Partd excels at shuffling operations.")
python-pytest-asyncio python-pytest-asyncio
python-pytest-mock python-pytest-mock
python-pytest-rerunfailures)) python-pytest-rerunfailures))
(home-page "https://github.com/intake/filesystem_spec") (home-page "https://github.com/fsspec/filesystem_spec")
(synopsis "File-system specification") (synopsis "File-system specification")
(description "The purpose of this package is to produce a template or (description "The purpose of this package is to produce a template or
specification for a file-system interface, that specific implementations specification for a file-system interface, that specific implementations
@ -38308,15 +38355,17 @@ collection.")
(define-public python-types-toml (define-public python-types-toml
(package (package
(name "python-types-toml") (name "python-types-toml")
(version "0.10.5") (version "0.10.8.20240310")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "types-toml" version)) (uri (pypi-uri "types-toml" version))
(sha256 (sha256
(base32 "10400bd3yv6rjfnq8galskkbpqz1sfx9sfgr5qwvw04270x4cjgr")))) (base32 "0c83hfw4aqy01vzlh6r84mz6b2b6n98chfdjp2k3c94p089m0h9x"))))
(build-system pyproject-build-system) (build-system pyproject-build-system)
(native-inputs (list python-setuptools python-wheel)) (arguments
(list #:tests? #f)) ;no tests provided
(native-inputs (list python-setuptools))
(home-page "https://github.com/python/typeshed") (home-page "https://github.com/python/typeshed")
(synopsis "Typing stubs for TOML") (synopsis "Typing stubs for TOML")
(description (description
@ -38529,32 +38578,33 @@ than trying to just split strings.")
(define-public python-srsly (define-public python-srsly
(package (package
(name "python-srsly") (name "python-srsly")
(version "2.4.8") (version "2.5.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "srsly" version)) (uri (pypi-uri "srsly" version))
(sha256 (sha256
(base32 (base32
"14ca3gwmhr24axxdhn73157wzzjkmi1s1ka91dz49hh9a2k9akdj")))) "0zn74zyb928v898j6l86a83qgdvza78ksjg0v8ixla9yrzv4n6xb"))))
(build-system pyproject-build-system) (build-system pyproject-build-system)
(arguments (arguments
(list (list
#:phases #:test-flags
#~(modify-phases %standard-phases #~(list "--pyargs" "srsly"
(add-before 'check 'build-extensions ;; 3 tests fail in
(lambda _ ;; tests/cloudpickle/cloudpickle_test.py::CloudPickleTest
;; Cython extensions have to be built before running the tests. "-k" (string-append "not test_import"
(invoke "python" "setup.py" "build_ext" "--inplace")))))) " and not test_logger"
(propagated-inputs (list python-catalogue)) " and not test_multiprocess"))))
(native-inputs (native-inputs
(list python-cython (list python-cython
python-pytest
python-pytest-timeout
python-mock python-mock
python-numpy python-numpy
python-psutil python-psutil
python-setuptools python-pytest
python-wheel)) python-pytest-timeout
python-setuptools))
(propagated-inputs
(list python-catalogue))
(home-page "https://github.com/explosion/srsly") (home-page "https://github.com/explosion/srsly")
(synopsis "Serialization utilities for Python") (synopsis "Serialization utilities for Python")
(description "This package bundles some of the best Python serialization (description "This package bundles some of the best Python serialization
@ -39060,54 +39110,6 @@ of fast and robust hash functions. This library is a Python extension module
written in C.") written in C.")
(license license:public-domain)))) (license license:public-domain))))
(define-public python-murmurhash
(package
(name "python-murmurhash")
(version "1.0.7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/explosion/murmurhash")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0p8afy51nfvswl2fcimy5vc584zv89349rq12ymbcpp06yidzdfh"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'fix-installation
(lambda* (#:key inputs outputs #:allow-other-keys)
(with-directory-excursion
(string-append (site-packages inputs outputs) "/murmurhash")
(delete-file-recursively "tests")
(delete-file "mrmr.pyx")
(for-each
(lambda (file)
(chmod file #o555))
(find-files "." "\\.so$")))))
;; XXX: Otherwise ModuleNotFoundError, and --pyargs doesn't seem
;; to fix the issue.
(replace 'check
(lambda args
(copy-recursively "murmurhash/tests" "tests")
(delete-file-recursively "murmurhash")
(with-directory-excursion "tests"
(apply (assoc-ref %standard-phases 'check) args)))))))
(native-inputs
(list python-cython
python-murmurhash3
python-pytest
python-setuptools
python-wheel))
(home-page "https://github.com/explosion/murmurhash")
(synopsis "Cython bindings for MurmurHash2")
(description
"This package provides Cython bindings for MurmurHash2.")
(license license:expat)))
;; Scooby requires for its test suite a pyvips package that is missing its ;; Scooby requires for its test suite a pyvips package that is missing its
;; VIPS dependency. ;; VIPS dependency.
(define python-pyvips-for-python-scooby (define python-pyvips-for-python-scooby
@ -39546,15 +39548,21 @@ Wikipedia}.")
(define-public python-langcodes (define-public python-langcodes
(package (package
(name "python-langcodes") (name "python-langcodes")
(version "3.3.0") (version "3.5.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "langcodes" version)) (uri (pypi-uri "langcodes" version))
(sha256 (sha256
(base32 (base32
"1xkyh3qdcigb18qiimbwl2669y22hhdmd89mqcd270c7lbahfkbr")))) "00gqlqs1gi8mvjwf6fkwiqhgcqxnsk5gwzs9l8qy2lbys1l83vqy"))))
(build-system python-build-system) (build-system pyproject-build-system)
(native-inputs (list python-pytest)) (native-inputs
(list python-pytest
python-setuptools
python-setuptools-scm))
(propagated-inputs
;; [optional:data]
(list python-language-data))
(home-page "https://github.com/rspeer/langcodes") (home-page "https://github.com/rspeer/langcodes")
(synopsis "Python library for working with language codes") (synopsis "Python library for working with language codes")
(description (description
@ -39575,15 +39583,15 @@ install @code{python-language-data}.")
(define-public python-anyascii (define-public python-anyascii
(package (package
(name "python-anyascii") (name "python-anyascii")
(version "0.3.2") (version "0.3.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "anyascii" version)) (uri (pypi-uri "anyascii" version))
(sha256 (sha256
(base32 (base32
"0c27rr3fmc1cx9mkmgx94zdf9yil0napzfkwpjw2bqjghkpk4pcx")))) "1hwmzg3kxyj6lxdgibrj3azv803x8kwzw1d3xja98gbvskcrskn9"))))
(build-system pyproject-build-system) (build-system pyproject-build-system)
(native-inputs (list python-flit-core python-setuptools)) (native-inputs (list python-pytest python-flit-core))
(home-page "https://anyascii.com") (home-page "https://anyascii.com")
(synopsis "Unicode to ASCII transliteration") (synopsis "Unicode to ASCII transliteration")
(description "@code{anyascii} converts Unicode characters to their best (description "@code{anyascii} converts Unicode characters to their best

View file

@ -12,7 +12,7 @@
;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.ccom> ;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.ccom>
;;; Copyright © 2021, 2022, 2025 Zheng Junjie <z572@z572.online> ;;; Copyright © 2021, 2022, 2025 Zheng Junjie <z572@z572.online>
;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro> ;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
;;; Copyright © 2021, 2023, 2024 Maxim Cournoyer <maxim@guixotic.coop> ;;; Copyright © 2021, 2023-2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021, 2022 Petr Hodina <phodina@protonmail.com> ;;; Copyright © 2021, 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2021 jgart <jgart@dismail.de> ;;; Copyright © 2021 jgart <jgart@dismail.de>
;;; Copyright © 2021 Nicolas Graves <ngraves@ngraves.fr> ;;; Copyright © 2021 Nicolas Graves <ngraves@ngraves.fr>
@ -2567,6 +2567,11 @@ bindings to C and C++ libraries. This package provides the @command{bindgen}
command.") command.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public rust-bindgen-cli-next
(package/inherit rust-bindgen-cli
(inputs (modify-inputs (package-inputs rust-bindgen-cli)
(replace "clang" clang-18)))))
(define-public sniffglue (define-public sniffglue
(package (package
(name "sniffglue") (name "sniffglue")

View file

@ -183,13 +183,14 @@ or #f if there isn't any."
(define (python->package-name name) (define (python->package-name name)
"Given the NAME of a package on PyPI, return a Guix-compliant name for the "Given the NAME of a package on PyPI, return a Guix-compliant name for the
package." package."
(cond (let ((name (snake-case name)))
((string-prefix? "python-" name) (snake-case name)) (cond
((string-suffix? "-python" name) ((string-prefix? "python-" name) name)
(string-append "python-" (string-drop-right name 7))) ((string-suffix? "-python" name)
((or (string=? "trytond" name) (string-append "python-" (string-drop-right name 7)))
(string-prefix? "trytond-" name)) (snake-case name)) ((or (string=? "trytond" name)
(else (string-append "python-" (snake-case name))))) (string-prefix? "trytond-" name)) name)
(else (string-append "python-" name)))))
(define (guix-package->pypi-name package) (define (guix-package->pypi-name package)
"Given a Python PACKAGE built from pypi.org, return the name of the "Given a Python PACKAGE built from pypi.org, return the name of the