Skip to main content

High-performance statistical inference engine — MLE, Bayesian, survival, GLM, time series. Rust core with Python bindings.

Project description

NextStat

License: AGPL-3.0 Rust Python

NextStat is a high-performance statistical fitting toolkit for High Energy Physics (HEP), implemented in Rust with Python bindings.

The God Run (toy-based CLs)

  • Model: S+B HistFactory (synthetic), 50 channels × 4 bins, 201 parameters (mu + 200 nuisances)
  • Task: CLs via toy-based q~_mu
  • Load: 10,000 toys (b-only) + 10,000 toys (s+b)
  • Machine: Apple M5 (arm64), macOS-26.2-arm64-arm-64bit-Mach-O
  • Versions: nextstat 0.1.0, pyhf 0.7.6, Python 3.13.11
  • Recorded: 2026-02-07 (UTC)
  • Commit: 88d57856
Tool Wall time Speedup
NextStat (Rayon) 3.47 s 1.0×
pyhf (multiprocessing, 10 procs) 50m 11.7s 868.0×

Reproduce:

PYTHONPATH=bindings/ns-py/python ./.venv/bin/python scripts/god_run_benchmark.py --n-toys 10000

What You Get

  • pyhf JSON compatibility (HistFactory-style workspaces)
  • Native HS3 (HEP Statistics Serialization Standard) v0.2 support — load ROOT 6.37+ HS3 JSON directly, auto-detected alongside pyhf
  • Native ROOT TTree reader with mmap I/O, rayon-parallel basket decompression, and columnar extraction — no ROOT C++ dependency
  • Ntuple-to-workspace pipeline: ROOT ntuples → histograms → HistFactory workspace (TRExFitter replacement)
  • Expression engine for string-based selections and weights ("njet >= 4 && pt > 25.0")
  • Negative log-likelihood (Poisson + constraints), including Barlow-Beeston auxiliary terms
  • Maximum Likelihood Estimation (L-BFGS-B) with uncertainties via (damped) Hessian-based covariance + diagonal fallback
  • NUTS sampling surface (generic Posterior API) + optional ArviZ integration
  • SIMD kernels, Rayon parallelism, Apple Accelerate (vDSP/vForce), and optional GPU acceleration (CUDA for NVIDIA, Metal for Apple Silicon)
  • Rust library, Python package (PyO3/maturin), and a CLI
  • Implemented packs: regression/GLM, hierarchical models, time series (Kalman/EM/forecast), econometrics/causal helpers, and PK/NLME baselines

Docs

  • Docs index: docs/README.md
  • Tutorials (end-to-end): docs/tutorials/README.md
  • References (CLI/Python/Rust/Server/Tools): docs/references/
  • Demo: Physics Assistant (ROOT -> anomaly scan -> p-values + plots): docs/demos/physics-assistant.md

Quickstart

Install (Rust)

cargo add ns-core ns-inference ns-compute

Install (Python)

Requires Python 3.11+. macOS ships with Python 3.9 via Xcode CLI Tools — upgrade with brew install python@3.13 before installing.

pip install nextstat

Build From Source

git clone https://github.com/NextStat/nextstat.io.git
cd nextstat.io

# Rust workspace
cargo build --release

# Python bindings (editable dev install)
cd bindings/ns-py
maturin develop --release

Try the Playground (WASM)

Run asymptotic CLs upper limits (Brazil bands) in the browser (no Python, no server) using a pyhf-style workspace.json.

From the repo root:

rustup target add wasm32-unknown-unknown
cargo install wasm-bindgen-cli --version 0.2.108

make playground-build-wasm
make playground-serve

Open http://localhost:8000/ and drag & drop a workspace.json (example: playground/examples/simple_workspace.json).

Usage

Rust API

use ns_inference::mle::MaximumLikelihoodEstimator;
use ns_translate::pyhf::{HistFactoryModel, HistoSysInterpCode, NormSysInterpCode, Workspace};

let json = std::fs::read_to_string("workspace.json")?;
let workspace: Workspace = serde_json::from_str(&json)?;

// Default interpolation (NextStat "smooth" defaults): NormSys=Code4, HistoSys=Code4p.
// For strict HistFactory/pyhf defaults, use Code1/Code0:
let model = HistFactoryModel::from_workspace_with_settings(
    &workspace,
    NormSysInterpCode::Code1,
    HistoSysInterpCode::Code0,
)?;

