cybrentq
A production-quality Cython implementation of Brent's root-finding method.
The algorithm is a faithful translation of the C routine in
scipy/optimize/Zeros/brentq.c: bisection guarded by inverse quadratic
interpolation, with a secant fallback and bisection used whenever an
interpolation step would not make adequate progress.
The public API mirrors the relevant subset of scipy.optimize.brentq and can
serve as a drop-in replacement in most code paths.
Requires Python 3.10 or newer and a working C compiler (used during install to compile the Cython extension).
Quick start
This project uses uv for environment and
dependency management, with a Makefile wrapping the most common commands.
# Install uv if you don't have it:
# curl -LsSf https://astral.sh/uv/install.sh | sh (macOS / Linux)
# powershell -c "irm https://astral.sh/uv/install.ps1 | iex" (Windows)
# Recommended: use the Makefile. PYTHON_VERSION=3.10 by default.
# The Cython extension is compiled during `make sync`.
make venv
make sync
The Makefile passes hardening flags the bare commands omit
(--frozen --refresh --all-extras --all-groups --link-mode=copy, plus
--seed --prompt=cybrentq on venv). Read the Makefile for the full
invocations.
If you want a minimal install without the Makefile:
uv venv --python 3.10 # create the venv
uv sync # install project + default groups, compile Cython
uv sync --only-group test # install just the test group, nothing else
uv sync --no-dev # consumer-style install (no dev groups)
uv sync reads pyproject.toml, provisions a matching interpreter, builds
the C extension via the PEP 517 backend (setuptools + Cython), and writes
a uv.lock. Commit uv.lock for reproducible builds across machines.
Editable iteration on the Cython source
uv sync installs the project into the managed venv. After editing
_brentq.pyx, re-run uv sync --reinstall-package cybrentq (or just
uv sync if you also bump the version) to force a recompile.
Usage
import math
from cybrentq import brentq
# Basic usage — finds sqrt(2)
root = brentq(lambda x: x * x - 2.0, 0.0, 2.0)
# Pass extra arguments via the args tuple
root = brentq(lambda x, target: x ** 3 - target, 0.0, 5.0, args=(27.0,))
# Diagnostics
root, info = brentq(lambda x: math.cos(x) - x, 0.0, 1.0, full_output=True)
print(info)
# RootResults(root=0.7390851332151559, iterations=7, function_calls=8,
# converged=True, flag='converged')
Signature
brentq(
f, # callable, f(x, *args) -> float
a, b, # bracketing interval, f(a)*f(b) < 0
args=(), # extra positional args forwarded to f
xtol=2e-12, # absolute tolerance
rtol=4*eps, # relative tolerance (>= 4 * machine eps)
maxiter=100, # iteration budget
full_output=False, # return RootResults alongside the root
disp=True, # raise on non-convergence instead of returning a flag
) -> float | tuple[float, RootResults]
The return type depends on full_output, so _brentq.pyi splits it into two
overloads keyed on Literal[True] / Literal[False]. Pass full_output=True
as a keyword argument — the runtime accepts it positionally, but the stub only
declares the keyword form, so a type checker rejects the positional one.
Errors
| Condition | Behaviour |
|---|---|
f(a) and f(b) have the same sign |
ValueError |
xtol <= 0, rtol < 4*eps, or maxiter < 1 |
ValueError |
Iteration budget exhausted and disp=True |
ConvergenceError |
Iteration budget exhausted and disp=False |
returns the last iterate: (root, RootResults(converged=False, flag='convergence error')) with full_output=True, otherwise the bare root |
User-supplied f raises |
exception propagates unchanged |
Tests
make test # all tests
make cov # coverage run (see warning below)
make report # print coverage report from last run
# Direct equivalents for `make test`:
uv run pytest # all tests
uv run pytest tests/test_basic.py # just behaviour / error tests
uv run pytest tests/test_against_scipy.py # head-to-head correctness vs scipy
uv run pytest tests/test_performance.py # perf regression guard (CI-safe)
Every supported Python at once
noxfile.py drives pytest against 3.10 – 3.14, using uv as the venv backend:
uvx nox # default session, every supported Python
uvx nox -s tests-3.12 # a single version
uvx nox -- -k brentq # forward args to pytest
Smoke test
scripts/smoke.py imports the installed package, solves for √2 and asserts the
result. It is deliberately a plain script with a module-level assert rather
than a pytest test, because cibuildwheel runs it as python scripts/smoke.py
inside each freshly built wheel's environment, where the dev dependencies do
not exist.
make smoke # uv run --frozen python scripts/smoke.py
Note on
make cov: the target wipes.c/.soartifacts and reinstallscybrentqwithCYTHON_TRACE=1so thatcoverage.py(via theCython.Coverageplugin) can report line coverage from_brentq.pyx. The traced build is significantly slower at runtime. After runningmake cov, runmake syncbeforemake bench— otherwise the traced extension will skew benchmark numbers.
The scipy-comparison suite asserts that:
- both implementations report
converged=Trueon every problem, - root estimates agree to within
1e-10relative and absolute tolerance, - iteration counts and function-call counts match exactly (Brent's method is deterministic, so any divergence flags a bug in our translation).
Benchmarks
The benchmark suite compares this Cython brentq against
scipy.optimize.brentq and against
pymodab (a C implementation of the
Modified Anderson-Björck root-finding method) across nine problems.
make bench # default config
make bench BENCH_ARGS="--n-calls 5000 --repeats 7" # override args
# Direct equivalent:
uv run python benchmarks/bench_brentq.py --n-calls 5000 --repeats 7
Sample output (numbers depend on the machine, Python build, and library versions):
problem scipy (µs) cython (µs) modab (µs) cy/sc mb/sc
-----------------------------------------------------------------------------------------
x^2 - 2 (cheap) 8.374 0.518 2.665 16.16x 3.14x
x^3 - x - 2 (cheap) 8.957 0.875 2.925 10.24x 3.06x
cos(x) - x 7.978 0.782 2.718 10.20x 2.94x
exp(x) - 2 9.862 0.981 2.950 10.05x 3.34x
sin(x), root at pi 6.623 0.287 2.210 23.04x 3.00x
(x-1)^3 (flat) 3.566 0.257 1.770 13.90x 2.02x
atan(1000*(x-0.5)) (steep) 3.692 0.341 1.864 10.82x 1.98x
poly degree 5 13.879 2.010 4.445 6.90x 3.12x
expensive f (sum of 50 sines) 69.151 57.117 59.970 1.21x 1.15x
-----------------------------------------------------------------------------------------
cython vs scipy: gmean 9.24x min 1.21x max 23.04x
modab vs scipy: gmean 2.52x min 1.15x max 3.34x
Columns: cy/sc is scipy_time / cython_time (Cython speedup over scipy);
mb/sc is scipy_time / modab_time (pymodab speedup over scipy). Higher is
better in both columns.
Before each timed problem the runner calls all three implementations and
asserts the roots agree to within 1e-9 — a benchmark with a silent
correctness regression is worse than one that doesn't run.
A few things to note when reading the numbers:
- Brent's method usually converges in 6–15 iterations, so most of the wall
time of a single solve is spent inside
f, not inside the algorithm. Whenfis expensive (the "sum of 50 sines" row), all implementations spend the vast majority of their time infand look nearly identical. - The Cython win is largest when
fis cheap, because that is when the algorithm's own overhead matters most. - pymodab's Modified Anderson-Björck typically uses fewer
fevaluations than Brent — but each iteration carries pure-Python wrapper overhead here, so it lands between scipy and our Cython version.
Building distributions
make build # equivalent to: uv build
# produces sdist + wheel under dist/
Make targets
make help lists every target with a short description.
| Target | Action |
|---|---|
venv |
Create the project venv via uv venv (PYTHON_VERSION=3.10 by default) |
lock |
Resolve and write uv.lock (uv lock --upgrade --resolution=highest --refresh) |
outdated |
Show outdated direct and transitive deps |
sync |
Sync the venv with uv.lock (all groups + extras) |
test |
Run the test suite without coverage |
cov / test/cov |
Recompile extension with CYTHON_TRACE=1 and run under coverage.py (no pytest-cov). Run make sync afterward to restore the fast build. |
report / cov/report |
Print the coverage report from the last make cov |
bench |
Run the benchmark suite (override args via BENCH_ARGS=…) |
smoke |
Import-and-solve smoke test against the installed package |
lint / lint/check |
Read-only ruff check |
lint/fix |
Rewrites files — ruff check --fix |
fmt / fmt/check |
Read-only ruff format --check |
fmt/fix |
Rewrites files — ruff format |
typecheck |
Read-only pyrefly check over the project |
check |
lint/check + fmt/check + typecheck (CI-safe) |
build / dist |
Build sdist + wheel into dist/ |
clean |
Remove build artifacts and coverage data |
Bare lint and fmt are intentionally read-only; mutation requires the
explicit /fix variant so typos don't rewrite the tree.
Linting and formatting
The project pins ruff (configuration in
pyproject.toml under [tool.ruff]). Enabled rule families:
| Code | Family |
|---|---|
E / W |
pycodestyle errors / warnings |
F |
pyflakes (unused imports, undefined names) |
I |
isort |
N |
pep8-naming |
UP |
pyupgrade |
C90 |
mccabe complexity (max-complexity = 10) |
A |
flake8-builtins (shadowing) |
B |
flake8-bugbear |
PERF |
perflint |
PT |
flake8-pytest-style |
RUF |
ruff-native rules |
SIM |
flake8-simplify |
TRY |
tryceratops (exception hygiene) |
Ruff lints .py files only — _brentq.pyx is outside the ruff scope.
make check # lint + format + type check, no mutations (use this in CI)
make lint/fix # rewrites files: ruff check --fix
make fmt/fix # rewrites files: ruff format
Type checking
The project pins pyrefly (configuration in
pyproject.toml under [tool.pyrefly]) on the strict preset, with
python-version = "3.10" so results do not drift with whichever interpreter
the venv happens to hold.
make typecheck # uv run --frozen pyrefly check
Two deliberate relaxations:
tests/**disablesimplicit-any-parameterandimplicit-any-lambda.brentqtakesCallable[..., float](it has to —argsis forwarded tof), so the bare lambdas the tests pass in cannot have inferable parameter types. Every otherstrictcheck still applies to tests.setup.pyis excluded: a build script, not shipped code.
Like ruff, pyrefly does not read _brentq.pyx. The type contract for the
extension lives entirely in _brentq.pyi, so a change to the .pyx signature
has to be mirrored there by hand.
Pre-commit hooks
.pre-commit-config.yaml runs the pre-commit-hooks basics, ruff check, ruff
format and pyrefly. CI enforces the same set via
prek, so installing the hooks locally is the
cheapest way to avoid a red lint job:
uvx prek install # or: uv run pre-commit install
uvx prek run --all-files # run everything now
The pyrefly hook is a repo: local hook that shells out to
uv run --frozen pyrefly check, so the version that runs is always the one in
uv.lock — there is no second pin to keep in sync.
Layout
src/cybrentq/
_brentq.pyx # the algorithm
_brentq.pyi # type stubs for IDEs and pyrefly
__init__.py # re-exports brentq, RootResults, ConvergenceError
py.typed # PEP 561 marker
tests/
conftest.py # shared fixture: 11 canonical root-finding problems
test_basic.py # behaviour, error paths, edge cases
test_against_scipy.py # parity vs scipy
test_performance.py # perf regression guard
benchmarks/
bench_brentq.py # speed comparison vs scipy and pymodab
scripts/
smoke.py # import-and-solve check, also run by cibuildwheel
setup.py # Extension + cythonize; the PEP 517 backend calls it
noxfile.py # pytest across Python 3.10 - 3.14 via `uvx nox`
Makefile # venv, sync, test, cov, bench, lint, fmt, typecheck, build
pyproject.toml # project metadata + ruff/pyrefly/coverage/pytest config
.pre-commit-config.yaml # hooks, enforced in CI via prek
License
MIT — see LICENSE.
Release files for cybrentq 0.1.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cybrentq-0.1.4.tar.gz | 146.4 kB | Details |
Built distributions (wheels)
Total release size: 5.4 MB
Release files / cybrentq-0.1.4.tar.gz
| Download URL | cybrentq-0.1.4.tar.gz |
|---|---|
| Size | 146.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
322428ffb0b88c7f70a0edefbd7405093a1ce6aab10ef4150609e457bf5c08da
|
|
BLAKE2b-256 checksum How to use checksums |
c59566954863781fffc63362beaed022490fc1d6bb9f956d3a3a761d17872164
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp314-cp314-win_amd64.whl
| Download URL | cybrentq-0.1.4-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 35.9 kB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
5307bc4b76c62380e5ae9af5737933d88703d0a3b9e87741fe3082b359112cbc
|
|
BLAKE2b-256 checksum How to use checksums |
b57a0b183da8b00ba7cea5817dc4ca9913ce6502b26df8afbbaf4ec333dd787c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp314-cp314-musllinux_1_2_x86_64.whl
| Download URL | cybrentq-0.1.4-cp314-cp314-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 231.7 kB |
| Tags | CPython 3.14 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
dc5802a478e49aa25a492db73950df7b35e797f05cb3e7a811b10c62eb5c2ec8
|
|
BLAKE2b-256 checksum How to use checksums |
e14e8d63dea875ff48a115bd5b888e67b8cb2a2d8cef0e60cb78fab67e80d175
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp314-cp314-musllinux_1_2_aarch64.whl
| Download URL | cybrentq-0.1.4-cp314-cp314-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 223.8 kB |
| Tags | CPython 3.14 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
d37bc5954ee3153f0d22bcccd95e05546ae690afb72e4d5f69a031fd9c2f82c9
|
|
BLAKE2b-256 checksum How to use checksums |
2f1adc782786950e115af78bb82fec344df2a4abf386509ab27413e6e2bc4d96
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | cybrentq-0.1.4-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 232.6 kB |
| Tags | CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
22955d4b13947f0c96de3eab440453a58e07d01993457f1553b00e28e22b5155
|
|
BLAKE2b-256 checksum How to use checksums |
7a9c52d4a3b33ebaed31eff3a8bf3fae38df7e5d5a651d03eead9cfa6afcc009
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | cybrentq-0.1.4-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 227.8 kB |
| Tags | CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
bf2953db333a73fc2f7e375596b11ae082cf76e096a8e9bcc02e91435cc484c5
|
|
BLAKE2b-256 checksum How to use checksums |
54a40a11f19a59145cc54115cc830400e4a433bf39299776f5926b9e8540553e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | cybrentq-0.1.4-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 107.3 kB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
b658820930787751a3cab9c812a790c88af9675206e4e4e0026a54ce0099a784
|
|
BLAKE2b-256 checksum How to use checksums |
ea7e049dffdbe1a7f2c22ee166eab9b820dae4988a0a70a2e6d1083b3bf38cf5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp313-cp313-win_amd64.whl
| Download URL | cybrentq-0.1.4-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 35.2 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
59ce82fefbdfa0bfaa8e9f5bdc161d1a3c9de96284d60c565b3aeb326706b2ae
|
|
BLAKE2b-256 checksum How to use checksums |
9b0ec7979f0a645ff42056cea4bcb3268789f1813d71149a4e1130ab848b8303
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp313-cp313-musllinux_1_2_x86_64.whl
| Download URL | cybrentq-0.1.4-cp313-cp313-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 233.0 kB |
| Tags | CPython 3.13 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
b70618759d79c3aa1ff70172c87d95f0df814626b4c0fe6ce16a2d951ca2e427
|
|
BLAKE2b-256 checksum How to use checksums |
b10989eaa41274e5f83ecca5aed07fdaf88eec856556ea71ab9f2daa2ad3aa3a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp313-cp313-musllinux_1_2_aarch64.whl
| Download URL | cybrentq-0.1.4-cp313-cp313-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 224.6 kB |
| Tags | CPython 3.13 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
a4c4913b358f39be27dda7280dda34bb44bb4e29095cbf8652273b41fb78a206
|
|
BLAKE2b-256 checksum How to use checksums |
8bd73fea5c02305626dd5ba8347afb868419a18ddbc76b15dd419dd61f915bfa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | cybrentq-0.1.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 232.8 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
cd3a5988eab02bd6070f0ae40a47ad64c986272370eb2ba9bd3906fb1c8aafc7
|
|
BLAKE2b-256 checksum How to use checksums |
2c8fbad8e3cb1589f28958790259be710b5e96038e00e10aa7a3c89e9902e8c1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | cybrentq-0.1.4-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 227.6 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
a7a85ca349ae56e23203bf3229709a85cacd680def5423032fd854467bf021d1
|
|
BLAKE2b-256 checksum How to use checksums |
36fa4592330e4aa3289131a1098b18880bd054fc5136fa74538d47431f161140
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | cybrentq-0.1.4-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 106.2 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
8601a6f2c961e0a503247e948a17c18be8d1481a5028cb7f9160fada9d475cd3
|
|
BLAKE2b-256 checksum How to use checksums |
37d0d310b9360723fce171da055f409995f91f06ca982da704dee7ec1282daa9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp312-cp312-win_amd64.whl
| Download URL | cybrentq-0.1.4-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 36.0 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
3fbc82bac4c1383e3a6d565886782801136a66ec6a2d20c2b1552390b5262435
|
|
BLAKE2b-256 checksum How to use checksums |
6c9baecee8703091848afc129dfe4906fa98ce35f1351af360147af4d0b8c6d6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp312-cp312-musllinux_1_2_x86_64.whl
| Download URL | cybrentq-0.1.4-cp312-cp312-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 236.7 kB |
| Tags | CPython 3.12 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
b8ebcb0320343723daaddbb8ba1f922bdffc60ade3dabc72a0904ab429e68b44
|
|
BLAKE2b-256 checksum How to use checksums |
b595e40c4a0b720a757286bc7cc00e222352ae1f014a465f09df53420f9a2711
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp312-cp312-musllinux_1_2_aarch64.whl
| Download URL | cybrentq-0.1.4-cp312-cp312-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 229.1 kB |
| Tags | CPython 3.12 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
1694458745a57fb3562f6c73565889b3efacf1652e666dd352c64bde8efbd855
|
|
BLAKE2b-256 checksum How to use checksums |
e7eeb5f5486be7c8a0b8a7dfa74755f0d1a3c143d61a628f860c66f722063cec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | cybrentq-0.1.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 237.0 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
aa8989af64fe80ad494396f0b534687b4c1456d2bccbc5d4079bbf8c4ea8b5be
|
|
BLAKE2b-256 checksum How to use checksums |
40e1c5efc68e447082f56ebc300d06bb8b715e54c485d85de7393e51bbf5f4fa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | cybrentq-0.1.4-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 231.7 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
85ddcc37a4fe7fb8a38bc1bf88e2747535c160e0dfa4c6314f05bbad20f5aa75
|
|
BLAKE2b-256 checksum How to use checksums |
82a749988bfae2b23f192e16997caea8ee01aaf62d0177fd538a374e42e69420
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | cybrentq-0.1.4-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 107.0 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
6de28f8d62956411b29faac4dcf9ba54c9ea116bf247ccdbd05754cef85daab5
|
|
BLAKE2b-256 checksum How to use checksums |
6a198e861d88e4ba7e99f5ead9fd9d6c0f5953dfd8afa19233068499fa476b7e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp311-cp311-win_amd64.whl
| Download URL | cybrentq-0.1.4-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 35.7 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
4cb83b7db846044b114bd40ef35a0aad6954d5e3af3b153eddaa1e69c1fb54f8
|
|
BLAKE2b-256 checksum How to use checksums |
566a63d8feb5f8040495f27ff79057643262743562f8c6309a000dbdcc7641b5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp311-cp311-musllinux_1_2_x86_64.whl
| Download URL | cybrentq-0.1.4-cp311-cp311-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 233.6 kB |
| Tags | CPython 3.11 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
682109a51c76bf0810cbc095888b1266ba47565fc57c4652d2fc7f5227fa8a95
|
|
BLAKE2b-256 checksum How to use checksums |
b474ada31561e225449469f4c52b63b05f73633c9e1056928ad394a9cc77aae8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp311-cp311-musllinux_1_2_aarch64.whl
| Download URL | cybrentq-0.1.4-cp311-cp311-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 226.8 kB |
| Tags | CPython 3.11 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
c5d518d23ec4f2fddfd02fc6630cfec2b5c2a984388b15341b34e8f462d8c71c
|
|
BLAKE2b-256 checksum How to use checksums |
0b6f3659a674f900c4118f817982ba362f9c6b44fdc39a5796f9c8164bdd65c8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | cybrentq-0.1.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 233.0 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
8efad071f2a7d6a636d8e905d004766d05ecda8a9c92ae113f6e59b189a9796e
|
|
BLAKE2b-256 checksum How to use checksums |
20863ef6c44a33fce7f83418a8d5ffdc4a3bfe71f5f7758e57d7da83ffb8608a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | cybrentq-0.1.4-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 229.0 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
ebd5d45a5a4965485767242a020c5fbbc4f3e3f27d1333f71ca9cca2c6a6726c
|
|
BLAKE2b-256 checksum How to use checksums |
a65b003a198b0d141e24e2a4fc80790c455abb8fe26331468f1a934b1d601a6e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | cybrentq-0.1.4-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 107.3 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
b24f853d8748212a9978926b62b988ec951d78cd2b7fe2a768f6e9e1c56499da
|
|
BLAKE2b-256 checksum How to use checksums |
5cd46d0f93040df9eb73ef865aca1c48b6edd91a927c8d8b88d0afbaad25ecd6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp310-cp310-win_amd64.whl
| Download URL | cybrentq-0.1.4-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 35.8 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
a1b6171ac50475b8b0817b678ed863932ecd82e9cb2777a9da6b5c5db107aea4
|
|
BLAKE2b-256 checksum How to use checksums |
e2703f2e3171a0c31aad0bc2e96ba4b15e71a86df17d8e522ab5da5aadfce7b5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp310-cp310-musllinux_1_2_x86_64.whl
| Download URL | cybrentq-0.1.4-cp310-cp310-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 221.1 kB |
| Tags | CPython 3.10 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
f28686c17b0264e82df7bd796ce4af20a342a2e7adc721ae0fd4d344786f5a5b
|
|
BLAKE2b-256 checksum How to use checksums |
18964f25d1b1e182d1ecc2f9ee90f20538fbc1e875dc42d5677bd057881fceb9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp310-cp310-musllinux_1_2_aarch64.whl
| Download URL | cybrentq-0.1.4-cp310-cp310-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 215.6 kB |
| Tags | CPython 3.10 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
4dcc5d64dc808d8274011a1aebc0fa6a5e1fa76387464c5295cf26fbe23964cb
|
|
BLAKE2b-256 checksum How to use checksums |
3d9a56461081fdce7a6f986da73898d8ec21124d87a03f2061ce13cb06c04fe5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | cybrentq-0.1.4-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 220.1 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
1340174e7775727bd5ea20cf15f83adaaf91988fc61073b3f078c46eee6c59b8
|
|
BLAKE2b-256 checksum How to use checksums |
2ef9b4d26fe8e562b0c67919e9e9c989f8de933e5f93b7654796c5438033c3b1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | cybrentq-0.1.4-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 217.1 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
d121e5a4d3634f504893b39bfa955a0af14510d8bb8ab70a54b5db75a6411c8b
|
|
BLAKE2b-256 checksum How to use checksums |
c86ba9ba8da63e36c0c9afcb4188b689a062dea891687b5a7147b38ee0df7a97
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency logRelease files / cybrentq-0.1.4-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | cybrentq-0.1.4-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 107.5 kB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
a5d6c1cf534ea0e7390c72bb85eb9d643584382c7139a65a74d0dfbc68584703
|
|
BLAKE2b-256 checksum How to use checksums |
97c7627e9a2745fd693377785920c0d7b4949b0f67213858046cda1f9f8ac114
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 Aug 13, 2026.
Transparency log