Securely install the latest twine release from PyPI.
This action installs a pinned version of twine and all its dependencies, making sure that file hashes match. Pinning your dependencies:
- Stops software supply chain attacks.
- Makes sure your CI does not break unexpectedly.
In your GitHub Actions workflow, use this action like so:
- name: Install twine from PyPI
uses: install-pinned/twine@75f30477cde01b5c31ac9ed4ef29002ca0ed70a6 # 6.0.1
You can set up Dependabot so that your pins are updated regularly.
This action is a relatively simple wrapper around uv and is most useful if there is no existing requirements.txt
/uv.lock
/... infrastructure in place. If you already pin all your dependencies in a single place, you don't need it!
See the @install-pinned README for details.