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

Release files for pyrudof 0.3.22

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.22
File Size Uploaded
pyrudof-0.3.22.tar.gz 4.8 MB Details

Built distributions (wheels)

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

Total release size: 103.8 MB

Release files / pyrudof-0.3.22.tar.gz

Download URL pyrudof-0.3.22.tar.gz
Size 4.8 MB
Tags Source
SHA-256 checksum
How to use checksums
2cb8a133545a22625b004bfd970050916bb03be265020a0da177ef9e3cecdee4
BLAKE2b-256 checksum
How to use checksums
8f30cd767d757135d06f35423ba53508f7bc09d0c01a02aa8f5c799ac7623d94
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

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

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

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

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

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

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

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

Download URL pyrudof-0.3.22-cp310-abi3-macosx_13_0_x86_64.whl
Size 16.9 MB
Tags CPython 3.10 abi3 macOS 13.0+ x86-64
SHA-256 checksum
How to use checksums
3188e2041a950f5e1e9ab8399d0634f22c4d68c971cf579149c9293cd528e00b
BLAKE2b-256 checksum
How to use checksums
14d721fa962b83077b2554fb09a9781738ebc746cb24b72155e61357301259d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

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

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

Release history Release notifications | RSS feed

0.3.23

6 release files

This release

0.3.22 This release

6 release files

0.3.21

5 release files

0.3.20

5 release files

0.3.19

5 release files

0.3.16

5 release files

0.3.15

5 release files

0.3.14

5 release files

0.3.12

5 release files

0.3.11

5 release files

0.3.10

5 release files

0.3.9

5 release files

0.3.8

5 release files

0.3.7

5 release files

0.3.6

5 release files

0.3.5

5 release files

0.3.3

5 release files

0.3.2

5 release files

0.3.1

5 release files

0.2.20

5 release files

0.2.18

5 release files

0.2.17

5 release files

0.2.16

5 release files

0.2.15

5 release files

0.2.14

5 release files

0.2.12

5 release files

0.2.9

5 release files

0.2.7

5 release files

0.2.6

5 release files

0.2.2

5 release files

0.1.99

4 release files

0.1.96

4 release files

0.1.95

4 release files

0.1.94

4 release files

0.1.93

4 release files

0.1.92

4 release files

0.1.86

4 release files

0.1.83

6 release files

0.1.82

6 release files

0.1.79

6 release files

0.1.60

6 release files

0.1.58

6 release files

0.1.57

6 release files

0.1.56

7 release files

0.1.55

6 release files

0.1.54

6 release files

0.1.53

6 release files

0.1.51

6 release files

0.1.50

6 release files

0.1.49

6 release files

0.1.48

6 release files

0.1.47

6 release files

0.1.46

6 release files

0.1.45

6 release files

0.1.44

6 release files

0.1.41

6 release files

0.1.40

6 release files

0.1.39

6 release files

0.1.36

6 release files

0.1.26

6 release files

0.1.19

6 release files

0.1.17

6 release files

0.1.16

6 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