ratt-ru / Stimela-classic

Containerized radio interferometry scripting framework -- NB: Classic version is no longer in active development, use stimela 2! See README for details.
GNU General Public License v2.0
28 stars 16 forks source link

Update dependencies #762

Closed Athanaseus closed 2 years ago

Athanaseus commented 2 years ago
  1. dev-requirements.txt: These are tools mainly required to get a stimela installation going.
  2. requirements.in: These are the top-level (abstract) dependencies to get stimela running (used to be in setup.py).
  3. requirements.txt: These are the full compiled specific (concrete) requirements that allow replication of a specific release installation. This will be installed by the setup.py file.

Before making a release / development a new requirements.txt should be compiled reflecting the latest development environment of the caracal pipeline. This is performed using pip-tools which will be installed as part of the dev-requirements.txt:

  1. Create a new virtual environment and pip install requirements.in
  2. pip-compile # To update the compiled requirements file
  3. pip-sync # To sync back environment in case requirements.in is updated and unused dependencies are removed automatically.

NB: pip-sync can also be used by both end-users and developers when running the main development branch of stimela without explicitly re-installing updated requirements on their environments.