summaryrefslogtreecommitdiff
path: root/gnu/packages/python-xyz.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/python-xyz.scm')
-rw-r--r--gnu/packages/python-xyz.scm163
1 files changed, 121 insertions, 42 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index c22df7728a..8f2e6fc222 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -176,6 +176,7 @@
#:use-module (gnu packages algebra)
#:use-module (gnu packages astronomy)
#:use-module (gnu packages attr)
+ #:use-module (gnu packages audio)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
@@ -248,6 +249,7 @@
#:use-module (gnu packages photo)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages protobuf)
+ #:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
@@ -4419,6 +4421,36 @@ videos in a notebook.")
audio playback capability for Python 3 on OSX, Windows, and Linux.")
(license license:expat))) ; MIT license
+(define-public python-wavefile
+ (package
+ (name "python-wavefile")
+ (version "1.6.2")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "wavefile" version))
+ (sha256
+ (base32
+ "04mdcxq7n1vnwb9y65j0cwpy91ik5rh9vki1f45xqnh4ygz91n75"))))
+ (build-system python-build-system)
+ (arguments
+ (list #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-libsndfile-path
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "wavefile/libsndfile.py"
+ (("'libsndfile")
+ (string-append "'" (assoc-ref inputs "libsndfile")
+ "/lib/libsndfile"))))))))
+ (inputs
+ (list libsndfile portaudio))
+ (propagated-inputs (list python-numpy python-pyaudio))
+ (home-page "https://github.com/vokimon/python-wavefile")
+ (synopsis "Pythonic audio file reader and writer")
+ (description
+ "This package provides pythonic libsndfile wrapper to read and write audio
+files.")
+ (license license:gpl3+)))
+
(define-public python-jsonalias
(package
(name "python-jsonalias")
@@ -4485,6 +4517,30 @@ type hints and parse from command line, config files and environment
variables.")
(license license:expat)))
+(define-public python-pymarshal
+ (package
+ (name "python-pymarshal")
+ (version "2.2.3")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "pymarshal" version))
+ (sha256
+ (base32
+ "1lhb7yim60pvclbd440zd4n50xs1d2rvmnrhhvib3hyv0dxil5j3"))))
+ (build-system pyproject-build-system)
+ (arguments
+ ;; Test fails with this error:
+ ;; "CovReportWarning: Failed to generate report: No data to report."
+ (list #:tests? #f))
+ (native-inputs
+ (list python-pytest python-pytest-cov))
+ (propagated-inputs (list python-bson python-pyyaml))
+ (home-page "https://gitlab.com/d3v-t00lz/pymarshal")
+ (synopsis "Pythonic implementation of Golang struct (un)marshalling")
+ (description "PyMarshal replicates the feature of (un)marshalling structs
+in Golang.")
+ (license license:bsd-2)))
+
(define-public python-simplejson
(package
(name "python-simplejson")
@@ -5355,18 +5411,19 @@ files.")
(define-public python-pyld
(package
(name "python-pyld")
- (version "1.0.5")
- (source (origin
- (method url-fetch)
- (uri (pypi-uri "PyLD" version))
- (sha256
- (base32
- "1ywbdbsrkg533qh8xn9ifjh2mvam6v5msrjyqq73jfpvcp89qvff"))))
+ (version "2.0.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "PyLD" version))
+ (sha256
+ (base32 "1k7ars8n6kramkvadxgy0qfsi5g1hipyha4wqw8l75mw1l7ka7ii"))))
(build-system python-build-system)
+ (native-inputs (list python-lxml))
+ (propagated-inputs (list python-cachetools python-frozendict))
(home-page "https://github.com/digitalbazaar/pyld")
(synopsis "Python implementation of the JSON-LD specification")
- (description
- "PyLD is an implementation of the JSON-LD specification.")
+ (description "PyLD is an implementation of the JSON-LD specification.")
(license license:bsd-3)))
(define-public python-cli-helpers
@@ -11572,6 +11629,26 @@ finding unresolved symbols in Python code and their corresponding imports.")
"@code{inotify-simple} is a simple wrapper around inotify library.")
(license license:bsd-3)))
+(define-public python-interface-meta
+ (package
+ (name "python-interface-meta")
+ (version "1.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "interface_meta" version))
+ (sha256
+ (base32 "18brkmz2ssjikkrkb23cwccp683yi6y1alfdbmjvjgxpppw96i4a"))))
+ (build-system pyproject-build-system)
+ (native-inputs (list python-poetry-core python-pytest))
+ (home-page "https://github.com/matthewwardrop/interface_meta")
+ (synopsis
+ "API for enforced method signatures and consistent documentation")
+ (description
+ "This package provides a convenient way to expose an extensible API with
+enforced method signatures and consistent documentation.")
+ (license license:expat)))
+
(define-public python-jaraco-classes
(package
(name "python-jaraco-classes")
@@ -12121,15 +12198,15 @@ without using the configuration machinery.")
(define-public python-treelib
(package
(name "python-treelib")
- (version "1.6.1")
+ (version "1.7.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "treelib" version))
(sha256
(base32
- "1247rv9fbb8pw3xbkbz04q3vnvvva3hcw002gp1clp5psargzgqw"))))
+ "0qgv61g1p06kzf5fd2hcim5s49nzbv8k210frnk45rmr2vs1mzwv"))))
(build-system python-build-system)
- (propagated-inputs (list python-future))
+ (propagated-inputs (list python-six))
(home-page "https://github.com/caesar0301/treelib")
(synopsis "Implementation of a tree structure in Python")
(description
@@ -14306,22 +14383,6 @@ validate this input and generate a PEP 643-compliant metadata
file (e.g. @file{PKG-INFO}).")
(license license:expat)))
-(define-public python-pyproject-metadata-0.7
- (package
- (inherit python-pyproject-metadata)
- (name "python-pyproject-metadata")
- (version "0.7.1")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/FFY00/python-pyproject-metadata")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0yvs59ymz5gdix34a95wxlxvk9bnvjgrzsnmnc3ws7whpfv3yasm"))))))
-
;; pep621 was renamed to pyproject-metadata.
(define-public python-pep621
(deprecated-package "python-pep621" python-pyproject-metadata))
@@ -19213,13 +19274,13 @@ designed to work across multiple versions of Python.")
(define-public python-cookiecutter
(package
(name "python-cookiecutter")
- (version "2.5.0")
+ (version "2.6.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "cookiecutter" version))
(sha256
- (base32 "1v1iafk8j2f5cciw9mf4263v91070c6z049cpnw42gwffhs907p6"))))
+ (base32 "0762882zrvf3sslr9r7v8wkdwjckhm2clj4d831gvx54kqbgh8fv"))))
(build-system python-build-system)
(arguments
(list
@@ -35316,14 +35377,14 @@ adapted from the @code{packaging} package.")
(define-public python-shtab
(package
(name "python-shtab")
- (version "1.5.3")
+ (version "1.7.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "shtab" version))
(sha256
- (base32 "127mymfm7r0hddk2vknqq34fj6dirj6ip990i3g4isx0lsd7pnsc"))))
- (build-system python-build-system)
+ (base32 "0g14778c5zgiq6b92k40n9irp75c5vcsvl5541cw8bmqxq1cnjsf"))))
+ (build-system pyproject-build-system)
(native-inputs
(list bash
python-pytest
@@ -35331,15 +35392,6 @@ adapted from the @code{packaging} package.")
python-pytest-timeout
python-setuptools-scm
python-wheel))
- (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")))))))
(home-page "https://github.com/iterative/shtab")
(synopsis "Automagic shell tab completion for Python CLI applications")
(description
@@ -36152,6 +36204,33 @@ terminal. It has red, blue, green, yellow, purple and black/white (default)
colors.")
(license license:expat)))
+(define-public python-mido
+ (package
+ (name "python-mido")
+ (version "1.3.2")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "mido" version))
+ (sha256
+ (base32
+ "0j63cydiinfyrvlhydzsb00cb7dyvrw3bnhjbdyp63vkxnv2isis"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list #:phases
+ #~(modify-phases %standard-phases
+ ;; This package requires python-packaging~=23.1 which is not yet
+ ;; updated to. As per pyproject.toml, it is required to provide
+ ;; a nice version_info opbject.
+ ;; TODO: After updating python-packaging, fix this.
+ (delete 'sanity-check))))
+ (propagated-inputs (list python-importlib-metadata python-packaging))
+ (native-inputs (list python-pytest))
+ (home-page "https://mido.readthedocs.io/en/stable/")
+ (synopsis "MIDI Objects for Python")
+ (description "This library is for working with MIDI 1.0 ports, messages and
+files.")
+ (license license:expat)))
+
(define-public python-musical-scales
(package
(name "python-musical-scales")