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

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

Built distributions (wheels)

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

Total release size: 108.8 MB

Release files / pyrudof-0.3.34.tar.gz

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

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

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

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

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

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

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

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

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

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

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

Security for pyrudof 0.3.34

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.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.3.34 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