Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

reasonable (Python bindings)

Python bindings for Reasonable — a reasonably fast OWL 2 RL reasoner implemented in Rust. This package exposes a small, typed API over rdflib terms to run materialization on RDF graphs or files.

Quick Usage

Load from files (Turtle/N3) and materialize inferred triples:

import reasonable

r = reasonable.PyReasoner()
r.load_file("../example_models/ontologies/Brick.n3")
r.load_file("../example_models/small1.n3")
out = r.reason()  # list[tuple[rdflib.term.Node, Node, Node]]
print(len(out))

Reason directly over an rdflib Graph:

import rdflib
import reasonable
from rdflib.term import URIRef

g = rdflib.Graph()
g.add((URIRef("urn:s"), URIRef("urn:p"), URIRef("urn:o")))

r = reasonable.PyReasoner()
r.from_graph(g)
triples = r.reason()

# Optionally collect into a new Graph
g_out = rdflib.Graph()
for s, p, o in triples:
    g_out.add((s, p, o))
print(len(g_out))

Incremental Reasoning with Retraction

Use update_graph() to replace the reasoner's base triples when your graph changes. The reasoner automatically computes a diff and selects incremental materialization (additions only) or full re-materialization (if removals detected):

import rdflib
import reasonable
from rdflib import URIRef, RDF

ontology = rdflib.Graph()
ontology.parse("my_ontology.ttl")

data = rdflib.Graph()
data.add((URIRef("urn:sensor1"), RDF.type, URIRef("urn:TemperatureSensor")))

r = reasonable.PyReasoner()
r.from_graph(ontology + data)
triples = r.reason()  # full materialization

# Later, data changes...
data.remove((URIRef("urn:sensor1"), RDF.type, URIRef("urn:TemperatureSensor")))
data.add((URIRef("urn:sensor2"), RDF.type, URIRef("urn:HumiditySensor")))

r.update_graph(ontology + data)  # replaces base, auto-detects diff
triples = r.reason()             # full re-mat (removals detected)

Install

  • Runtime dependency: rdflib
  • From PyPI: pip install reasonable
  • If you have a prebuilt wheel: pip install dist/reasonable-*.whl
  • Debian/Ubuntu: cargo deb -p pyreasonable (or make deb-python) builds a python3-reasonable package that installs the module into /usr/lib/python3/dist-packages/reasonable/. See docs/packaging.md.
  • Build from source (see below) if no wheel is available for your platform.

Property-chain reasoning for owl:propertyChainAxiom is enabled by default in the Python extension. It can be disabled only when deliberately building with --no-default-features.

Developer Install (from source)

Using uv (recommended for local dev):

cd python
# Install project dependencies (including dev tools) into a managed venv
uv sync --group dev

# Build and develop-install the extension module
uv run maturin develop -b pyo3 --release

# Sanity check
uv run python -c "import reasonable; print(reasonable.__version__)"

Without uv (system/venv):

cd python
python -m venv .venv && . .venv/bin/activate  # or use your env
pip install -U maturin
maturin develop -b pyo3 --release
python -c "import reasonable; print(reasonable.__version__)"

API Reference

  • reasonable.PyReasoner()
    • load_file(path: str) -> None
      • Load triples from a Turtle or N3 file. Appends to existing base triples. Raises OSError on missing/invalid paths.
    • from_graph(graph_or_iterable) -> None
      • Appends triples from an rdflib Graph (or any iterable of 3-tuples) to the base. Use update_graph() instead if you need retraction support.
    • update_graph(graph_or_iterable) -> bool
      • Replaces the base triples with the contents of the given graph. Computes a diff against the current base: if only additions are found, the next reason() uses incremental materialization; if any removals are detected, it triggers a full re-materialization. Returns True if removals were detected, False otherwise.
    • reason() -> list[tuple[Node, Node, Node]]
      • Runs OWL 2 RL materialization and returns all known triples (base + inferred) as rdflib nodes. After the first call, subsequent calls are incremental (only processing newly added triples) unless removals were detected via update_graph().
    • reason_full() -> list[tuple[Node, Node, Node]]
      • Forces a full re-materialization from base triples, ignoring any incremental state. Equivalent to clear() followed by reason().
    • clear() -> None
      • Resets all inferred state while keeping base triples. The next reason() call will perform a full re-materialization.
    • get_base_triples() -> list[tuple[Node, Node, Node]]
      • Returns the current base (non-inferred) triples as rdflib nodes. Useful for debugging.

