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.10.1.tar.gz (2.5 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.10.1-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.8 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

nextstat-0.10.1-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (12.4 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

nextstat-0.10.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (12.4 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64

nextstat-0.10.1-cp314-cp314-win_amd64.whl (13.7 MB view details)

Uploaded CPython 3.14Windows x86-64

nextstat-0.10.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.8 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

nextstat-0.10.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (12.4 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

nextstat-0.10.1-cp314-cp314-macosx_11_0_arm64.whl (11.5 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

nextstat-0.10.1-cp314-cp314-macosx_10_12_x86_64.whl (12.8 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

nextstat-0.10.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (12.4 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

nextstat-0.10.1-cp313-cp313-win_amd64.whl (13.7 MB view details)

Uploaded CPython 3.13Windows x86-64

nextstat-0.10.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

nextstat-0.10.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (12.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

nextstat-0.10.1-cp313-cp313-macosx_11_0_arm64.whl (11.5 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

nextstat-0.10.1-cp313-cp313-macosx_10_12_x86_64.whl (12.8 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

nextstat-0.10.1-cp312-cp312-win_amd64.whl (13.7 MB view details)

Uploaded CPython 3.12Windows x86-64

nextstat-0.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

nextstat-0.10.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (12.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

nextstat-0.10.1-cp312-cp312-macosx_11_0_arm64.whl (11.5 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

nextstat-0.10.1-cp312-cp312-macosx_10_12_x86_64.whl (12.8 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

nextstat-0.10.1-cp311-cp311-win_amd64.whl (13.7 MB view details)

Uploaded CPython 3.11Windows x86-64

nextstat-0.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

nextstat-0.10.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (12.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

nextstat-0.10.1-cp311-cp311-macosx_11_0_arm64.whl (11.5 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

nextstat-0.10.1-cp311-cp311-macosx_10_12_x86_64.whl (12.8 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for nextstat-0.10.1.tar.gz
Algorithm Hash digest
SHA256 729c457751db19f07bf157fa7c487131417a2a76adaae9913059627c091266a4
MD5 0a65de6b77b3a268d5f97b593d0573c7
BLAKE2b-256 557d0d4d75e24680b2a1866592ac14a47dc51e79b96d1963ec64d39f8ef6505c

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1.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.10.1-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7c125d60a9ae939613a5d99120e2896bbff57d8efaba103c2461868278462242
MD5 8070c2cea45f4728de6e6cceaec8452d
BLAKE2b-256 7a68dbfab9301b4e17112c6ccf80487addb2d985acc2608e7436fc0e9cd80898

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f1754c4d65b83ac6968ce49b4276f3156907e066ad78feedcf8b28e35760c5bf
MD5 a99c2cb989be42b6dabfefade80dcd95
BLAKE2b-256 a0cf34af7db80d5dea8c8eccbee561571fcd8271c4da6c58b0680ce83cf4ba09

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0dafcbe193a9ceaf974ec55f72b1bcac098a41882bb80ff9aab7b66844e35aaa
MD5 66da45e38835e979a4b9308c963d72c2
BLAKE2b-256 5e12253b78266869a8b85b89af0c16c77a4f99ac6f328ffce86883a72ca56a55

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: nextstat-0.10.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 13.7 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.10.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 01e6bb5bb1a3fa72da800b97d1243c8118c8ee52b615a5058f2c9d0457c479f7
MD5 13e3457b41164daffe9a36876bede657
BLAKE2b-256 e26afa0823efe38a9b9fc3ef91c95666467c252e6cdb7c9f5ef3f83b9ae29aa9

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6bb4334a6a6348eea8137adf4d551d0d59cfa3cd50f3cdf8f547edead537ccdf
MD5 b640cc7f54b1463512530d3c8523d223
BLAKE2b-256 aaff654dbcf53d01c365d5ea5016dd20d116598d9069f692945247bf940256b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0fa939686919bd779e71b1b5b84687bba2e818b8157caae24a83512120d6a36c
MD5 d39a5574c9a439ac837f6316507ee38d
BLAKE2b-256 2ae1f363d06cd63db25cea9824ab64995fcf71260b2572f1ce0d0453a3830d7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ebafdd45dd04c0ee173981fcfc5506775bf509a5fdd127b566bcb442f3ce0a5f
MD5 068444f9246c15e959770ea124495ef1
BLAKE2b-256 221063884aa09cedf9ff55fd4c0a6013b65adaddace03db5d86bb50fa3dc678e

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d7ad921c635f7bcaac29d03e9105530f318e311bf693d8529dfcb719758273bc
MD5 530c03e7bae9d35705caaf7f22ce5319
BLAKE2b-256 c343fcc3979b6996ccc635ffdf45d96c0e5f4480993ec8e8d6022c0d5303639b

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b1c6fe3d1e95f7dd26fd202e1a40e7217613241b1e1c585826300aed4893c59f
MD5 91f2706cfd3295ca8c1539054b105726
BLAKE2b-256 e2b10daddfb476b28cfd7fe4246544d9bf387d71ddacd797a17053d80ac27e98

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: nextstat-0.10.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 13.7 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.10.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 c709045a02f2ed834f36b26d3a68db6be40556d80660e8c378c605043bddbba8
MD5 59c6d91e80def2e26326e1b30a70d14f
BLAKE2b-256 29ba50a2f58fed6ada4303d84c94b03c26149910717eac684b3b40b86acc6642

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e7b48d3e48b7da381e9566a5067a26db7b43774bbd586aeedfe8c4245e01f8c6
MD5 22b086821ce1cfc37812dac716e09169
BLAKE2b-256 2898992a84d276a2d05bc201e2eb8837381100fbf2e5ede5854205c270645c20

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5100ee67ce27861f23da4707f676df559aeae8782e9d0cdb82d18cedbc958999
MD5 c7f1e9b1d4c9ac9599dd1e7a157b1dae
BLAKE2b-256 83e3c61139314f55ef65cc293a55bfb9a3a19b3f91b5c6478ef7ec2ccb1b8193

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7d9b7535e451016a0393524a20aa43240118fa5b9565e25303974de0f49b4695
MD5 33d610d8b6da5c4bee276da1650d21b1
BLAKE2b-256 6feaed1762266c22a463355e527c2ba017836db5e273a96e6f7cddd8747e0b63

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1eea19471a0b4849152b669ec108bf4ae12caa9528484f36381e57967d0f2388
MD5 3784eddb8b48df6552cb18cd5b17ab87
BLAKE2b-256 353a8fc1988dfed9bb756136345407cf9f84d5a20684227fdda15f22373f54db

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: nextstat-0.10.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 13.7 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.10.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 1cdd0eaeaa70a6d6b0a42c17cae07d8d52727de03248ad45912091185069d2fb
MD5 382a5d624ff57cd05e8324ad803dd6e9
BLAKE2b-256 f9e7afe80095794b92901b5dcc752c64aa46a3549065d901455d554c559a9e74

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 49841ca90ef8b72083b8df75e4c4c7f486a88c825e196aa25c4dba8dc8884b1b
MD5 f0740fb3f4c64950f4d9a827274d43c2
BLAKE2b-256 6d8d9010266f4fd36dfe120e2fbb63487329e34b865f4ddbd7d0028d62a92f9d

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 994ba78b3e9dff1730ec50345dd07048b64f45aaa3e39522b5b5ab8c89a7dd4b
MD5 0a067e37f3682bef241b81111b02052a
BLAKE2b-256 71a867407359dc51b9dfa4152e5ffe56ce21bb477634c4ea4c1753553b215020

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 31292d1b286061e435cc1352bc2fa0ce521a4947f3f8b4df7df688a8f497a338
MD5 bd0bcf0834828f776f9208c0b5cafe23
BLAKE2b-256 454f24e0ac8a18cc5269b66c328703e42fcd2e0d63adbbee2221cc0886b98c01

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3f412e80935f926d45b41df7a6aa72f9761c5216787a2105f32a9f457b0e5fef
MD5 bffdc21c6ea414d654bb37afeeb34925
BLAKE2b-256 05e8c3bed3c259b3c0df30618a6f4afe75607486ca829756b07107f3710bbd19

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: nextstat-0.10.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 13.7 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.10.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0da71cfcac022902a659d4923d327737f6f84b0271908ff8fa19345a688ac588
MD5 0363be569c9b5e2ac2a5e02bfc0207a5
BLAKE2b-256 4096685cb59baa154624fcdbaf0bcc8b7132ac066de7f11763ae34cb3ecb236c

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 71de31b84cebf721fda9db377e1ed886c5b391d2805df8610b842226dec0f49a
MD5 78594cdedf5ec522e8dbffa3c267ef1b
BLAKE2b-256 eab16e14562f86f8e527da976af76f71ed714209cb624f3d158eef35aff22128

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7e71b3ff1a7a6aef5a155ee6617a1aaa9429f3b9e8ced72a6cb9920f08cbdc92
MD5 1be204140433d3fb6aad4d07b95f59c9
BLAKE2b-256 5d6a97bbb7632a2efe9a99244cd21861cc91940261b7a4828cf11dbd115b888a

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1c47a3fe94d377b2b5c86b58442377b68ed8fc2edfd780ac51e48ef48f987636
MD5 b323d492d86b1b23b14cf5f4e76b2038
BLAKE2b-256 005687e099951a995f1aac9258ead7bd56beb95e49d63be06800bdc4ec52b8e5

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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.10.1-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for nextstat-0.10.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f2e4b3d51b7866eff12e56154f1aa0306604aa1b20cf36a7f7e51910d3eb6a3b
MD5 22c33ac87000478564f69baaf3596ce9
BLAKE2b-256 f10fed907f589be43df7f0b616acc61886d16e148429d9acf5f491d41a0269c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextstat-0.10.1-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