Migrate to uv: one-command install (uv sync) + CI smoke test#1349
Merged
CorentinJ merged 9 commits intoCorentinJ:masterfrom Sep 23, 2025
Merged
Migrate to uv: one-command install (uv sync) + CI smoke test#1349CorentinJ merged 9 commits intoCorentinJ:masterfrom
uv sync) + CI smoke test#1349CorentinJ merged 9 commits intoCorentinJ:masterfrom
Conversation
Owner
|
Thank you, I will be reviewing in the following days |
Owner
|
One thing: remove the requirements file, this needs to be a complete replacement. I don't want users to keep using pip or conda |
Contributor
Author
|
I've updated that |
Owner
lmk if all is good on your end. I'll also update the readme with the new instructions |
CorentinJ
approved these changes
Sep 19, 2025
Owner
|
Haven't had a reply from you, will merge |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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 PR migrates the project from pip-based dependency management to uv, enabling a one-command install experience and adding CI with smoke tests. Users can now install all dependencies, including PyTorch, with a single
uv sync --extra cpucommand.What's Changed
One-command install with uv
pyproject.toml: Migrated all dependencies fromrequirements.txtto modern Python packaging standards--extra cpuflaguv.lockensures reproducible installsCI with smoke tests
.github/workflows/ci.yml: Uses officialastral-sh/setup-uvactiontests/test_ci_smoke.pyvalidates core imports (numpy,librosa,soundfile,torch) and project modules (encoder,synthesizer,vocoder)libsndfile1for audio library supportworkflow_dispatchfor on-demand CI runsUpdated documentation
.venv/and.pytest_cache/to avoid committing local artifactsInstallation comparison
Before (multi-step):
# Install PyTorch manually first pip install torch --index-url https://download.pytorch.org/whl/cpu pip install -r requirements.txtAfter (one command):
Technical details
requirements.txtfor stabilityTesting
uv sync --extra cpu+uv run pytest -q→ 2 passedFiles changed
pyproject.toml- uv project configuration with dependencies and PyTorch extras.github/workflows/ci.yml- CI workflow using uvtests/test_ci_smoke.py- Import validation testsREADME.md- Added uv installation instructions.gitignore- Ignore local virtual environmentMigration path for users
Existing users can continue using
pip install -r requirements.txt. New users get the streamlineduv syncexperience. No breaking changes to functionality.Addresses: Request for uv migration with trivial install and CI unit tests