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 CI OpenSSF Scorecard License: MIT OR Apache-2.0 Python: 3.10+

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

⚙️ How it works

Your Python code
       │
       ▼
┌──────────────────┐
│  pyvolr.bs       │  numpy broadcasting, flag normalization,
│  (Python)        │  scalar/array dispatch
└────────┬─────────┘
         │  flat f64 + i8 numpy arrays
         ▼
┌──────────────────┐
│  pyvolr._core    │  PyO3 bindings, GIL released around the math
│  (Rust ext)      │
└────────┬─────────┘
         │  zero-copy slices via ndarray
         ▼
┌──────────────────┐
│  pyvolr-core     │  BSM pricing, analytical Greeks, IV solver
│  (Rust crate)    │  pure Rust, libm::erf, no Python dependency
└──────────────────┘

Inputs are broadcast and ravelled in Python, the Rust core operates on flat slices, results are reshaped on return. abi3 wheels mean a single binary works across Python 3.10–3.14 — no compiler required.

📦 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.

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.

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)

✨ Features

  • Black-Scholes-Merton pricing — calls and puts with continuous dividend yield
  • 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 for one-import-line migration
  • Rust core, no compiler needed — abi3 wheels for Python 3.10–3.14 × {Linux, macOS, Windows}
  • 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)
  • Black-76 (futures options)
  • 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

