Skip to main content

VCell Moving Boundary Solver

A C++ solver library for moving-boundary problems in biological systems. A single build produces three artifacts:

Artifact Description
MovingBoundarySolver Standalone command-line binary
libMovingBoundaryLib Linkable static (or shared) library
pyvcell_mbsolver Python package (pybind11 _core extension + wrapper)

Prerequisites

All platforms

Dependency Notes
CMake ≥ 3.13 https://cmake.org/download/
C++14 compiler GCC 7+, Clang 6+, MSVC 2017+
HDF5 (C + C++) See platform sections below
Boost (headers) multi_array, iterator, logic, polygon — header-only; see platform sections
Python 3 + headers Python 3.8+ recommended
pybind11 pip install pybind11 or system package

Boost is required (header-only) — the build fails at configure time if it is not found. libcurl is only needed when -DOPTION_TARGET_MESSAGING=ON (off by default).

All former VCell monorepo dependencies (FronTier, ExpressionParser, vcommons) are bundled in this repo and built automatically — no external paths required.


Building

Ubuntu / Debian

# System dependencies
sudo apt-get install cmake libhdf5-dev libboost-dev python3-dev python3-pip pybind11-dev
pip3 install pybind11
# libcurl4-openssl-dev is only needed if you build with -DOPTION_TARGET_MESSAGING=ON

# Configure (substitute your actual library paths)
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release

# Build everything
cmake --build build --parallel

Output files land in build/bin/:

build/bin/
  MovingBoundarySolver              # binary
  libMovingBoundaryLib.a            # static library
  pyvcell_mbsolver/                 # Python package
    __init__.py                     #   high-level wrapper
    _core.cpython-*.so              #   compiled pybind11 extension

macOS

# Dependencies via Homebrew
brew install cmake hdf5 boost python pybind11
# add `curl` too if you build with -DOPTION_TARGET_MESSAGING=ON

# Configure
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release

# Build everything
cmake --build build --parallel

For Apple Silicon the build system detects the architecture automatically and sets -DCMAKE_OSX_ARCHITECTURES=arm64. On Intel Macs it sets x86_64.


Windows (Visual Studio + vcpkg)

Native Windows builds use MSVC (Visual Studio 2022 / Build Tools) with the C++ dependencies supplied by vcpkg. All source, tests, and the Python extension build and pass on Windows.

Install prerequisites:

  • Visual Studio 2022 or the Build Tools, with the Desktop development with C++ workload (x64 toolset)
  • CMake
  • Python 3 (check "Add to PATH")
  • A bootstrapped vcpkg checkout (e.g. C:\vcpkg)
  • Strawberry Perl — some vcpkg ports (curl/openssl) need it to build: choco install strawberryperl

The C++ dependencies (HDF5, Boost, curl, pybind11) are declared in vcpkg.json and installed via vcpkg's manifest mode.

Easiest: the helper script

build-windows.ps1 (repo root) reproduces the CI build end to end — it installs the vcpkg dependencies, configures with the Visual Studio generator, and builds Release:

.\build-windows.ps1              # full build
.\build-windows.ps1 -Test        # build, then run ctest
.\build-windows.ps1 -SkipVcpkg   # skip the (slow) dependency install on reruns

Manual

# 1. Install the manifest dependencies into .\vcpkg_installed
C:\vcpkg\vcpkg.exe install --triplet x64-windows