Building Wheels

Build release wheels into dist/:

cd python
uv run maturin build --release --out dist

Install the built wheel:

pip install dist/reasonable-*.whl

Requirements

  • Python 3.9+ (ABI3, built with pyo3/abi3-py39)
  • Rust toolchain (rustup, cargo) for local builds
  • maturin for building wheels
  • rdflib (runtime dependency)

Testing

Run the Python test suite (uses pytest and rdflib):

cd python
uv run pytest -q

Alternatively, with a local venv:

cd python
pip install -U maturin pytest rdflib
maturin develop -b pyo3 --release
pytest -q

Compatibility Notes

  • Python: 3.9+ is required due to the ABI3 setting in the Rust crate (abi3-py39).
  • Platforms: macOS, Linux, and Windows are supported by PyO3/maturin; building from source requires a Rust toolchain.

Troubleshooting

  • ModuleNotFoundError: No module named 'reasonable':
    • Ensure you ran maturin develop in the same environment you’re importing from.
  • Build/link errors on macOS (Xcode/SDK):
    • Install Command Line Tools: xcode-select --install.
  • OSError when calling load_file(...):
    • Check the path and file format (Turtle/N3). Use absolute paths when in doubt.

Contributing (Python bindings)

  • Keep tests under python/tests/ minimal and representative. Prefer inputs from example_models/.
  • Format/lint Python with standard tooling; Rust code follows cargo fmt/cargo clippy.
  • For broader project info (CLI, library, benchmarks), see the repository root README.md.

Metadata

Release files for reasonable 0.5.0a1

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

Source distribution (sdist)

Source distribution for reasonable 0.5.0a1
File Size Uploaded
reasonable-0.5.0a1.tar.gz 62.4 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for reasonable 0.5.0a1
File
reasonable-0.5.0a1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.10 PyPy 3.10 7.3 Linux glibc 2.17+ x86-64 Details
reasonable-0.5.0a1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl PyPy 3.10 PyPy 3.10 7.3 Linux glibc 2.17+ ARM64 Details
reasonable-0.5.0a1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.9 PyPy 3.9 7.3 Linux glibc 2.17+ x86-64 Details
reasonable-0.5.0a1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl PyPy 3.9 PyPy 3.9 7.3 Linux glibc 2.17+ ARM64 Details
reasonable-0.5.0a1-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
reasonable-0.5.0a1-cp312-cp312-musllinux_1_2_aarch64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ ARM64 Details
reasonable-0.5.0a1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
reasonable-0.5.0a1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64 Details
reasonable-0.5.0a1-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
reasonable-0.5.0a1-cp311-cp311-musllinux_1_2_aarch64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ ARM64 Details
reasonable-0.5.0a1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
reasonable-0.5.0a1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64 Details
reasonable-0.5.0a1-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
reasonable-0.5.0a1-cp310-cp310-musllinux_1_2_aarch64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ ARM64 Details
reasonable-0.5.0a1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
reasonable-0.5.0a1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64 Details
reasonable-0.5.0a1-cp39-cp39-musllinux_1_2_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.2+ x86-64 Details
reasonable-0.5.0a1-cp39-cp39-musllinux_1_2_aarch64.whl CPython 3.9 CPython 3.9 Linux musl 1.2+ ARM64 Details
reasonable-0.5.0a1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details
reasonable-0.5.0a1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ ARM64 Details
reasonable-0.5.0a1-cp39-abi3-win_amd64.whl CPython 3.9 abi3 Windows x86-64 Details
reasonable-0.5.0a1-cp39-abi3-musllinux_1_2_x86_64.whl CPython 3.9 abi3 Linux musl 1.2+ x86-64 Details
reasonable-0.5.0a1-cp39-abi3-musllinux_1_2_aarch64.whl CPython 3.9 abi3 Linux musl 1.2+ ARM64 Details
reasonable-0.5.0a1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 abi3 Linux glibc 2.17+ x86-64 Details
reasonable-0.5.0a1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.9 abi3 Linux glibc 2.17+ ARM64 Details
reasonable-0.5.0a1-cp39-abi3-macosx_11_0_arm64.whl CPython 3.9 abi3 macOS 11.0+ ARM64 Details
reasonable-0.5.0a1-cp39-abi3-macosx_10_14_x86_64.whl CPython 3.9 abi3 macOS 10.14+ x86-64 Details
reasonable-0.5.0a1-cp39-abi3-macosx_10_14_x86_64.macosx_11_0_arm64.macosx_10_14_universal2.whl CPython 3.9 abi3 macOS 10.14+ x86-64, macOS 11.0+ ARM64, macOS 10.14+ universal2 (ARM64, x86-64) Details
reasonable-0.5.0a1-cp38-cp38-musllinux_1_2_x86_64.whl CPython 3.8 CPython 3.8 Linux musl 1.2+ x86-64 Details
reasonable-0.5.0a1-cp38-cp38-musllinux_1_2_aarch64.whl CPython 3.8 CPython 3.8 Linux musl 1.2+ ARM64 Details
reasonable-0.5.0a1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-64 Details
reasonable-0.5.0a1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ ARM64 Details