let mle = MaximumLikelihoodEstimator::new();
let result = mle.fit(&model)?;

println!("Best-fit params: {:?}", result.parameters);
println!("NLL at minimum: {}", result.nll);

Python API

import json

import nextstat

workspace = json.loads(open("workspace.json").read())
model = nextstat.from_pyhf(json.dumps(workspace))
result = nextstat.fit(model)

poi_idx = model.poi_index()
print("POI index:", poi_idx)
print("Best-fit POI:", result.bestfit[poi_idx])
print("Uncertainty:", result.uncertainties[poi_idx])

Population PK (nlme_foce) with multi-cpt FO/ITS/IMP

import nextstat

times = [0.5, 1.0, 2.0, 4.0, 8.0] * 4
subject_idx = [0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3]
y = [8.0, 6.2, 4.1, 2.6, 1.2] * 4

fit_fo = nextstat.nlme_foce(
    times,
    y,
    subject_idx,
    4,
    model="2cpt_iv",
    method="fo",
    doses=[120.0],  # length-1 broadcasts to all subjects
    theta_init=[1.2, 15.0, 0.8, 20.0],
    omega_init=[0.2, 0.2, 0.2, 0.2],
    error_model="additive",
    sigma=0.1,
)

fit_imp = nextstat.nlme_foce(
    times,
    y,
    subject_idx,
    4,
    model="3cpt_iv",
    method="imp",
    doses=[120.0],
    theta_init=[1.1, 14.0, 0.7, 18.0, 0.5, 28.0],
    omega_init=[0.2] * 6,
    imp_n_iter=5,
    imp_n_samples=100,
    error_model="additive",
    sigma=0.1,
)

Unbinned (event-level) API

Compile an event-level likelihood from an unbinned_spec_v0 JSON/YAML file and run fits/scans:

import nextstat

analysis = nextstat.unbinned.from_config("unbinned.json")
fit = analysis.fit()
print("NLL:", fit.nll)

scan = analysis.scan([0.0, 0.5, 1.0, 2.0])
print("mu_hat:", scan["mu_hat"])

cls = analysis.hypotest_toys(1.0, n_toys=2000, seed=42)
print("CLs:", cls)

Bayesian (NUTS) + ArviZ

Install optional deps:

pip install "nextstat[bayes]"

Run sampling and get an ArviZ InferenceData:

import json
from pathlib import Path

import nextstat

workspace = json.loads(Path("workspace.json").read_text())
model = nextstat.from_pyhf(json.dumps(workspace))

idata = nextstat.bayes.sample(
    model,
    n_chains=2,
    n_warmup=500,
    n_samples=1000,
    seed=42,
    target_accept=0.8,
)

print(idata)

Viz (CLs Brazil bands, profile scans)

Install optional deps:

pip install "nextstat[viz]"

Compute artifacts and plot (matplotlib):

import json
import numpy as np
from pathlib import Path

import nextstat

workspace = json.loads(Path("workspace.json").read_text())
model = nextstat.from_pyhf(json.dumps(workspace))

scan = np.linspace(0.0, 5.0, 101)
cls_art = nextstat.viz.cls_curve(model, scan, alpha=0.05)
nextstat.viz.plot_cls_curve(cls_art, title="CLs Brazil band")

mu = [0.0, 0.5, 1.0, 2.0]
prof_art = nextstat.viz.profile_curve(model, mu)
nextstat.viz.plot_profile_curve(prof_art, title="Profile likelihood scan")

Ntuple → Workspace (TRExFitter replacement)

use ns_translate::NtupleWorkspaceBuilder;

let ws = NtupleWorkspaceBuilder::new()
    .ntuple_path("ntuples/")
    .tree_name("events")
    .measurement("meas", "mu")
    .add_channel("SR", |ch| {
        ch.variable("mbb")
          .binning(&[0., 50., 100., 150., 200., 300.])
          .selection("njet >= 4 && pt > 25.0")
          .data_file("data.root")
          .add_sample("signal", |s| {
              s.file("ttH.root")
               .weight("weight_mc * weight_sf")
               .normfactor("mu")
          })
          .add_sample("background", |s| {
              s.file("ttbar.root")
               .weight("weight_mc * weight_sf")
               .normsys("bkg_norm", 0.9, 1.1)
               .weight_sys("jes", "weight_jes_up", "weight_jes_down")
               .tree_sys("jer", "jer_up.root", "jer_down.root")
               .staterror()
          })
    })
    .build()?;  // → Workspace (same type as pyhf JSON path)

