Python Packaging with uv
Overview
Use uv build and publish commands to produce wheels/sdists and ship to PyPI. Core principle: build, verify, then publish.
Quick Reference
Task Command
Build wheel+sdist uv build
Build wheel only uv build --no-sources
Publish to PyPI uv publish --token $PYPI_TOKEN
Publish to Test PyPI uv publish --publish-url https://test.pypi.org/legacy/ --token $TEST_PYPI_TOKEN
Workflow
-
Build artifacts in dist/ .
-
Test install from wheel.
-
Publish to Test PyPI, validate, then publish to PyPI.
Example
uv build --no-sources uv pip install dist/my_package-1.0.0-py3-none-any.whl uv publish --publish-url https://test.pypi.org/legacy/ --token $TEST_PYPI_TOKEN
Common Mistakes
-
Publishing before verifying wheel contents.
-
Skipping Test PyPI for first release.
Red Flags
- Packaging guidance that ignores uv build/publish.
References
- references/packaging.md
- Build and publish details