Skip to main content

fast-semver-rs

Opt-in Rust-backed, behavior-compatible API replacement for semver==3.0.4. It keeps the semver import, Version/VersionInfo Python class, CLI and deprecated compatibility surface while accelerating the strict parse hot path.

Rust does not replace Python's public object model. Bytes decoding, subclasses, optional minor/patch parsing, arbitrary-size integers, exact errors, bumps, matching, formatting, CLI and warnings remain in the frozen Python compatibility layer. The native parser is used only when it can preserve that contract.

Verified release evidence

  • frozen upstream tag 3.0.4 at commit 6adf8765f6e21910f1f0c13151ce84f32f8d431d;
  • exact native and universal fallback wheel suites: 337 passed each (329 frozen upstream plus 8 candidate regressions);
  • 10,000 deterministic valid, invalid, bytes, optional-part and arbitrary-integer cases produced identical results or exact exceptions;
  • Google OSV semver_index applicable suite: Oracle and Candidate 3 passed each;
  • exact macOS arm64 wheel, 15-pair local evidence: parse 1.72x, compare 1.32x, match 1.40x median speedup with identical output digests;
  • Google OSV 20,000-version exact-wheel evidence: normalize 1.21x, sort 1.15x, identical digests;
  • native wheel, universal fallback wheel and sdist passed strict metadata, RECORD, namespace, console-script, cache/test/binary sanitation and Twine checks.

Every release is gated on reproducing this contract across five native platforms, publishing one audited seven-artifact set, public native and universal-fallback reinstalls, and creating the GitHub Release last. The timings remain observations from named runners and artifacts, not universal speed claims.

Distribution limitation

The distribution name is fast-semver-rs, while existing consumers depend on the separate semver distribution. Package resolvers do not treat one as satisfying the other even though both provide the semver namespace. The controlled opt-in flow after release will therefore be:

python -m pip uninstall -y semver
python -m pip install fast-semver-rs
python -c "from semver import Version; print(Version.parse('1.2.3-rc.1'))"

Do not install both distributions together. Roll back with python -m pip uninstall -y fast-semver-rs && python -m pip install 'semver==3.0.4'. An upstream optional native backend is the preferred broad-adoption path; no upstream acceptance is claimed.

Development

uv venv --python 3.14 .venv
uv pip install --python .venv/bin/python maturin pytest pytest-cov pytest-randomly
.venv/bin/maturin develop --release
.venv/bin/python -m pytest -q tests upstream/tests

BSD-3-Clause. See THIRD_PARTY_NOTICES.md before redistribution.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fast_semver_rs-0.1.1.tar.gz (296.2 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

fast_semver_rs-0.1.1-py3-none-any.whl (17.5 kB view details)

Uploaded Python 3

fast_semver_rs-0.1.1-cp37-abi3-win_amd64.whl (117.1 kB view details)

Uploaded CPython 3.7+Windows x86-64

fast_semver_rs-0.1.1-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (245.6 kB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ x86-64

fast_semver_rs-0.1.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (240.5 kB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ ARM64

fast_semver_rs-0.1.1-cp37-abi3-macosx_11_0_arm64.whl (215.2 kB view details)

Uploaded CPython 3.7+macOS 11.0+ ARM64

fast_semver_rs-0.1.1-cp37-abi3-macosx_10_12_x86_64.whl (217.0 kB view details)

Uploaded CPython 3.7+macOS 10.12+ x86-64

File details

Details for the file fast_semver_rs-0.1.1.tar.gz.

File metadata

  • Download URL: fast_semver_rs-0.1.1.tar.gz
  • Upload date:
  • Size: 296.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for fast_semver_rs-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d2c26a35d32a405585ba3cff343c87f21902647f088a6fd570c9fae5bbe25ea8
MD5 bd0e9b8e88dc09f623ce7abeffc8ea26
BLAKE2b-256 31a1fe6bbc6adc862edaac1fe9fc4237bd7db0ac9b71b6fd658ba9bc1091f9bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for fast_semver_rs-0.1.1.tar.gz:

Publisher: release.yml on lowmiaq-gmail/fast-semver-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fast_semver_rs-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: fast_semver_rs-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 17.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for fast_semver_rs-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2941284958a17b703e72bf27e860249d3d89835f228cc05a18521b304486c323
MD5 6c4195259b96fdc87794983afb21adb5
BLAKE2b-256 be5746c81155ad49c1c418d55d638c12a546f299f3e573a60c3b7145f0c05c5d

See more details on using hashes here.

Provenance

The following attestation bundles were made for fast_semver_rs-0.1.1-py3-none-any.whl:

Publisher: release.yml on lowmiaq-gmail/fast-semver-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fast_semver_rs-0.1.1-cp37-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for fast_semver_rs-0.1.1-cp37-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 6c0a9e9bab43aa9ac46f2522057cc6d408103e34b714b1c70e0fab94db4beedd
MD5 a89f4c7d60cd877c9c7e4fdb1470dbb3
BLAKE2b-256 dc3eb85952807c1c4f3f9aaa145ed02df04faad23772bd665664e910d14dde34

See more details on using hashes here.

Provenance

The following attestation bundles were made for fast_semver_rs-0.1.1-cp37-abi3-win_amd64.whl:

Publisher: release.yml on lowmiaq-gmail/fast-semver-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fast_semver_rs-0.1.1-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fast_semver_rs-0.1.1-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 450789089b7a2e7015da8fa1540e1978a6bf439acd0eb06d03f8bd0fba5db250
MD5 c73618c39caaa410858126c3714d9842
BLAKE2b-256 09ed2f50c2769e2f0671e85cacc6624612faca4a935ff7877487417ded4850ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for fast_semver_rs-0.1.1-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on lowmiaq-gmail/fast-semver-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fast_semver_rs-0.1.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fast_semver_rs-0.1.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2fa03d0d2f9e962dd6ef826de94e8ae34ac1b9f26e4b6292d33ba59027a87d7e
MD5 31be5518e36f79bdda605f7e3844cbc3
BLAKE2b-256 6ca92b045189469288c82849165fa8a8bc553719f597707b2feb9d069ee3d825

See more details on using hashes here.

Provenance

The following attestation bundles were made for fast_semver_rs-0.1.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on lowmiaq-gmail/fast-semver-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fast_semver_rs-0.1.1-cp37-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fast_semver_rs-0.1.1-cp37-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b186bbdef61ec7291b3990b1731dd5acf09d2a33effdee23dbfa0c243f142df0
MD5 8b8377211c1098c6125cfe98d97414f8
BLAKE2b-256 a0397ad43f35583060bea534bf12a48e063c3eac53aaa4783fe8b737f4fb743d

See more details on using hashes here.

Provenance

The following attestation bundles were made for fast_semver_rs-0.1.1-cp37-abi3-macosx_11_0_arm64.whl:

Publisher: release.yml on lowmiaq-gmail/fast-semver-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fast_semver_rs-0.1.1-cp37-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for fast_semver_rs-0.1.1-cp37-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 45309973822a8a44729817395cd97bacf814ac8c43a266c48626d8b9d14e2d53
MD5 f1d2cec16ab8f58b164039a8df94b3e1
BLAKE2b-256 894a8f02b6c828634dc71bd806348c294e1439b714827a7b5536533729111800

See more details on using hashes here.

Provenance

The following attestation bundles were made for fast_semver_rs-0.1.1-cp37-abi3-macosx_10_12_x86_64.whl:

Publisher: release.yml on lowmiaq-gmail/fast-semver-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page