Skip to main content

pyparsing-rust

Stage-1 Rust mirror of pyparsing/pyparsing (pyparsing 3.3.3, MIT): a runtime-constructible grammar API for Python.

Boundary

The text-scan hot path — the remainder loops of CharsNotIn.parseImpl and White.parseImpl — lives in the reusable pyparsing-rust-core crate (no Python dependency) with a thin PyO3 binding (pyparsing._pyparsing). Everything else is the upstream source verbatim:

  • ported to Rust: CharsNotIn / White scan loops (code-point exact, including lone surrogates);
  • kept in Python: ParserElement dispatch (_parseNoCache), preParse whitespace skipping (FFI floor exceeds 1–3-char skips; measured), Word/Regex/Literal (already C-speed via re), ParseResults, SkipTo, helpers, common, testing, unicode, diagram, tools.

pyparsing/ keeps the exact public interface; when the compiled extension is absent the shims fall back to the upstream Python loops, so the tree also imports without a build.

Build

python3 -m venv .venv && . .venv/bin/activate
pip install maturin
maturin develop --release
python3 -m pytest tests/ -q

Layout

  • pyparsing-core/ — reusable Rust core (pyparsing-rust-core on crates.io).
  • src/lib.rs — PyO3 binding (pyparsing._pyparsing).
  • pyparsing/core.py — upstream 3.3.3 plus two delegating parseImpl methods (diff against upstream shows only the delegation).
  • tests/ — upstream suite (frozen oracle; do not weaken).

Measured performance

No accepted optimizations yet (mirror baseline); re-run release-prep after run --stage optimize merges winners. Artifact hashes are intentionally absent here; see release-manifest.json.

Metadata

Release files for pyparsing-rust 3.3.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyparsing-rust 3.3.3
File Size Uploaded Provenance
pyparsing_rust-3.3.3.tar.gz 127.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for pyparsing-rust 3.3.3
File Interpreter ABI Platform
pyparsing_rust-3.3.3-cp312-cp312-manylinux_2_34_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.34+ x86-64 Details

Total release size: 489.5 kB

Release files / pyparsing_rust-3.3.3.tar.gz

Download URL pyparsing_rust-3.3.3.tar.gz
Size 127.2 kB
Tags Source
SHA-256 checksum
How to use checksums
651c0c252d29bd6f4fa4fecac3912bbd6010f0913ed2df49f6719cd1fdac9e54
BLAKE2b-256 checksum
How to use checksums
c189bff253d198d0fb2634b6de11774474b52b37e4ade5b9ef87adee0f19719b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.2

Release files / pyparsing_rust-3.3.3-cp312-cp312-manylinux_2_34_x86_64.whl

Download URL pyparsing_rust-3.3.3-cp312-cp312-manylinux_2_34_x86_64.whl
Size 362.3 kB
Tags CPython 3.12 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
26e1797385138c38ab7bf1f2b01f38d320016858707a208972fe91b7a884c7ca
BLAKE2b-256 checksum
How to use checksums
b8ca66c0a843f3d0ae034ac6b0ec456a6951515cb1be0dc31292dbd981ae1f97
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.2

Security for pyparsing-rust 3.3.3

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

3.3.3 This release

2 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