Skip to main content

perfall-cli

perfall-cli is the standalone client package for uploading benchmark artifacts to Perfall. It is a lightweight client that can be installed independently of the server.

Install from PyPI:

pip install perfall-cli

Supported commands currently live under perfall ingest and cover:

  • pytest-benchmark

  • go-test

  • google-benchmark

  • jmh

  • criterion

  • benchmarkdotnet

  • vitest

Regression gating is available on every ingest adapter via the shared flags:

perfall ingest pytest-benchmark \
  --file benchmark.json \
  --api-key "$PERFALL_API_KEY" \
  --testbed "github-actions-ubuntu-24.04-python-3.12" \
  --baseline-branch master \
  --baseline-window 5 \
  --fail-on-regression-percent 5

That upload still publishes the run, then compares each metric against the recent compatible baseline-branch samples (five by default), aggregates them with a median, and exits non-zero when the threshold is exceeded. Latency and cost metrics are lower-is-better; normalized throughput metrics such as ops/s, B/s, and items/s are higher-is-better, so a throughput drop past the threshold fails the gate. A metric warms up without failing until the selected baseline window is available; pass --baseline-window 1 to explicitly compare only the latest sample.

Use --testbed for CI gates to keep runner or container changes from comparing unlike results. Pick a stable explicit value such as github-actions-ubuntu-24.04-python-3.12; a changed testbed warms up without failing until it has enough history. Omitting --testbed preserves the legacy unscoped baseline behavior for existing workflows.

For example, gate a JMH throughput benchmark exactly as you would a latency benchmark:

perfall ingest jmh --file jmh-results.json --api-key "$PERFALL_API_KEY" \
  --baseline-branch master --fail-on-regression-percent 5

Local development:

python -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install -e .[testing]
pytest

Release files for perfall-cli 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for perfall-cli 0.1.3
File Size Uploaded
perfall_cli-0.1.3.tar.gz 22.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for perfall-cli 0.1.3
File Interpreter ABI Platform
perfall_cli-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 36.9 kB

Release files / perfall_cli-0.1.3.tar.gz

Download URL perfall_cli-0.1.3.tar.gz
Size 22.3 kB
Tags Source
SHA-256 checksum
How to use checksums
bee3ef5ff505e4ed748a41a0d30175f29d7b3c78b130c1f345c5c6c6653539ee
BLAKE2b-256 checksum
How to use checksums
c61ac022e8969b98208d1c11a2165abed869ed49e53e5a272c3433ae527f8671
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 23, 2026.

Transparency log

Release files / perfall_cli-0.1.3-py3-none-any.whl

Download URL perfall_cli-0.1.3-py3-none-any.whl
Size 14.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
dbf2f4a1f85d7d55a777d94e3c6f609cc10b90a4f044654dbfe595d102d75496
BLAKE2b-256 checksum
How to use checksums
951706a08fd5c9869f8914ca1da22e2e19f9c0fc957d3745ae5f776f4485b938
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 23, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page