Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This switches from using venv and pip for managing the python dependencies to using uv
Benefits
uv.lock
) that includes the exact versions of all dependencies for the project, not just direct ones. This ensures that the environment is reproducible.setup.py
scripts were called led to different package versions being installed)Changes
pyproject.toml
, and allsetup.py
files have been removed. I did my best to migrate the metadata across where possible. setuptools is still used for the actual install..python-version
. uv will install this version of python when it creates the environment, so it no longer matters what python version is installed on the user's machine.augur/tasks/data_analysis
have been pulled into the main project. I suspect this may be controversial, and I can separate them back out if necessary.Assuming you all are good w/ this change, I'd like to update the docs prior to merge.
To try this out, the docker version should work as before, but if you're running outside of docker, you should:
uv
:$ pip install --user uv
uv run
, e.g.,$ uv run augur backend start
.It's no longer necessary to manage the virtual environment or use pip directly, though you probably want to delete your old venv prior to starting w/ uv.
To do