Total release size: 160.3 MB

Release files / reasonable-0.5.0a1.tar.gz

Download URL reasonable-0.5.0a1.tar.gz
Size 62.4 kB
Tags Source
SHA-256 checksum
How to use checksums
ec544a13826afeac85345e5032453fa2085a86122ea8b0e31f4792dc03ff2f65
BLAKE2b-256 checksum
How to use checksums
1b1dbd62783af6cb0a2a9433ce45a7d258929758e12f0990d300d652e3bcab29
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL reasonable-0.5.0a1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 6.1 MB
Tags Linux glibc 2.17+ x86-64 PyPy 3.10 PyPy 3.10 7.3
SHA-256 checksum
How to use checksums
aa3bd082233b1aff97bcb4d25d8f64ee0e97fe8b456a996ee4f9aec3e8ce7e68
BLAKE2b-256 checksum
How to use checksums
2c5997bba4e05e90825274c61246cc188db5634d771bae6394f6ce7f7fdebf73
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL reasonable-0.5.0a1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 5.3 MB
Tags Linux glibc 2.17+ ARM64 PyPy 3.10 PyPy 3.10 7.3
SHA-256 checksum
How to use checksums
357208e8def963462af8b00b284330fa279ef026ffceb52aca1c4be12f630932
BLAKE2b-256 checksum
How to use checksums
5d5b9c0e23629343b06d8d87ed75bc56ec1bb8970b5db481f9fb891054449fa4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL reasonable-0.5.0a1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 6.1 MB
Tags Linux glibc 2.17+ x86-64 PyPy 3.9 PyPy 3.9 7.3
SHA-256 checksum
How to use checksums
4f0e1824800afb33108606de63322fe72b2d94197005b3eb565e3ace5ea478e7
BLAKE2b-256 checksum
How to use checksums
1012ae847d45e4b01e5da5727501466404a5f679b3c7c82f4502a645510acad5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL reasonable-0.5.0a1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 5.3 MB
Tags Linux glibc 2.17+ ARM64 PyPy 3.9 PyPy 3.9 7.3
SHA-256 checksum
How to use checksums
4151c0aefe825a95f87ec24626058d32fd355836ccc8ca6549864bfe7b57364a
BLAKE2b-256 checksum
How to use checksums
525eea385baeb3634193a0a1fba10fb21ccf4fda7446fa18d3f49b36f7386bf9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL reasonable-0.5.0a1-cp312-cp312-musllinux_1_2_x86_64.whl
Size 5.6 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
2f51d2fe488d0215a073a901cfae6fa0fcb896e12891f0fd362a920a623c4d96
BLAKE2b-256 checksum
How to use checksums
90992f554092869699226cb941e7aa3f6ed4c8c70340053ccb6d8688cd787cf1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp312-cp312-musllinux_1_2_aarch64.whl