No ROOT C++ dependency. ~8.5x faster than uproot+numpy on the full pipeline.

Low-level TTree access

use ns_root::RootFile;

let file = RootFile::open("data.root")?;
let tree = file.get_tree("events")?;

// Columnar access
let pt: Vec<f64> = file.branch_data(&tree, "pt")?;
let eta: Vec<f64> = file.branch_data(&tree, "eta")?;

// Expression engine
let expr = ns_root::CompiledExpr::compile("pt > 25.0 && abs(eta) < 2.5")?;

CLI

nextstat fit --input workspace.json
nextstat --interp-defaults pyhf fit --input workspace.json   # NormSys=Code1, HistoSys=Code0
nextstat hypotest --input workspace.json --mu 1.0 --expected-set
nextstat hypotest-toys --input workspace.json --mu 1.0 --n-toys 10000 --seed 42 --threads 0
nextstat hypotest-toys --input workspace.json --mu 1.0 --n-toys 10000 --gpu cuda   # NVIDIA GPU (f64)
nextstat hypotest-toys --input workspace.json --mu 1.0 --n-toys 10000 --gpu metal  # Apple Silicon GPU (f32)
nextstat upper-limit --input workspace.json --expected --scan-start 0 --scan-stop 5 --scan-points 201
nextstat version

Documentation

  • Tutorial index: docs/tutorials/README.md
  • Python API reference: docs/references/python-api.md
  • Rust API reference: docs/references/rust-api.md
  • CLI reference: docs/references/cli.md
  • Playground (browser/WASM): docs/references/playground.md (and playground/README.md)

Architecture

NextStat follows a "clean architecture" style: inference depends on stable abstractions, not on specific execution backends.

┌─────────────────────────────────────────────────────────────────┐
│                        HIGH-LEVEL LOGIC                          │
│  ns-inference (MLE, Profile Likelihood, Hypothesis Tests, ...)   │
│  - depends on core types and model interfaces                     │
└─────────────────────────┬───────────────────────────────────────┘
                          │ depends on abstractions
┌─────────────────────────┴───────────────────────────────────────┐
│                      ns-core (interfaces)                        │
│  - error types, FitResult, traits                                 │
└─────────────────────────┬───────────────────────────────────────┘
                          │ implemented by
┌─────────────────────────┴───────────────────────────────────────┐
│                    LOW-LEVEL IMPLEMENTATIONS                     │
│  ns-translate (pyhf + ntuple → Workspace)  ns-compute (SIMD/CUDA/Metal) │
│  ns-ad (dual/tape AD)  ns-root (ROOT I/O, TTree, expressions)    │
└─────────────────────────────────────────────────────────────────┘

Project Layout

nextstat/
├── crates/
│   ├── ns-core/         # Core types, traits, error handling
│   ├── ns-compute/      # SIMD kernels, Apple Accelerate, CUDA/Metal batch NLL+grad
│   ├── ns-ad/           # Automatic differentiation (dual/tape)
│   ├── ns-root/         # Native ROOT file reader (TH1, TTree, expressions, filler)
│   ├── ns-translate/    # Format translators (pyhf, HS3, HistFactory XML, ntuple builder)
│   ├── ns-inference/    # MLE, NUTS, CLs, GLM, time series, PK/NLME
│   ├── ns-viz/          # Visualization artifacts
│   └── ns-cli/          # CLI binary
├── bindings/
│   └── ns-py/           # Python bindings (PyO3/maturin)
├── docs/
│   ├── legal/
│   ├── plans/
│   └── references/
└── tests/

Development

Requirements

  • Rust 1.93+ (edition 2024)
  • Python 3.11+ (for bindings)
  • maturin (for Python bindings)

Build and Test

# Build
cargo build --workspace

# Build with CUDA support (requires nvcc)
cargo build --workspace --features cuda

# Build with Metal support (Apple Silicon, macOS)
cargo build --workspace --features metal

# Tests (default features)
cargo test --workspace

