You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/developer/dependency-management.rst
+6-5Lines changed: 6 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,15 +2,16 @@ Dependency management
2
2
=====================
3
3
4
4
Scitacean is a library, so the package dependencies are never pinned.
5
-
But lower bounds are fine and individual versions can be excluded.
5
+
But (correct) lower bounds are encouraged and individual versions can be excluded.
6
6
See, e.g., `Should You Use Upper Bound Version Constraints <https://iscinumpy.dev/post/bound-version-constraints/>`_ for an explanation.
7
7
8
8
Development dependencies [#0]_ are pinned to an exact version in order to ensure reproducibility.
9
-
This is done by specifying packages and version constraints in ``requirements/*.in`` files and locking those dependencies using `pip-compile-multi <https://pip-compile-multi.readthedocs.io/en/latest/index.html>`_ to produce ``requirements/*.txt`` files.
10
-
Those files are then used by `tox <https://tox.wiki/en/latest/>`_ to create isolated environments and run tests, build docs, etc.
9
+
This is done automatically by `uv <https://docs.astral.sh/uv/>`_ whenever ``pyproject.toml`` is updated.
10
+
Pins can be updated explicitly using
11
11
12
-
tox can be cumbersome to use for local development.
13
-
So ``requirements/dev.txt`` can be used to create a virtual environment with all dependencies.
0 commit comments