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
Currently, ComPWA repositories attempt to support development through several virtual environment managers, like Conda, venv, uv, and pixi. See Help developing. This has resulted in a complicated setup, such as the use of dev optional dependencies for defining developer dependencies (see also this Stackoverflow), and a larger number of constraint files that are updated through update-pip-constraints.
A problem remains non-Python dependencies, in particular graphviz. This is currently assumed to be installed on the system, or it is provided in the Conda/Pixi environment. Some thoughts:
Using Pixi in addition would result in two lock files, uv.lock and pixi.lock. It also does not yet recognize [tool.uv.dev-dependencies].
What would also be great is to ditch the .constraints/ folder and switch to a uv.lock (and/or pixi.lock) file. The lock files are fast enough that you can have direnv update the pinned dependencies without noticable speed, which would remove the hassle of syncing dependencies by hand.
The text was updated successfully, but these errors were encountered:
This is a tracking issue
Currently, ComPWA repositories attempt to support development through several virtual environment managers, like Conda, venv, uv, and pixi. See Help developing. This has resulted in a complicated setup, such as the use of
dev
optional dependencies for defining developer dependencies (see also this Stackoverflow), and a larger number of constraint files that are updated through update-pip-constraints.For managing project with Python dependencies only, it seems that
uv
is the way to go forward, as it allows to pin and bootstrap specific Python versions, can generate universal lock files, and provides a standard for developer dependencies.Edit: Support for dependency groups (PEP 735) has been accepted and will be available in
uv
as well.A problem remains non-Python dependencies, in particular
graphviz
. This is currently assumed to be installed on the system, or it is provided in the Conda/Pixi environment. Some thoughts:uv.lock
andpixi.lock
. It also does not yet recognize[tool.uv.dev-dependencies]
.uv
. Keep an eye onconda_env
installers / providers plugin hooks conda/conda#13833.What would also be great is to ditch the
.constraints/
folder and switch to auv.lock
(and/orpixi.lock
) file. The lock files are fast enough that you can havedirenv
update the pinned dependencies without noticable speed, which would remove the hassle of syncing dependencies by hand.The text was updated successfully, but these errors were encountered: