-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
110 lines (103 loc) · 3.55 KB
/
pyproject.toml
File metadata and controls
110 lines (103 loc) · 3.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
[build-system]
requires = ["maturin>=1.9,<2.0"]
build-backend = "maturin"
[project]
name = "audio_samples"
description = "Python bindings for the AudioSamples Rust ecosystem - fast, type-safe audio processing with automatic metadata coordination"
readme = "README.md"
license = { text = "MIT" }
authors = [
{ name = "Jack Geraghty (jmg049)", email = "jgeraghty049@gmail.com" },
]
maintainers = [
{ name = "Jack Geraghty (jmg049)", email = "jgeraghty049@gmail.com" },
]
requires-python = ">=3.10"
keywords = ["audio", "signal-processing", "multimedia", "rust", "performance"]
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
"Programming Language :: Rust",
"Topic :: Multimedia :: Sound/Audio",
"Topic :: Multimedia :: Sound/Audio :: Analysis",
"Topic :: Scientific/Engineering",
"Topic :: Scientific/Engineering :: Information Analysis",
"Topic :: Software Development :: Libraries :: Python Modules",
"Typing :: Typed",
]
dynamic = ["version"]
dependencies = [
"numpy>=1.24.4",
"resampy>=0.4.3",
"samplerate>=0.2.3",
"spectrograms==1.0.1",
]
[project.urls]
"Homepage" = "https://github.com/jmg049/audio_samples_python"
"Documentation" = "https://jmg049.github.io/audio_samples_python"
"Repository" = "https://github.com/jmg049/audio_samples_python"
"Bug Reports" = "https://github.com/jmg049/audio_samples_python/issues"
[project.optional-dependencies]
"mpl" = [
"matplotlib>=3.7.5",
"seaborn>=0.13.2",
]
# Enables the Rust-side plotly plotting backend (audio_samples/plotting feature).
# This compiles the upstream audio_samples crate with its 'plotting' feature,
# which brings in the Rust plotly, base64, and serde_json crates to generate
# self-contained HTML plots directly from Rust.
#
# Because this is a Cargo feature, it must be activated at build time:
#
# pip install ".[plotting]" --config-settings="build-args=--features audio-samples-plotting"
# # or equivalently:
# MATURIN_PEP517_ARGS="--features audio-samples-plotting" pip install ".[plotting]"
# # editable / development build:
# maturin develop --features audio-samples-plotting
#
# There are no additional *Python* dependencies — all plotting work happens in Rust.
"plotting" = []
"docs" = [
"sphinx>=7.0.0",
"sphinx-autodoc-typehints>=1.24.0",
"myst-parser>=2.0.0",
"sphinx-copybutton>=0.5.2",
"sphinx-rtd-theme>=3.0.2",
]
[tool.maturin]
python-source = "."
include = ["*.pyi", "audio_samples/*.pyi", "audio_samples/py.typed", "logo.png"]
exclude = ["*.rs", "src/*", "tests/*", "examples/*", "benches/*", "docs/*"]
[dependency-groups]
dev = [
"docutils>=0.20.1",
"dtmf-table>=1.0.3",
"ipykernel>=6.29.5",
"ipywidgets>=8.1.8",
"matplotlib>=3.7.5",
"pandas>=2.0.3",
"pyqt6>=6.7.1",
"scikit-learn>=1.3.2",
"seaborn>=0.13.2",
"soundfile>=0.13.1",
"torchaudio>=2.5.1",
"torchcodec>=0.9.1",
"tqdm>=4.67.1",
]
test = [
"pytest>=7.4.0",
"pytest-timeout>=2.1.0",
"soundfile>=0.13.1",
]