Skip to main content

pyrudof

pyrudof provides Python bindings for rudof, a Rust toolkit for the Semantic Web. It is a thin binding: every piece of Semantic Web logic lives in the rudof_lib and rudof_generate crates, and this package's job is to move values across the language boundary, turn Rust errors into Python exceptions, and present the result as an API that feels like Python.

  • User documentation - start here to use the library: API reference, guides and runnable examples.
  • Internals - package layout and how the examples manifest drives both the tests and the documentation.

Installation

Wheels are published on PyPI and the package requires Python 3.10 or newer:

pip install pyrudof

The wheels are abi3-py310, so a single wheel per platform serves every supported Python version. The package has no Python runtime dependencies.

Development

All commands below are run from bindings/python/. They are the same ones CI runs, in .github/workflows/python.yml.

Setting up

python -m venv .venv
source .venv/bin/activate          # Windows: .venv\Scripts\Activate.ps1

pip install -e '.[dev]'

pip install -e builds the extension through maturin, so the first run compiles the Rust workspace and takes a while. Afterwards, rebuild just the extension with:

maturin develop                    # debug build, fast to compile
maturin develop --release          # optimised, what you want for benchmarks

Testing

pytest                             # the whole suite
pytest -k shex                     # just the ShEx examples
pytest -x -q                       # stop at the first failure

mypy                               # strict type-check of python/, examples/ and tests/

Regenerating what is generated

# 1. Type stubs, from the Rust annotations
cargo run --bin stub_gen --features stub-gen

# 2. The documentation's examples page, from examples.toml
python docs/generate_examples_doc.py --update
python docs/generate_examples_doc.py --check       # non-zero if stale
python docs/generate_examples_doc.py --dry-run     # preview without writing

# 3. The HTML documentation
python -m sphinx -b html docs docs/_build/html

-W to turn warnings into errors, and -E to force a full rebuild rather than an incremental one:

python -m sphinx -b html -E -W docs docs/_build/html
python -m sphinxlint docs/*.rst

Then open docs/_build/html/index.html.

Building wheels

maturin build --release            # wheel into target/wheels/
maturin sdist                      # source distribution
pip install --force-reinstall target/wheels/pyrudof-*.whl

Metadata

Release files for pyrudof 0.3.26

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

Source distribution (sdist)

Source distribution for pyrudof 0.3.26
File Size Uploaded Provenance
pyrudof-0.3.26.tar.gz 4.9 MB Without provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for pyrudof 0.3.26
File
pyrudof-0.3.26-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details
pyrudof-0.3.26-cp310-abi3-manylinux_2_34_x86_64.whl CPython 3.10 abi3 Linux glibc 2.34+ x86-64 Details
pyrudof-0.3.26-cp310-abi3-manylinux_2_34_aarch64.whl CPython 3.10 abi3 Linux glibc 2.34+ ARM64 Details
pyrudof-0.3.26-cp310-abi3-macosx_13_0_x86_64.whl CPython 3.10 abi3 macOS 13.0+ x86-64 Details
pyrudof-0.3.26-cp310-abi3-macosx_13_0_arm64.whl CPython 3.10 abi3 macOS 13.0+ ARM64 Details

Total release size: 106.5 MB

Release files / pyrudof-0.3.26.tar.gz

Download URL pyrudof-0.3.26.tar.gz
Size 4.9 MB
Tags Source
SHA-256 checksum
How to use checksums
8e77f1160619fba288ec1aead824975fe09a5c53c3dec5daf0e8f64d13059064
BLAKE2b-256 checksum
How to use checksums
0e5534d710a9b8c3f4b33819307f36ba0d073d8a214220e54d0f87ffd92f7f70
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / pyrudof-0.3.26-cp310-abi3-win_amd64.whl

Download URL pyrudof-0.3.26-cp310-abi3-win_amd64.whl
Size 18.7 MB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
651b4a7b43a08c46a900a783885dcee82e9c55f45cb18d8dd513c86c2789b2a0
BLAKE2b-256 checksum
How to use checksums
138507624021860ca0d1935857704126ca2ac08374a9922772bcdd45d885d2f1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / pyrudof-0.3.26-cp310-abi3-manylinux_2_34_x86_64.whl

Download URL pyrudof-0.3.26-cp310-abi3-manylinux_2_34_x86_64.whl
Size 24.6 MB
Tags CPython 3.10 Linux glibc 2.34+ x86-64 abi3
SHA-256 checksum
How to use checksums
3f6a8ff039c1de8c869b1ce7ab10dcbd5eb6b36885347485ce38ff2d3ddcd581
BLAKE2b-256 checksum
How to use checksums
c10e2135f078d6c971970db33b2183eb631e75c6338f939ae9b65953ca98eb36
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / pyrudof-0.3.26-cp310-abi3-manylinux_2_34_aarch64.whl

Download URL pyrudof-0.3.26-cp310-abi3-manylinux_2_34_aarch64.whl
Size 24.3 MB
Tags CPython 3.10 Linux glibc 2.34+ ARM64 abi3
SHA-256 checksum
How to use checksums
ae9df700691221af3adad7ce3ef9934b8950a886d261532ce246a2fe50cbe6f6
BLAKE2b-256 checksum
How to use checksums
8da01d384025aabdf02aad5ac4c35e1de9aadc597464f4680cced14c9e737c35
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / pyrudof-0.3.26-cp310-abi3-macosx_13_0_x86_64.whl

Download URL pyrudof-0.3.26-cp310-abi3-macosx_13_0_x86_64.whl
Size 17.5 MB
Tags CPython 3.10 abi3 macOS 13.0+ x86-64
SHA-256 checksum
How to use checksums
29d19a8dd75526ed6df04ea7ee8b82dd94ed3dfb2dc4b2f06480c52ac58cbb3e
BLAKE2b-256 checksum
How to use checksums
ae2a9537a13346681bdb9ade886fd5a8dbbbb7f857923148a5972fa917608850
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / pyrudof-0.3.26-cp310-abi3-macosx_13_0_arm64.whl

Download URL pyrudof-0.3.26-cp310-abi3-macosx_13_0_arm64.whl
Size 16.5 MB
Tags CPython 3.10 abi3 macOS 13.0+ ARM64
SHA-256 checksum
How to use checksums
a9f5caa3bdc20413e51080058cc0be47d85a7ba9fb16aef427a045420be751b4
BLAKE2b-256 checksum
How to use checksums
cd86c680e02eda406ec604bbedd62bc2e92131c2e8be95cf193486d5aec09e73
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Security for pyrudof 0.3.26

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.3.26 This release

6 release files No provenance

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