# 2. Configure. -G is required because a default of Ninja rejects -A x64;
#    the vcpkg toolchain makes CMake find the installed packages.
cmake -S . -B build -G "Visual Studio 17 2022" -A x64 `
  -DCMAKE_TOOLCHAIN_FILE=C:\vcpkg\scripts\buildsystems\vcpkg.cmake

# 3. Build
cmake --build build --config Release --parallel

Output files land in build\bin\Release\ (binary + .lib), and the Python package under build\bin\pyvcell_mbsolver\.


Build options

CMake variable Default Description
CMAKE_BUILD_TYPE Release Release, Debug, RelWithDebInfo, MinSizeRel
BUILD_SHARED_LIBS OFF Build libMovingBoundaryLib as a shared library instead of static
BUILD_TESTING ON Also build the TestMovingBoundary test executable
VARIABLE_SPECIES_STORAGE OFF Enable dynamic species storage (-DMB_VARY_MASS)
OPTION_TARGET_MESSAGING OFF Job-status messaging to VCell's broker via libcurl (on in the release builds)
MB_BUILD_PYTHON ON Build the pybind11 bindings; the release archives turn it off
MB_HDF5_CONFIG OFF Find HDF5 through its CMake package config (the release builds' static HDF5)

Example — debug build, shared library, no tests:

cmake -S . -B build \
  -DCMAKE_BUILD_TYPE=Debug \
  -DBUILD_SHARED_LIBS=ON \
  -DBUILD_TESTING=OFF \
cmake --build build --parallel

Running the tests

Tests are built by default (BUILD_TESTING=ON). After a successful build:

cd build
ctest --output-on-failure

Test suites

All three suites run automatically when you invoke ctest. The Python tests require pytest (pip install pytest).

Suite Name in ctest Framework
Moving boundary unit tests (~150 cases) TestMovingBoundary.* Google Test
Expression parser smoke test ExpressionParserTest custom main
Python wrapper tests PyVcellMbSolver pytest

Python test prerequisites

No manual setup required. CMake creates an isolated virtual environment in build/python_venv/ at configure time and installs pytest into it automatically. The venv is recreated on every cmake -S . -B build run.

The Python tests import pyvcell_mbsolver._core (the compiled extension) and pyvcell_mbsolver (the high-level wrapper in python/). ctest sets PYTHONPATH so the package is importable from the build tree without installation.

Useful ctest options

# Run in parallel
ctest --output-on-failure -j$(nproc)

# Run only tests whose name matches a pattern
ctest --output-on-failure -R "algo"
ctest --output-on-failure -R "ExpressionParser"
ctest --output-on-failure -R "PyVcellMbSolver"

# List all registered tests without running them
ctest -N

# Show full output even for passing tests
ctest -V

Running the Python tests directly

After configuring, the venv already has pytest installed. Run the suite directly using the venv's Python:

PYTHONPATH=build/bin:python build/python_venv/bin/python -m pytest python/tests -v

On Windows, substitute build\python_venv\Scripts\python.exe.

Skipping tests

Pass -DBUILD_TESTING=OFF at configure time to skip building and registering the test executables entirely (this also disables the Python tests):

cmake -S . -B build -DBUILD_TESTING=OFF

Releases for VCell (SOLVER-RELEASE)

VCell consumes this repository through its GitHub releases and container images, under the contract every VCell solver repository meets (VCell docs/plan-solver-repos.md §1). .github/workflows/build-and-release.yml implements it; a vX.Y.Z tag on main (matching the project() version in CMakeLists.txt, which the workflow checks) publishes everything below. Pull requests build and test all of it.

Release assets — each archive holds, at its root, the executable under the name VCell resolves (MovingBoundary_x64, .exe on Windows), LICENSE and a VERSION file; no static libraries or test binaries.

asset built on contents
linux64.tgz manylinux_2_28_x86_64 runs on glibc ≥ 2.28. HDF5 1.14 and an HTTP-only libcurl are linked statically; it needs only glibc, libstdc++ and libgcc_s (checked by packaging/check-portable.sh)
linux64arm.tgz manylinux_2_28_aarch64 the same for aarch64
mac64.tgz macos-15 + macos-15-intel a universal (arm64 + x86_64) binary, macOS ≥ 13.3, HDF5 static, only /usr/lib system libraries (libc++, libcurl), ad-hoc signed
win64.zip windows-latest (MSVC, vcpkg) the exe with its HDF5/zlib DLLs and the MSVC runtime DLLs next to it (packaging/bundle-windows.py)
SHA256SUMS a checksum for each archive

Messaging (-tid <n> plus the <jms> block VCell writes for HPC runs, reported to the broker's REST API) is compiled into the Linux and macOS builds; the Windows build leaves it out, since the desktop client never passes -tid.

Container image ghcr.io/virtualcell/vcell-mbsolver:<X.Y.Z> (and :latest), linux/amd64 + linux/arm64: debian:bookworm-slim plus the Linux archive's contents in /opt/vcell/bin (on PATH) — docker/Dockerfile compiles nothing. SIF oras://ghcr.io/virtualcell/vcell-mbsolver_singularity:<X.Y.Z> (amd64), built from that image and pushed with ORAS.

Entry point /usr/local/bin/vcell-solver-entrypoint (docker/entrypoint.sh): no argument or --help prints the version and the executables and exits 0; a first argument naming a provided executable is execed (exit codes and SIGTERM pass through); anything else prints usage and exits 2. It writes nothing, runs as any uid and works from a read-only SIF, with argv as VCell's SlurmProxy writes it:

singularity run --containall --bind /share/apps/vcell3/users:/simdata <sif> \
    MovingBoundary_x64 --config /simdata/<user>/SimID_<key>_0_mb.xml -tid 0

Smoke test and reference. smoke/ holds a VCell-generated input (SimID_254696951_0_mb.xml: the MBswept model — a circular cell translating with velocity (sin t, cos t), two diffusing species, 31×31 nodes, t ∈ [0, 1]) and reference.h5, its output from the legacy MovingBoundary_x64 (vcell-solvers v0.0.44-dev4, macOS x86_64), which is bit-identical to the ghcr.io/virtualcell/vcell-solvers:v0.8.2 image's. CI runs it through every archive, the image (as a non-root uid with a read-only root) and the SIF (under apptainer run --containall), each with -tid 0, compares every species at every output time with smoke/compare.py, and checks that a run with a <jms> block reports its worker events to a stand-in broker (smoke/fake_broker.py).

To run it by hand:

python smoke/prepare.py /tmp/mb --output-dir /tmp/mb
MovingBoundary_x64 --config /tmp/mb/SimID_254696951_0_mb.xml
python smoke/compare.py smoke/reference.h5 /tmp/mb/SimID_254696951_0_.h5

Cutting a release. Bump project(VCellMovingBoundary VERSION X.Y.Z) in CMakeLists.txt (the Python wheel version follows it), merge to main, then tag vX.Y.Z on main. The tag also triggers wheels.yml, which publishes pyvcell_mbsolver X.Y.Z to PyPI.


Using the binary

./build/bin/MovingBoundarySolver --config <input_mb.xml> [-tid <n>]

The input file format is described in metadata/MovingBoundarySolverInputFile.docx and validated by Solver/MovingBoundarySetup.xsd.


Linking the library

Add to your project's CMakeLists.txt:

find_library(MB_LIB MovingBoundaryLib HINTS /path/to/vcell-mbsolver/build/bin)
find_path(MB_INCLUDE MovingBoundaryParabolicProblem.h
    HINTS /path/to/vcell-mbsolver/Solver/include)

target_link_libraries(my_target PRIVATE ${MB_LIB})
target_include_directories(my_target PRIVATE ${MB_INCLUDE})

Or install the project first and use the installed headers under <prefix>/include/vcell-mbsolver/.


Using the Python module

The bindings are shipped as the pyvcell_mbsolver package: the compiled extension is the private submodule pyvcell_mbsolver._core, and the high-level wrapper (MovingBoundarySolver, observer base classes) is the package itself.

import sys
sys.path.insert(0, "/path/to/vcell-mbsolver/build/bin")

import pyvcell_mbsolver
from pyvcell_mbsolver import MovingBoundarySolver   # high-level wrapper
from pyvcell_mbsolver import _core                  # low-level C++ API
# See python/pyvcellmbsolver.cpp for the exposed _core API

After cmake --install build --prefix /usr/local, the package is installed to the active Python's site-packages and importable directly:

import pyvcell_mbsolver

Python package & wheels

The repository also ships a PEP 517 build configuration (pyproject.toml, using the scikit-build-core backend) that drives the same CMake build to produce an installable Python wheel. The wheel contains only the pyvcell_mbsolver package (the _core extension and its pure-Python wrapper) — not the C++ library, CLI binary, or headers.

Install from a downloaded wheel

CI builds redistributable wheels for Linux (x86_64 + arm64) and macOS (x86_64 + arm64, macOS 15+) and uploads them as workflow artifacts (see the Wheels GitHub Actions workflow). Download the wheel for your platform/Python version and:

pip install pyvcell_mbsolver-<version>-<tags>.whl
python -c "import pyvcell_mbsolver; from pyvcell_mbsolver import _core; print('ok')"

The wheels are self-contained: the shared HDF5 libraries are vendored in by the wheel-repair step (auditwheel / delocate), so no system HDF5 install is required to use a wheel.

Native Windows source builds are supported via the Visual Studio/vcpkg flow above, but redistributable Windows wheels are not published yet. Use the source-build steps from the Windows section when building on MSVC.

Build a wheel locally

Building from source still needs the native toolchain and dependencies from the Prerequisites section (CMake, a C++14 compiler, HDF5, Boost):

pip install build
python -m build --wheel          # writes dist/pyvcell_mbsolver-*.whl
pip install dist/pyvcell_mbsolver-*.whl

pip install . works too. Wheel builds set BUILD_TESTING=OFF and OPTION_TARGET_MESSAGING=OFF automatically (see [tool.scikit-build] in pyproject.toml).

Publishing to PyPI

The Wheels workflow has a publish job that uploads the built wheels and sdist to PyPI via trusted publishing (OIDC — no stored API token). It runs only on v* tag pushes and stays dormant until a one-time setup is done on PyPI:

  1. Register the project on PyPI (claim the pyvcell_mbsolver name).
  2. Under the project's Publishing settings, add a trusted publisher:
    • Owner: virtualcell, Repository: vcell-mbsolver
    • Workflow: wheels.yml, Environment: pypi
  3. Create the pypi environment in the repo settings (optionally with reviewers/branch protection).

Once configured, pushing a vX.Y.Z tag builds all wheels and publishes them. Until then, normal pushes and PRs simply produce downloadable wheel artifacts.

The workflow also has a publish-testpypi job to rehearse the release against TestPyPI before touching real PyPI. It runs only when the workflow is manually dispatched with the testpypi flag, and needs its own one-time setup mirroring the above:

  1. Create a TestPyPI account (separate from PyPI; 2FA required).
  2. At https://test.pypi.org/manage/account/publishing/, add a pending publisher:
    • PyPI Project Name: pyvcell_mbsolver
    • Owner: virtualcell, Repository: vcell-mbsolver
    • Workflow: wheels.yml, Environment: testpypi
  3. Create a testpypi environment in the repo settings.

Then trigger the dry run (no tag needed):

gh workflow run wheels.yml -f testpypi=true

(or Actions → Wheels → Run workflow, check the box). It builds all wheels + sdist and uploads them to TestPyPI; skip-existing keeps repeat runs of the same version from failing. Verify at https://test.pypi.org/project/pyvcell-mbsolver/, then do the real release by tagging vX.Y.Z.

Metadata

Release files for pyvcell-mbsolver 1.0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyvcell-mbsolver 1.0.5
File Size Uploaded
pyvcell_mbsolver-1.0.5.tar.gz 2.1 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for pyvcell-mbsolver 1.0.5
File
pyvcell_mbsolver-1.0.5-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
pyvcell_mbsolver-1.0.5-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
pyvcell_mbsolver-1.0.5-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ ARM64, Linux glibc 2.27+ ARM64 Details
pyvcell_mbsolver-1.0.5-cp314-cp314-macosx_15_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 15.0+ x86-64 Details
pyvcell_mbsolver-1.0.5-cp314-cp314-macosx_15_0_arm64.whl CPython 3.14 CPython 3.14 macOS 15.0+ ARM64 Details
pyvcell_mbsolver-1.0.5-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
pyvcell_mbsolver-1.0.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
pyvcell_mbsolver-1.0.5-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64, Linux glibc 2.27+ ARM64 Details
pyvcell_mbsolver-1.0.5-cp313-cp313-macosx_15_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 15.0+ x86-64 Details
pyvcell_mbsolver-1.0.5-cp313-cp313-macosx_15_0_arm64.whl CPython 3.13 CPython 3.13 macOS 15.0+ ARM64 Details
pyvcell_mbsolver-1.0.5-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
pyvcell_mbsolver-1.0.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
pyvcell_mbsolver-1.0.5-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.27+ ARM64, Linux glibc 2.28+ ARM64 Details
pyvcell_mbsolver-1.0.5-cp312-cp312-macosx_15_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 15.0+ x86-64 Details
pyvcell_mbsolver-1.0.5-cp312-cp312-macosx_15_0_arm64.whl CPython 3.12 CPython 3.12 macOS 15.0+ ARM64 Details
pyvcell_mbsolver-1.0.5-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
pyvcell_mbsolver-1.0.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
pyvcell_mbsolver-1.0.5-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64, Linux glibc 2.27+ ARM64 Details
pyvcell_mbsolver-1.0.5-cp311-cp311-macosx_15_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 15.0+ x86-64 Details
pyvcell_mbsolver-1.0.5-cp311-cp311-macosx_15_0_arm64.whl CPython 3.11 CPython 3.11 macOS 15.0+ ARM64 Details
pyvcell_mbsolver-1.0.5-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
pyvcell_mbsolver-1.0.5-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
pyvcell_mbsolver-1.0.5-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.27+ ARM64, Linux glibc 2.28+ ARM64 Details
pyvcell_mbsolver-1.0.5-cp310-cp310-macosx_15_0_x86_64.whl CPython 3.10 CPython 3.10 macOS 15.0+ x86-64 Details
pyvcell_mbsolver-1.0.5-cp310-cp310-macosx_15_0_arm64.whl CPython 3.10 CPython 3.10 macOS 15.0+ ARM64 Details

Total release size: 86.2 MB

Release files / pyvcell_mbsolver-1.0.5.tar.gz

Download URL pyvcell_mbsolver-1.0.5.tar.gz
Size 2.1 MB
Tags Source
SHA-256 checksum
How to use checksums
9145a399debf9f5ab9dca5b65470ece241fc81925814a430b19f3a8da7a9f312
BLAKE2b-256 checksum
How to use checksums
6147dabf1c911f68153a06ca8bbe170832952d88aa5d74680a6959715ffc6048
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp314-cp314-win_amd64.whl

Download URL pyvcell_mbsolver-1.0.5-cp314-cp314-win_amd64.whl
Size 3.4 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
e037c806063bd26872805134803b2a102f9ecd16bede339b07160bbcd951fc21
BLAKE2b-256 checksum
How to use checksums
b899726aa142ee4c5d8800ab1ac3d1401ebd87b8f428ca70a9823649638fd365
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL pyvcell_mbsolver-1.0.5-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.7 MB
Tags CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
e2eafac79df31d15eec636131684c6457072e0b742d5258c1305aaed12e1c89a
BLAKE2b-256 checksum
How to use checksums
3e3be12b1aacb030d097de01d38df5773dc85979e370bcbd48bb8e2898e02a44
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl

Download URL pyvcell_mbsolver-1.0.5-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Size 3.4 MB
Tags CPython 3.14 Linux glibc 2.27+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
da00d6d4ede330568e7f4fd1aba07f981160a7732dcd7df12cf62f234c3dca16
BLAKE2b-256 checksum
How to use checksums
8f78e028b27ba0841cc22a365d8154401953ebfed28a23bd5b7f19983308b256
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp314-cp314-macosx_15_0_x86_64.whl

Download URL pyvcell_mbsolver-1.0.5-cp314-cp314-macosx_15_0_x86_64.whl
Size 3.4 MB
Tags CPython 3.14 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
c17f2f1b9ce2aab2a877b599ca6f5cc60d0f162496345fae6ee0ab2af08514bf
BLAKE2b-256 checksum
How to use checksums
e7bfcd254f6d16db5d793e08c7fd32fc072f888a8accafbde4a1c95441319bce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp314-cp314-macosx_15_0_arm64.whl

Download URL pyvcell_mbsolver-1.0.5-cp314-cp314-macosx_15_0_arm64.whl
Size 3.1 MB
Tags CPython 3.14 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
74910b344fcf08a984e59dae4b921ffe65b711c8194d0703c4321142ee4c0adf
BLAKE2b-256 checksum
How to use checksums
c73d7fecbbd81373f65bccc397354b0abab54bd0ff9ccdede77d4f9e9c60e08f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp313-cp313-win_amd64.whl

Download URL pyvcell_mbsolver-1.0.5-cp313-cp313-win_amd64.whl
Size 3.3 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
b8e79e107f16fbc56c72da3a0271ec6bfcfa5a53b845fc7edad56626a872049a
BLAKE2b-256 checksum
How to use checksums
fd334696857886253167cb5cc94deeea94c1f433824b68efdbf41bb2f58323ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL pyvcell_mbsolver-1.0.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.7 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
9abd4c6cdf45133dc26a12dd29ef9b78b25e8a9e93886ccf312cd9fbac8662fd
BLAKE2b-256 checksum
How to use checksums
84b7706f8ee6be60b517e89a5f9389e13a25cf198044e981146a05a2aa12f6cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl

Download URL pyvcell_mbsolver-1.0.5-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Size 3.4 MB
Tags CPython 3.13 Linux glibc 2.27+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
ce17b62ca5cf1dde2a9305de7fdf41d6532a9baebfdc15f73d702d235ab4fb7d
BLAKE2b-256 checksum
How to use checksums
20d9fe8a2f11a767a585248cb95312ae35361082c6f16a36f56ed3636ee849d2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp313-cp313-macosx_15_0_x86_64.whl

Download URL pyvcell_mbsolver-1.0.5-cp313-cp313-macosx_15_0_x86_64.whl
Size 3.4 MB
Tags CPython 3.13 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
ec8812104cb03b0b3247c8c33102262e8c50c844e62eca6a3270c09ca49f38c4
BLAKE2b-256 checksum
How to use checksums
ebea7c5d75de29fdf6ba5e5929e28b5ca18ea9c52707f1e1b306e84ab8dd1482
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp313-cp313-macosx_15_0_arm64.whl

Download URL pyvcell_mbsolver-1.0.5-cp313-cp313-macosx_15_0_arm64.whl
Size 3.1 MB
Tags CPython 3.13 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
6980e2cb618ac328b186909cca2c86620bbdb4bd0cbf9138818beee8f30c20f5
BLAKE2b-256 checksum
How to use checksums
eb6595ede88a520d3db54941e209f3b13d804ef06ee44912e024397bacfd614c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp312-cp312-win_amd64.whl

Download URL pyvcell_mbsolver-1.0.5-cp312-cp312-win_amd64.whl
Size 3.3 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
b797341b0567a47551800b9ab0cc2cc0e6138a099b3ff88cfcdca0e0f23e7f2b
BLAKE2b-256 checksum
How to use checksums
eda7cc186533b6d7a319c6c5bec6ed380b1d45d63ea9e1559d8f565e4eaead40
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL pyvcell_mbsolver-1.0.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.7 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7b23dc6a628585c4ddd1c7e83a842c51f4000a7f3d18312927d16b2c80bbd06a
BLAKE2b-256 checksum
How to use checksums
1d4e28f952809eaaf8cd1dbe0093ab67ddda1074cede832d45374d09af9392d0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl

Download URL pyvcell_mbsolver-1.0.5-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Size 3.4 MB
Tags CPython 3.12 Linux glibc 2.27+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
6eaa05bf868a98b5b9a77d6dade4474fbf2dc297d02e63974c4dd9957585f9f7
BLAKE2b-256 checksum
How to use checksums
fc575ef3c413b98024ae2ee7bfc746553b02e1793acce6812b076ff6831e6246
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp312-cp312-macosx_15_0_x86_64.whl

Download URL pyvcell_mbsolver-1.0.5-cp312-cp312-macosx_15_0_x86_64.whl
Size 3.4 MB
Tags CPython 3.12 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
5ca2133d40eaead83a3595839c0bf5a52bfe78829a9613407db43899b06a3d6c
BLAKE2b-256 checksum
How to use checksums
4c00d034608b8bdd04fa45039768bbb1c73e2b2951934ee15ee0632934766601
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp312-cp312-macosx_15_0_arm64.whl

Download URL pyvcell_mbsolver-1.0.5-cp312-cp312-macosx_15_0_arm64.whl
Size 3.1 MB
Tags CPython 3.12 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
016285483d67d8abb7c9188da3f527f48848ccf4b24d1d7492f6bda8fc303625
BLAKE2b-256 checksum
How to use checksums
0d25fb05f250dc7a6dd4bcb48a5d09253d80f07464b64a73d1dd6f42f79fd72c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp311-cp311-win_amd64.whl

Download URL pyvcell_mbsolver-1.0.5-cp311-cp311-win_amd64.whl
Size 3.3 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
35c576fab6edc292bf2c8580a69688513747395d4c6d72cd52337178e6270d44
BLAKE2b-256 checksum
How to use checksums
c9bd8ea6334728bc4d0063774e010705a2c188b0dccf226daf1136066cd18f42
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL pyvcell_mbsolver-1.0.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.7 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
a0edd62f35c3bb1b83a7012268c85fcd59e9b60a1bdb525bec75ad9c5194418e
BLAKE2b-256 checksum
How to use checksums
79764685f374f4a8ed06627fcd858638cf43de4d6637e27a72b9edd4357841b8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl

Download URL pyvcell_mbsolver-1.0.5-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Size 3.4 MB
Tags CPython 3.11 Linux glibc 2.27+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
dd4b194d8acd1a4206fc747224ce9ff3c1380a1e0b58440fac99af5ea14c4d88
BLAKE2b-256 checksum
How to use checksums
8dc1177ac7eba63564cad6d9919404b2fdb4ef6b4cefa52352581d57cef02cdd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp311-cp311-macosx_15_0_x86_64.whl

Download URL pyvcell_mbsolver-1.0.5-cp311-cp311-macosx_15_0_x86_64.whl
Size 3.4 MB
Tags CPython 3.11 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
628435299f8fee1789abefc763deb6cf9bad167ce4f88c4bc44260f81b1a88d5
BLAKE2b-256 checksum
How to use checksums
a21b5bbebfda35561c2aca2798ce810f8d68f638817147186ba9e904b2bcd388
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp311-cp311-macosx_15_0_arm64.whl

Download URL pyvcell_mbsolver-1.0.5-cp311-cp311-macosx_15_0_arm64.whl
Size 3.1 MB
Tags CPython 3.11 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
b0fffea52ec01fa95f413683fa33de13b757511c44cdfefa79557def1526209f
BLAKE2b-256 checksum
How to use checksums
7e2364518a597c74c27817c719b2de29eacea0590be0e62f809ca8a33d14357a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp310-cp310-win_amd64.whl

Download URL pyvcell_mbsolver-1.0.5-cp310-cp310-win_amd64.whl
Size 3.3 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
48481ece51b1d378bd2ac1e440359e54195102f514b9f2cf08aba139580f7a3f
BLAKE2b-256 checksum
How to use checksums
0a3afa466df490e94ff5046e71cab1ece53726ecd47af2dcabf5e9d3f2636900
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL pyvcell_mbsolver-1.0.5-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.7 MB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
0d986547d4e9b28afec715841b1c7e0d340082727a09cfa49bd6e60473d7cbf6
BLAKE2b-256 checksum
How to use checksums
2a67d4ceac5cb6e6c7966f3ad29730cdea3c812f983f94782f38947df8257ebe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl

Download URL pyvcell_mbsolver-1.0.5-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Size 3.4 MB
Tags CPython 3.10 Linux glibc 2.27+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
05414ef44b703aeaeab1fcc83361357fbb1c59ae11115ff229dc83cb76e307ff
BLAKE2b-256 checksum
How to use checksums
79d96de30c8c80fc71413890c0ecfc5cf12cae54164cfef387c22c45061ebeda
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp310-cp310-macosx_15_0_x86_64.whl

Download URL pyvcell_mbsolver-1.0.5-cp310-cp310-macosx_15_0_x86_64.whl
Size 3.4 MB
Tags CPython 3.10 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
e076ccb243949716b4ae2f1d94b2b07834ccbef2229fe93d4ceef5bbb5487c16
BLAKE2b-256 checksum
How to use checksums
1b0ab6b5d210fc0194776bd90a770b4aaa6427da84a400da170bd267fec76c01
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / pyvcell_mbsolver-1.0.5-cp310-cp310-macosx_15_0_arm64.whl

Download URL pyvcell_mbsolver-1.0.5-cp310-cp310-macosx_15_0_arm64.whl
Size 3.1 MB
Tags CPython 3.10 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
39676e97bae0a1679344dfdeaf7331e26c737a75d51057a973159fd02a2be9d8
BLAKE2b-256 checksum
How to use checksums
9030d3c98f0cd6f9e0714cfcf4a744e85b844dd939f7c24ac1d2fc9f8b834868
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.5 This release

26 release files

1.0.3

21 release files

1.0.2

17 release files

1.0.1

17 release files

1.0.0

17 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page