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

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

Built distributions (wheels)

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

Total release size: 105.7 MB

Release files / pyrudof-0.3.25.tar.gz

Download URL pyrudof-0.3.25.tar.gz
Size 4.8 MB
Tags Source
SHA-256 checksum
How to use checksums
76762ac991d5581c70c771e143ee065b436c19e4c0a951fddc100b73e9a5967d
BLAKE2b-256 checksum
How to use checksums
4c3e22ee1c1546292dd84c3d7779f6e704dbf0936eea8cb2c7e733c85ca459b8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

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

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

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

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

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

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

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

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

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

Download URL pyrudof-0.3.25-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
b3b6fc1b3d318dbd2a4eabcbae715036d952296dd08c7108204bcc0385434e43
BLAKE2b-256 checksum
How to use checksums
93f79b125e0bda7979309bd9498b3f576fe3b62a6f08f8df006c6045e832e626
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.25 This release

6 release files

0.3.23

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