# Tests including optional backends (CUDA requires nvcc)
cargo test --workspace --all-features

# Opt-in slow Rust tests (toys, SBC, NUTS quality gates)
make rust-slow-tests

# Very slow (release) regression check
make rust-very-slow-tests

# Format and lint
cargo fmt --check
cargo clippy --workspace -- -D warnings

Python Tests

Local test runs should use the repo venv (it pins a Python version compatible with the built extension).

# Run fast Python tests (parity + API contracts)
PYTHONPATH=bindings/ns-py/python ./.venv/bin/python -m pytest -q -m "not slow" tests/python

# Run slow toy regression tests (opt-in)
PYTHONPATH=bindings/ns-py/python NS_RUN_SLOW=1 NS_TOYS=200 NS_SEED=0 ./.venv/bin/python -m pytest -q -m slow tests/python

Benchmarks

# Compile and run all benches
cargo bench --workspace

# Common entry points
cargo bench -p ns-translate --bench model_benchmark
cargo bench -p ns-translate --bench nll_benchmark
cargo bench -p ns-compute --bench simd_benchmark
cargo bench -p ns-inference --bench mle_benchmark
cargo bench -p ns-inference --bench hypotest_benchmark
cargo bench -p ns-ad --bench ad_benchmark
cargo bench -p ns-core --bench core_benchmark

Details (quick mode, baselines, CI workflows): docs/benchmarks.md.

Apex2 Baselines (pyhf + P6 GLM)

Record a reference baseline (writes JSON under tmp/baselines/ with a full environment fingerprint):

make apex2-baseline-record

Compare current HEAD vs the latest recorded baseline (writes tmp/baseline_compare_report.json):

make apex2-baseline-compare

Pre-release gate runbook: see CONTRIBUTING.md § Release Checklist.

Documentation

  • White paper (Markdown): docs/WHITEPAPER.md
  • White paper (PDF): built by python3 scripts/build_whitepaper.py and attached to GitHub Releases on tags (v*)
  • Internal plans/design notes are maintained outside this public repository.

Contributing

See CONTRIBUTING.md. All commits must include DCO sign-off (git commit -s).

License

NextStat uses a dual-licensing model:

  • Open Source: LICENSE (AGPL-3.0-or-later)
  • Commercial: LICENSE-COMMERCIAL

