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.
libcurlis 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:
- Register the project on PyPI (claim the
pyvcell_mbsolvername). - Under the project's Publishing settings, add a trusted publisher:
- Owner:
virtualcell, Repository:vcell-mbsolver - Workflow:
wheels.yml, Environment:pypi
- Owner:
- Create the
pypienvironment 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.
Dry run on TestPyPI first (recommended)
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:
- Create a TestPyPI account (separate from PyPI; 2FA required).
- 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
- PyPI Project Name:
- Create a
testpypienvironment 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)
| File | Size | Uploaded | |
|---|---|---|---|
| pyvcell_mbsolver-1.0.5.tar.gz | 2.1 MB | Details |
Built distributions (wheels)
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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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 logRelease 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