lincc-frameworks / python-project-template

Python project best practices for scientific software
https://lincc-ppt.readthedocs.io/
BSD 3-Clause "New" or "Revised" License
61 stars 15 forks source link

Bundle dependency requirements with release #469

Open camposandro opened 2 months ago

camposandro commented 2 months ago

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 and could be bubbled up to the PPT.

drewoldag commented 2 months ago

Should include running the unit tests just prior to publishing to PyPI.

drewoldag commented 2 months ago

If we include the requirements.txt in the distribution, we should include clear instructions somewhere for users to see how we expect the requirements to be used.

hombit commented 1 week ago

Should include running the unit tests just prior to publishing to PyPI.

Preferably on multiple platforms

hombit commented 1 week ago

Also, it would be helpful to do the same, but with a conda environment file.