hatch-pip-deepfreeze
A hatch virtual environment plugin to lock dependencies with pip-deepfreeze.
Installation
hatch-pip-deepfreeze must be installed in the same environment as hatch itself.
If hatch has been installed with pipx:
pipx runpip hatch install hatch-pip-deepfreeze
If hatch has been installed with pip in the user environment:
pip install --user hatch-pip-deepfreeze
Usage
In the tool.hatch.envs.{name} section, add type = "pip-deepfreeze".
Such environments behave similarly to the standard hatch virtual environments,
except the installation and synchronization is performed using pip-deepfreeze sync.
This will automatically generate locked dependencies in requirements.txt, and
uninstall unneeded dependencies after removing them from pyproject.toml.
It also pins optional dependencies groups in requirements-{extra}.txt.
You can use the features to install project.optional-dependencies in environments.
Note that this pluging does not support per environment dependencies, because
pip-deepfreeze works exclusively with project.optional-dependencies for that.
Fortunately this is well supported by hatch.
As an example, you can adapt a pyproject.toml generated by hatch new like so:
Declare optional dependencies for test:
[project.optional-dependencies]
test = [
"pytest",
"pytest-cov",
]
Update the default environment section to remove dependencies and add features:
[tool.hatch.envs.default]
type = "pip-deepfreeze"
features = ["test"]
Use the usual hatch environment activation features such as hatch shell and notice
pip-deepfreeze in action.
License
hatch-pip-deepfreeze is distributed under the terms of the
MIT license.
Metadata
Release files for hatch-pip-deepfreeze 0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| hatch_pip_deepfreeze-0.2.tar.gz | 5.3 kB | Without provenance | Details for hatch_pip_deepfreeze-0.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| hatch_pip_deepfreeze-0.2-py3-none-any.whl | Python 3 | none | any | Details for hatch_pip_deepfreeze-0.2-py3-none-any.whl |
Total release size: 9.9 kB
Release files / hatch_pip_deepfreeze-0.2.tar.gz
| Download URL | hatch_pip_deepfreeze-0.2.tar.gz |
|---|---|
| Size | 5.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
184ead26322ee36d46a18ae66dadb8aab74ba58b552bfd84507066cd0bc21205
|
|
BLAKE2b-256 checksum How to use checksums |
fb50bca36a9ffe43fb764515c076b9335b65347ed4c56c1792b6b9ad61e129ba
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.8.10
|
Release files / hatch_pip_deepfreeze-0.2-py3-none-any.whl
| Download URL | hatch_pip_deepfreeze-0.2-py3-none-any.whl |
|---|---|
| Size | 4.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f2e749d6371b1e7ce3d90edae49361d70f0d7eb4897fd213ec7378826592078f
|
|
BLAKE2b-256 checksum How to use checksums |
0fec4528a7d1273bf9adeefe121ba9765d413857959b3f99fc254f2ed27f1ecc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.8.10
|
Security for hatch-pip-deepfreeze 0.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.