Python bindings
pip install openbnct is the planned primary entry point for scientific users.
The package uses PyO3 and maturin to wrap the authoritative Rust crates; it
does not implement a second dose, geometry, evidence, or QA engine (ADR 0015).
The mixed-package shape is:
bindings/python/
Cargo.toml PyO3 extension crate (outside the workspace)
pyproject.toml maturin build and package metadata
src/lib.rs narrow Rust-to-Python boundary
python/openbnct/
__init__.py ergonomic public API
_openbnct.pyi checked extension types
py.typed typing marker
tests/ cross-language parity suite
The API covers case generation, verification, and gated loading for
NF-BNCT-001; geometry, ROI, and CT inspection; case.json manifest
reading and artifact re-verification; validated material, source, component
profile, response-generation method, and response-set contract readers with
canonical to_json serialization; the response-set folding_ready review
gate; statepoint collection; DVH and dose-volume metrics; biological-model
application and TCP/NTCP/UTCP endpoint evaluation; exposure-plan table
import/export and weighted accumulation; and external component-dose import
(import_component_dose, import_mcnp_meshtal, import_phits) plus MCNP
deck export (export_mcnp_deck); and external-dose/BED combined analysis
(import_external_dose, bed_from_external_dose,
combine_biological_doses); source positioning (aim_source,
rotate_source, PositionReport); and cross-code dose comparison
(compare_dose_bundles, DoseComparison); and biological-model
sensitivity sweeps (sweep_biological_model, SensitivitySweep). Every load
runs the same Rust validate() as the CLI, every rejection raises
NctForgeError, and adapter provenance binds the generated interchange
document's SHA-256 exactly as the CLI does. Transport actions stay
unavailable until the Rust capability and evidence gates pass;
backends() reports those flags honestly.
Local development:
python3 -m venv .venv
.venv/bin/pip install 'maturin>=1.7,<2'
.venv/bin/maturin develop
.venv/bin/python -m unittest discover -s tests -p 'test_*.py'
maturin develop builds the extension in place; maturin build produces a
wheel under target/wheels. The extension targets the CPython stable ABI
(abi3-py310), so one wheel per platform covers every supported interpreter
(cp310-abi3-*). CI builds the wheel, installs it into a clean
virtual environment, and runs the parity suite there; the same build +
clean-venv parity run has been verified locally on CPython 3.14.
Publication of the platform matrix through TestPyPI remains a pending
release gate — see ADR 0015
and ADR 0027.
Metadata
Release files for openbnct 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| openbnct-0.1.0.tar.gz | 342.6 kB | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| openbnct-0.1.0-cp310-abi3-win_amd64.whl | CPython 3.10 | abi3 | Windows x86-64 | Details |
| openbnct-0.1.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.10 | abi3 | Linux glibc 2.17+ x86-64 | Details |
| openbnct-0.1.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl | CPython 3.10 | abi3 | Linux glibc 2.17+ ARM64 | Details |
| openbnct-0.1.0-cp310-abi3-macosx_11_0_arm64.whl | CPython 3.10 | abi3 | macOS 11.0+ ARM64 | Details |
| openbnct-0.1.0-cp310-abi3-macosx_10_12_x86_64.whl | CPython 3.10 | abi3 | macOS 10.12+ x86-64 | Details |
Total release size: 18.6 MB
Release files / openbnct-0.1.0.tar.gz
| Download URL | openbnct-0.1.0.tar.gz |
|---|---|
| Size | 342.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7c84c7a31ff2bc5103cc6ec368afbf13dd0a8d98ac5aa0a5efac98417e4ebe2d
|
|
BLAKE2b-256 checksum How to use checksums |
adacaa690e0083131da44dde4fe5e031c646b23b147210f28c18368c15d27220
|
| 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 16, 2026.
Transparency logRelease files / openbnct-0.1.0-cp310-abi3-win_amd64.whl
| Download URL | openbnct-0.1.0-cp310-abi3-win_amd64.whl |
|---|---|
| Size | 3.8 MB |
| Tags | CPython 3.10 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
8c5fbf899ebdc60773eee765f851f56e8e7a1a5726833bbf2662ba3ae4365c2b
|
|
BLAKE2b-256 checksum How to use checksums |
c49f84261e6df02c33b09c6f07f0b443b7ba8860341efae6ab4f87269c17baf3
|
| 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 16, 2026.
Transparency logRelease files / openbnct-0.1.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | openbnct-0.1.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 3.7 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
0194143869375e1ac6d8d8b9dfc0ec8a54d319bd9a4b94dff74b6fb1231ad1a5
|
|
BLAKE2b-256 checksum How to use checksums |
5e584f03b6f9a9faaa4559cdcbd7e9f4b13cd5fdf1ee5becba0ed862c1401ce3
|
| 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 16, 2026.
Transparency logRelease files / openbnct-0.1.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | openbnct-0.1.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 3.5 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
c922d70dbbe3459f5f65873c4d12d3354ee1c6add40898d54df106f6382d3c35
|
|
BLAKE2b-256 checksum How to use checksums |
af801870e29a82597d6c47eef7a861be8b8b50e87a2b3f0d9fc6442c51ed7477
|
| 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 16, 2026.
Transparency logRelease files / openbnct-0.1.0-cp310-abi3-macosx_11_0_arm64.whl
| Download URL | openbnct-0.1.0-cp310-abi3-macosx_11_0_arm64.whl |
|---|---|
| Size | 3.6 MB |
| Tags | CPython 3.10 abi3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
06aa86566100bf8612e3679152e9059c095ea1133f94d381da7dab4fb0be8b2e
|
|
BLAKE2b-256 checksum How to use checksums |
d55b8de3c88ccaf7f95df0438b7964c9238dab41feee77b2c05b9b521fde54df
|
| 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 16, 2026.
Transparency logRelease files / openbnct-0.1.0-cp310-abi3-macosx_10_12_x86_64.whl
| Download URL | openbnct-0.1.0-cp310-abi3-macosx_10_12_x86_64.whl |
|---|---|
| Size | 3.8 MB |
| Tags | CPython 3.10 abi3 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
1b22f232148086e07c6e7bd2a9f165508129c6d4713fc723007988274974967b
|
|
BLAKE2b-256 checksum How to use checksums |
82efbf4d7ae42b793424e222672be66bae396c8585dca381c3dcb4809e4711c5
|
| 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 16, 2026.
Transparency log