Skip to main content

Modern Black-Scholes-Merton pricing, Greeks, and implied volatility for Python. Rust core. Drop-in py_vollib replacement.

Project description

pyvolr

PyPI Python versions Wheel OpenSSF Scorecard CI License

Modern Black-Scholes-Merton pricing, Greeks, and implied volatility for Python. Rust core. Vectorized. Drop-in replacement for the abandoned py_vollib.

from pyvolr import bs

bs.price("c", S=100, K=105, T=0.5, r=0.05, sigma=0.2) # 4.581680167540007

⚡ Performance

BSM call pricing throughput: pyvolr vs py_vollib, log-log scaling by array size
Scenario pyvolr py_vollib speedup
bs.price, scalar 4.0 µs 2.0 µs 0.5×
bs.price, 1k strikes 25.4 µs 2.16 ms 85×
bs.price, 10k strikes 157 µs 21.73 ms 139×
bs.price, 100k strikes 1.48 ms 217.53 ms 147×
bs.price, 1M strikes 15.18 ms 2,204 ms 145×
bs.greeks (all 5), 10k 593 µs 85.82 ms 145×
bs.implied_vol, scalar 3.9 µs 13.9 µs 3.6×
black76.price, scalar 3.8 µs 2.2 µs 0.6×
black76.price, 10k strikes 171 µs 23.45 ms 137×
black76.implied_vol, scalar 3.9 µs 15.0 µs 3.9×

Vectorize anything you can — that's where pyvolr wins. For a single scalar price call, py_vollib's pure-Python path edges out pyvolr because the PyO3 FFI roundtrip + numpy broadcasting setup costs a few microseconds; even a 2-element array call already favors pyvolr. Black-76's profile tracks BSM's exactly because the Rust core delegates to bsm::price with q=r rather than duplicating math.

Reproduce with python bench/compare_py_vollib.py. Numbers above: Apple M4 Pro / Python 3.10.20 / numpy 2.2.6 / pyvolr 0.1.0 vs py_vollib 1.0.1.

📦 Install

pip install pyvolr

Or via uv:

uv pip install pyvolr

Pre-built wheels are published for Linux (x86_64, aarch64), macOS (Intel, Apple Silicon), and Windows (x86_64) across Python 3.10–3.14, plus free-threaded builds for 3.13t and 3.14t.

Tested on

3.10 3.11 3.12 3.13 3.14
Linux
macOS
Windows

Every push and PR runs the full pytest + cargo test suites across the matrix above. Windows × {3.10, 3.11} are skipped intentionally to keep CI minutes reasonable — the wheels themselves still build for those combinations and are published. Free-threaded wheels (3.13t, 3.14t) are built and exercised through cibuildwheel's in-wheel test pass on every release across Linux/macOS/Windows.

From source (requires Rust):

git clone https://github.com/yipjunkai/pyvolr
cd pyvolr
uv venv --python 3.12 && source .venv/bin/activate
uv pip install -e ".[dev,test]"
maturin develop --release

🚀 Quick start

import numpy as np
from pyvolr import bs

# Scalar
bs.price("c", S=100, K=105, T=0.5, r=0.05, sigma=0.2)

# Vectorized — broadcast over any combination of inputs
strikes = np.linspace(80, 120, 41)
prices = bs.price("c", S=100, K=strikes, T=0.5, r=0.05, sigma=0.2)

# All five Greeks in one call
greeks = bs.greeks("c", S=100, K=strikes, T=0.5, r=0.05, sigma=0.2)
# {"delta": [...], "gamma": [...], "theta": [...], "vega": [...], "rho": [...]}

# Implied volatility from a market price
bs.implied_vol(price=5.20, flag="c", S=100, K=100, T=0.25, r=0.05)

# Broadcasting works in any dimension
strike_grid = np.linspace(80, 120, 5).reshape(-1, 1)
vol_grid = np.linspace(0.10, 0.40, 4).reshape(1, -1)
surface = bs.price("c", S=100, K=strike_grid, T=0.5, r=0.05, sigma=vol_grid)
# shape (5, 4)

# Black-76 for options on futures / forwards — same API, F replaces S, no q.
from pyvolr import black76
black76.price("c", F=100, K=105, T=0.5, r=0.05, sigma=0.2)