Download URL reasonable-0.5.0a1-cp312-cp312-musllinux_1_2_aarch64.whl
Size 5.4 MB
Tags CPython 3.12 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
a35f4fecdbe329e4cd055c07eab9fff9d71ac10e2247d6033537926e491fbacb
BLAKE2b-256 checksum
How to use checksums
5870040cda92fd6e25816ca4505f32bcb0f2a46d2f8117b0c7ee276b616fce75
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL reasonable-0.5.0a1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 6.2 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
4a3f9aa239ac832cd066e61d1a3b7f342d0cf680d16978213a8fe40d20394f44
BLAKE2b-256 checksum
How to use checksums
9499f4fb82c630d7e09ebd2579e3ea1cad6dd889388e1eba0cac964cd369e2fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL reasonable-0.5.0a1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 5.4 MB
Tags CPython 3.12 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
ed5a91c58d75f50cc8d2a236d7b4059a7f35221f32b9619418c4e3ccbc463bc0
BLAKE2b-256 checksum
How to use checksums
4a9b7e2d449ac58164b408cb88a4cb5b0e1b769e5b4e2df4b94e714c59654d3b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL reasonable-0.5.0a1-cp311-cp311-musllinux_1_2_x86_64.whl
Size 5.5 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
77c8bd07af3b7a00daedb8635f69c919aa54f3fac7845f06099e428302c3b05e
BLAKE2b-256 checksum
How to use checksums
30a54a254ea0e037759bbd37148308e3a46f8090ba29e067c5244d40f49fa84c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp311-cp311-musllinux_1_2_aarch64.whl

Download URL reasonable-0.5.0a1-cp311-cp311-musllinux_1_2_aarch64.whl
Size 5.4 MB
Tags CPython 3.11 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
f31de959f4f24b306bc16064c8cd701d1c6f138699c2780a5b1c97c2d356cdc6
BLAKE2b-256 checksum
How to use checksums
ba575ca9bda07eafdc88bd22b059cc1361b0449d2c633373b5d23a66e7eb6d03
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL reasonable-0.5.0a1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 6.2 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
f5384e9aee4f0fd9858827f9a10863c8bd3fb9280c87129d06699133d1fa0fc8
BLAKE2b-256 checksum
How to use checksums
cbec8cb2102744ab9231826a779fa9c11544cc5dafc7bd10f3497e4dd6a533ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL reasonable-0.5.0a1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 5.4 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
a48a93e48eae85f29cffe7c39c5b8473f50ed42407173530dee61588cd097609
BLAKE2b-256 checksum
How to use checksums
cefb6c01e8c9ba7151ba47fd9611aac73597e3bb101200863d96a1fcdad74ccb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL reasonable-0.5.0a1-cp310-cp310-musllinux_1_2_x86_64.whl
Size 5.5 MB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
19cac59f8c2568d23fff2cca98eee76894e525735c29843c8ba16b0dfdd8a15f
BLAKE2b-256 checksum
How to use checksums
2fa7b8149d290b7cdc0e5c616f61684ac7af61f1a4636aa892686922b2096323
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp310-cp310-musllinux_1_2_aarch64.whl

Download URL reasonable-0.5.0a1-cp310-cp310-musllinux_1_2_aarch64.whl
Size 5.4 MB
Tags CPython 3.10 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
b932070a85bdc666ec50263014e1b420eeb9bddde52d78a95165c958f1b0e788
BLAKE2b-256 checksum
How to use checksums
f4cb478f39d2cfef08196afe0c2aa048f0068e76b1c5f28be9eb7aa4ddfa157f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL reasonable-0.5.0a1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 6.2 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
16e988a9f4022f7b85efc3fae9464d583f74d64326982ca5c7017b0b48a04a56
BLAKE2b-256 checksum
How to use checksums
b94218572018aaebc7b87671975f1a5afa2113a1fcc42938a435b12b716b8612
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL reasonable-0.5.0a1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 5.4 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
9b9be9f0d90326de3d029389d4ad7e047992547e925f7e2cf683ee8682cb49b6
BLAKE2b-256 checksum
How to use checksums
b8f5c37f4b4499bfdefb59d03935d1a59068ede92116c229879c7e93c1a918c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp39-cp39-musllinux_1_2_x86_64.whl

