Securely install the latest ruff release from PyPI.
This action installs a pinned version of ruff 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 ruff from PyPI
uses: install-pinned/ruff@4daa94c409f54c292697cc251e08ce65fcafd61c # 0.8.3
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.