Installation#
peta is an end-user command-line tool. Install it into an isolated
environment with your preferred tool manager.
Requirements#
Python 3.11 or newer (3.11, 3.12, 3.13 and 3.14 are tested).
Supported Python versions#
peta supports the CPython minor releases that are maintained upstream
(see the Python release status page)
and that it tests continuously. Each supported version is declared in four
places that move together:
requires-pythonand theProgramming Language :: Python :: 3.Xclassifiers in the published package metadata;a tox test env of the same name;
a row in the CI test matrix, run on Linux, macOS and Windows;
a
mypy --python-versionpass in the style checks.
A test in the suite fails if these disagree, so the floor is never lowered
without CI coverage for it. The floor rises once a version reaches its upstream
end of life. Python 3.10 was left out for that reason: its end of life
(October 2026) came within weeks of peta first supporting older versions,
so it would have been added only to be dropped again.
The interpreter peta runs on and the environment it inspects are
separate. On info, compare, deps, files and origin, --python PATH
(an interpreter) and --path DIR (a metadata directory) point an isolated
peta at another environment, and that environment may be older than
peta’s own floor. CI points --python at a real Python 3.8 interpreter
on Linux, macOS and Windows from every supported peta runtime, and the
small script it runs inside the target is also parsed with Python 3.7’s
grammar. --path reads the metadata older tools wrote, from
Metadata-Version 1.0 to setuptools .egg-info directories.
Using uv#
uvx peta requests # run without installing
uv tool install peta # install as a persistent tool
Using pipx#
pipx install peta
Using pip#
pip install peta
Using Homebrew#
On macOS/Linux, install peta from the
Homebrew tap:
brew install hasansezertasan/tap/peta
Using Scoop#
On Windows, install peta from the
Scoop bucket:
scoop bucket add hasansezertasan https://github.com/hasansezertasan/scoop-bucket
scoop install peta
Verify release provenance#
Public-repository release distributions include Sigstore-signed build
provenance. After downloading a wheel or source distribution, verify that the
release workflow built it from main in this repository:
gh attestation verify <downloaded-distribution> \
--repo hasansezertasan/peta \
--signer-workflow hasansezertasan/peta/.github/workflows/release.yml \
--source-ref refs/heads/main