diff options
author | Ludovic Courtès <ludo@gnu.org> | 2021-11-17 23:24:42 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2021-11-17 23:43:14 +0100 |
commit | 3a317f7476f8c6012e166ff9f340f861938721c9 (patch) | |
tree | 946e398c37912cfc03be7306951ae87bfeb130fa /gnu/packages/python-xyz.scm | |
parent | e55547bf70384691712047912c793c517debd2ec (diff) | |
parent | 62e707d67caf1dab2af411a69ff8cec4b2dc686e (diff) | |
download | guix-3a317f7476f8c6012e166ff9f340f861938721c9.tar guix-3a317f7476f8c6012e166ff9f340f861938721c9.tar.gz |
Merge branch 'master' into core-updates-frozen
Diffstat (limited to 'gnu/packages/python-xyz.scm')
-rw-r--r-- | gnu/packages/python-xyz.scm | 373 |
1 files changed, 339 insertions, 34 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 3a85266b4a..4bca271bb5 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -1358,6 +1358,27 @@ concepts.") (define-public python2-h5py (package-with-python2 python-h5py)) +(define-public python-hnswlib + (package + (name "python-hnswlib") + (version "0.5.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "hnswlib" version)) + (sha256 + (base32 "0wf1cwmxmdzfqmfhrkqdxb5spf21ylgl2bidswhzjrqhwf35c9qf")))) + (build-system python-build-system) + (propagated-inputs + `(("python-numpy" ,python-numpy))) + (native-inputs + `(("pybind11" ,pybind11))) + (home-page "https://github.com/nmslib/hnswlib") + (synopsis "Fast approximate nearest neighbor search") + (description "Hnswlib is a header-only C++ implementation of fast +approximate nearest neighbor search with Python bindings.") + (license license:asl2.0))) + (define-public python-pyls-black (package (name "python-pyls-black") @@ -1542,6 +1563,35 @@ and simplified. It supports SPDX license expressions as well as other naming conventions and aliases in the same expression.") (license license:gpl2+))) +(define-public python-wand + (package + (name "python-wand") + (version "0.6.7") + (source + (origin + (method url-fetch) + (uri (pypi-uri "Wand" version)) + (sha256 + (base32 "1nxn7zvbnfgk4kkxajbzglcjpbgr84ilhnxm990nifjxqb61ph7b")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'find-magickwand + (lambda* (#:key inputs #:allow-other-keys) + (setenv "MAGICK_HOME" (assoc-ref inputs "imagemagick")) + (setenv "WAND_MAGICK_LIBRARY_SUFFIX" ".Q16")))))) + (native-inputs + `(("python-pytest" ,python-pytest))) + (inputs + `(("imagemagick" ,imagemagick))) + (home-page "https://docs.wand-py.org/") + (synopsis "MagickWand API binding for Python") + (description + "Wand is a ctypes-based binding for the C API of ImageMagick's MagickWand +library.") + (license license:expat))) + (define-public python-lockfile (package (name "python-lockfile") @@ -3351,7 +3401,7 @@ with sensible defaults out of the box.") (native-inputs `(("python-pytest-cov" ,python-pytest-cov))) (home-page "https://github.com/mapbox/cligj") - (synopsis "Click params for commmand line interfaces to GeoJSON") + (synopsis "Click params for command line interfaces to GeoJSON") (description "cligj is for Python developers who create command line interfaces for geospatial data. cligj allows you to quickly build consistent, @@ -6570,29 +6620,20 @@ where key might be occurred more than once in the container.") (define-public python-orderedmultidict (package (name "python-orderedmultidict") - (version "1.0") + (version "1.0.1") (source (origin (method url-fetch) (uri (pypi-uri "orderedmultidict" version)) (sha256 (base32 - "1idjbl933avgaadscrjw1np3xkvnz3phq0l8vw5qs0rqcjx9b65q")))) + "1bc2v0yflsxjyyjx4q9wqx0j3bvzcw9z87d5pz4iqac7bsxhn1q4")))) (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'fix-tests - (lambda _ - ;; The package uses nosetest for running the tests. - ;; Adding this initfile allows to run the test suite - ;; without requiring nosetest. - (with-output-to-file "tests/__init__.py" newline) - #t))))) (propagated-inputs `(("python-six" ,python-six))) (native-inputs - `(("python-pycodestyle" ,python-pycodestyle))) + `(("python-flake8" ,python-flake8) + ("python-pycodestyle" ,python-pycodestyle))) (home-page "https://github.com/gruns/orderedmultidict") (synopsis "Python Ordered Multivalue Dictionary - omdict") (description "This package contains a library for ordered multivalue @@ -6601,9 +6642,6 @@ multiple values for the same key. An ordered multivalue dictionary is a multivalue dictionary that retains the order of insertions and deletions.") (license license:unlicense))) -(define-public python2-orderedmultidict - (package-with-python2 python-orderedmultidict)) - (define-public python-autopep8 (package (name "python-autopep8") @@ -9623,6 +9661,56 @@ applications.") "PyZMQ is the official Python binding for the ZeroMQ messaging library.") (license license:bsd-4))) +(define-public python-immutabledict + (package + (name "python-immutabledict") + (version "2.2.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "immutabledict" version)) + (sha256 + (base32 "0fpc4gbk7inpfbgdypsg6c18bmdjw8gwx47bjw0hvixn3gghxnqx")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) ; no tests in PyPI release and no setup.py in GitHub + (native-inputs + `(("python-pytest" ,python-pytest))) + (home-page "https://github.com/corenting/immutabledict") + (synopsis "Immutable wrapper around dictionaries") + (description + "@dfn{immutabledict} is an immutable wrapper around dictionaries. +It implements the complete mapping interface and can be used as a drop-in +replacement for dictionaries where immutability is desired.") + (license license:expat))) + +(define-public python-emoji + (package + (name "python-emoji") + (version "1.6.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "emoji" version)) + (sha256 + (base32 "0923mpixwq6hdpkgvi4r46alfvf608iq975rb8lnqpq29j71mmjk")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "python" "-m" "pytest"))))))) + (native-inputs + `(("python-pytest" ,python-pytest))) + (home-page "https://github.com/carpedm20/emoji/") + (synopsis "Emoji terminal output for Python") + (description "This package provides Emoji terminal output for Python. The +entire set of Emoji codes as defined by the Unicode Consortium is supported in +addition to a bunch of aliases.") + (license license:bsd-3))) + (define-public python-pep8 ;; This package has been renamed to ‘pycodestyle’ and is no longer updated. ;; Its last release (1.7.1) adds only a scary warning to this effect, breaking @@ -10990,6 +11078,67 @@ your package is installed, via @code{pkg_resources} (part of @code{setuptools}).") (license license:gpl3+))) +(define-public python-filetype + (package + (name "python-filetype") + (version "1.0.8") + (source + (origin + (method url-fetch) + (uri (pypi-uri "filetype" version)) + (sha256 + (base32 "05mkinkcn36v1cnb5hzay3zxmv7jmmflckxxp08rgzbkkf3i9pvp")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key inputs outputs tests? #:allow-other-keys) + (when tests? + (add-installed-pythonpath inputs outputs) + (invoke "python" "-m" "pytest" "-k" + (string-append + ;; Both tests fail with FileNotFoundError. + "not test_infer_zip_from_disk" + " and not test_infer_tar_from_disk")))))))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-pytest-benchmark" ,python-pytest-benchmark))) + (home-page "https://github.com/h2non/filetype.py") + (synopsis "Infer file type and MIME type of any file/buffer") + (description "@code{filetype} is a small and dependency free Python +package to infer file type and MIME type checking the magic numbers +signature of a file or buffer.") + (license license:expat))) + +(define-public python-cachelib + (package + (name "python-cachelib") + (version "0.4.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "cachelib" version)) + (sha256 + (base32 "0p4chkvbvffcllsny5rpzmsq2vyr24ql3kzif4ha0fxp3fp7vqk8")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? inputs outputs #:allow-other-keys) + (when tests? + (add-installed-pythonpath inputs outputs) + (invoke "pytest"))))))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-pytest-xprocess" ,python-pytest-xprocess))) + (home-page "https://github.com/pallets/cachelib") + (synopsis "Collection of cache libraries") + (description "Cachelib is a library extracted from @code{werkzeug} which +provides a collection of cache libraries in the same API interface.") + (license license:bsd-3))) + (define-public python-legacy-api-wrap (package (name "python-legacy-api-wrap") @@ -11059,14 +11208,14 @@ suitable for a wide range of protocols based on the ASN.1 specification.") (define-public python-pyasn1-modules (package (name "python-pyasn1-modules") - (version "0.2.2") + (version "0.2.8") (source (origin (method url-fetch) (uri (pypi-uri "pyasn1-modules" version)) (sha256 (base32 - "0ivm850yi7ajjbi8j115qpsj95bgxdsx48nbjzg0zip788c3xkx0")))) + "0pp6dcagd8c2c9qx3lahc1rdwlnmm0y0siqr5icjq2r32b3q8pwh")))) (build-system python-build-system) (propagated-inputs `(("python-pyasn1" ,python-pyasn1))) @@ -15539,7 +15688,7 @@ database, file, dict stores. Cachy supports python versions 2.7+ and 3.2+.") (define-public poetry (package (name "poetry") - (version "1.1.5") + (version "1.1.11") ;; Poetry can only be built from source with Poetry. (source (origin @@ -15547,7 +15696,7 @@ database, file, dict stores. Cachy supports python versions 2.7+ and 3.2+.") (uri (pypi-uri "poetry" version)) (sha256 (base32 - "1dvx08ksv5wnsj45db23921rj136akmcnxa0kmlsddf3wbh6wcka")))) + "17pnf2j4adlm9fhyg5jkkvs8bzcigb6nj72vr0687fxybzsj4zbx")))) (build-system python-build-system) (arguments `(#:tests? #f ;; Pypi does not have tests. @@ -16706,9 +16855,6 @@ Glances uses the PsUtil library to get information from your system. It monitors CPU, load, memory, network bandwidth, disk I/O, disk use, and more.") (license license:lgpl3+))) -(define-public python-glances - (deprecated-package "python-glances" glances)) - (define-public python-graphql-core (package (name "python-graphql-core") @@ -18469,13 +18615,13 @@ current test, while only declaring the test-specific fields") (define-public python-translate-toolkit (package (name "python-translate-toolkit") - (version "2.1.0") + (version "3.5.1") (source (origin (method url-fetch) - (uri (pypi-uri "translate-toolkit" version ".tar.bz2")) + (uri (pypi-uri "translate-toolkit" version ".tar.gz")) (sha256 - (base32 "1vlkwrg83vb17jc36pmwh2b7jphwf390lz0jw8hakcg16qhwypvq")))) + (base32 "020pp7pbpnavxd41z90vyzzx06ci57mx9drkgbsb89wxxx4gal9v")))) (build-system python-build-system) (native-inputs `(("python-pytest" ,python-pytest) @@ -18503,8 +18649,18 @@ current test, while only declaring the test-specific fields") several utilities, as well as an API for building localization tools.") (license license:gpl2+))) +;; Required for virtaal, newer versions do not build with python2 (define-public python2-translate-toolkit - (package-with-python2 python-translate-toolkit)) + (package-with-python2 + (package + (inherit python-translate-toolkit) + (version "2.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "translate-toolkit" version ".tar.bz2")) + (sha256 + (base32 "1vlkwrg83vb17jc36pmwh2b7jphwf390lz0jw8hakcg16qhwypvq"))))))) (define-public python-packaging (package/inherit python-packaging-bootstrap @@ -19331,15 +19487,9 @@ many of the popular cloud service providers using a unified API.") window memory map manager.") (license license:bsd-3))) -(define-public python-smmap2 - (deprecated-package "python-smmap2" python-smmap)) - (define-public python2-smmap (package-with-python2 python-smmap)) -(define-public python2-smmap2 - (deprecated-package "python2-smmap2" python2-smmap)) - (define-public python-regex (package (name "python-regex") @@ -27164,6 +27314,137 @@ objects in the combined source, and how they define or use each other. The graph can be output for rendering by GraphViz or yEd.") (license license:gpl2))) +(define-public python-multipledispatch + (package + (name "python-multipledispatch") + (version "0.6.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "multipledispatch" version)) + (sha256 + (base32 + "1slblghfjg9fdi9zpd7gmrkvfbv20nrdgnrymcnbky8bzm8i9ax7")))) + (build-system python-build-system) + (propagated-inputs `(("python-six" ,python-six))) + (home-page "https://github.com/mrocklin/multipledispatch/") + (synopsis "Multiple dispatch for Python based on pattern matching") + (description "This library provides an efficient mechanism for overloading +function implementations based on the types of the arguments.") + (license license:bsd-3))) + +(define-public python-logical-unification + (package + (name "python-logical-unification") + (version "0.4.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "logical-unification" version)) + (sha256 + (base32 + "0j57953hi7kg2rl0163vzjzsvzdyjimnklhx6idf5vaqqf1d3p1j")))) + (build-system python-build-system) + (propagated-inputs + `(("python-multipledispatch" ,python-multipledispatch) + ("python-toolz" ,python-toolz))) + (home-page "https://github.com/pythological/unification/") + (synopsis "Logical unification in Python for solving symbolic expressions") + (description "This library provides algorithms and data types for solving +symbolic expressions in pure Python using the technique of logical unification.") + (license license:bsd-3))) + +(define-public python-cons + (package + (name "python-cons") + (version "0.4.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "cons" version)) + (sha256 + (base32 + "0w9giq196wps7mbm47c4shdzs5yvwvqajqzkim2p92i51sm5qgvm")))) + (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest-6) + ("python-toml" ,python-toml))) + (propagated-inputs + `(("python-logical-unification" ,python-logical-unification))) + (home-page "https://github.com/pythological/python-cons") + (synopsis "Cons cell data structures and related algorithms for Python") + (description + "This library implements algorithms and data structures for Lisp-style +cons cells in Python.") + (license license:lgpl3+))) + +(define-public python-etuples + (package + (name "python-etuples") + (version "0.3.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "etuples" version)) + (sha256 + (base32 + "0jhfyp177v37rl0i7wqfx7q6s5qkz027hl283d1x8d0vm3w0zqc8")))) + (build-system python-build-system) + (propagated-inputs + `(("python-cons" ,python-cons) + ("python-multipledispatch" ,python-multipledispatch))) + (home-page "https://github.com/pythological/etuples") + (synopsis "S-expressions in Python") + (description + "This library implements eval'able S-expression in Python using tuple-like objects.") + (license license:asl2.0))) + +(define-public python-minikanren + (package + (name "python-minikanren") + (version "1.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pythological/kanren") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0g7wfj5hxalwz7k1301nsjqhjpzsif1bj6wjm2x2kavlm2ypv9jc")))) + (build-system python-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "python" "-m" "pytest" "-v" "tests/" "kanren/")) + #t))))) + (native-inputs + `(("python-coveralls" ,python-coveralls) + ("python-pydocstyle" ,python-pydocstyle) + ("python-pytest" ,python-pytest) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pylint" ,python-pylint) + ("python-black" ,python-black) + ("python-sympy" ,python-sympy) + ("python-versioneer" ,python-versioneer) + ("python-coverage" ,python-coverage) + ("python-pre-commit" ,python-pre-commit))) + (propagated-inputs + `(("python-toolz" ,python-toolz) + ("python-cons" ,python-cons) + ("python-multipledispatch" ,python-multipledispatch) + ("python-etuples" ,python-etuples) + ("python-logical-unification" ,python-logical-unification))) + (home-page "https://github.com/pythological/kanren") + (synopsis "Relational logic programming in pure Python") + (description + "The minikanren library provides an algorithmic core for computer algebra +systems in Python.") + (license license:bsd-3))) + + (define-public date2name (let ((commit "6c8f37277e8ec82aa50f90b8921422be30c4e798") (revision "1")) @@ -27617,3 +27898,27 @@ simple mock/record and a complete capture/replay framework.") "Ijson is an iterative JSON parser with standard Python iterator interfaces.") (license license:bsd-3))) + +(define-public python-sgmllib3k + (package + (name "python-sgmllib3k") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "sgmllib3k" version)) + (sha256 + (base32 "1s8jm3dgqabgf8x96931scji679qkhvczlv3qld4qxpsicfgns3q")))) + (build-system python-build-system) + ;; Requires a test.html input that is not supplied + (arguments + `(#:tests? #f)) + (home-page "https://pypi.org/project/sgmllib3k/") + ;; Actual homepage seems to be down + ;; (home-page "https://hg.hardcoded.net/sgmllib") + (synopsis "Python 3 port of sgmllib") + (description + "This packages provides an unmaintained port of sgmllib to Python 3. +It is used to parse text files formatted in @acronym{SGML,Standard Generalized +Mark-up Language}.") + (license license:bsd-3))) |