Skip to main content

Hatch Dependency Freezing Plugin: Enhancing Build Consistency

Project description

hatch-build-freeze

Hatch Dependency Freezing Plugin: Enhancing Build Consistency

Streamline your Python packaging workflow with this Hatch plugin designed to freeze your project's dependency tree. By automatically resolving and pinning all direct and transitive dependencies into a manifest file during the build process, it ensures: Reproducible Builds: Guarantee that your package builds with the same dependency versions every time. Consistent Environments: Simplify the creation of identical environments across development, testing, and production. Dependency Transparency: Provides a clear, version-locked list of all project dependencies.

Configuration

Calling the plugin

Modify pyproject.toml to include the plugin as a build dependency:

[build-system]
requires = ["hatchling", "hatch-build-freeze"]
build-backend = "hatchling.build"

[tool.hatch.build.hooks.hatch-build-freeze]

Plugin Configuration

The following options are supported:

  • groups (optional, list of strings): Specifies a list of dependency groups (e.g., from [dependency-groups]) to include in the frozen requirements.

    [tool.hatch.build.hooks.hatch-build-freeze]
    groups = ["group1", "group2"]
    
  • extras (optional, list of strings): Specifies a list of optional dependency groups (e.g., from [project.optional-dependencies]) to include in the frozen requirements.

    [tool.hatch.build.hooks.hatch-build-freeze]
    extras = ["extra1", "extra2"]
    
  • uv-args (optional, list of strings): A list of additional command-line arguments to pass directly to the uv export command.

    [tool.hatch.build.hooks.hatch-build-freeze]
    uv-args = ["--resolution=lowest-direct", "--no-header"]
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hatch_build_freeze-1.0.0.tar.gz (43.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hatch_build_freeze-1.0.0-py3-none-any.whl (10.9 kB view details)

Uploaded Python 3

File details

Details for the file hatch_build_freeze-1.0.0.tar.gz.

File metadata

  • Download URL: hatch_build_freeze-1.0.0.tar.gz
  • Upload date:
  • Size: 43.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for hatch_build_freeze-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d14872a8c472f694dbe90c56972cff4f69e1c131121fde1c3b212fddd75f22ed
MD5 cc71fac59d0e2a638a791aaa9ac82ddf
BLAKE2b-256 ace7d62c9adc1a3f42ee8846e2cb4ef3d17a1ab5b66c10d3775bb450dcc6c926

See more details on using hashes here.

Provenance

The following attestation bundles were made for hatch_build_freeze-1.0.0.tar.gz:

Publisher: publish.yaml on minds-ai/hatch-build-freeze

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hatch_build_freeze-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for hatch_build_freeze-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 30515f85a9e7a6256e84d6553888d9dbf5f2b5f978056f36ee9437360c17af47
MD5 64e26f355c32e035b11df5ea34be73ed
BLAKE2b-256 ce10a24223a014971d90eaf65dffbdce612c678d1c6fa2b66fbf46ed987473a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for hatch_build_freeze-1.0.0-py3-none-any.whl:

Publisher: publish.yaml on minds-ai/hatch-build-freeze

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page