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.29

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.29
File Size Uploaded Provenance
pyrudof-0.3.29.tar.gz 4.9 MB Without provenance Details

Built distributions (wheels)

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

Total release size: 107.2 MB

Release files / pyrudof-0.3.29.tar.gz

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

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

Download URL pyrudof-0.3.29-cp310-abi3-win_amd64.whl
Size 19.1 MB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
32fb3ec2abcb41e15428b80d931648cb1e209eb2f513884fe49e5960f036d3e1
BLAKE2b-256 checksum
How to use checksums
f89c6ea69a8b4c9758295813d3d29328b292f0cdbf3d0d223788ee27fa97fd88
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

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

Download URL pyrudof-0.3.29-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
e85cb50979901b67e6a0f1f26ece8e558cba705a60df810d877b6a36e072dcb1
BLAKE2b-256 checksum
How to use checksums
cf9f9a328545933322e5a5b3b499cda64eebff493960f1d48fafbc9c303c0a45
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

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

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

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

Download URL pyrudof-0.3.29-cp310-abi3-macosx_13_0_x86_64.whl
Size 17.6 MB
Tags CPython 3.10 abi3 macOS 13.0+ x86-64
SHA-256 checksum
How to use checksums
6e5bd4727c86bdc43620c1095baeb9f2b46a81eaae6337bc8333bd77f48acf1f
BLAKE2b-256 checksum
How to use checksums
1e949b442a989dddf2ca57c47a916aa80c437397c168a4b9e5411ba2438770b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

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

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

Security for pyrudof 0.3.29

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.29 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