Skip to main content

HyperIso core and Python package

This directory contains the buildable HyperIso package:

  • core/ - C++20 backend, CMake build system, CLI and tests;
  • pyhyperiso/ - Python package wrapping the C++ backend;
  • examples_cpp/ - C++ examples built against an installed HyperIso package;
  • examples_python/ - Python examples using pyhyperiso;
  • pyproject.toml - Python packaging entry point based on scikit-build-core.

Build the C++ core

From the repository root:

cmake -S Hyperiso/Hyperiso/core -B build \
  -G Ninja \
  -DCMAKE_BUILD_TYPE=Release \
  -DBUILD_WITH_CLI=ON

cmake --build build -j
cmake --install build --prefix "$HOME/.local"

Useful options:

Option Default Purpose
ENABLE_TESTS OFF Build CTest tests.
BUILD_WITH_APP OFF Build development and benchmark executables.
BUILD_WITH_CLI OFF Build the hyperiso-ui command-line executable.
BUILD_WITH_PYTHON OFF Build the Python extension from the CMake tree.
BUILD_WITH_MARTY OFF Enable MARTY integration.
BUILD_WITH_SOFTSUSY OFF Enable bundled SOFTSUSY fallback; Python/C++ can also use a runtime softpoint.x path.
ENABLE_CLANG_TIDY OFF Run clang-tidy during the build.
ENABLE_ADDRESS_SANITIZER OFF Enable AddressSanitizer.
ENABLE_UNDEFINED_SANITIZER OFF Enable UndefinedBehaviorSanitizer.

Run tests

cmake -S Hyperiso/Hyperiso/core -B build \
  -G Ninja \
  -DCMAKE_BUILD_TYPE=Debug \
  -DENABLE_TESTS=ON

cmake --build build -j
ctest --test-dir build --output-on-failure

Labels can be used to select a subset:

ctest --test-dir build -L common --output-on-failure
ctest --test-dir build -L database --output-on-failure
ctest --test-dir build -L statistic --output-on-failure

Heavy validation/comparison tests are opt-in:

cmake -S Hyperiso/Hyperiso/core -B build-comparison \
  -DENABLE_TESTS=ON \
  -DHYPERISO_BUILD_COMPARISON_TESTS=ON

Install the Python package

python -m pip install --upgrade pip
python -m pip install ./Hyperiso/Hyperiso

Editable development install:

python -m pip install -e ./Hyperiso/Hyperiso

Complete development environment:

python -m pip install -e "./Hyperiso/Hyperiso[test,dev]"

HyperIso uses pybind11; the PyPI package named pybind is unrelated.

Run Python tests:

python -m pip install -e "./Hyperiso/Hyperiso[test]"
python -m pytest Hyperiso/Hyperiso/pyhyperiso/test

Build examples against an installed package

cmake -S Hyperiso/Hyperiso/examples_cpp -B build-examples \
  -G Ninja \
  -DCMAKE_PREFIX_PATH="$HOME/.local"

cmake --build build-examples -j

Public interfaces

Interface Entry point
C++ API headers and CMake targets exported by the C++ install.
Python API pyhyperiso.Common, pyhyperiso.Core, pyhyperiso.Wilson, pyhyperiso.Observable, pyhyperiso.Statistic; pyhyperiso.Core.DatabaseWriter exports the initialized database.
CLI hyperiso-ui, built with -DBUILD_WITH_CLI=ON.
Dash GUI GHyperiso/HyperisoDashGUI.

Versioning

The C++ project, Python package and release tag should use the same semantic version. For example:

CMake project version: 1.0.3
Python package version: 1.0.3
Git tag: v1.0.3

Update all version locations in the same pull request.

Metadata

Release files for pyhyperiso 1.0.3

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

Source distribution (sdist)

Source distribution for pyhyperiso 1.0.3
File Size Uploaded
pyhyperiso-1.0.3.tar.gz 1.4 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for pyhyperiso 1.0.3
File Interpreter ABI Platform
pyhyperiso-1.0.3-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
pyhyperiso-1.0.3-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
pyhyperiso-1.0.3-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

Total release size: 63.8 MB

Release files / pyhyperiso-1.0.3.tar.gz

Download URL pyhyperiso-1.0.3.tar.gz
Size 1.4 MB
Tags Source
SHA-256 checksum
How to use checksums
e95c05d54a218c3696ea0f9c70fa1991656a5f24d5354a0aa6dd8b2d7e0a7f87
BLAKE2b-256 checksum
How to use checksums
2aa9aaff7e0b090e1ba8438ff49ab205d14c55116b07e70e86fee1cdcf9e181d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.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 Jul 20, 2026.

Transparency log

Release files / pyhyperiso-1.0.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL pyhyperiso-1.0.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 20.8 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
796ee42cdb53edd8170c67aa335f64ede260caebf5ad317ecfdb322c48781dff
BLAKE2b-256 checksum
How to use checksums
345ca674d7133dc4f404093f8289b724321383ebc7b354c99b3fb35e76fc88b0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.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 Jul 20, 2026.

Transparency log

Release files / pyhyperiso-1.0.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL pyhyperiso-1.0.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 20.8 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
2d7cb41b42b0d3fdd632a39af37aa751db6bc5abe198729c7ba7c3edfb2eeb36
BLAKE2b-256 checksum
How to use checksums
6ce50f2cde612a54dd0f0c973818973285b39d1898536f12632d4c4b66678e47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.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 Jul 20, 2026.

Transparency log

Release files / pyhyperiso-1.0.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL pyhyperiso-1.0.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 20.8 MB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
e5d120a57622fc6b05b799b165a5e3ca88d7da913911d6e47ec81a26f81ab0a3
BLAKE2b-256 checksum
How to use checksums
735180c00b9866acc57ace7743e7f70596effb4330dd9e1d131790b4e4c44857
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.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 Jul 20, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.3 This release

4 release files

1.0.2

4 release files

1.0.1

4 release files

1.0.0

4 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