diff options
Diffstat (limited to 'gnu/packages/python-xyz.scm')
-rw-r--r-- | gnu/packages/python-xyz.scm | 588 |
1 files changed, 281 insertions, 307 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 3e415de515..ad6a5cf455 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -1682,7 +1682,7 @@ The @file{.whl} file extension is matched case-insensitively. (sha256 (base32 "18k8kiml9wpl4wf9lmi0j6ys21lbdv8fa8r9qrzdsrh3h0ghp4f0")))) (build-system pyproject-build-system) - (native-inputs (list python-setuptools python-wheel)) + (native-inputs (list python-pytest python-setuptools)) (propagated-inputs (list python-lxml)) (home-page "https://github.com/Shoobx/xmldiff") (synopsis "Creates diffs of XML files") @@ -2351,14 +2351,19 @@ dictionary, can be convert to a dictionary, and is ordered by insertion.") (package (name "python-dotty-dict") (version "1.3.1") - (source (origin - (method url-fetch) - (uri (pypi-uri "dotty_dict" version)) - (sha256 - (base32 - "058sah2nyg44xq5wxywlzc3abzcv9fifnlvsflwma9mfp01nw0ab")))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pawelzny/dotty_dict") + (commit (string-append "v" version)))) + (sha256 + (base32 "0rs83pglkgb4sfnk09rskg8c53hvl7mkjw4vfgl5xc8z13vyi3li")))) (build-system pyproject-build-system) - (native-inputs (list python-poetry-core python-setuptools)) + (native-inputs + (list python-poetry-core + python-pytest + python-setuptools)) (home-page "https://github.com/pawelzny/dotty_dict") (synopsis "Python library for accessing dictionaries using a dot syntax") (description "This package provides a library that wraps the traditional @@ -3187,15 +3192,16 @@ ports.") (define-public python-mdx-gh-links (package (name "python-mdx-gh-links") - (version "0.2") + (version "0.4") (source (origin (method url-fetch) (uri (pypi-uri "mdx_gh_links" version)) (sha256 - (base32 "167k1jbp3jifxbnlpi6wy0z1skam7gqv2sixb5bhggb2vypqvysr")))) - (build-system python-build-system) + (base32 "11inr9azx6c174yfikysbw0mx7mpjm03qdqr1am2a510mg1amma1")))) + (build-system pyproject-build-system) (arguments (list #:tests? #f)) ;tests connect github + (native-inputs (list python-setuptools)) (propagated-inputs (list python-markdown)) (home-page "https://github.com/Python-Markdown/github-links/") (synopsis "Python-Markdown extension adding support for shorthand links") @@ -4047,45 +4053,65 @@ utilities such as ping(1).") (license license:lgpl3))) (define-public python-iron-core - (package - (name "python-iron-core") - (version "1.2.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "iron-core" version)) - (sha256 - (base32 "158vdymq6nbym0v1f9l5gz42j1gsq09b9yw9hgd70m5ymy30n6dp")))) - (build-system pyproject-build-system) - (propagated-inputs (list python-dateutil python-requests)) - (native-inputs (list python-setuptools python-wheel)) - (home-page "https://www.github.com/iron-io/iron_core_python") - (synopsis "Universal classes and methods for Iron.io API wrappers") - (description - "This package provides universal classes and methods for the Iron.io API -wrappers to build on.") - (license license:bsd-2))) + (let ((commit "5a5f3011da09769a812c6a1c44781ef852abc19b") + (revision "0")) + (package + (name "python-iron-core") + (version (git-version "1.2.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://www.github.com/iron-io/iron_core_python") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "030ibimgqvc6hywh7g3k7qn147ckagi0wbdiqcpdf1c85xqrj5zq")))) + (build-system pyproject-build-system) + (arguments + (list + ;; XXX: Tests are run, but they seem too old/not updated. + #:tests? #f + #:test-backend #~'unittest)) + (propagated-inputs (list python-dateutil python-requests)) + (native-inputs (list python-setuptools)) + (home-page "https://www.github.com/iron-io/iron_core_python") + (synopsis "Universal classes and methods for Iron.io API wrappers") + (description + "This package provides universal classes and methods for the Iron.io +API wrappers to build on.") + (license license:bsd-2)))) (define-public python-iron-mq - (package - (name "python-iron-mq") - (version "0.9") - (source - (origin - (method url-fetch) - (uri (pypi-uri "iron-mq" version)) - (sha256 - (base32 "1ypc71xppidy5lx3mbfj1zc685na3jns441q6il8kh6rfbc42169")))) - (build-system pyproject-build-system) - (propagated-inputs (list python-iron-core)) - (native-inputs (list python-setuptools python-wheel)) - (home-page "https://github.com/iron-io/iron_mq_python") - (synopsis "Client library for IronMQ, a message queue in the cloud") - (description - "This package provides Python language bindings for IronMQ. IronMQ is an + (let ((commit "e6ff76ac0068c3184d9003e3163b94ffc839dbe8") + (revision "0")) + (package + (name "python-iron-mq") + (version (git-version "0.9" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/iron-io/iron_mq_python") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0bb8gpzb3jr2r6i367jspwcxrz5ygdf40a67nl9aj5n79hg1aq8x")))) + (build-system pyproject-build-system) + (arguments + (list + ;; XXX: Tests are broken and require network access. + #:tests? #f + #:test-backend #~'unittest)) + (propagated-inputs (list python-iron-core)) + (native-inputs (list python-setuptools)) + (home-page "https://github.com/iron-io/iron_mq_python") + (synopsis "Client library for IronMQ, a message queue in the cloud") + (description + "This package provides Python language bindings for IronMQ. IronMQ is an elastic message queue for managing data and event flow within cloud applications and between systems.") - (license license:bsd-2))) + (license license:bsd-2)))) (define-public python-rasterio (package @@ -5125,13 +5151,18 @@ version identifier.") (version "1.41") (source (origin - (method url-fetch) - (uri (pypi-uri "serpent" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/irmen/Serpent") + (commit (string-append "serpent-" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "15bhxpihxvbphsvp4wyh2kwfz7xasmki9zwcsj3l6r66wdgh61q4")))) + (base32 "081bm13pdxp3rxis24j2mjka06fzi4kap51wmnf21q69fsikbza8")))) (build-system pyproject-build-system) + (arguments (list #:test-backend #~'unittest + #:test-flags #~(list "discover" "-s" "tests"))) (native-inputs - (list python-attrs python-pytz python-setuptools python-wheel)) + (list python-attrs python-pytz python-setuptools)) (home-page "https://github.com/irmen/Serpent") (synopsis "Serializer for literal Python expressions") (description @@ -6012,18 +6043,6 @@ Six supports every Python version since 2.5. It is contained in only one Python file, so it can be easily copied into your project.") (license license:x11))) -(define-public python2-six - ;; XXX: The only one user of this package is qtwebengine-5, consider to - ;; remove when no longer required. - (let ((base (package-with-python2 python-six))) - (package - (inherit base) - ;; Reduce Python 2 closure by disabling tests. - (arguments (list #:tests? #f)) - (native-inputs - (list python-setuptools - python-wheel))))) - (define-public python-schedule (package (name "python-schedule") @@ -7149,36 +7168,6 @@ port forwards using @acronym{UPnP, Universal Plug and Play}.") code introspection, and logging.") (license license:expat))) -;; Recent versions of python-fixtures and python-testrepository need -;; python-pbr for packaging, which itself needs these two packages for -;; testing. -;; To fix this circular dependency, we use a build of python-pbr, based on the -;; same source, just without any test dependencies and with tests disabled. -;; python-pbr-minmal is then used to package python-fixtures and -;; python-testrepository. -;; Strictly speaking we currently could remove the test-requirements from the -;; normal python-pbr package (and save this package) since test are disabled -;; there anyway. But this may change in future. -(define-public python-pbr-minimal - (package - (name "python-pbr-minimal") - (version "5.5.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "pbr" version)) - (sha256 - (base32 - "1j8k5d4rdhy5bw5ai1vkjzln2albah94in3vvyvxa0n42fv81baz")))) - (build-system python-build-system) - (arguments - `(#:tests? #f)) - (home-page "https://docs.openstack.org/pbr/latest/") - (synopsis "Minimal build of python-pbr used for bootstrapping") - (description - "Used only for bootstrapping python2-pbr, you should not need this.") - (license license:asl2.0))) - (define-public python-pbr (package (name "python-pbr") @@ -7488,33 +7477,6 @@ version numbers.") (home-page "https://github.com/habnabit/vcversioner") (license license:isc))) -(define-public python-jdcal - (package - (name "python-jdcal") - (version "1.4.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "jdcal" version)) - (sha256 - (base32 - "1j6g19jf21qprjsr8h0r7nsbss366gy8j9izq8cz53gbjvh74a27")))) - (build-system python-build-system) - (arguments - (list #:phases - #~(modify-phases %standard-phases - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (invoke "pytest" "-vv"))))))) - (native-inputs - (list python-pytest)) - (home-page "https://github.com/phn/jdcal") - (synopsis "Functions to convert between Julian dates Gregorian dates") - (description "This Python library provides functions for converting -between Julian dates and Gregorian dates.") - (license license:bsd-2))) - (define-public python-jsondiff (package (name "python-jsondiff") @@ -7562,13 +7524,9 @@ diff, and patch JSON and JSON-like structures in Python.") (base32 "1nh8m6rxslwk05daxshxmgk41qfp18yynydba49b13l4m8dnh634")))) (build-system pyproject-build-system) (native-inputs - (list python-codecov - python-coveralls - python-pytest + (list python-pytest python-pytest-cov - python-setuptools - python-tox - python-wheel)) + python-setuptools)) (propagated-inputs (list python-pyparsing)) (home-page "https://github.com/shinichi-takii/ddlparse") (synopsis "Parses and converts DDL to BigQuery JSON schema") @@ -8364,7 +8322,7 @@ templates. A format string can be provided to control the output.") python-poetry-core python-pytest python-tornado-6)) - (propagated-inputs (list python-charset-normalizer)) + (propagated-inputs (list python-charset-normalizer python-six)) (home-page "https://github.com/kakulukia/pypugjs") (synopsis "Convert Pug source files into different template languages") (description @@ -8454,39 +8412,39 @@ logging and tracing of the execution.") (define-public python-daemon (package (name "python-daemon") - (version "3.0.1") + (version "3.1.2") (source (origin - (method url-fetch) - (uri (pypi-uri "python-daemon" version)) + (method git-fetch) + (uri (git-reference + (url "https://pagure.io/python-daemon") + (commit (string-append "release/" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 - "1rfsnij687hk97ppzs2q6mwmxgr632nh672ajd0gzsppf8ilamvc")))) - (build-system python-build-system) + (base32 "0rfchh68pxg68s02idc0qcm2s9yn587hv0b83r4isy5ccb3g60y4")))) + (build-system pyproject-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'adjust-tests - (lambda _ - ;; FIXME: Determine why test fails - (substitute* "test/test_daemon.py" - (("test_detaches_process_context") - "skip_test_detaches_process_context")) - (substitute* "test/scaffold.py" - (("test_exception_instance") - "skip_test_exception_instance") - (("test_exception_types") - "skip_test_exception_types"))))))) - (propagated-inputs - (list python-lockfile python-packaging python-setuptools)) - (native-inputs - (list python-docutils - python-testscenarios - python-testtools)) + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'discard-dynamic-metadata + (lambda _ + (substitute* "pyproject.toml" + (("^dynamic = " all) + (format #f "version = ~s~%~a" #$version all)) + (("\"(description|readme|version|maintainers)\",") + "")) + (for-each delete-file + '("setup.py" + "test/test_util_metadata.py" + "test/test_setup.py"))))))) + (propagated-inputs (list python-lockfile)) + (native-inputs (list python-testscenarios python-setuptools)) (home-page "https://pagure.io/python-daemon/") (synopsis "Python library for making a Unix daemon process") - (description "Python-daemon is a library that assists a Python program to -turn itself into a well-behaved Unix daemon process, as specified in PEP 3143. + (description + "Python-daemon is a library that assists a Python program to turn itself +into a well-behaved Unix daemon process, as specified in PEP 3143. This library provides a @code{DaemonContext} class that manages the following important tasks for becoming a daemon process: @@ -9097,25 +9055,6 @@ with Python.") working with Valve's VDF text format.") (license license:expat))) -(define-public python-pygments-github-lexers - (package - (name "python-pygments-github-lexers") - (version "0.0.5") - (source - (origin - (method url-fetch) - (uri (pypi-uri "pygments-github-lexers" version)) - (sha256 - (base32 - "0cz14clcc9z4pn79ll8hp3xzgsrfjscak5zfsvlgrz6ngkkmgjma")))) - (build-system python-build-system) - (propagated-inputs - (list python-pygments)) - (home-page "https://github.com/liluo/pygments-github-lexers") - (synopsis "Pygments Github custom lexers") - (description "This package installs Github custom lexers to Pygments.") - (license license:bsd-3))) - (define-public python-pygtrie (package (name "python-pygtrie") @@ -12231,7 +12170,8 @@ where key might be occurred more than once in the container.") (propagated-inputs (list python-six)) (native-inputs - (list python-flake8 python-pycodestyle python-setuptools python-wheel)) + (list python-pytest + python-setuptools)) (home-page "https://github.com/gruns/orderedmultidict") (synopsis "Python Ordered Multivalue Dictionary - omdict") (description "This package contains a library for ordered multivalue @@ -17760,16 +17700,27 @@ reading and writing MessagePack data.") (home-page "https://pypi.org/project/msgpack/") (license license:asl2.0))) +(define-public python-msgpack-for-borg + (hidden-package + (package + (inherit python-msgpack) + (version "1.0.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "msgpack" version)) + (sha256 + (base32 "0pqzy1zclyhd42gfibhkcqymbspy5a6v421g87mh40h3iz0nkn7m"))))))) + (define-public python-openstep-plist (package (name "python-openstep-plist") (version "0.3.0") - (home-page "https://github.com/fonttools/openstep-plist") (source (origin (method git-fetch) (uri (git-reference - (url home-page) + (url "https://github.com/fonttools/openstep-plist") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 @@ -17783,8 +17734,9 @@ reading and writing MessagePack data.") (lambda _ (setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$(package-version this-package))))))) - (native-inputs (list python-cython python-pytest python-setuptools-scm - python-setuptools python-wheel)) + (native-inputs (list python-cython-0 python-pytest python-setuptools-scm + python-setuptools)) + (home-page "https://github.com/fonttools/openstep-plist") (synopsis "OpenStep plist parser and writer") (description "This package provides a parser for the \"old style\" OpenStep property @@ -18168,15 +18120,15 @@ asyncio.") (define-public python-geojson (package (name "python-geojson") - (version "3.1.0") + (version "3.2.0") (source (origin (method url-fetch) (uri (pypi-uri "geojson" version)) (sha256 - (base32 "1b5df7skx3906046j12yjv8gdbcy17q9y3lbqbpmi83yf90gm9sq")))) + (base32 "00s9h22vs4ppncwg3a0gh90czb2dd6d99qznypw72vwc3sxblq5q")))) (build-system pyproject-build-system) - (native-inputs (list python-setuptools python-wheel)) + (native-inputs (list python-pytest python-setuptools)) (home-page "https://github.com/jazzband/geojson") (synopsis "Python bindings and utilities for GeoJSON") (description @@ -18405,7 +18357,11 @@ primary use case is APIs defined before keyword-only parameters existed.") (sha256 (base32 "1805svvb7xjm4sf1j7b6nc3409x37pd1xmabfwwjf1ldkzwgxhfb")))) (build-system pyproject-build-system) - (native-inputs (list python-pytest python-setuptools python-wheel)) + (native-inputs + (list python-pytest + python-setuptools)) + (propagated-inputs + (list python-six)) (home-page "https://github.com/Mimino666/langdetect") (synopsis "Language detection library") (description @@ -20005,54 +19961,65 @@ config files.") (license license:bsd-3))) (define-public python-omegaconf - (package - (name "python-omegaconf") - (version "2.3.0") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/omry/omegaconf") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (modules '((guix build utils))) - (snippet #~(begin - (delete-file-recursively "build_helpers/bin") - (substitute* "build_helpers/build_helpers.py" - (("java") "antlr4") - (("\"-jar\",") "") - (("str\\(build_dir / \"bin\" / \"antlr.*\"\\),") "")))) - (sha256 - (base32 - "0cpkkzda919f24y9s04mi15v9zksvln95ics8cr31rcpi2wbh5j3")))) - (build-system pyproject-build-system) - (arguments - (list #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'loosen-requirements - (lambda _ - (substitute* "requirements/base.txt" - (("antlr4-python3-runtime==.*") - "antlr4-python3-runtime >=4.9\n")) - ;; Ignore deprecation warnings. - (substitute* "pyproject.toml" - (("-Werror") ""))))))) - (native-inputs - (list icedtea - antlr4 - python-pytest - python-pytest-mock - python-setuptools - python-wheel)) - (propagated-inputs - (list java-antlr4-runtime-python - python-pydevd - python-pyyaml)) - (home-page "https://github.com/omry/omegaconf") - (synopsis "Flexible configuration system") - (description "OmegaConf is a hierarchical configuration system and -supports merging configurations from multiple sources. It provides a -consistent API regardless of how the configuration was created.") - (license license:bsd-3))) + (let ((commit "117f7de07285e4d1324b9229eaf873de15279457") + (revision "0")) + (package + (name "python-omegaconf") + (version (git-version "2.3.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/omry/omegaconf") + (commit commit))) + (file-name (git-file-name name version)) + (modules '((guix build utils))) + (snippet + #~(begin + (delete-file-recursively "build_helpers/bin") + (substitute* "build_helpers/build_helpers.py" + (("java") "antlr4") + (("\"-jar\",") "") + (("str\\(build_dir / \"bin\" / \"antlr.*\"\\),") "")))) + (sha256 + (base32 "0f922dar5dwyyfk1bwsbs9gws0vyj1w2h9n3148hcfa8c4hg2ysv")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + ;; XXX: Those tests currently fail collection. + #~(list "--ignore=tests/structured_conf/test_structured_config.py" + "--ignore=tests/test_basic_ops_list.py" + "--ignore=tests/test_merge.py" + "--ignore=tests/test_select.py") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'loosen-requirements + (lambda _ + (substitute* "requirements/base.txt" + (("antlr4-python3-runtime==.*") + "antlr4-python3-runtime >=4.9\n")) + ;; Ignore deprecation warnings. + (substitute* "pyproject.toml" + (("-Werror") ""))))))) + (native-inputs + (list icedtea + antlr4 + python-pytest + python-pytest-mock + python-setuptools + python-wheel)) + (propagated-inputs + (list java-antlr4-runtime-python + python-pydevd + python-pyyaml)) + (home-page "https://github.com/omry/omegaconf") + (synopsis "Flexible configuration system") + (description + "OmegaConf is a hierarchical configuration system and supports merging +configurations from multiple sources. It provides a consistent API regardless +of how the configuration was created.") + (license license:bsd-3)))) (define-public python-configargparse (package @@ -22548,22 +22515,20 @@ respectively.") (base32 "1078mkzivz45my8x2y5gxisr0vba630xj7yxx7anr068xhnpshsi")))) (build-system pyproject-build-system) - (propagated-inputs - (list python-pytoolconfig)) + (arguments + (list + #:test-flags + #~(list "-k" "test_version_hash_varies_on_get_file_content"))) + (propagated-inputs (list python-pytoolconfig)) (native-inputs - (list python-pip - python-pre-commit - python-pytest - python-pytest-cov - python-pytest-timeout - python-setuptools - python-wheel)) + (list python-pytest python-pytest-timeout python-setuptools)) (home-page "https://github.com/python-rope/rope") (synopsis "Refactoring library for Python") - (description "Rope is a refactoring library for Python. It facilitates -the renaming, moving and extracting of attributes, functions, modules, fields -and parameters in Python source code. These refactorings can also be applied -to occurrences in strings and comments.") + (description + "Rope is a refactoring library for Python. It facilitates the renaming, +moving and extracting of attributes, functions, modules, fields and parameters +in Python source code. These refactorings can also be applied to occurrences +in strings and comments.") (license license:lgpl3+))) (define-public python-py3status @@ -27985,6 +27950,8 @@ services.") (license license:asl2.0))) (define-public python-setuptools-git + ;; XXX: The project is abandoned since 2018, consider to remove in the next + ;; refresh cycle. (package (name "python-setuptools-git") (version "1.2") @@ -27997,6 +27964,7 @@ services.") (build-system pyproject-build-system) (arguments (list + #:tests? #f ;no tests in PyPI #:phases #~(modify-phases %standard-phases ;; This is needed for tests. @@ -28098,29 +28066,33 @@ definitions to simplify the use of C bindings.") (define-public python-pyclipper (package (name "python-pyclipper") - (version "1.3.0.post3") + (version "1.3.0.post6") (source (origin - (method url-fetch) - (uri (pypi-uri "pyclipper" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/greginvm/pyclipper") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 "0vqzbmq2di1jaj6230m5i1ld0mg6wdb1c6r6i5zli54varavr7v3")) - (modules '((guix build utils))) - (snippet - '(begin - ;; This file is generated by Cython. - (delete-file "src/pyclipper/_pyclipper.cpp") #t)))) - (build-system python-build-system) + (base32 "1ijr7sx3203b3ppvsn1zyy8nfz93nbi60l8dxj2hdd6sj25g8q5k")))) + (build-system pyproject-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'build 'cythonize-sources - (lambda _ - (with-directory-excursion "src/pyclipper" - (invoke "cython" "--cplus" "_pyclipper.pyx"))))))) + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'set-version + (lambda _ + (setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version))) + (add-before 'build 'cythonize-sources + (lambda _ + (with-directory-excursion "src/pyclipper" + (invoke "cython" "--cplus" "_pyclipper.pyx"))))))) (native-inputs - (list python-cython python-setuptools-scm - python-pytest python-pytest-runner)) + (list python-cython + python-pytest + python-setuptools + python-setuptools-scm)) (home-page "https://github.com/greginvm/pyclipper") (synopsis "Wrapper for Angus Johnson's Clipper library") (description @@ -32081,7 +32053,9 @@ standard error channel (stderr) in your program.") (sha256 (base32 "1ygjgkzn0i61zk2yr27aqnma08c8xpblhdixli9f20if1nlgkm2y")))) (build-system pyproject-build-system) - (native-inputs (list python-setuptools python-wheel)) + (arguments + (list #:tests? #f)) ;no tests + (native-inputs (list python-setuptools)) (home-page "http://github.com/vpelletier/python-ioctl-opt") (synopsis "Functions to compute fnctl.ioctl's opt argument") (description @@ -34349,13 +34323,17 @@ By default it uses the open Python vulnerability database Safety DB.") (version "1.15") (source (origin - (method url-fetch) - (uri (pypi-uri "pypandoc" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/JessicaTegner/pypandoc") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "04yfja8p8flvpjakyw7n43jb1jm3863w043l7zb43bhjwzmvw9ga")))) + (base32 "0jqr380xpg1n93dagxv7zfakhdravw0nc81rc4pnmjzkj360l5nr")))) (build-system pyproject-build-system) (arguments (list + #:test-backend #~'unittest #:phases #~(modify-phases %standard-phases (add-before 'check 'disable-tests @@ -34384,8 +34362,8 @@ By default it uses the open Python vulnerability database Safety DB.") (propagated-inputs (list python-wheel)) (home-page "https://github.com/JessicaTegner/pypandoc") (synopsis "Python wrapper for pandoc") - (description "pypandoc is a thin Python wrapper around pandoc -and pandoc-citeproc.") + (description + "pypandoc is a thin Python wrapper around pandoc and pandoc-citeproc.") (license license:expat))) (define-public python-rnc2rng @@ -36782,18 +36760,6 @@ systems in Python.") key-value pairs from a @code{.env} file and set them as environment variables.") (license license:bsd-3))) -(define-public python-dotenv-0.13.0 - (package (inherit python-dotenv) - (name "python-dotenv") - (version "0.13.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "python-dotenv" version)) - (sha256 - (base32 - "0x5dagmfn31phrbxlwacw3s4w5vibv8fxqc62nqcdvdhjsy0k69v")))))) - (define-public date2name (let ((commit "6c8f37277e8ec82aa50f90b8921422be30c4e798") (revision "1")) @@ -37406,49 +37372,57 @@ Python @code{set} interface.") (define-public dynaconf (package (name "dynaconf") - (version "3.2.4") + (version "3.2.11") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/dynaconf/dynaconf") - (commit version))) + (url "https://github.com/dynaconf/dynaconf") + (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 - "0fj2ffvzfvjf4d7f672h5x5fzq26f8hax9j3dfsix158fwm0212w")) - (patches (search-patches "dynaconf-unvendor-deps.patch")) + (base32 "05122x1bwskfqnzi9hqi86h7407byfjvhgczj74x6lp2m6rnwkzl")) + ;; (patches (search-patches "dynaconf-unvendor-deps.patch")) (modules '((guix build utils))) ;; Remove vendored dependencies - (snippet '(let ((unvendor '("click" "dotenv" "ruamel" "toml"))) - (with-directory-excursion "dynaconf/vendor" - (for-each delete-file-recursively unvendor)))))) + (snippet + #~(let ((unvendor '("click" "ruamel" "toml"))) + (with-directory-excursion "dynaconf/vendor" + (for-each delete-file-recursively unvendor)) + (substitute* (find-files "." "\\.py$") + (("from dynaconf\\.vendor import (click|ruamel|toml)([^l]+.*)$" + _ target rest) + (string-append "import " target rest)) + (("dynaconf\\.vendor\\.(click|ruamel|toml)" _ target) + target)))))) (build-system pyproject-build-system) (arguments - `(#:test-flags - '("--ignore=tests/test_vault.py" ; depend on hvac and a live Vault - "-k" ,(let ((click-tests '("test_negative_get" - "test_inspect_invalid_format"))) - ;; Disable integration tests - (string-append "not integration and not " - ;; These tests fail because we use Click 8.* - ;; instead of Click 7 - (string-join click-tests " and not "))) - "tests") - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'patch-for-click-8 - (lambda _ - (substitute* "dynaconf/cli.py" - (("click.get_os_args\\()") ;deprecated from Click 8.1+ - "sys.argv[1:]"))))))) + (list + #:test-flags + #~(list "--ignore=tests/test_vault.py" ; depend on hvac and a live Vault + "-k" #$(let ((click-tests '("test_negative_get" + "test_not_found_key_exit_error[get]" + "test_inspect_invalid_format"))) + ;; Disable integration tests + (string-append "not integration and not " + ;; These tests fail because we use + ;; Click 8.* instead of Click 7 + (string-join click-tests " and not "))) + "tests") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-for-click-8 + (lambda _ + (substitute* "dynaconf/cli.py" + (("click.get_os_args\\()") ;deprecated from Click 8.1+ + "sys.argv[1:]"))))))) (propagated-inputs - (list python-click python-configobj python-dotenv-0.13.0 - python-ruamel.yaml-0.16 python-toml python-tomli)) + (list python-click python-configobj python-ruamel.yaml-0.16 + python-toml python-tomli)) (native-inputs (list python-django python-flask python-pytest python-pytest-cov - python-pytest-mock python-setuptools python-wheel)) + python-pytest-mock python-setuptools)) (home-page "https://www.dynaconf.com/") (synopsis "The dynamic configurator for your Python project") (description |