Build artifacts and optional dependencies of the Python package #309
Labels
dependencies
Pull requests that update a dependency file
question
Further information is requested
SLSA
Relating Supply-chain Levels for Software Artifacts (SLSA)
Current approach
As of v2.3.3 of this package template, the
pyproject.toml
file declares no package dependenciespython-package-template/pyproject.toml
Line 14 in 25c486b
and a handful of optional/extra dependencies
python-package-template/pyproject.toml
Lines 36 to 63 in 25c486b
solely for the purpose of local development and CI/CD. However, it does not declare any optional/extra dependencies which would be considered part of the shipping & deployed package!
And because it does not declare any optional/extra dependencies, the generated release artifacts contain an almost empty requirements.txt file and an SBOM with pinned development dependencies only.
More complex packages
Naturally we want to build more complex packages which may even offer optional/extra dependencies, just like e.g. the Dramatiq or SQLAlchemy packages do. So, the questions that arise now are…
How would that impact the generation of the
requirements.txt
and SBOM artifacts? Not sure it makes sense to generate build artifacts for all possible variations of a package, nor build artifacts that are all-inclusive? Should we take a “best effort” approach? Or… 🤔The text was updated successfully, but these errors were encountered: