lincc-frameworks / lincc-frameworks/python-project-template
Bundle dependency requirements with release
Nobody has claimed this yet.
- Dominant language
- Jinja
- Stars
- 85
- Forks
- 16
- Avg merge
- 6h 18m
- Merged PRs (30d)
- 1
Description
We might want to include in the source distribution a locked file of requirements (e.g. `requirements.txt` file with all the transitive dependencies that were proven to function at the time of publishing). This file is not intended for use by the common user but it is useful, e.g., when we rely on deployments on Kubernetes clusters (especially because when pods die&restart they tend to update dependencies automatically, which can cause mismatches in dependency versions).
This change was introduced for [`hipscat-import`](https://github.com/astronomy-commons/hipscat-import/pull/381) and could be bubbled up to the PPT.
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.
Research direction
Review the dependency-locking change in hipscat-import pull request 381, then inspect how this template builds its source distribution. Add a requirements file containing the proven transitive dependencies to the published source distribution, and verify that it is available for deployment scenarios such as Kubernetes restarts.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system, release
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100