This plugin freezes the dependency tree of your builds. In practice, this ensures that Pip always pulls the exact same dependency tree when your package is installed.
In your pyproject.toml
file, add the following:
[tool.hatch.build.hooks.frozen]
dependencies = ["hatch-frozen"]
The plug-in reads the frozen dependencies from the requirements.txt
file of your project, so make sure this file exists.
-
Configure the
pyproject.toml
file as explained above. -
Generate the
requirements.txt
file:
$ uv pip compile pyproject.toml -o requirements.txt
- Build your package:
$ uv build
- Clean the requirements file:
$ rm requirements.txt
The project uses uv
as the package manager.
To run the tests, use:
uv run pytest
To verify the code style, use:
uvx ruff check
To release a new version of the package, bump the version in pyproject.toml
and create and push a new git tag.