# 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

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
│       ├── 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                # Public API (numpy-broadcast wrappers)
│   ├── _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, differential, security, docs, …
├── 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
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 (no stored credentials, no manual twine upload)
  • 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 (Black-76, 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.0.tar.gz (26.6 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.0-cp314-cp314t-win_amd64.whl (137.1 kB view details)

Uploaded CPython 3.14tWindows x86-64

pyvolr-0.1.0-cp314-cp314t-win32.whl (133.2 kB view details)

Uploaded CPython 3.14tWindows x86

pyvolr-0.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl (313.5 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

pyvolr-0.1.0-cp314-cp314t-musllinux_1_2_aarch64.whl (288.6 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

pyvolr-0.1.0-cp314-cp314t-manylinux_2_28_x86_64.whl (232.4 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ x86-64

pyvolr-0.1.0-cp314-cp314t-manylinux_2_28_aarch64.whl (223.0 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

pyvolr-0.1.0-cp314-cp314t-macosx_11_0_arm64.whl (208.8 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

pyvolr-0.1.0-cp314-cp314t-macosx_10_15_x86_64.whl (221.1 kB view details)

Uploaded CPython 3.14tmacOS 10.15+ x86-64

pyvolr-0.1.0-cp313-cp313t-win_amd64.whl (140.1 kB view details)

Uploaded CPython 3.13tWindows x86-64

pyvolr-0.1.0-cp313-cp313t-win32.whl (133.3 kB view details)

Uploaded CPython 3.13tWindows x86

pyvolr-0.1.0-cp313-cp313t-musllinux_1_2_x86_64.whl (315.8 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

pyvolr-0.1.0-cp313-cp313t-musllinux_1_2_aarch64.whl (290.8 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

pyvolr-0.1.0-cp313-cp313t-manylinux_2_28_x86_64.whl (234.9 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.28+ x86-64

pyvolr-0.1.0-cp313-cp313t-manylinux_2_28_aarch64.whl (225.0 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.28+ ARM64

pyvolr-0.1.0-cp313-cp313t-macosx_11_0_arm64.whl (208.8 kB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

pyvolr-0.1.0-cp313-cp313t-macosx_10_13_x86_64.whl (220.9 kB view details)

Uploaded CPython 3.13tmacOS 10.13+ x86-64

pyvolr-0.1.0-cp310-abi3-win_amd64.whl (140.7 kB view details)

Uploaded CPython 3.10+Windows x86-64

pyvolr-0.1.0-cp310-abi3-win32.whl (136.2 kB view details)

Uploaded CPython 3.10+Windows x86

pyvolr-0.1.0-cp310-abi3-musllinux_1_2_x86_64.whl (316.5 kB view details)

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

pyvolr-0.1.0-cp310-abi3-musllinux_1_2_aarch64.whl (292.4 kB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARM64

pyvolr-0.1.0-cp310-abi3-manylinux_2_28_x86_64.whl (235.5 kB view details)

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

pyvolr-0.1.0-cp310-abi3-manylinux_2_28_aarch64.whl (226.6 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ ARM64

pyvolr-0.1.0-cp310-abi3-macosx_11_0_arm64.whl (211.9 kB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

pyvolr-0.1.0-cp310-abi3-macosx_10_13_x86_64.whl (224.6 kB view details)

Uploaded CPython 3.10+macOS 10.13+ x86-64

File details

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

File metadata

  • Download URL: pyvolr-0.1.0.tar.gz
  • Upload date:
  • Size: 26.6 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.0.tar.gz
Algorithm Hash digest
SHA256 cd5fae4e2513c42d5b778e8f19611c91d20050243329db78f5c849e8fa40ec93
MD5 94b00cd4770a97d8e47aba5f19954161
BLAKE2b-256 8c85802d18ce8a7c7f8b38fa4e27c108e22472cfb4af8e5d0f23d15f781bd3ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0.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.0-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: pyvolr-0.1.0-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 137.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.0-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 d2b211b2f6041cb80e6bcc38932af9344d14849962765043268418474bb0af6e
MD5 22283297e4a6dac499e7605cc00e956a
BLAKE2b-256 ed9d4d2fda15f1736b61428730ee2b2401faf3e4ea472f6d971aee051e11ae8d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp314-cp314t-win32.whl.

File metadata

  • Download URL: pyvolr-0.1.0-cp314-cp314t-win32.whl
  • Upload date:
  • Size: 133.2 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.0-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 9a659afe4ca653f1474cb3832f1778badcb3cf0454f104c93d6670aa240ce4f1
MD5 f37eb752416aa1fea40fe5e55267aeba
BLAKE2b-256 eaa29d2233b6bb27d8c752d015f0388d74cedc1841e278a49a07e9cfae59cca0

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a59d9f325ce55aaa87670dff31b432272cd0b7bd88a1dff7875b06fd25d7c354
MD5 419f44557eceb8fa20e332486d4d07e7
BLAKE2b-256 f860c42d146ffb9123aca7237058aa1e2ccc8240531a29bcdbbd8a9c7818c4b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 5f7347bd415e4ec626452381ee50fbfdc5990af588c0fb5e8a38507c64780399
MD5 62ccbaae8fa2875d5ef43c8ce0227300
BLAKE2b-256 69ba21103ef1c7a5d2ec50a538420c6adf62975d77eef7ad80b429fbcca8eab8

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp314-cp314t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 87e0f26047d1abf891194586a99f364d75ccc6e94051c66f6fc4cbad12892d61
MD5 2c423b3f6ea620a62e9bca3515b06f61
BLAKE2b-256 412115416d3b5a7fce8c520822350f5a0bfff008fe6260d27c8a182d248da323

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp314-cp314t-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3cc9cf3f432c0a1644621ccbb130d29488560a427175705780e397b7ca127b5c
MD5 8c25dca972cf4192e5120084ed9141ed
BLAKE2b-256 df54dde7c26f4fcfdb81ecc365fd9e7c3b32f850dca4d3ce522d055d03318104

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e4aa123d49cc134d85e84b3afb653115f65e07dc7d22cddac8fb8a107d273067
MD5 5f7b01574af299cb88bf5d976cc12086
BLAKE2b-256 6d23422b0b542db93f1322be33a7f3de1394e349db39cb41b5cdb9b5494826bf

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp314-cp314t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 21713c9bb5e678e8a59fab57ff30e931b017d428a073b7034f38b30f3959e6dc
MD5 8e25ca1354e40498aba9f2ee1e47b672
BLAKE2b-256 b90f4e2cb02e4dcb29b87a44952fc35f87e720ba39525da79b2c5bd714569915

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp313-cp313t-win_amd64.whl.

File metadata

  • Download URL: pyvolr-0.1.0-cp313-cp313t-win_amd64.whl
  • Upload date:
  • Size: 140.1 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.0-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 f5d27dc6fe47cfc30c035e9291521b4367354c7ad918f9c578592a9b4fc00e0a
MD5 23a6bfab04ff195dc6088d34cb4a03ea
BLAKE2b-256 7fef11ea441c6c4396757ea157bb8b9c162fd7ec6c9a887644a431da7c57d99a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp313-cp313t-win32.whl.

File metadata

  • Download URL: pyvolr-0.1.0-cp313-cp313t-win32.whl
  • Upload date:
  • Size: 133.3 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.0-cp313-cp313t-win32.whl
Algorithm Hash digest
SHA256 d94caf6c101f90550ac6c9d958078f0ffbeca18ce09b5967ae12377548a43d11
MD5 ae94a12b10a8a99116371f6c670e22b0
BLAKE2b-256 23c6c99fd503e6987fa838e1f4ef7390eaad24b85fd5c0f40ef19641087bdb8b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ab11c8299c271a48a225f532eeff288137224429e73f1aebb7d285f001821483
MD5 c01e7c1e0c2bf305ae061afe00317021
BLAKE2b-256 297ef31cfc21e4a6d0280986f6b56ea8c7f3d1a3c2d5b47a6e5223d4b5959f11

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 966554de61a0eb29e28398d8bd062d8a5bf50e8153bb806bbd5b88af40638b1b
MD5 4bfee67aaf1576fecded20d71e17cfa6
BLAKE2b-256 324cf0b660f259234aa99d836c09d74d91cff2be428133de835c4bb3a3bc8854

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp313-cp313t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp313-cp313t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0b95fd85ae75b404c97fa302c11141d6044fd6b77b22f08527559aac368ed707
MD5 7d82915c13bcbd6fc6ec5ae446ce3559
BLAKE2b-256 173de87a293c5d51e0b8b19cce7a97f0e5912602d64fa4a40ba69eaa8143660a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp313-cp313t-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp313-cp313t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6afc8e0941ba211e72cd3924303c426ba719e46c5a3b4004104a3fa883bb8d8b
MD5 19c7dcaee8d0231909f652fdf4785bfe
BLAKE2b-256 dd27d42a67a222de03d493800ed507fd34c3a07f132047759975e31d322b4ea8

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp313-cp313t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 511a277142e7291eee7fd8f08d423f8bbe8230137302e6b34b57455e5a21d4fb
MD5 584f73e7c82d055159ac6710b26a8a20
BLAKE2b-256 ba6cf3be54a5ea18c0eb91ce1018517e466dc4d4fdf23166c8253e47ac10b1ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp313-cp313t-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp313-cp313t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 c8cced6bc90600c697a8f2db43c2b7ec5e63d1aeb419982251b22b359361bf4e
MD5 0565f7dee51217d9883411c375e358df
BLAKE2b-256 d1624767d89f217269ff8094c18b34523918da8871d0d42090016938e26fb544

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: pyvolr-0.1.0-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 140.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.0-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 9c3aa6263054ae464557a5dfc275e0ac492bbb6194eb31c4c2b58a36161c72de
MD5 e845405c59cc06a1037fbfe8e569f7dc
BLAKE2b-256 f18372c988d08342b1d59de0d49526cb2321fa389a9a8288b8dfa0dd905b4217

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp310-abi3-win32.whl.

File metadata

  • Download URL: pyvolr-0.1.0-cp310-abi3-win32.whl
  • Upload date:
  • Size: 136.2 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.0-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 3d460f2f16906480d65fe99106752a14e2448c38bbd16670053c8cfac9379583
MD5 c101acfdfde6a195eac16e51117f5ca1
BLAKE2b-256 12a36e348e14ee47eff060596e03aa00a6406d0949213a3ab3e297da631fc1c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 05d836817f2f4742e2c58449d9563c3ba020067be2a4675484140f2916a918b4
MD5 fc569445b14454fb31697261f6269790
BLAKE2b-256 656382ea260166e5715df23abcacd5645126b18b165c632deb737218d4198790

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp310-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp310-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 ae1a71548e10d072aeeb37267c6ca7ccd0b139d4c1020ab928b2b7733f6fb046
MD5 a108b0bbda3420ec39de6aacc80e3677
BLAKE2b-256 2ffd560f9bdc012c6926c3de8c47b87b9922465fd64efa3f37507a415114955a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp310-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 145a2c671f51f1d892b269b67ce3ae6be96ca14fbc367333c86e091f7c9ffac5
MD5 299a00a7a337655593b2ec20d3f75c82
BLAKE2b-256 1c241a58f2461e826f32c034c19d330a6af13e53cfea134db9f69f5c62c772ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp310-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp310-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 14578fd9d6683141008aa2d0e9ee7c3d054099d4dcb0f710a28663d3c0a7caac
MD5 a51b684a250c895462309c703a872c3c
BLAKE2b-256 5e7435a564900186188931311bc1d7ecb62ce077c34f53a260be42e009166c0e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d16d77b5b10ae51b6ecffbb7d104f4398c82d4761df67103fd8cf52f5490a629
MD5 ae5c7f7d717a254b92e6c1d5e55b7818
BLAKE2b-256 145269e5a5fe8812d7e0a5d1aaa2618f29a4b1b611ebf6a06d823da80a4a7d2b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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.0-cp310-abi3-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pyvolr-0.1.0-cp310-abi3-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a99f9a017e83b66303ac6fc8f9eea142f7b0945c08d933afb377198b3bd3232b
MD5 ed2c9268deb137aec9c61c6dd2fcfa04
BLAKE2b-256 b7aa93ea66ca81154930c9f911bd32e5486c2189e11db027d7025db3358008b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvolr-0.1.0-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