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

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

Built distributions (wheels)

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

Total release size: 108.7 MB

Release files / pyrudof-0.3.32.tar.gz

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

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

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

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

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

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

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

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

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

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

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

Security for pyrudof 0.3.32

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