diff options
Diffstat (limited to 'gnu/packages/python-xyz.scm')
-rw-r--r-- | gnu/packages/python-xyz.scm | 1991 |
1 files changed, 1019 insertions, 972 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index b5680bef04..b5aa148e14 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -783,6 +783,29 @@ implemented in pure Python, and most of them are also implemented in C.") packaging tasks.") (license license:expat))) +(define-public python-envs + (package + (name "python-envs") + (version "1.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "envs" version)) + (sha256 + (base32 "160358zskyg6g606lndjcv7yd2nv5f7ca14y55lds72xk333b14x")))) + (build-system pyproject-build-system) + (arguments + (list #:test-backend #~'unittest)) + (native-inputs + (list python-poetry-core)) + (home-page "https://github.com/capless/envs") + (synopsis "Easy access of environment variables from Python") + (description + "This package implements a functionality to access of environment +variables from Python with support for strings, booleans, list, tuples, and +dicts.") + (license license:asl2.0))) + (define-public python-exitcode (package (name "python-exitcode") @@ -4980,13 +5003,13 @@ Unicode-to-LaTeX conversion.") (define-public python-cftime (package (name "python-cftime") - (version "1.6.4") + (version "1.6.5") (source (origin (method url-fetch) (uri (pypi-uri "cftime" version)) (sha256 - (base32 "1p5fw25hjqpzwxw3662f72ga30kpf8pbbph8fgb7x2kmjdhl09g3")))) + (base32 "07p8s5a0xacn404x6l0i04q1gz2h0h9m5azbhdvbhgxlp7bgw9c2")))) (build-system pyproject-build-system) (arguments (list #:phases @@ -5004,7 +5027,6 @@ Unicode-to-LaTeX conversion.") (list python-cython python-pytest python-setuptools - python-twine python-wheel)) (home-page "https://unidata.github.io/cftime/") (synopsis "Library for time handling") @@ -7029,25 +7051,6 @@ developed by the Astropy project but is intended to be general and usable by any Python package.") (license license:bsd-3))) -(define-public python-types-colorama - (package - (name "python-types-colorama") - (version "0.4.15.20250801") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types_colorama" version)) - (sha256 - (base32 "1xapqdq6450ngzp18nvvkwbs68nnxksk1wyk6wid2qw9sq9msmh2")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ;no tests in PyPI archive - (native-inputs - (list python-setuptools)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for colorama") - (description "This package provides typing stubs for colorama.") - (license license:asl2.0))) - (define-public python-milc (package (name "python-milc") @@ -7939,23 +7942,29 @@ memory usage and transliteration quality.") (define-public python-pyjwt (package (name "python-pyjwt") - (version "2.6.0") + (version "2.10.1") (source (origin (method url-fetch) - (uri (pypi-uri "PyJWT" version)) + (uri (pypi-uri "pyjwt" version)) (sha256 - (base32 - "1z85kwr945rbzrn5wabrsmck5x8disa9wc7b3y5gci7w65z5qa39")))) + (base32 "0lqr73wnrnxflbh8wr768hxp493qayhdis86mwy26280n8p7gi9w")))) (build-system pyproject-build-system) + (arguments + (list + ;; tests: 286 passed, 4 skipped, 1 deselected + ;; + ;; jwt.exceptions.PyJWKClientConnectionError: Fail to fetch data from + ;; the url, err: "<urlopen error [Errno -3] Temporary failure in name + ;; resolution>" + #:test-flags #~(list "-k" "not test_get_jwt_set_sslcontext_default"))) (native-inputs - (list python-coverage - python-cryptography - python-pytest - python-sphinx - python-sphinx-rtd-theme - python-setuptools - python-wheel)) + (list python-pytest + python-setuptools)) + (propagated-inputs + (if (supported-package? python-cryptography) + (list python-cryptography) + '())) (home-page "https://github.com/progrium/pyjwt") (synopsis "JSON Web Token implementation in Python") (description @@ -11017,6 +11026,18 @@ readable format.") ;; GPL2.0 only, with linking exception. (license license:gpl2))) +(define-public python-pygit2-1.18 + (package/inherit python-pygit2 + (name "python-pygit2") + (version "1.18.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pygit2" version)) + (sha256 + (base32 "0m8g8s72c0xwwayykpj1hf8c1wldhmg1sj8kgxdp2rf9c837xa7c")))) + (propagated-inputs (list python-cffi libgit2-1.9)))) + (define-public python-patiencediff (package (name "python-patiencediff") @@ -12491,62 +12512,6 @@ a general image processing tool.") and a plugin for Pillow.") (license license:bsd-3))) -(define-public python-pillow-simd - (package - (name "python-pillow-simd") - (version "10.0.1.post0") - (source - (origin - (method git-fetch) ;no tests in PyPI tarball - (uri (git-reference - (url "https://github.com/uploadcare/pillow-simd") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "16pr4qifb661spf58b7g2lyraask9wf944v4kwk3llg32djvb09b")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags - ;; Got different content. - '(list "-k" (string-append "not test_open" - " and not test_consistency_3x3" - " and not test_consistency_5x5" - " and not test_close")) - #:phases - '(modify-phases %standard-phases - (add-after 'unpack 'patch-ldconfig - (lambda _ - (substitute* "setup.py" - (("\\['/sbin/ldconfig', '-p'\\]") "['true']"))))))) - (native-inputs - (list python-check-manifest - python-defusedxml - python-markdown2 - python-olefile - python-packaging - python-pytest - python-pytest-timeout - python-setuptools - python-trove-classifiers)) - (inputs - (list freetype - lcms - libimagequant - libjpeg-turbo - libraqm - libtiff - libwebp - openjpeg - zlib)) - (home-page "https://github.com/uploadcare/pillow-simd") - (synopsis "Fork of the Python Imaging Library (Pillow)") - (description "This package is a fork of Pillow which adds support for SIMD -parallelism.") - (license (license:x11-style - "http://www.pythonware.com/products/pil/license.htm" - "The PIL Software License")))) - (define-public python-pixelmatch (package (name "python-pixelmatch") @@ -15984,15 +15949,33 @@ as possible in order to be comprehensible and easily extensible.") (define-public python-q (package (name "python-q") - (version "2.6") + (properties '((commit . "cbad74095e20017f33d3ab75aa8375aa046ee697") + (revision . "0"))) + (version (git-version "2.7" + (assoc-ref properties 'revision) + (assoc-ref properties 'commit))) (source (origin - (method url-fetch) - (uri (pypi-uri "q" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/zestyping/q") + (commit (assoc-ref properties 'commit)))) + (file-name (git-file-name name version)) (sha256 - (base32 - "1mgfazh8fkizh6walra2zv885f3lcgr3nb02v1frfm4p8ddcy3yy")))) - (build-system python-build-system) + (base32 "17bzi4xma4313waxanz5lly0cf0k6h33qrpy24sra2frh7gp0j0j")))) + (build-system pyproject-build-system) + (arguments + (list + ;; Deduced from the makefile. + #:test-backend #~'custom + #:test-flags #~(list "test/test_basic.py") + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'configure-tests + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (setenv "TMPDIR" "/tmp"))))))) + (native-inputs (list python-setuptools)) (home-page "https://github.com/zestyping/q") (synopsis "Quick-and-dirty debugging output for tired programmers") (description @@ -17207,10 +17190,23 @@ the @code{sendfile(2)} system call.") (build-system pyproject-build-system) ;; Using Pytest instead of the Makefile causes the command line tests to ;; fail on unknown Pytest arguments. - (arguments (list #:test-flags #~(list "-k" "not TestCommandLineParser"))) - (native-inputs (list python-psutil python-pytest python-setuptools - python-wheel)) - (propagated-inputs (list python-pyopenssl python-pysendfile)) + (arguments + (list + #:test-flags + #~(list "-k" "not TestCommandLineParser" + #$@(if (target-aarch64?) + ;; TimeoutError: timed out + '((string-append "--deselect=pyftpdlib/test/test_functional.py" + "::TestTimeouts::test_idle_data_timeout2")) + '())))) + (native-inputs + (list python-psutil + python-pytest + python-setuptools + python-wheel)) + (propagated-inputs + (list python-pyopenssl + python-pysendfile)) (home-page "https://github.com/giampaolo/pyftpdlib/") (synopsis "Asynchronous and scalable Python FTP server library") (description "The Python FTP server library provides a high-level @@ -17243,33 +17239,41 @@ It has a flexible system of @samp{authorizers} able to manage both (source (origin (method git-fetch) - (uri (git-reference (url - "https://github.com/PyFilesystem/pyfilesystem2/") - (commit (string-append "v" version)))) + (uri (git-reference + (url "https://github.com/PyFilesystem/pyfilesystem2/") + (commit (string-append "v" version)))) (file-name (git-file-name name version)) - (sha256 (base32 "1wrkhsv57kv4jcadn7w330mgbjjsimgzfvicni8cka6y1a8chbjs")))) + (sha256 + (base32 "1wrkhsv57kv4jcadn7w330mgbjjsimgzfvicni8cka6y1a8chbjs")))) (build-system pyproject-build-system) (arguments (list + ;; tests: 1995 passed, 21 skipped, 411 deselected, 14 warnings + #:test-flags #~(list "-m" "not slow") #:tests? (and (not (%current-target-system)) (->bool (this-package-native-input "python-pytest"))) - #:phases #~(modify-phases %standard-phases - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (setenv "HOME" "/tmp") - (invoke "pytest" "-m" "not slow"))))))) - (propagated-inputs - (list python-appdirs python-pytz python-six)) + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda _ + (setenv "HOME" "/tmp")))))) (native-inputs - ;; 'python-pyftpdlib' is needed for tests but it indirectly depends Rust, - ;; which is currently unavailable on aarch64-linux. Remove all the test - ;; dependencies in that case. - (if (and (not (%current-target-system)) - (supported-package? python-pyftpdlib)) - (list python-mock python-parameterized python-pyftpdlib - python-pytest python-setuptools) - '())) + (append + (list python-setuptools) + ;; 'python-pyftpdlib' is needed for tests but it indirectly depends Rust, + ;; which is currently unavailable on aarch64-linux. Remove all the test + ;; dependencies in that case. + (if (and (not (%current-target-system)) + (supported-package? python-pyftpdlib)) + (list python-mock + python-parameterized + python-pyftpdlib + python-pytest) + '()))) + (propagated-inputs + (list python-appdirs + python-pytz + python-six)) ;still hard itegrated (home-page "https://github.com/PyFilesystem/pyfilesystem2/") (synopsis "File system abstraction layer for Python") (description @@ -19782,15 +19786,21 @@ be set via config files and/or environment variables.") (version "0.0.3") (source (origin - (method url-fetch) - (uri (pypi-uri "connection_pool" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/zhouyl/ConnectionPool") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 "1p6hfkcl4n3hhhcgjbaxn21i7b1yipag6j7dnilir4k5xxx9whmz")))) - (build-system python-build-system) + (base32 "1c6676vga0p4xxa3f0jpbwgp3n69mxjisnfcwibd9x23iyxf3sr2")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ; No tests. + (native-inputs (list python-setuptools)) (home-page "https://github.com/zhouyl/ConnectionPool") (synopsis "Thread-safe connection pool") - (description "This package provides a library implementing a thread-safe -connection pool.") + (description + "This package provides a library implementing a thread-safe connection +pool.") (license license:expat))) (define-public python-argparse-dataclass @@ -19847,23 +19857,20 @@ and dataclasses.") (version "1.6.4") (source (origin - (method url-fetch) - (uri (pypi-uri "texttable" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/foutaise/texttable/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 - "1sbn821394rix6xgj3zqk743pj6nqm1qz81zgis2bcpp2ng7pvj2")))) - (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? (invoke "pytest" "-vv" "tests.py"))))))) - (native-inputs - (list python-pytest)) + (base32 "1lcn76wx6fsj8d79gs985irkqz5qbwq1v9ji9jxsra6dbb643v5j")))) + (build-system pyproject-build-system) + (arguments (list #:test-flags #~(list "tests.py"))) + (native-inputs (list python-pytest python-setuptools)) (home-page "https://github.com/foutaise/texttable/") - (synopsis "Python module for creating simple ASCII tables") - (description "Texttable is a Python module for creating simple ASCII + (synopsis "Create simple ASCII tables in Python") + (description + "This package provides a Python module for creating simple ASCII tables.") (license license:expat))) @@ -19871,16 +19878,20 @@ tables.") (package (name "python-atomicwrites") (version "1.4.0") - (source (origin - (method url-fetch) - (uri (pypi-uri "atomicwrites" version)) - (sha256 - (base32 - "0yla2svfhfqrcj8qbyqzx7wi4jy0dwcxvlkg0k3zjd54s5m3jw5f")))) - (build-system python-build-system) - (arguments `(#:tests? #f)) ;avoid circular dependency with pytest + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/untitaker/python-atomicwrites") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1f21l5fyh8qmsacbsknwwgnd1b9x4i0aw0zpczr05wklkkbvd58y")))) + (build-system pyproject-build-system) + (native-inputs (list python-pytest python-setuptools)) (synopsis "Atomic file writes in Python") - (description "Library for atomic file writes using platform dependent tools + (description + "Library for atomic file writes using platform dependent tools for atomic file system operations.") (home-page "https://github.com/untitaker/python-atomicwrites") (license license:expat))) @@ -19925,17 +19936,21 @@ the construction of PyQt/PySide stylesheets.") (package (name "python-click-threading") (version "0.5.0") - (source (origin - (method url-fetch) - (uri (pypi-uri "click-threading" version)) - (sha256 - (base32 - "0f9lmxwcq0y9lb8w0whbni7gwy12gbv74h1igh85qn9aq0iydkxd")))) - (build-system python-build-system) - (propagated-inputs - (list python-click)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/click-contrib/click-threading") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "185pzw12ap7wrjpyxhsyrkhh7i1l5qclaa3zlpn8qvm39fz0kjni")))) + (build-system pyproject-build-system) + (native-inputs (list python-pytest python-setuptools)) + (propagated-inputs (list python-click)) (synopsis "Utilities for multithreading in Click") - (description "This package provides utilities for multithreading in Click + (description + "This package provides utilities for multithreading in Click applications.") (home-page "https://github.com/click-contrib/click-threading") (license license:expat))) @@ -19944,18 +19959,21 @@ applications.") (package (name "python-click-log") (version "0.3.2") - (source (origin - (method url-fetch) - (uri (pypi-uri "click-log" version)) - (sha256 - (base32 - "091i03bhxyzsdbc6kilxhivfda2f8ymz3b33xa6cj5kbzjiirz8n")))) - (build-system python-build-system) - (propagated-inputs - (list python-click)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/click-contrib/click-log") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "01zpjyqnyzrx6xi7cii2180bqdcg2a6b1sdbjijri8jv755r7ray")))) + (build-system pyproject-build-system) + (native-inputs (list python-pytest python-setuptools)) + (propagated-inputs (list python-click)) (synopsis "Logging for click applications") - (description "This package provides a Python library for logging Click -applications.") + (description + "This package provides a Python library for logging Click applications.") (home-page "https://github.com/click-contrib/click-log") (license license:expat))) @@ -20208,15 +20226,31 @@ output, progress bar display, and pipes.") (package (name "python-rply") (version "0.7.8") - (source (origin - (method url-fetch) - (uri (pypi-uri "rply" version)) - (sha256 - (base32 - "1j81nddvnb145x4p81bnfpyai6g26i2dc1633ycsk025bb18m01a")))) - (build-system python-build-system) - (propagated-inputs - (list python-appdirs)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/alex/rply") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0kn8vikyf95mr8l9g3324b7gk4cgxlvvy1abqpl1h803idqg1vwq")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags #~(list "--ignore=tests/test_ztranslation.py") + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'fix-pytest-use + (lambda _ + (substitute* (find-files "tests" "\\.py$") + (("import py") + "import pytest") + (("py\\.test") + "pytest")) + (setenv "HOME" (getcwd))))))) + (native-inputs (list python-pytest python-setuptools)) + (propagated-inputs (list python-appdirs)) (home-page "https://github.com/alex/rply") (synopsis "Parser generator for Python") (description @@ -20257,41 +20291,66 @@ Python at your fingertips, in Lisp form.") (define-public python-hissp (package (name "python-hissp") - (version "0.2.0") + (version "0.5.0") (source (origin - (method url-fetch) - (uri (pypi-uri "hissp" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/gilch/hissp") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 - "0yns7f0q699zn2ziagyas2nkndl7mp1hhssv9x9mpl7jxj2p5myw")))) - (build-system python-build-system) + (base32 "03lxna935c0qs3lppb2xrvvgh0dkwz8lh5pmgqrmpddin1kxyjri")))) + (build-system pyproject-build-system) + (arguments (list #:test-backend #~'unittest)) + (native-inputs (list python-hypothesis python-setuptools)) (home-page "https://github.com/gilch/hissp") (synopsis "It's Python with a Lissp") - (description "Hissp is a modular Lisp implementation that compiles to a -functional subset of Python—Syntactic macro metaprogramming with full access -to the Python ecosystem.") + (description + "Hissp is a modular Lisp implementation that compiles to a functional +subset of Python—Syntactic macro metaprogramming with full access to the +Python ecosystem.") (license license:asl2.0))) (define-public python-promise (package (name "python-promise") - (version "0.4.2") + (version "2.3.0") (source - (origin - (method url-fetch) - (uri (pypi-uri "promise" version)) - (sha256 - (base32 - "1k19ms8l3d5jzjh557rgkxb5sg4mqgfc315rn4hx1z3n8qq6lr3h")))) - (build-system python-build-system) - ;; Tests wants python-futures, which is a python2 only program, and - ;; can't be found by python-promise at test time. - (arguments `(#:tests? #f)) + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/syrusakbary/promise") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "17mq1bm78xfl0x1g50ng502m5ldq6421rzz35hlqafsj0cq8dkp6")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list "--ignore=tests/test_benchmark.py" + ;; Issues with pytest-asyncio + "--ignore=tests/test_awaitable.py" + "-k" (string-join + (list "not test_issue_9_safe" + ;; Stacktrace issues. + "test_thrown_exceptions_have_stacktrace" + "test_thrown_exceptions_preserve_stacktrace") + " and not ")))) + (native-inputs + (list python-mock + python-pytest + python-pytest-asyncio + python-setuptools)) + (propagated-inputs (list python-six)) (home-page "https://github.com/syrusakbary/promise") (synopsis "Promises/A+ implementation for Python") (description - "Promises/A+ implementation for Python") + "This package provides an implementation of Promises in Python. It is a +super set of Promises/A+ designed to have readable, performant code and to +provide just the extensions that are absolutely necessary for using promises +in Python.") (license license:expat))) (define-public python-progress @@ -20300,17 +20359,27 @@ to the Python ecosystem.") (version "1.6") (source (origin - (method url-fetch) - (uri (pypi-uri "progress" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/verigak/progress/") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 "1k9lpb7lqr6mywpnqcz71y6qny54xlgprdp327za2gy0nnc6xj69")))) - (build-system python-build-system) - (home-page "http://github.com/verigak/progress/") + (base32 "0qz5b9d3cvfdy2f1gb4r20f1qgcsihhmbc2bm2jgbvryxylp0f5k")) + (snippet #~(delete-file "demo.gif")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-backend #~'custom + #:test-flags #~(list "test_progress.py"))) + (native-inputs (list python-setuptools)) + (home-page "https://github.com/verigak/progress/") (synopsis "Progress reporting bars for Python") - (description "This Python package provides progress reporting for visual -of progress of long running operations. There are multiple choices of -progress bars and spinners, with customizable options, such as width, fill -character, and suffix.") + (description + "This Python package provides progress reporting for visual of progress +of long running operations. There are multiple choices of progress bars and +spinners, with customizable options, such as width, fill character, and +suffix.") (license license:isc))) (define-public python-progressbar2 @@ -20356,12 +20425,19 @@ visual (yet text based) progress to long running operations.") (version "2.4") (source (origin - (method url-fetch) - (uri (pypi-uri "progressbar33" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/germangh/python-progressbar") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 - "1zvf6zs5hzrc03p9nfs4p16vhilqikycvv1yk0pxn8s07fdhvzji")))) - (build-system python-build-system) + (base32 "0vyn2l6i7fgqskqfx3nfs1dibc5v1cxydg3v3422xf41pkba282c")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-backend #~'custom + #:test-flags #~(list "examples.py"))) + (native-inputs (list python-setuptools)) (home-page "https://github.com/germangh/python-progressbar") (synopsis "Text progress bar library for Python") (description @@ -20423,87 +20499,74 @@ text.") (build-system pyproject-build-system) (arguments (list - ;; tests: 10000 passed, 16 skipped, 2 xfailed, 42 warnings + ;; tests: 10230 passed, 39 skipped, 73 deselected, 2 xfailed, 4 warnings #:test-flags - '(list "-m" "not network and not requires_docker" - "--numprocesses" (number->string (min 8 (parallel-job-count))) - ;; This needs pycognito. - "--ignore-glob=tests/test_cognitoidp/*" - ;; This needs Internet access. - "--ignore=tests/test_core/test_request_passthrough.py" - "-k" - (string-append - ;; XXX: This test is timing sensitive and may - ;; fail non-deterministically. - "not test_cancel_pending_job" - - ;; The error message is more detailed than expected. - " and not test_list_queue_tags_errors" - - ;; Unknown failure: invalid length for parameter IpAdresses. - " and not test_route53resolver_bad_create_endpoint_subnets" - " and not test_route53resolver_invalid_create_endpoint_args" - - ;; These tests require Docker. - " and not test_terminate_job" - " and not test_invoke_function_from_sqs_exception" - " and not test_create_custom_lambda_resource__verify_cfnresponse_failed" - " and not test_lambda_function" - " and not test_invoke_local_lambda_layers" - - ;; These tests also require the network. - " and not test_s3_server_post_cors_multiple_origins" - " and not test_put_record_batch_http_destination" - " and not test_put_record_http_destination" - " and not test_with_custom_request_header" - " and not test_dependencies" - " and not test_cancel_running_job" - " and not test_container_overrides" - - ;; TypeError: Got unexpected keyword argument - ;; 'account_id_endpoint_mode' - " and not test_dynamodb_with_account_id_routing" - - ;; botocore.exceptions.ParamValidationError: Parameter - ;; validation failed - " and not test_create_firewall" - " and not test_describe_logging_configuration" - " and not test_update_logging_configuration" - " and not test_list_firewalls" - ;; AttributeError: 'TimestreamInfluxDB' object has no attribute - ;; 'list_db_clusters' - - " and not test_create_db_cluster" - " and not test_get_db_cluster" - " and not test_list_db_clusters" - - ;; XXX: misc - " and not test_list_objects_v2_checksum_algo" - " and not test_upload_file_with_checksum_algorithm")) + #~(list "-m" "not network and not requires_docker" + ;; Not all of the tests are thread save, see: + ;; <https://github.com/getmoto/moto/issues/7786>. + ;; "--numprocesses" (number->string (min 8 (parallel-job-count))) + "-k" (string-join + ;; Outbound access to AWS servcies is required to reach + ;; endpoint URLs: + ;; "https://s3.amazonaws.com/" + ;; "https://realbucket.s3.amazonaws.com/" + ;; "https://s3.amazonaws.com/companyname_prod" + (list "not test_passthrough_calls_for_entire_service" + "test_passthrough_calls_for_specific_url" + "test_passthrough_calls_for_wildcard_urls" + ;; TypeError: Got unexpected keyword argument + ;; 'account_id_endpoint_mode' + "test_dynamodb_with_account_id_routing[disabled]" + "test_dynamodb_with_account_id_routing[preferred]" + "test_dynamodb_with_account_id_routing[required]" + ;; botocore.exceptions.ParamValidationError: + ;; Parameter validation failed: Missing required + ;; parameter in input: "VpcId"; Missing required + ;; parameter in input: "SubnetMappings" + "test_create_firewall" + "test_describe_logging_configuration" + "test_list_firewalls" + "test_update_logging_configuration" + ;; RuntimeError: Firehose PutRecord(Batch) to HTTP + ;; destination failed + "test_put_record_http_destination" + "test_put_record_batch_http_destination" + ;; Timed out to connect to foo.localhost:5001 + "test_with_custom_request_header" + ;; Timed out to connect to testcors.localhost:6789 + "test_s3_server_post_cors_multiple_origins" + ;; AttributeError: 'TimestreamInfluxDB' object has + ;; no attribute 'list_db_clusters' + "test_list_db_clusters" + "test_get_db_cluster" + "test_create_db_cluster" + ;; Checksum error + "test_upload_file_with_checksum_algorithm" + "test_list_objects_v2_checksum_algo") + " and not ") + "tests") #:phases - '(modify-phases %standard-phases - (add-after 'unpack 'compatibility - (lambda _ - ;; pyparsing 3.0.6 does not support the "min" argument for - ;; DelimitedList. - (substitute* "moto/glue/utils.py" - (("DelimitedList\\(literal, min=1\\)") - "DelimitedList(literal)")))) - (add-after 'unpack 'patch-hardcoded-executable-names - (lambda* (#:key inputs #:allow-other-keys) - (let ((bash-exec (search-input-file inputs "/bin/sh"))) - (substitute* "moto/batch/models.py" - (("/bin/sh") bash-exec)) - (substitute* (find-files "tests" "\\.py$") - (("#!/bin/bash") (string-append "#!" bash-exec))))))))) + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-hardcoded-executable-names + (lambda* (#:key inputs #:allow-other-keys) + (let ((bash-exec (search-input-file inputs "/bin/sh"))) + (substitute* "moto/batch/models.py" + (("/bin/sh") bash-exec)) + (substitute* (find-files "tests" "\\.py$") + (("#!/bin/bash") (string-append "#!" bash-exec)))))) + (add-before 'check 'pre-check + (lambda _ + (setenv "AWS_ACCESS_KEY_ID" "guix-access-key-id") + (setenv "AWS_SECRET_ACCESS_KEY" "guix-secret-access-key") + (setenv "TESTS_SKIP_REQUIRES_DOCKER" "true")))))) (native-inputs (list python-flask python-flask-cors python-freezegun + python-pycognito + python-pyotp python-pytest - python-pytest-xdist - python-setuptools - python-wheel)) + python-setuptools)) (inputs (list bash-minimal)) (propagated-inputs @@ -21143,31 +21206,6 @@ Abstract Syntax Tree}. It is a building block for writing a static analyzer or compiler for Python.") (license license:bsd-3))) -(define-public python-txamqp - (package - (name "python-txamqp") - (version "0.8.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "txAMQP" version)) - (sha256 - (base32 - "0jd9864k3csc06kipiwzjlk9mq4054s8kzk5q1cfnxj8572s4iv4")))) - (build-system python-build-system) - (propagated-inputs - (list python-six python-twisted)) - (home-page "https://github.com/txamqp/txamqp") - (synopsis "Communicate with AMQP peers and brokers using Twisted") - (description - "This package provides a Python library for communicating with AMQP peers -and brokers using the asynchronous networking framework Twisted. It contains -all the necessary code to connect, send and receive messages to/from an -AMQP-compliant peer or broker (Qpid, OpenAMQ, RabbitMQ) using Twisted. It -also includes support for using Thrift RPC over AMQP in Twisted -applications.") - (license license:asl2.0))) - (define-public python-kombu (package (name "python-kombu") @@ -22373,16 +22411,15 @@ format.") (build-system pyproject-build-system) (arguments (list + ;; tests: skips=638, successes=9759 + #:test-backend #~'custom + #:test-flags + #~(list "-m" "twisted.trial" + "--temp-directory=/tmp/_trial_temp" + (string-append "-j" (number->string (min 8 (parallel-job-count)))) + "twisted") #:phases #~(modify-phases %standard-phases - (add-after 'unpack 'patch-build-system - (lambda _ - (substitute* "pyproject.toml" - ((" \"version\",") "") - (("name = \"Twisted\".*" m) - (string-append m "version = \"" #$version "\"\n")) - (("\\[tool.hatch.version\\]") "") - (("source = \"incremental\"") "")))) (add-after 'unpack 'disable-broken-tests (lambda _ (for-each delete-file @@ -22405,14 +22442,7 @@ format.") ;; These complain about missing test modules. "src/twisted/test/test_failure.py" "src/twisted/web/test/test_http2.py" - "src/twisted/conch/test/test_forwarding.py")))) - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (with-directory-excursion #$output - (setenv "HOME" (getcwd)) - (invoke "python3" "-m" "twisted.trial" "twisted") - (delete-file-recursively "_trial_temp")))))))) + "src/twisted/conch/test/test_forwarding.py"))))))) (propagated-inputs (list python-attrs python-automat @@ -22437,11 +22467,11 @@ format.") python-pyserial)) (native-inputs (list glibc-utf8-locales ;for OpenTestLogTests.test_utf8 - python-coverage python-hatch-fancy-pypi-readme python-hatchling python-httpx python-hypothesis + python-incremental python-pyhamcrest python-pytest)) (home-page "https://twistedmatrix.com/") @@ -22799,8 +22829,7 @@ running in.") (build-system pyproject-build-system) (native-inputs (list python-poetry-core - python-pytest - python-tox)) + python-pytest)) (home-page "https://github.com/zqqqqz2000/shshsh") (synopsis "Write Shell commands simply and safely within Python") (description "This package provides a way to write Shell commands from @@ -23240,55 +23269,6 @@ feels like an AST.") python-setuptools-scm python-wheel))))) -(define-public python-typeapi - (package - (name "python-typeapi") - (version "2.2.4") - (source - (origin - (method url-fetch) - (uri (pypi-uri "typeapi" version)) - (sha256 - (base32 "0yzx10cn33gxqvs33vwdf0f959hbkir4yzjp42imf28ca9khga6s")))) - (build-system pyproject-build-system) - (arguments - (list - #:tests? #false)) ;there are none - (propagated-inputs (list python-typing-extensions)) - (native-inputs (list python-hatchling)) - (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") - (version "0.9.0") - (source (origin - (method url-fetch) - (uri (pypi-uri "typing_inspect" version)) - (sha256 - (base32 - "0y0z8v4wr5bahlgzjd1il2z8vlfd2asiyb45wia6kvznyqpw8gxj")))) - (build-system pyproject-build-system) - (native-inputs - (list python-pytest - python-setuptools - python-wheel)) - (propagated-inputs - (list python-mypy-extensions - python-typing-extensions)) - (home-page "https://github.com/ilevkivskyi/typing_inspect") - (synopsis "API for inspection of types in the Python @code{typing} module") - (description - "The @code{typing_inspect} module defines experimental API for runtime -inspection of types defined in the Python standard typing module.") - (license license:expat))) - (define-public python-lazy-loader (package (name "python-lazy-loader") @@ -25108,6 +25088,55 @@ protocols written in pure Python.") ;; Can be used with either license. (license (list license:asl2.0 license:gpl2+)))) +(define-public python-dulwich-0.24 + (package/inherit python-dulwich + (name "python-dulwich") + (version "0.24.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "dulwich" version)) + (sha256 + (base32 "0n3p8jyxl4zwc63la10v8llc58fc5pcnfqdq9f1vn0hgy5jdi7z1")))) + (build-system pyproject-build-system) + (native-inputs + (modify-inputs (package-native-inputs python-dulwich) + (prepend python-setuptools-rust))) + (arguments + (list + #:test-flags + ;; DULWICH_SWIFT_CFG is not set. + '(list "--ignore=tests/contrib/test_swift_smoke.py" + ;; AttributeError: 'SwiftPackData' object has no attribute '_file' + "--ignore=tests/contrib/test_swift.py" + ;; No git repository was found at . + "--ignore=tests/test_cli.py" + ;; 'HTTPClient' object has no attribute 'get_base_url' + ;; 'NoneType' object has no attribute 'Merge3' + "--ignore=tests/test_cli_merge.py" + "--ignore=tests/test_merge_drivers.py" + "--ignore=tests/test_porcelain_cherry_pick.py" + "--ignore=tests/test_porcelain_merge.py" + "--ignore=tests/test_rebase.py" + "--ignore=tests/test_repository.py" + "--ignore=tests/test_worktree.py" + "--ignore=tests/test_porcelain.py" + "--ignore=tests/test_porcelain_filters.py" + ;; False is not true (interesting capitalization?) + "--ignore=tests/test_hooks.py") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-pyproject + (lambda _ + ;; setuptools cannot handle both license and license-files + (substitute* "pyproject.toml" + (("^license = .*") "license = {text = \"Apache-2.0\"}\n") + (("^license-files = .*") "")))) + (add-before 'check 'pre-check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (setenv "HOME" "/tmp"))))))))) + (define-public python-dunamai (package (name "python-dunamai") @@ -25363,21 +25392,11 @@ manipulation and interaction with formal grammars.") "1jb4skmy8awix345jk2pnar0sxmrf1gvn3kg9xyyivv0xr3iskzv")))) (build-system pyproject-build-system) (arguments - (list - ;; Tests require twisted, which needs this package. - #:tests? #false - #:phases - '(modify-phases %standard-phases - (add-after 'unpack 'patch-build-system - (lambda _ - (substitute* "pyproject.toml" - (("^backend-path.*") "") - (("^build-backend.*") - "build-backend = 'setuptools.build_meta'\n"))))))) - (native-inputs (list python-pytest - python-setuptools - python-wheel)) - (propagated-inputs (list python-tomli)) + ;; Tests require twisted, which needs this package. + (list #:tests? #false + #:build-backend "setuptools.build_meta")) + (native-inputs + (list python-setuptools)) (home-page "https://github.com/hawkowl/incremental") (synopsis "Library for versioning Python projects") (description "Incremental is a small library that versions your Python @@ -27679,6 +27698,58 @@ Examples are: @end enumerate") (license license:bsd-3))) +(define-public python-funcy-1.14 + (package/inherit python-funcy + (name "python-funcy") + (version "1.14") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Suor/funcy") + (commit version))) + (sha256 + (base32 "1chgi60z3c97m9l23vf5cpyp0nidkqlpxc55q5k5pz41ms3d0440")) + (file-name (git-file-name name version)))))) + +(define-public python-sqltrie + (package + (name "python-sqltrie") + (version "0.11.2") + (home-page "https://github.com/iterative/sqltrie/") + (source + (origin + (method url-fetch) + (uri (pypi-uri "sqltrie" version)) + (sha256 + (base32 "1ninmia5ka1nnv4gxqacvbmkfxwc7dilw141rxxk9zmbnf4p1x2d")))) + (build-system pyproject-build-system) + (propagated-inputs + (list python-attrs + python-orjson + python-pygtrie)) + (native-inputs + (list python-mypy + python-pytest + python-pytest-benchmark + python-pytest-cov + python-pytest-mock + python-pytest-sugar + python-setuptools + python-setuptools-scm + python-wheel)) + (arguments + (list + #:test-flags + ;; <https://github.com/pyinstaller/pyinstaller> is not packaged yet in + ;; Guix. + #~(list "--ignore=src/sqltrie/__pyinstaller"))) + (synopsis "SQL-based prefix tree for Python") + (description + "Sqltrie is a SQL-based prefix tree inspired by pygtrie and +python-diskcache.") + (license license:asl2.0))) + (define-public python-isoweek (package (name "python-isoweek") @@ -27781,67 +27852,6 @@ source bytes using the UTF-8 encoding and then rewrites Python 3.6 style @code{f} strings.") (license license:expat))) -(define-public python-typer - (package - (name "python-typer") - (version "0.19.2") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/fastapi/typer") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 "13lkzlpb35xzz1spdisrmq7md9wq3msqxwcqj85vk905iq80xjwq")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags - #~(list "--numprocesses" (number->string (min 8 (parallel-job-count)))))) - (native-inputs - (list python-coverage ;this is required in tests - python-pdm-backend - python-pytest - python-pytest-xdist)) - (propagated-inputs - (list python-click - python-typing-extensions - ;; [optional] - python-rich - python-shellingham)) - (home-page "https://github.com/fastapi/typer") - (synopsis "Typer builds CLI based on Python type hints") - (description - "Typer is a library for building CLI applications. It's based on Python -3.6+ type hints.") - (license license:expat))) - -(define-public python-typeguard - (package - (name "python-typeguard") - (version "4.4.4") - (source - (origin - (method url-fetch) - (uri (pypi-uri "typeguard" version)) - (sha256 - (base32 "0x2zkskia5lb1838ys0bhpp9v6y80jkhchzdz874spbhzggx4zrs")))) - (build-system pyproject-build-system) - (native-inputs - (list python-mypy - python-pytest - python-setuptools - python-setuptools-scm)) - (propagated-inputs - (list python-typing-extensions)) - (home-page "https://github.com/agronholm/typeguard") - (synopsis "Run-time type checker for Python") - (description - "@code{typeguard} provides run-time type checking for functions defined -with PEP 484 argument (and return) type annotations.") - (license license:expat))) - (define-public bpython (package (name "bpython") @@ -30138,26 +30148,6 @@ and dates in \"human readable\" forms. For example, it would display \"12345591313\" as \"12.3 billion\".") (license license:expat))) -(define-public python-txaio - (package - (name "python-txaio") - (version "23.1.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "txaio" version)) - (sha256 - (base32 - "017p9x0bssf7g9slmf30ddh1baawsmxas4nivx334pkfjxp23agr")))) - (build-system pyproject-build-system) - (native-inputs - (list python-pytest python-setuptools python-twisted python-wheel)) - (home-page "https://github.com/crossbario/txaio") - (synopsis "Compatibility layer between Python asyncio and Twisted") - (description "Txaio provides a compatibility layer between the Python -@code{asyncio} module and @code{Twisted}.") - (license license:expat))) - (define-public python-toolshed (package (name "python-toolshed") @@ -32071,78 +32061,6 @@ happened, and what caused it.") "This package provides a Python module for parsing and splitting PEM files.") (license license:expat))) -(define-public python-txsni - ;; We need a few commits on top of 0.1.9 for compatibility with newer - ;; Python and OpenSSL. - (let ((commit "5014c141a7acef63e20fcf6c36fa07f0cd754ce1") - (revision "0")) - (package - (name "python-txsni") - (version (git-version "0.1.9" revision commit)) - (home-page "https://github.com/glyph/txsni") - (source - (origin - (method git-fetch) - (uri (git-reference (url home-page) (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0imfxx4yjj1lbq0n5ad45al3wvv4qv96sivnc1r51i66mxi658z8")))) - (build-system python-build-system) - (propagated-inputs - (list python-pyopenssl python-service-identity python-twisted)) - (synopsis "Run TLS servers with Twisted") - (description - "This package provides an easy-to-use SNI endpoint for use -with the Twisted web framework.") - (license license:expat)))) - -(define-public python-txacme - ;; 0.9.3 tag was placed in 2020 and there a lot of changes providing - ;; compatibility wit twisted, use the latest commit from trunk branch. - ;; - ;;See: <https://github.com/twisted/txacme/issues/165>. - (let ((commit "ac18f92f6dde971a6b38f2ecfae44665815db583") - (revision "0")) - (package - (name "python-txacme") - (version (git-version "0.9.3" revision commit)) - (source - (origin - (method git-fetch) ;no fresh release in PyPI - (uri (git-reference - (url "https://github.com/twisted/txacme") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0mgdfxldv8qflbn75ywslbarnd4i3l7c4krs4aibl2dpryclsjzs")))) - (build-system pyproject-build-system) - (arguments - (list #:test-backend #~'custom - #:test-flags #~(list "-m" "twisted.trial" "txacme"))) - (native-inputs - (list python-setuptools)) - (propagated-inputs - (list python-acme - python-attrs - python-eliot - python-josepy - python-pem - python-treq - python-twisted - python-txsni)) - (home-page "https://github.com/twisted/txacme") - (synopsis "Twisted implexmentation of the ACME protocol") - (description - "ACME is Automatic Certificate Management Environment, a protocol that -allows clients and certificate authorities to automate verification and -certificate issuance. The ACME protocol is used by the free Let's Encrypt -Certificate Authority. - -txacme is an implementation of the protocol for Twisted, the event-driven -networking engine for Python.") - (license license:expat)))) - (define-public python-pysaml2 (package (name "python-pysaml2") @@ -34232,37 +34150,6 @@ entities @end enumerate") (license license:bsd-3))) -(define-public python-typogrify - (package - (name "python-typogrify") - (version "2.1.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "typogrify" version)) - (sha256 - (base32 "1vk17q04sax8rpdqll5zldnf6l3ixgknbnn9wimnwah3k1701aph")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags - #~(list "--doctest-modules" - "typogrify/filters.py" - "typogrify/packages/titlecase/tests.py"))) - (native-inputs - (list python-pytest - python-hatchling)) - (propagated-inputs - (list python-smartypants)) - (home-page "https://github.com/justinmayer/typogrify") - (synopsis "Filters to transform text into typographically-improved HTML") - (description - "@code{typogrify} provides a set of custom filters that automatically -apply various transformations to plain text in order to yield -typographically-improved HTML. While often used in conjunction with Jinja and -Django template systems, the filters can be used in any environment.") - (license license:bsd-3))) - (define-public python-ld (package (name "python-ld") @@ -35463,13 +35350,13 @@ spreadsheet), CSV, TSV, XLS, XLSX (Microsoft Excel spreadsheet), and YAML.") (define-public python-febelfin-coda (package (name "python-febelfin-coda") - (version "0.2.0") + (version "0.3.0") (source (origin (method url-fetch) (uri (pypi-uri "febelfin-coda" version)) (sha256 - (base32 "1isnf87gxlvfbmackv7b2c978vmnj7ij0v4svhyjl8pbb9hwjsvm")))) + (base32 "0qzv0irmpay2n46an0sa37c9kwy8108phij5ix6rkllrfjmqdpfw")))) (build-system python-build-system) (home-page "https://coda.b2ck.com/") (synopsis "Module to parse Belgian CODA files") @@ -36322,227 +36209,6 @@ but not binary streams.") multipurpose analysis in Python.") (license license:bsd-3))) -(define-public python-types-dataclasses - (package - (name "python-types-dataclasses") - (version "0.6.6") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types-dataclasses" version)) - (sha256 - (base32 "1fgp96m4kfxrwy6rdv3p24jzh6hf68702sfdfhcmm3aniv7jynjb")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ;no tests - (native-inputs (list python-setuptools)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for dataclasses") - (description - "This package provides a collection of library stubs for Python, with -static types.") - (license license:asl2.0))) - -(define-public python-types-python-dateutil - (package - (name "python-types-python-dateutil") - (version "2.9.0.20250708") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types_python_dateutil" version)) - (sha256 - (base32 "1ay8sp8qshx2na2sa9sz9hg2hb7yrws9ymshqfb9cv1dmdfxgnyc")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ;no tests in PyPI archive - (native-inputs (list python-setuptools)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for python-dateutil") - (description "This package providis typing stubs for python-dateutil.") - (license license:asl2.0))) - -(define-public python-types-aiofiles - (package - (name "python-types-aiofiles") - (version "25.1.0.20251011") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types_aiofiles" version)) - (sha256 - (base32 "1zyk53h1017s1pc094w909miwvjsq3yhxlgr2l6d8g6bc2r8laqw")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ;no tests in PyPI archive - (native-inputs (list python-setuptools)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for python-aiofiles") - (description "This package providis typing stubs for python-aiofiles.") - (license license:asl2.0))) - -(define-public python-types-tqdm - (package - (name "python-types-tqdm") - (version "4.67.0.20250809") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types_tqdm" version)) - (sha256 - (base32 "006md2hnsq79p7d5z3kiaapvl9wwa4dz3yb39jf0n22n2awpmgq2")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ;no tests in PyPI archive - (native-inputs (list python-setuptools)) - (propagated-inputs (list python-types-requests)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for python-tqdm") - (description "This package providis typing stubs for python-tqdm.") - (license license:asl2.0))) - -(define-public python-types-docutils - (package - (name "python-types-docutils") - (version "0.22.2.20251006") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types_docutils" version)) - (sha256 - (base32 "1cp3p4bsaa646fa3kpjwjwsqbn6vz77pn57913lkknkf21ch8v63")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ;no tests - (native-inputs (list python-setuptools)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for docutils") - (description "This package provides a collection of library stubs for -Python, with static types.") - (license license:asl2.0))) - -(define-public python-types-requests - (package - (name "python-types-requests") - (version "2.32.4.20250611") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types_requests" version)) - (sha256 - (base32 "09pqdfa66d3p5dig26chrd6rpxs5wamxcm0yyl5q69b4xmvqf73l")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ;no tests in PyPI archive - (native-inputs - (list python-setuptools)) - (propagated-inputs - (list python-urllib3)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for requests") - (description "This package provides typing stubs for requests.") - (license license:asl2.0))) - -(define-public python-types-simplejson - (package - (name "python-types-simplejson") - (version "3.19.0.20241221") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types_simplejson" version)) - (sha256 - (base32 "0w7wvr84d7bj27hc2bsyh69s9d84zpkdhsibbmsibba91zdzjjhi")))) - (build-system pyproject-build-system) - (arguments - (list - #:tests? #f)) ; no tests in PyPI archive, no release or tags on GitHub - (native-inputs - (list python-setuptools python-wheel)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for simplejson") - (description "Typing stubs for simplejson.") - (license license:asl2.0))) - -(define-public python-types-setuptools - (package - (name "python-types-setuptools") - (version "80.9.0.20250529") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types_setuptools" version)) - (sha256 - (base32 "149w6lg8n56k50n08jx450ni9frs2hzbv729sv48c8ds1jx8iq3r")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ;no tests in PyPI archive - (native-inputs - (list python-setuptools)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for setuptools") - (description "This package provides typing stubs for setuptools.") - (license license:asl2.0))) - -(define-public python-types-urllib3 - (package - (name "python-types-urllib3") - (version "1.26.25.14") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types-urllib3" version)) - (sha256 - (base32 "13ys7c7k9pg3lb11qvdgs9xq8j8bvcpjpg61j8dqq6wmgibpz6r2")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ;no tests in PyPI archive - (native-inputs - (list python-setuptools)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for urllib3") - (description "This package provides typing stubs for urllib3.") - (license license:asl2.0))) - -(define-public python-types-pyyaml - (package - (name "python-types-pyyaml") - (version "6.0.12.20250915") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types_pyyaml" version)) - (sha256 - (base32 "1lyirqjacfmn6bv27b7w0z483yps6gfqfmhnyzkg00y352jm92qg")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ;no tests in PyPI archive - (native-inputs - (list python-setuptools)) - (home-page " https://github.com/python/typeshed") - (synopsis "Typing stubs for PyYAML") - (description "This package provides typing stubs for @code{PyYAML}.") - (license license:asl2.0))) - -(define-public python-typeshed-client - (package - (name "python-typeshed-client") - (version "2.8.2") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/JelleZijlstra/typeshed_client") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0i74ygf49184ab1ipfdzf706wnzs3id15rkysqarzcngdydrcszs")))) - (build-system pyproject-build-system) - (arguments - (list #:test-backend #~'custom - #:test-flags #~(list "tests/test.py"))) - (native-inputs - (list python-setuptools)) - (propagated-inputs - (list python-importlib-resources - python-typing-extensions)) - (home-page "https://github.com/JelleZijlstra/typeshed_client") - (synopsis "Library for accessing stubs in typeshed") - (description - "This package provides a library for accessing stubs in typeshed.") - (license license:expat))) - (define-public python-psycopg2-binary (package (name "python-psycopg2-binary") @@ -36621,137 +36287,6 @@ async I/O support.") "This package adds ANSI colors and decorations to your strings.") (license license:isc))) -(define-public python-types-dateutil - (package - (name "python-types-dateutil") - (version "2.9.0.20240316") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types-python-dateutil" version)) - (sha256 - (base32 "00h2xi8p6ygdv9nhgwdyx86ky9m9dpdqgmsdji05x4461cj2wbsx")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ; no tests - (native-inputs - (list python-pytest python-setuptools python-wheel)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for python-dateutil") - (description - "This is a PEP 561 type stub package for the @code{python-dateutil} -package.") - (license license:asl2.0))) - -(define-public python-types-freezegun - (package - (name "python-types-freezegun") - (version "1.1.8") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types-freezegun" version)) - (sha256 - (base32 "08g926s8343zwq140zcfwly3qfgmahm7lp0vgb3ics549b2hifzl")))) - (build-system pyproject-build-system) - (arguments - ;; XXX: No tests in PyPi source, but it's also unclear how to get the - ;; right files from source, so ignore them for now. - (list #:tests? #f)) - (native-inputs (list python-setuptools python-wheel)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for @code{freezegun}") - (description "This package contains typing stubs for for @code{freezegun}, a -very small subset the Python stubs contained in the complete @code{typeshed} -collection.") - (license license:asl2.0))) - -(define-public python-types-protobuf - (package - (name "python-types-protobuf") - (version "3.20.1") - (source (origin - (method url-fetch) - (uri (pypi-uri "types-protobuf" version)) - (sha256 - (base32 - "000f8n6d4ilihiaf590k73rx3327jh8ima5q5dpxlwz3frj45qrn")))) - (build-system pyproject-build-system) - (arguments - ;; XXX: No tests in PyPi source, but it's also unclear how to get the - ;; right files from source, so ignore them for now. - (list #:tests? #f)) - (native-inputs (list python-setuptools python-wheel)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for @code{protobuf}") - (description "This package contains typing stubs for @code{protobuf}, a -very small subset the Python stubs contained in the complete @code{typeshed} -collection.") - (license license:asl2.0))) - -(define-public python-types-pytz - (package - (name "python-types-pytz") - (version "2025.2.0.20250809") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types_pytz" version)) - (sha256 - (base32 "1r91pvn1w9rb1395qw8w8k22s7w0wf2qfkl3z1qqiclvlbk34bi2")))) - (build-system pyproject-build-system) - (arguments - (list #:tests? #f)) ;no tests provided - (native-inputs (list python-setuptools)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for pytz") - (description "This package contains typing stubs for @code{pytz}, a very -small subset the Python stubs contained in the complete @code{typeshed} -collection.") - (license license:asl2.0))) - -(define-public python-types-toml - (package - (name "python-types-toml") - (version "0.10.8.20240310") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types-toml" version)) - (sha256 - (base32 "0c83hfw4aqy01vzlh6r84mz6b2b6n98chfdjp2k3c94p089m0h9x")))) - (build-system pyproject-build-system) - (arguments - (list #:tests? #f)) ;no tests provided - (native-inputs (list python-setuptools)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for TOML") - (description - "This package contains typing stubs for TOML, a very small subset the -Python stubs contained in the complete @code{typeshed} collection.") - (license license:asl2.0))) - -(define-public python-types-ujson - (package - (name "python-types-ujson") - (version "5.10.0.20250822") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types_ujson" version)) - (sha256 - (base32 "01m0gdcy6plrjxxih96ra86wd2zhn4skzw7k7hvk51gpw5c5ay8a")))) - (build-system pyproject-build-system) - (arguments - (list #:tests? #f)) ;no tests provided - (native-inputs (list python-setuptools)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for ujson") - (description - "This is a PEP 561 type stub package for the ujson package. It can be -used by type-checking tools like mypy, PyCharm, pytype etc. to check code that -uses ujson.") - (license license:asl2.0))) - (define-public python-stltools (package (name "python-stltools") @@ -38188,44 +37723,6 @@ slice file content line by line or column by column or a combination of both.") (license license:bsd-3))) -(define-public python-types-orjson - (package - (name "python-types-orjson") - (version "3.6.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types-orjson" version)) - (sha256 - (base32 "0f66lf2qrl9d4vad42db3dmnzv89h4rr05r5zxx5qcl6kb3zr6ng")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ;no tests - (native-inputs (list python-setuptools)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for orjson") - (description "This is a PEP 561 type stub package for the @code{orjson} -package. It can be used by type-checking tools like mypy, PyCharm, pytype -etc. to check code that uses @code{orjson}.") - (license license:asl2.0))) - -(define-public python-types-regex - (package - (name "python-types-regex") - (version "2025.9.18.20250921") - (source - (origin - (method url-fetch) - (uri (pypi-uri "types_regex" version)) - (sha256 - (base32 "0gqc8b9d38pdm1l6nryi9rq9vmpis575hqnxlvj904n3n4hhqw71")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ;no tests in PyPI archive - (native-inputs (list python-setuptools)) - (home-page "https://github.com/python/typeshed") - (synopsis "Typing stubs for regex") - (description "This package provides typing stubs for regex.") - (license license:asl2.0))) - (define-public python-rpds-py (package (name "python-rpds-py") @@ -38617,6 +38114,556 @@ instance in spelling correction, predictive typing, to help disabled people write text fast, and for various text generation, statistics, and modeling tasks.") (license license:expat))) +(define-public python-typeapi + (package + (name "python-typeapi") + (version "2.2.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "typeapi" version)) + (sha256 + (base32 "0yzx10cn33gxqvs33vwdf0f959hbkir4yzjp42imf28ca9khga6s")))) + (build-system pyproject-build-system) + (arguments + (list + #:tests? #false)) ;there are none + (propagated-inputs (list python-typing-extensions)) + (native-inputs (list python-hatchling)) + (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-typeguard + (package + (name "python-typeguard") + (version "4.4.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "typeguard" version)) + (sha256 + (base32 "0x2zkskia5lb1838ys0bhpp9v6y80jkhchzdz874spbhzggx4zrs")))) + (build-system pyproject-build-system) + (native-inputs + (list python-mypy + python-pytest + python-setuptools + python-setuptools-scm)) + (propagated-inputs + (list python-typing-extensions)) + (home-page "https://github.com/agronholm/typeguard") + (synopsis "Run-time type checker for Python") + (description + "@code{typeguard} provides run-time type checking for functions defined +with PEP 484 argument (and return) type annotations.") + (license license:expat))) + +(define-public python-typer + (package + (name "python-typer") + (version "0.19.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fastapi/typer") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "13lkzlpb35xzz1spdisrmq7md9wq3msqxwcqj85vk905iq80xjwq")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list "--numprocesses" (number->string (min 8 (parallel-job-count)))))) + (native-inputs + (list python-coverage ;this is required in tests + python-pdm-backend + python-pytest + python-pytest-xdist)) + (propagated-inputs + (list python-click + python-typing-extensions + ;; [optional] + python-rich + python-shellingham)) + (home-page "https://github.com/fastapi/typer") + (synopsis "Typer builds CLI based on Python type hints") + (description + "Typer is a library for building CLI applications. It's based on Python +3.6+ type hints.") + (license license:expat))) + +(define-public python-types-aiofiles + (package + (name "python-types-aiofiles") + (version "25.1.0.20251011") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types_aiofiles" version)) + (sha256 + (base32 "1zyk53h1017s1pc094w909miwvjsq3yhxlgr2l6d8g6bc2r8laqw")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ;no tests in PyPI archive + (native-inputs (list python-setuptools)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for python-aiofiles") + (description "This package providis typing stubs for python-aiofiles.") + (license license:asl2.0))) + +(define-public python-types-colorama + (package + (name "python-types-colorama") + (version "0.4.15.20250801") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types_colorama" version)) + (sha256 + (base32 "1xapqdq6450ngzp18nvvkwbs68nnxksk1wyk6wid2qw9sq9msmh2")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ;no tests in PyPI archive + (native-inputs + (list python-setuptools)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for colorama") + (description "This package provides typing stubs for colorama.") + (license license:asl2.0))) + +(define-public python-types-dataclasses + (package + (name "python-types-dataclasses") + (version "0.6.6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types-dataclasses" version)) + (sha256 + (base32 "1fgp96m4kfxrwy6rdv3p24jzh6hf68702sfdfhcmm3aniv7jynjb")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ;no tests + (native-inputs (list python-setuptools)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for dataclasses") + (description + "This package provides a collection of library stubs for Python, with +static types.") + (license license:asl2.0))) + +(define-public python-types-dateutil + (package + (name "python-types-dateutil") + (version "2.9.0.20240316") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types-python-dateutil" version)) + (sha256 + (base32 "00h2xi8p6ygdv9nhgwdyx86ky9m9dpdqgmsdji05x4461cj2wbsx")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ; no tests + (native-inputs + (list python-pytest python-setuptools python-wheel)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for python-dateutil") + (description + "This is a PEP 561 type stub package for the @code{python-dateutil} +package.") + (license license:asl2.0))) + +(define-public python-types-docutils + (package + (name "python-types-docutils") + (version "0.22.2.20251006") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types_docutils" version)) + (sha256 + (base32 "1cp3p4bsaa646fa3kpjwjwsqbn6vz77pn57913lkknkf21ch8v63")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ;no tests + (native-inputs (list python-setuptools)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for docutils") + (description "This package provides a collection of library stubs for +Python, with static types.") + (license license:asl2.0))) + +(define-public python-types-freezegun + (package + (name "python-types-freezegun") + (version "1.1.8") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types-freezegun" version)) + (sha256 + (base32 "08g926s8343zwq140zcfwly3qfgmahm7lp0vgb3ics549b2hifzl")))) + (build-system pyproject-build-system) + (arguments + ;; XXX: No tests in PyPi source, but it's also unclear how to get the + ;; right files from source, so ignore them for now. + (list #:tests? #f)) + (native-inputs (list python-setuptools python-wheel)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for @code{freezegun}") + (description "This package contains typing stubs for for @code{freezegun}, a +very small subset the Python stubs contained in the complete @code{typeshed} +collection.") + (license license:asl2.0))) + +(define-public python-types-orjson + (package + (name "python-types-orjson") + (version "3.6.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types-orjson" version)) + (sha256 + (base32 "0f66lf2qrl9d4vad42db3dmnzv89h4rr05r5zxx5qcl6kb3zr6ng")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ;no tests + (native-inputs (list python-setuptools)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for orjson") + (description "This is a PEP 561 type stub package for the @code{orjson} +package. It can be used by type-checking tools like mypy, PyCharm, pytype +etc. to check code that uses @code{orjson}.") + (license license:asl2.0))) + +(define-public python-types-protobuf + (package + (name "python-types-protobuf") + (version "3.20.1") + (source (origin + (method url-fetch) + (uri (pypi-uri "types-protobuf" version)) + (sha256 + (base32 + "000f8n6d4ilihiaf590k73rx3327jh8ima5q5dpxlwz3frj45qrn")))) + (build-system pyproject-build-system) + (arguments + ;; XXX: No tests in PyPi source, but it's also unclear how to get the + ;; right files from source, so ignore them for now. + (list #:tests? #f)) + (native-inputs (list python-setuptools python-wheel)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for @code{protobuf}") + (description "This package contains typing stubs for @code{protobuf}, a +very small subset the Python stubs contained in the complete @code{typeshed} +collection.") + (license license:asl2.0))) + +(define-public python-types-python-dateutil + (package + (name "python-types-python-dateutil") + (version "2.9.0.20250708") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types_python_dateutil" version)) + (sha256 + (base32 "1ay8sp8qshx2na2sa9sz9hg2hb7yrws9ymshqfb9cv1dmdfxgnyc")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ;no tests in PyPI archive + (native-inputs (list python-setuptools)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for python-dateutil") + (description "This package providis typing stubs for python-dateutil.") + (license license:asl2.0))) + +(define-public python-types-pytz + (package + (name "python-types-pytz") + (version "2025.2.0.20250809") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types_pytz" version)) + (sha256 + (base32 "1r91pvn1w9rb1395qw8w8k22s7w0wf2qfkl3z1qqiclvlbk34bi2")))) + (build-system pyproject-build-system) + (arguments + (list #:tests? #f)) ;no tests provided + (native-inputs (list python-setuptools)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for pytz") + (description "This package contains typing stubs for @code{pytz}, a very +small subset the Python stubs contained in the complete @code{typeshed} +collection.") + (license license:asl2.0))) + +(define-public python-types-pyyaml + (package + (name "python-types-pyyaml") + (version "6.0.12.20250915") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types_pyyaml" version)) + (sha256 + (base32 "1lyirqjacfmn6bv27b7w0z483yps6gfqfmhnyzkg00y352jm92qg")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ;no tests in PyPI archive + (native-inputs + (list python-setuptools)) + (home-page " https://github.com/python/typeshed") + (synopsis "Typing stubs for PyYAML") + (description "This package provides typing stubs for @code{PyYAML}.") + (license license:asl2.0))) + +(define-public python-types-regex + (package + (name "python-types-regex") + (version "2025.9.18.20250921") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types_regex" version)) + (sha256 + (base32 "0gqc8b9d38pdm1l6nryi9rq9vmpis575hqnxlvj904n3n4hhqw71")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ;no tests in PyPI archive + (native-inputs (list python-setuptools)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for regex") + (description "This package provides typing stubs for regex.") + (license license:asl2.0))) + +(define-public python-types-requests + (package + (name "python-types-requests") + (version "2.32.4.20250611") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types_requests" version)) + (sha256 + (base32 "09pqdfa66d3p5dig26chrd6rpxs5wamxcm0yyl5q69b4xmvqf73l")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ;no tests in PyPI archive + (native-inputs + (list python-setuptools)) + (propagated-inputs + (list python-urllib3)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for requests") + (description "This package provides typing stubs for requests.") + (license license:asl2.0))) + +(define-public python-types-setuptools + (package + (name "python-types-setuptools") + (version "80.9.0.20250529") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types_setuptools" version)) + (sha256 + (base32 "149w6lg8n56k50n08jx450ni9frs2hzbv729sv48c8ds1jx8iq3r")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ;no tests in PyPI archive + (native-inputs + (list python-setuptools)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for setuptools") + (description "This package provides typing stubs for setuptools.") + (license license:asl2.0))) + +(define-public python-types-simplejson + (package + (name "python-types-simplejson") + (version "3.19.0.20241221") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types_simplejson" version)) + (sha256 + (base32 "0w7wvr84d7bj27hc2bsyh69s9d84zpkdhsibbmsibba91zdzjjhi")))) + (build-system pyproject-build-system) + (arguments + (list + #:tests? #f)) ; no tests in PyPI archive, no release or tags on GitHub + (native-inputs + (list python-setuptools python-wheel)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for simplejson") + (description "Typing stubs for simplejson.") + (license license:asl2.0))) + +(define-public python-types-toml + (package + (name "python-types-toml") + (version "0.10.8.20240310") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types-toml" version)) + (sha256 + (base32 "0c83hfw4aqy01vzlh6r84mz6b2b6n98chfdjp2k3c94p089m0h9x")))) + (build-system pyproject-build-system) + (arguments + (list #:tests? #f)) ;no tests provided + (native-inputs (list python-setuptools)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for TOML") + (description + "This package contains typing stubs for TOML, a very small subset the +Python stubs contained in the complete @code{typeshed} collection.") + (license license:asl2.0))) + +(define-public python-types-tqdm + (package + (name "python-types-tqdm") + (version "4.67.0.20250809") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types_tqdm" version)) + (sha256 + (base32 "006md2hnsq79p7d5z3kiaapvl9wwa4dz3yb39jf0n22n2awpmgq2")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ;no tests in PyPI archive + (native-inputs (list python-setuptools)) + (propagated-inputs (list python-types-requests)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for python-tqdm") + (description "This package providis typing stubs for python-tqdm.") + (license license:asl2.0))) + +(define-public python-types-ujson + (package + (name "python-types-ujson") + (version "5.10.0.20250822") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types_ujson" version)) + (sha256 + (base32 "01m0gdcy6plrjxxih96ra86wd2zhn4skzw7k7hvk51gpw5c5ay8a")))) + (build-system pyproject-build-system) + (arguments + (list #:tests? #f)) ;no tests provided + (native-inputs (list python-setuptools)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for ujson") + (description + "This is a PEP 561 type stub package for the ujson package. It can be +used by type-checking tools like mypy, PyCharm, pytype etc. to check code that +uses ujson.") + (license license:asl2.0))) + +(define-public python-types-urllib3 + (package + (name "python-types-urllib3") + (version "1.26.25.14") + (source + (origin + (method url-fetch) + (uri (pypi-uri "types-urllib3" version)) + (sha256 + (base32 "13ys7c7k9pg3lb11qvdgs9xq8j8bvcpjpg61j8dqq6wmgibpz6r2")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f)) ;no tests in PyPI archive + (native-inputs + (list python-setuptools)) + (home-page "https://github.com/python/typeshed") + (synopsis "Typing stubs for urllib3") + (description "This package provides typing stubs for urllib3.") + (license license:asl2.0))) + +(define-public python-typeshed-client + (package + (name "python-typeshed-client") + (version "2.8.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JelleZijlstra/typeshed_client") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0i74ygf49184ab1ipfdzf706wnzs3id15rkysqarzcngdydrcszs")))) + (build-system pyproject-build-system) + (arguments + (list #:test-backend #~'custom + #:test-flags #~(list "tests/test.py"))) + (native-inputs + (list python-setuptools)) + (propagated-inputs + (list python-importlib-resources + python-typing-extensions)) + (home-page "https://github.com/JelleZijlstra/typeshed_client") + (synopsis "Library for accessing stubs in typeshed") + (description + "This package provides a library for accessing stubs in typeshed.") + (license license:expat))) + +(define-public python-typing-inspect + (package + (name "python-typing-inspect") + (version "0.9.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "typing_inspect" version)) + (sha256 + (base32 "0y0z8v4wr5bahlgzjd1il2z8vlfd2asiyb45wia6kvznyqpw8gxj")))) + (build-system pyproject-build-system) + (native-inputs + (list python-pytest + python-setuptools + python-wheel)) + (propagated-inputs + (list python-mypy-extensions + python-typing-extensions)) + (home-page "https://github.com/ilevkivskyi/typing_inspect") + (synopsis "API for inspection of types in the Python @code{typing} module") + (description + "The @code{typing_inspect} module defines experimental API for runtime +inspection of types defined in the Python standard typing module.") + (license license:expat))) + +(define-public python-typogrify + (package + (name "python-typogrify") + (version "2.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "typogrify" version)) + (sha256 + (base32 "1vk17q04sax8rpdqll5zldnf6l3ixgknbnn9wimnwah3k1701aph")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list "--doctest-modules" + "typogrify/filters.py" + "typogrify/packages/titlecase/tests.py"))) + (native-inputs + (list python-pytest + python-hatchling)) + (propagated-inputs + (list python-smartypants)) + (home-page "https://github.com/justinmayer/typogrify") + (synopsis "Filters to transform text into typographically-improved HTML") + (description + "@code{typogrify} provides a set of custom filters that automatically +apply various transformations to plain text in order to yield +typographically-improved HTML. While often used in conjunction with Jinja and +Django template systems, the filters can be used in any environment.") + (license license:bsd-3))) + (define-public python-ua-parser (package (name "python-ua-parser") |