Download URL reasonable-0.5.0a1-cp39-cp39-musllinux_1_2_x86_64.whl
Size 5.6 MB
Tags CPython 3.9 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
59fe070d3a6c349a9b4fe5182465a18b47ab98674f3245de61b6285fb0978a93
BLAKE2b-256 checksum
How to use checksums
efaa8bf0749a375cc667e767350e272ebbdb463a1991098ac2541050889f92fb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp39-cp39-musllinux_1_2_aarch64.whl

Download URL reasonable-0.5.0a1-cp39-cp39-musllinux_1_2_aarch64.whl
Size 5.4 MB
Tags CPython 3.9 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
443938f76c17ad0890394a725b093a1fd8aedd0a7e0449c32e8e977ebb05a45f
BLAKE2b-256 checksum
How to use checksums
a1d11d009807efd9dc9f594d8778c5f2896156de4f7c5558e5d9c793b9d7a57a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL reasonable-0.5.0a1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 6.2 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
745317a0263f34551793560c89af8af9ba0d4d1c0a147c620d7b08f2a69c98d0
BLAKE2b-256 checksum
How to use checksums
f75a9ff9127504bec62e0c93a7d0fa87f9e72ef20aaf16fde6607622ab9aefda
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL reasonable-0.5.0a1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 5.4 MB
Tags CPython 3.9 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
53051d29635d1a4108d16a7b4937af562e473a1b47af0180aa75e6c3ab3f5b81
BLAKE2b-256 checksum
How to use checksums
a4758589f640abb50d0ceb30942701afe74b847537b929a9cba97db6fe4ad778
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp39-abi3-win_amd64.whl

Download URL reasonable-0.5.0a1-cp39-abi3-win_amd64.whl
Size 404.1 kB
Tags CPython 3.9 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
b43395128b37b38913588664ccfa6f979bc9f9ac9f2807635a7c3d47167cece4
BLAKE2b-256 checksum
How to use checksums
d441c6ac430918836223226173da29a3a17dec06126194981a51bed2679dc1c6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp39-abi3-musllinux_1_2_x86_64.whl

Download URL reasonable-0.5.0a1-cp39-abi3-musllinux_1_2_x86_64.whl
Size 5.5 MB
Tags CPython 3.9 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
222d28f34ebbe7f672e510e0727a0fe5c807dbb87c3440a943a9860d011c9548
BLAKE2b-256 checksum
How to use checksums
ef85be4cb6886cd9acec84a67ea31deefa3e959db2e76797dacf303a60d5e625
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp39-abi3-musllinux_1_2_aarch64.whl

Download URL reasonable-0.5.0a1-cp39-abi3-musllinux_1_2_aarch64.whl
Size 5.4 MB
Tags CPython 3.9 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
3ec4af4fa9823878ef9d6cdbf494090e46f63c054224258f7ef28042d967697b
BLAKE2b-256 checksum
How to use checksums
1eaacf3c1e967ce2e6742291f885aa677b33f8ff71ba55369f310941fdee7e6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL reasonable-0.5.0a1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 6.1 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
e0867497d58a21255f1edd81eb7066a3ecd57387a0cae118e34b1aeed9916c10
BLAKE2b-256 checksum
How to use checksums
733d699d613d71324b7dc96b73ee7f10e40d07ca822168e84b78b176db7b38f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL reasonable-0.5.0a1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 5.3 MB
Tags CPython 3.9 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
d62480a9299ea57e0e49fb5c514d15a488a05cc68f31b770900b9a826fbd7060
BLAKE2b-256 checksum
How to use checksums
75a2c55da0430a9678fab9e0fd178d8e4b49f988a10382335da75e2ea57a13e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp39-abi3-macosx_11_0_arm64.whl