✨ Features

  • Black-Scholes-Merton pricing — calls and puts with continuous dividend yield
  • Black-76 pricing — European options on futures/forwards (pyvolr.black76), same vectorized API as bs
  • Analytical Greeks — delta, gamma, theta, vega, rho (with documented sign and unit conventions)
  • Robust implied volatility — Newton-Raphson seeded by Manaster-Koehler, bisection fallback for OTM tails and tiny-vega regimes
  • Full numpy broadcasting — any combination of inputs in any shape, scalar-in scalar-out
  • py_vollib drop-in shimpyvolr.compat.py_vollib mirrors the upstream module tree (including py_vollib.black) for one-import-line migration
  • Rust core, no compiler needed — abi3 wheels for Python 3.10–3.14 × {Linux, macOS, Windows}
  • Free-threaded Python ready — dedicated wheels for 3.13t and 3.14t; the Rust core releases the GIL around the math, so pricing scales across threads without a process pool
  • Typed end-to-end — pyright-strict library code, full type stubs for the Rust extension

🗺️ Coming soon

  • Jäckel "Let's Be Rational" implied volatility (2-iteration convergence)
  • Bachelier (normal model, for negative rates)
  • Higher-order Greeks (vanna, vomma, charm, speed, zomma, color)
  • SIMD batch evaluation + rayon parallelism for large arrays
  • American options (CRR binomial → finite difference)
  • Volatility surface fitting (SVI, SSVI)

🔄 Migrating from py_vollib

Replace your imports — the signatures and 'c'/'p' flag convention are preserved exactly:

# Before
from py_vollib.black_scholes import black_scholes
from py_vollib.black_scholes.greeks.analytical import delta
from py_vollib.black_scholes.implied_volatility import implied_volatility
from py_vollib.black import black  # futures options

# After
from pyvolr.compat.py_vollib.black_scholes import black_scholes
from pyvolr.compat.py_vollib.black_scholes.greeks.analytical import delta
from pyvolr.compat.py_vollib.black_scholes.implied_volatility import implied_volatility
from pyvolr.compat.py_vollib.black import black  # futures options

The compat shim also preserves py_vollib's unit conventions: vega is per-1% vol, theta is per-day, rho is per-1% rate, and implied_volatility takes flag as its last argument. For new code, prefer the modern pyvolr.bs API — it accepts numpy arrays, broadcasts naturally, uses per-unit conventions consistently, and returns all Greeks in a single call.

🤔 Why pyvolr exists

py_vollib has been broken on Python 3.12+ since the release — a transitive dependency imports DBL_MIN / DBL_MAX from CPython's internal _testcapi test module, which isn't shipped with modern Python distributions. The fix is two lines (sys.float_info.{min,max} are the correct sources), but py_lets_be_rational hasn't released since 2017, py_vollib since 2020, and the maintainers are gone.

Full backstory: docs/why.md.

📁 Project structure

pyvolr/
├── crates/core/             # Rust numerical core
│   └── src/
│       ├── lib.rs           # PyO3 bindings (flat-array entry points)
│       ├── bsm.rs           # BSM pricing, d1/d2, forward price
│       ├── black76.rs       # Black-76 (futures options) — delegates to BSM with q=r
│       ├── greeks.rs        # Delta, gamma, theta, vega, rho
│       ├── iv.rs            # Newton + Manaster-Koehler + bisection IV solver
│       └── normal.rs        # erf-based standard normal CDF / PDF
├── python/pyvolr/
│   ├── bs.py                # BSM public API (numpy-broadcast wrappers)
│   ├── black76.py           # Black-76 public API
│   ├── _core.pyi            # Type stubs for the Rust extension
│   └── compat/py_vollib/    # Drop-in shim mirroring py_vollib's tree
├── tests/                   # pytest + hypothesis property tests
├── .github/workflows/       # ci, release, release-please, differential, fuzz, security, scorecard, stale
├── Cargo.toml               # Rust workspace
└── pyproject.toml           # maturin build backend + project config

📚 API reference