Contact

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nextstat-0.9.9.tar.gz (2.3 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

nextstat-0.9.9-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.0 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

nextstat-0.9.9-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (11.0 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

nextstat-0.9.9-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (11.0 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64

nextstat-0.9.9-cp314-cp314-win_amd64.whl (11.8 MB view details)

Uploaded CPython 3.14Windows x86-64

nextstat-0.9.9-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

nextstat-0.9.9-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.9 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

nextstat-0.9.9-cp314-cp314-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

nextstat-0.9.9-cp314-cp314-macosx_10_12_x86_64.whl (11.1 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

nextstat-0.9.9-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (11.0 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

nextstat-0.9.9-cp313-cp313-win_amd64.whl (11.8 MB view details)

Uploaded CPython 3.13Windows x86-64

nextstat-0.9.9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

nextstat-0.9.9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

nextstat-0.9.9-cp313-cp313-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

nextstat-0.9.9-cp313-cp313-macosx_10_12_x86_64.whl (11.1 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

nextstat-0.9.9-cp312-cp312-win_amd64.whl (11.8 MB view details)

Uploaded CPython 3.12Windows x86-64

nextstat-0.9.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

nextstat-0.9.9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

nextstat-0.9.9-cp312-cp312-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

nextstat-0.9.9-cp312-cp312-macosx_10_12_x86_64.whl (11.1 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

nextstat-0.9.9-cp311-cp311-win_amd64.whl (11.8 MB view details)

Uploaded CPython 3.11Windows x86-64

nextstat-0.9.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

nextstat-0.9.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (11.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

nextstat-0.9.9-cp311-cp311-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

nextstat-0.9.9-cp311-cp311-macosx_10_12_x86_64.whl (11.1 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

Details for the file nextstat-0.9.9.tar.gz.

File metadata

  • Download URL: nextstat-0.9.9.tar.gz
  • Upload date:
  • Size: 2.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nextstat-0.9.9.tar.gz
Algorithm Hash digest
SHA256 1eb6c8885a2251735c12ecdd8f6f71944d1178dbe1c224219aeaae362f6342c0
MD5 a8123ba3fc7cbe01c7bc37f9dd4679d3
BLAKE2b-256 6dc93326831154537eea5e50e1178c52016b4a00e852819d2661aa21c6fd918c

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9.tar.gz:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 af0d556a16141a4607e6c4b085f13b5c1b31f825686b1c5ca4d15200bf81830c
MD5 5d3a81ccaff3006aec8552d6109f39c6
BLAKE2b-256 4a24e06fee63de36faaacae9f5cbffb72f9d96d706bda337699b5cceef6c584a

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fd7f93af6f76936f678873e639c8df44346e6a52f3a0bbdc5ef3d82e933e0a85
MD5 c497ae57e836758c0777d3e041ca7bd7
BLAKE2b-256 bee1164b9efefee1d6790005f74aadc0b6cd1d070371c9a8caacf7c752e1cfa6

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3ad53bd82a166becaaa45f8a71bbf233ffbe50faf98f8a2029792bdcb4807edf
MD5 1a4da48c4edd87ae8e1f89551dc16f98
BLAKE2b-256 51d90e21c29afe1267978b54a10058cec8c8213041f69e04f7d8eafe1f1edb2b

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: nextstat-0.9.9-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 11.8 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nextstat-0.9.9-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 ce08decf2f801b22815a10e9fcfcd61fc4dbb50ef248b5bc1713fbc95f80e152
MD5 d76c17a736ab9eb5ad86d550785de871
BLAKE2b-256 8539bed700e90ee6acaeb71dccced002cee5cd73c9897a1fbff24addef5bbb66

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp314-cp314-win_amd64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bee9491bec6ce5ef8b5a3f4bdc8ab9867f445b787e98d96e232ef3917fd4bad3
MD5 57c2fab0da646364d43601ea89a3bbac
BLAKE2b-256 bd1cdd3bc92e2c4e7e21a7f24e3825797818b0e3ad255c0ec44af1c7a8538248

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 908b5fd29d8b95766916430a498fa4ae95d123a72bc91dcb5ebea5c88cedf524
MD5 7a1f8f1dc79b0831b595201872135b07
BLAKE2b-256 d1b067a3580b28fa38d810919533b2e7c27bb391092156a76d46dd14519c5af0

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e01e52b5d67e701b4a1752c91136395b12642c92d0a6f34bd41faecc89a11be4
MD5 8fc3f25000cfd3263f9ed4861d77e967
BLAKE2b-256 95156fd1b870ed518759b7380f6833798a8a6a5d1a275f49d0d0222fe3449b72

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 37c7a1b0889f43d773d904089f99d3a59c988354562bd7b40df8ba80d1905f1b
MD5 d426af0c9c4913d8bc471e9ff2aa7f3f
BLAKE2b-256 492e35370a45720ed63088d16deafad47c87ad8f2d2846b081b0b7ed55541c5c

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp314-cp314-macosx_10_12_x86_64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c7b748e133ec53bfcb6fc7abff7acf6ae97af333593331d5ee3cff48f6e47751
MD5 c2fc18bfd5640882332f7c446aa9a9e0
BLAKE2b-256 9dd3fe0898594441214e1b79d6f2ce37ea4f96f8ebf6ffee8b5e6150bd7534bf

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: nextstat-0.9.9-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 11.8 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nextstat-0.9.9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 93e3a758e62f4ea9cb603af342527c91d4bcaf2c41eb95d6e7334aeebd628307
MD5 d20ac575558c139c4f489a85622cde7e
BLAKE2b-256 7b92b1c116b5b897d7f55308392b371d367e0c1d39f5cdd6986be94f6964bea0

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp313-cp313-win_amd64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f9e7c30e9f8cd9a43b7613b63b031a028212a2648df7bd96beca713084507582
MD5 57fcc222916b514c03755fd5a1d6ae13
BLAKE2b-256 72760a9c485a6519279c165126c8cfc5da137ff5800137c8643b4b128c12bea3

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7de347e1a5763773c3abf0a9bcf26047413bb0871cf8911bfb4525a783d17e48
MD5 aceba7b8c1b9aba479456dda437348c1
BLAKE2b-256 f762e32ffdef4f14b2ae3dc219013135d511bdd780f59eaa017cce45e5a0ddab

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f5b5f5291d963611ba52b61bd27d4e3341bda48f9684f4c944b3110496dec33e
MD5 f9db5c5870fc85fa336000effe7c4234
BLAKE2b-256 8c529c6fdfdfb3f39752de6cc69ce2d4c382f02b73e8183fbfb7b220f0b9dc9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 58d4cf83e210598150c0472d14932cc65cd4ea797446d57c6f9f429e8b5a9ee3
MD5 c5396220b7540d2724ef2bd6e2ecd19c
BLAKE2b-256 ed33a9d48405b605d4144bb44fce36c93be5587b6059c5f7eaeccd5bdc3e3cfa

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: nextstat-0.9.9-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 11.8 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nextstat-0.9.9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 0e62cb182f8449b6cfd854cc0b03f257e9b3aff5a7330a7f735f54e7f108e55f
MD5 e482007bd297db568cda6c6249f847fa
BLAKE2b-256 2517ce0ff233bf917f65b75ea326744de5f450d5d716c0a6b176d1c9b040b661

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp312-cp312-win_amd64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 241ffa8d0070042ce97b7e0ffa69bee62ed2623bd0cce0a82bb8a7b49ce764e5
MD5 c390e78da8771d9cec09aa53f6f347d9
BLAKE2b-256 471f14c6f66e02c7ff6e52365e7a1c2b28f46aa03b616a94b947630a40c81534

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5954cdb92f4534b0bc8ee1246d3dcdb3a6f6afeda7c39dc887a61fadca90b3f9
MD5 1f48b9088b745dc228a075728991c272
BLAKE2b-256 c7cf9df17daceda263662f13c5598a79a6a4ed00ef5be489309a666bbad9fcf7

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c8b69805aea9d016ddaefdd2d8814cf5240a8759470126f7a91f3c16f8ef9cfb
MD5 4119c8c5d4af7f68fd09b9138eaa4fdd
BLAKE2b-256 9faab5420b36a5d5cdb12489909730f69c073cbe1ff9936446183847b408dfea

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 aa9b1ddacc4e5e2eb626f1d6802d204e538ab4b0c41edf5587b5e5256cb4b648
MD5 237d3988aa8bfc77144a97cc6d88e821
BLAKE2b-256 820e85d8dd6e5d47ad2d033cbf5ec1f53bab72cbbc00b0c63656c6edd1216d30

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: nextstat-0.9.9-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 11.8 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nextstat-0.9.9-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 238b8592373f817007954e9802926bdc30bbebc6cdc8082fc6214c3adad07b69
MD5 26363dc096f160031f8cf98b05ee3bab
BLAKE2b-256 1471820238f4d29a743a9a430aa8e47bac2cb68f23955c07647963c76c02a8f9

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp311-cp311-win_amd64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 afa6dce8f8ac53ef85568f4c1c3f1cd64313dad3b7a03c1fa137d87986bec25f
MD5 59e52e7ba91f1cd52bbdde4cb4c73c1e
BLAKE2b-256 ae9c1b537fddbda900ff4d06795b0833e57500d8c0e59da464e01f8b7894f6c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 da5bb66ce88b8f8e08a162b1d20ec7d7ce86d8fe9e403f5e9792e57dbb19d39d
MD5 a879d7d2aac3d200e9c9c2c7dce45b16
BLAKE2b-256 ff01fa8cb9636cdec211aba5cc5507f435c63d1264b6c86bc2dd7a9d9462941b

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7eda73d68044ef668921b314f3c443b1aac33ddf1a7acdad205bdd8220f57f49
MD5 37bbdf29587611a7648efcde3b271af5
BLAKE2b-256 3789635c654fb69a6c9ef313ec126a7093fc89d8f69083ebb5263a238f4cb287

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextstat-0.9.9-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.9.9-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 11eeb0833ebf4a5556f1fb3a67666882753684c8f587bf75071f2a80e4deeaf1
MD5 989ae621baa4b6eedae19a35832f63f3
BLAKE2b-256 f0db7572db69abf7779abdb6ffe4165ad9f431a91667d40a5eb4f5eeadbf1c6d

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.9.9-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: release.yml on NextStat/nextstat.io

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page