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

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

Built distributions (wheels)

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

Total release size: 104.3 MB

Release files / pyrudof-0.3.23.tar.gz

Download URL pyrudof-0.3.23.tar.gz
Size 4.8 MB
Tags Source
SHA-256 checksum
How to use checksums
470dbe96c752acffc8d8db373485e391da5282db9353f82321ef8dcedcd4e155
BLAKE2b-256 checksum
How to use checksums
5598475391df7c7ad80eacbcf0057318b0cfcc728b63d139db370a551e27a98f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

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

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

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

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

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

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

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

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

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

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

Release history Release notifications | RSS feed

This release

0.3.23 This release

6 release files

0.3.22

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