遷移至 uv
本技能說明如何將 Python 套件從使用 setup.cfg 的 PEP-517 樣式遷移到使用 pyproject.toml 與 uv。
使用時機
當使用者要求將 Python 套件倉庫結構遷移至與 uv 相容的格式時,應使用此技能。
指示
- 將
setup.cfg的內容移到pyproject.toml,並刪除setup.cfg - 新增一個
.python-version檔案,指定版本為 3.11 - 使用
uvCLI(即uv add -r requirements-dev.txt)將requirements-dev.txt中的依賴導入到pyproject.toml - 將建置系統切換為使用
uv_build,並從開發依賴中移除build。 - 將 Commitizen 的版本提供者配置為
uv - 從開發依賴中移除
pylint、flake8、isort、black,並以ruff取代。移除所有相關的配置檔案,例如pylintrc、.flake8,以及setup.cfg和/或pyproject.toml中的任何配置。 - 根據以下指引配置
ruff以強制單行導入。 - 將
pytest.ini中的配置移到pyproject.toml - 將
black、pylint、isort、flake8的 pre-commit 掛鉤替換為ruff - 從依賴中移除
pre-commit,並以prek取代 - 對程式碼庫執行
ruff format和ruff check --fix。 - 更新任何 CI/CD 管道以使用
uv。
配置 ruff 以強制單行導入
[tool.ruff.lint.isort]
force-single-line = true
[tool.ruff.lint]
select = ["F", "I"]