[ENH] handle dependencies by pypi pyfar-gallery package
@ahms5 is already working on this.
Since Apr 28, 2026.
- Dominant language
- Python
- Stars
- 3
- Forks
- 2
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 3
Description
I would suggest to define the dependencies in the pyproject.toml similar to other packages. Then we could just publish this as an pypi package with versions, and pypi can handle the dependencies for us.
The required requirements.txt for bilder could just include pyfar-gallery and the dependency hint at the beginning of each notebook would just be pip install pyfar-gallery.
an alternative name would be pyfar-examples, pyfar-gallery could be better as it is the same name used for readthedocs.
[project]
name = "pyfar-gallery"
version = "0.1.0"
description = "Dependencies for the pyfar example gallery."
readme = "README.md"
license = {file = "LICENSE"}
requires-python = ">=3.11"
authors = [
{ name = "The pyfar developers", email = "info@pyfar.org" },
]
dependencies = [
"numpy>=1.23.0",
"scipy>=1.5.0",
"matplotlib",
"pyfar>=0.8.0",
"sofar>=1.2.0",
"spharpy>=1.0.0",
"pyrato>=1.0.0",
"urllib3",
"soundfile>=0.11.0",
"sounddevice",
"deepdiff",
"ipykernel",
"ipympl",
"pooch",
"watermark",
"pytz",
]
[project.optional-dependencies]
deploy = [
"bump-my-version",
"wheel",
"twine",
]
tests = [
"watchdog",
"pytest<8.1.0",
"pytest-runner",
"pytest-cov",
"coverage",
"flake8",
"nbmake>=0.7.0",
"pre-commit",
]
docs = [
"Sphinx",
"pydata-sphinx-theme",
"autodocsumm>=0.2.14",
"nbsphinx",
"nbsphinx-link",
"sphinx-gallery",
"sphinx-design",
"sphinx-favicon",
"sphinx-copybutton",
]
dev = ["pyfar-gallery[deploy,tests,docs]"]
This is just an inital draft, we could also think of other usefull optional-dependencies.
This would solve the problem of double dependency handling discussed in #136
related to #101
If we decide to do that, I would like to implement it.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.