Function Returns Vectorized over
bs.price(flag, S, K, T, r, sigma, q=0) option price all numeric inputs
bs.delta(flag, S, K, T, r, sigma, q=0) ∂Price/∂S all numeric inputs
bs.gamma(S, K, T, r, sigma, q=0) ∂²Price/∂S² all numeric inputs
bs.vega(S, K, T, r, sigma, q=0) ∂Price/∂σ (per unit vol) all numeric inputs
bs.theta(flag, S, K, T, r, sigma, q=0) −∂Price/∂T (per year) all numeric inputs
bs.rho(flag, S, K, T, r, sigma, q=0) ∂Price/∂r (per unit r) all numeric inputs
bs.greeks(flag, S, K, T, r, sigma, q=0) dict of all five Greeks all numeric inputs
bs.implied_vol(price, flag, S, K, T, r, q=0) σ (NaN on bound violation) price + numeric inputs
black76.price(flag, F, K, T, r, sigma) option price on a forward all numeric inputs
black76.{delta,gamma,vega,theta,rho}(...) Greeks for Black-76 all numeric inputs
black76.greeks(flag, F, K, T, r, sigma) dict of all five Greeks all numeric inputs
black76.implied_vol(price, flag, F, K, T, r) σ (NaN on bound violation) price + numeric inputs
pyvolr.compat.py_vollib.… py_vollib-shaped scalars n/a (scalar API)

flag accepts 'c'/'C' (call), 'p'/'P' (put), or an array thereof.

🛡️ Sustainability

py_vollib died because nobody was paid to maintain it. pyvolr is engineered to outlive its maintainer:

  • One-click releases via release-please + PyPI Trusted Publishing — PyPI publication needs no stored credentials (OIDC), and release-please authenticates as a repo-scoped GitHub App rather than a user PAT, so the credential survives a maintainer handoff
  • Nightly differential tests against py_vollib on a Python 3.10 sidecar to catch numerical drift
  • Wide CI matrix (Python 3.10–3.14 × Linux/macOS/Windows) — the specific failure mode that killed the predecessor
  • All GitHub Actions pinned with weekly Dependabot bumps, hardening against supply-chain attacks
  • Hand-off plan documented in GOVERNANCE.md

Commercial sponsorship channels will be added if demand warrants. For now the best support is real-world use, good bug reports, and PRs.

🤝 Contributing

See CONTRIBUTING.md. Particularly welcome: new pricing models (Bachelier, American), higher-order Greeks, SIMD/vectorization work, and property tests for edge cases.

📄 License

Dual-licensed under MIT or Apache 2.0, at your option.

Algorithms are reimplemented from published references (Hull, Merton, Manaster-Koehler); no third-party source code is incorporated.

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

pyvolr-0.1.1.tar.gz (31.9 kB view details)

Uploaded Source

Built Distributions

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

pyvolr-0.1.1-cp314-cp314t-win_amd64.whl (150.1 kB view details)

Uploaded CPython 3.14tWindows x86-64

pyvolr-0.1.1-cp314-cp314t-win32.whl (146.1 kB view details)

Uploaded CPython 3.14tWindows x86