Download URL reasonable-0.5.0a1-cp39-abi3-macosx_11_0_arm64.whl
Size 518.5 kB
Tags CPython 3.9 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1023117c83ff5eb6988cd40eb0a7335a62369ab1a282b016dd1e0ca297311c9b
BLAKE2b-256 checksum
How to use checksums
3d53c6350b0bbbe85fb4f8b08001d1b35155ba8ecfd6b3b501b6e09e00b89e42
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp39-abi3-macosx_10_14_x86_64.whl

Download URL reasonable-0.5.0a1-cp39-abi3-macosx_10_14_x86_64.whl
Size 531.8 kB
Tags CPython 3.9 abi3 macOS 10.14+ x86-64
SHA-256 checksum
How to use checksums
34041a0282bcf8b3ef81e20924529c1ab3f8a91dff8696d32b8e7fbbad9d51dc
BLAKE2b-256 checksum
How to use checksums
0975584b0bcf7c29f2c28dc51624a6ae6b9229b7968f4f628094673f0dd7b928
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp39-abi3-macosx_10_14_x86_64.macosx_11_0_arm64.macosx_10_14_universal2.whl

Download URL reasonable-0.5.0a1-cp39-abi3-macosx_10_14_x86_64.macosx_11_0_arm64.macosx_10_14_universal2.whl
Size 1.0 MB
Tags CPython 3.9 abi3 macOS 10.14+ universal2 (ARM64, x86-64) macOS 10.14+ x86-64 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ffc03137d02f8cac868e0f7eb30e861bb31fe6045c3bbc04795d758af9635bad
BLAKE2b-256 checksum
How to use checksums
21edb418f4cbfd85bd5242220a993f379e3dbc41a2ca829504a5235c43f7addb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp38-cp38-musllinux_1_2_x86_64.whl

Download URL reasonable-0.5.0a1-cp38-cp38-musllinux_1_2_x86_64.whl
Size 5.6 MB
Tags CPython 3.8 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
3e90eff0e59444a2e5b70e6972660f156ea989e907020e90c3657e0a5412b52e
BLAKE2b-256 checksum
How to use checksums
c1955f9ffcf1dae7315763d9161b554ef549663b41f8934ba43438f8669e49f1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp38-cp38-musllinux_1_2_aarch64.whl

Download URL reasonable-0.5.0a1-cp38-cp38-musllinux_1_2_aarch64.whl
Size 5.4 MB
Tags CPython 3.8 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
a8a6d484e372afc2abd0712deff519200cf6fe2c1fc5ad1871082c061e457b5e
BLAKE2b-256 checksum
How to use checksums
71419a7d0cf8c91d03078732499b218c58ccfec07489540155f23529c23113bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL reasonable-0.5.0a1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 6.2 MB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
eaa5cb65c4ab0f79a12e244319497dcedc4b0ae293ee7377ed8708463eae3d71
BLAKE2b-256 checksum
How to use checksums
41bc7e1734584584830d20f086904e0a26606a824c16f7639b46fd7ebfacc3d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / reasonable-0.5.0a1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL reasonable-0.5.0a1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 5.4 MB
Tags CPython 3.8 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
5a7451ee0afef9bcf8a70214450920d6b53d1051d9c69146e42109ce4ce0a2e4
BLAKE2b-256 checksum
How to use checksums
da67578755149e31f34b35c7ad2b13b00b61b8b3157a2f38fc1f4157a652635a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.5.0a1 This release

33 release files

0.4.4

33 release files

0.4.3

33 release files

0.4.1

33 release files

0.4.0

33 release files

0.2.3

13 release files

0.2.2

13 release files

0.2.1

4 release files

0.2.0

5 release files

0.1.65

5 release files

0.1.64

5 release files

0.1.61

1 release file

0.1.53

6 release files

0.1.48

6 release files

0.1.47

5 release files

0.1.42

4 release files

0.1.41

4 release files

0.1.39

4 release files

0.1.25

8 release files

0.1.24

8 release files

0.1.23

8 release files

0.1.22

3 release files

0.1.21

3 release files

0.1.20

3 release files

0.1.19

3 release files

0.1.12

3 release files

0.1.10

3 release files

0.1.8

3 release files

0.1.7

3 release files

0.1.6

3 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1.0

3 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