pyvolr-0.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl (327.0 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

pyvolr-0.1.1-cp314-cp314t-musllinux_1_2_aarch64.whl (298.6 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

pyvolr-0.1.1-cp314-cp314t-manylinux_2_28_x86_64.whl (246.3 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ x86-64

pyvolr-0.1.1-cp314-cp314t-manylinux_2_28_aarch64.whl (233.0 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

pyvolr-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl (218.5 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

pyvolr-0.1.1-cp314-cp314t-macosx_10_15_x86_64.whl (234.8 kB view details)

Uploaded CPython 3.14tmacOS 10.15+ x86-64

pyvolr-0.1.1-cp313-cp313t-win_amd64.whl (152.8 kB view details)

Uploaded CPython 3.13tWindows x86-64

pyvolr-0.1.1-cp313-cp313t-win32.whl (146.2 kB view details)

Uploaded CPython 3.13tWindows x86

pyvolr-0.1.1-cp313-cp313t-musllinux_1_2_x86_64.whl (329.4 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

pyvolr-0.1.1-cp313-cp313t-musllinux_1_2_aarch64.whl (300.7 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

pyvolr-0.1.1-cp313-cp313t-manylinux_2_28_x86_64.whl (248.7 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.28+ x86-64

pyvolr-0.1.1-cp313-cp313t-manylinux_2_28_aarch64.whl (235.4 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.28+ ARM64

pyvolr-0.1.1-cp313-cp313t-macosx_11_0_arm64.whl (218.7 kB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

pyvolr-0.1.1-cp313-cp313t-macosx_10_13_x86_64.whl (234.5 kB view details)

Uploaded CPython 3.13tmacOS 10.13+ x86-64

pyvolr-0.1.1-cp310-abi3-win_amd64.whl (153.7 kB view details)

Uploaded CPython 3.10+Windows x86-64

pyvolr-0.1.1-cp310-abi3-win32.whl (149.5 kB view details)

Uploaded CPython 3.10+Windows x86

pyvolr-0.1.1-cp310-abi3-musllinux_1_2_x86_64.whl (330.1 kB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

pyvolr-0.1.1-cp310-abi3-musllinux_1_2_aarch64.whl (302.2 kB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARM64

pyvolr-0.1.1-cp310-abi3-manylinux_2_28_x86_64.whl (249.6 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ x86-64

pyvolr-0.1.1-cp310-abi3-manylinux_2_28_aarch64.whl (237.0 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ ARM64

pyvolr-0.1.1-cp310-abi3-macosx_11_0_arm64.whl (222.2 kB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

pyvolr-0.1.1-cp310-abi3-macosx_10_13_x86_64.whl (238.0 kB view details)

Uploaded CPython 3.10+macOS 10.13+ x86-64

File details

Details for the file pyvolr-0.1.1.tar.gz.

File metadata

  • Download URL: pyvolr-0.1.1.tar.gz
  • Upload date:
  • Size: 31.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pyvolr-0.1.1.tar.gz
Algorithm Hash digest
SHA256 803cf63d7df69bbd7510ee13f73d4b6cb4602c6896f0820e70a06d8dc142b17e
MD5 b6f4726b31508bcc50301a27ad3007b1
BLAKE2b-256 81f03c2c51f5891ae1684c198e738d6c9afdcfa512e8ede5e34341a63115c33b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1.tar.gz:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: pyvolr-0.1.1-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 150.1 kB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pyvolr-0.1.1-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 3fa733ebd7bb682cb2053027e8fccbd79f5e91e36ab6f342f2320d1f27902267
MD5 9a7c1a2702ab7507094d8fff10385cd7
BLAKE2b-256 1b7d13b630f41598641fbff6618871a88331aba2be47079661a05e3370846d80

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp314-cp314t-win_amd64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp314-cp314t-win32.whl.

File metadata

  • Download URL: pyvolr-0.1.1-cp314-cp314t-win32.whl
  • Upload date:
  • Size: 146.1 kB
  • Tags: CPython 3.14t, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pyvolr-0.1.1-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 65eb46258293da2076fc5ab567342e3a6fb5c5a13bc100a75835c99ed4e62329
MD5 90232c7f0002d8719b686e58cf545f3f
BLAKE2b-256 3459852fdf4ee48c4e25d1be7dc8449fd90dc3d09a1ca4452706881d354d56d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp314-cp314t-win32.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d86d11cd6ac08abecd708cad8dd71927f964afc6f5e498d82aae8a7690711e03
MD5 baaa800b2b3298b707d8d118965ddeef
BLAKE2b-256 c7e643585812947c1c411ab6212d684328ad202b2db3edd7d97d8ab61a29a0be

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 fe27ddc468e70668e418f302a3f4b787f2f040de2946a513c6a575e43cfbfe65
MD5 65c8657f2f775132a861d29d467c13a7
BLAKE2b-256 dae2cb4fcefe23203e62dd4cc8203e01f3c53453963f8c57f82152590b55383d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp314-cp314t-musllinux_1_2_aarch64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp314-cp314t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c69923274fe1bc1868e86805315e037f6ab3a22b06a5139c9756ab0fc23ad261
MD5 fc4fb8950b6d7666fb7a3e0adce874fd
BLAKE2b-256 8a504bbdc1d50b6c4e64a99035a892e1292d21b793b36e3251c2c6330ca51e1b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp314-cp314t-manylinux_2_28_x86_64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp314-cp314t-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 de40574f76074c7a87437ee750955ab488addc65572a5a2c45d09654b2467739
MD5 7e761c7f55871d6504d522dd81427160
BLAKE2b-256 b0d3adecc6ab613423b3ddaca530f81010536e37c63a18b40cb0830c1bb91252

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp314-cp314t-manylinux_2_28_aarch64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 567c22ab0d4c982eb900d0c387dab58cfdafb455ed545e0f34ff16b05c98a331
MD5 fffe7d65873ab4556d4c7d678de2dff5
BLAKE2b-256 3bd2fb32f28f6c3739a41550590f4d645b67d25fd055c53c61770fc4403e5214

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp314-cp314t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 c89ae59938375e7e75052fe50f4c7d074d862067ddd4622eaf5d30cccf05ed00
MD5 5cce155bd01e8ebdefe8b8b1e01276ff
BLAKE2b-256 a3b7896d2008e1be430bfebcd8b20e607bfe0819e1a18de98e5ac69d5301b9fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp314-cp314t-macosx_10_15_x86_64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp313-cp313t-win_amd64.whl.

File metadata

  • Download URL: pyvolr-0.1.1-cp313-cp313t-win_amd64.whl
  • Upload date:
  • Size: 152.8 kB
  • Tags: CPython 3.13t, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pyvolr-0.1.1-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 6f0c95aed71b1e77b60c9eae73af1ad9625c73330f862f512cbbeca65ff1aafc
MD5 91f5e668dcfa2c3cd233cc38e28a5d00
BLAKE2b-256 38c2980b28d115a73c7efd86da01c8b003ed57e2c1d218a3c287f24448df4639

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp313-cp313t-win_amd64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp313-cp313t-win32.whl.

File metadata

  • Download URL: pyvolr-0.1.1-cp313-cp313t-win32.whl
  • Upload date:
  • Size: 146.2 kB
  • Tags: CPython 3.13t, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pyvolr-0.1.1-cp313-cp313t-win32.whl
Algorithm Hash digest
SHA256 6bfc69654c6c6bfb0d9915edceac06a199f04c0250ffd75dadff59c6a14912b9
MD5 09e3eebaccb571090b24868bae878633
BLAKE2b-256 601d1bbda67dcb4605f46f41898c0acd3f0e0fc8feea0af07bc73c25bd00d2d2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp313-cp313t-win32.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b86437eac5eae9c2a8d8dccae908c1ea4cf5a1faf38debcb4d8381e55eddaa2e
MD5 f8d2ebd2b7623ca735c768f08bcb4e97
BLAKE2b-256 42a750ba6e32941ab7bfe6db6145b65c8886f0285fee7e3a107b135912a49a4c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp313-cp313t-musllinux_1_2_x86_64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e3286c68d5e96ea538166e46309aaea796f81fbd82c0d712c015ee6da09ca266
MD5 d009627e20d9c31990152931a3adf704
BLAKE2b-256 a0845d9100de5f618959695dd4d514a9eddccbfb55631fdaf71563f023c00a61

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp313-cp313t-musllinux_1_2_aarch64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp313-cp313t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp313-cp313t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c70cf32bfd32c89fd576cdfdc466d63b1a46e84ff1f423326390e6c33ee4e58b
MD5 d834c5087ad4cb46f149c390cf565490
BLAKE2b-256 8ff45f5eda312c89146981445d11144148e8c72503d4d0f24d67ddb30eba0c35

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp313-cp313t-manylinux_2_28_x86_64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp313-cp313t-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp313-cp313t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c3a3bc4f4b9c4c40431b75e7f9cff14a126820a6a137d246e659a4b2b9258686
MD5 382ac4dc66c93e0d3be3c0c07b05a470
BLAKE2b-256 d1c3fb3345393cec0d37117e0a2512cfeae2fa6b961b608c54cb717a5b3b88b6

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp313-cp313t-manylinux_2_28_aarch64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp313-cp313t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0e051250bda26e5697a8840107ab3c45de10bfdef59ae9fa10d0c539eee9acb6
MD5 236dfe0afe60272d5bd7b87e1787908f
BLAKE2b-256 13e4e366fd116aa74cd118d73080fe022cac7c9fa09ca48c4fdb2c41a59f23e5

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp313-cp313t-macosx_11_0_arm64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp313-cp313t-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp313-cp313t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d852fd76ccc713272477ba0f97b1d35764e77081ece9324650801c7c9967f48b
MD5 b65c7b6130a668fd2b37bfb25202014c
BLAKE2b-256 c835b12bcc0b4933b6b39e1d3cefa000563a933784a688290a11365abd2abef4

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp313-cp313t-macosx_10_13_x86_64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: pyvolr-0.1.1-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 153.7 kB
  • Tags: CPython 3.10+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pyvolr-0.1.1-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 24a3b5ad334afa92edcef57dcf9656d28cf586684ee47b9f09829cd81a181c8c
MD5 995a2a6c22a3772383318685ae255035
BLAKE2b-256 c853e7f135bb8ced40b5c627948eb8de006fbe2403ea932fbe9a05a758ab7223

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp310-abi3-win_amd64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp310-abi3-win32.whl.

File metadata

  • Download URL: pyvolr-0.1.1-cp310-abi3-win32.whl
  • Upload date:
  • Size: 149.5 kB
  • Tags: CPython 3.10+, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pyvolr-0.1.1-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 8c80a7a347596443fc01d202a7032fa6c8da6b0bbe1d20df19eddafa8413cae1
MD5 f27aac28fb78ba5fb1b381b67cb3714e
BLAKE2b-256 7b3bffbf88be5fa351d7a173b9c25d8f09e5ad730b54cd10bcfbcee23e2bbc30

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp310-abi3-win32.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2824eb75e699115a398930faf75412216804ce6e398277336b2a84f10073d35a
MD5 706fd04ecd696d4bc6886e9ef9fd61f8
BLAKE2b-256 5bddd57c3c6f2639df4d5ba254f8ad8bbef1f65eeb87aa079acefbcbdb98449a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp310-abi3-musllinux_1_2_x86_64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp310-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp310-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 7d66259499d7087821bddfbfe41eb3b6198686fdb022615e51f389f9a7df5ed5
MD5 009b6823c60936b4b86cd0ffa0a34e26
BLAKE2b-256 239ed0117ea7fbf1c9700859c6f04697e72cbc068e4eb2fd10787f031b6ce2b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp310-abi3-musllinux_1_2_aarch64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp310-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3e60a767bf3a27639785262b515893f00a207fa631b7d3f12d1eebc067c08303
MD5 c9b2221df813a8af543dd0be515d11ea
BLAKE2b-256 d6734a01b1a1242863d551f4ee3dfb46e6d9aa3526c28db755baa0e911f2fb9e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp310-abi3-manylinux_2_28_x86_64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp310-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp310-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 fba553dd6a1da4b4669e741e40238f428365a74d60b70fd66b91c864b04c5a86
MD5 3041cc4cb037037df1446038b5220d39
BLAKE2b-256 c453fd3cc41ba2a5892daeb2af3131dec7beed3ec0f750736e161c0ab478158e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp310-abi3-manylinux_2_28_aarch64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 971e319bb0e4ddfa98ceeb0f3c43ef1cce09b175744fd3b15d13f901841d694c
MD5 bcaa3567cfb00c9e799ec71fdceb4c77
BLAKE2b-256 28e45ab36bdbe9cbd75e0ea64b5e21091602e105811bba39d96ccd4e09102a82

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp310-abi3-macosx_11_0_arm64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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

File details

Details for the file pyvolr-0.1.1-cp310-abi3-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.1-cp310-abi3-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 4225aa01ccb47d319eeb7c5c6b0d071e630fcd8f517887b7e6191aa5e39393c3
MD5 c226cbf77051b70b1f414a3ac59ecd22
BLAKE2b-256 148eb8850ff9ae2f733dcceebd8aed07e3bd3cea887e112fbb6b7824f7e96732

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.1-cp310-abi3-macosx_10_13_x86_64.whl:

Publisher: release.yml on yipjunkai/pyvolr

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