Skip to main content

PEP440 in rust

A library for python version numbers and specifiers, implementing PEP 440

pip install pep440_rs
from pep440_rs import Version, VersionSpecifier

assert Version("1.1a1").any_prerelease()
assert Version("1.1.dev2").any_prerelease()
assert not Version("1.1").any_prerelease()
assert VersionSpecifier(">=1.0").contains(Version("1.1a1"))
assert not VersionSpecifier(">=1.1").contains(Version("1.1a1"))
assert Version("2.0") in VersionSpecifier("==2")

Unlike pypa/packaging, this library always matches preleases. To only match final releases, filter with .any_prelease() beforehand.

PEP 440 has a lot of unintuitive features, including:

  • An epoch that you can prefix the version which, e.g. 1!1.2.3. Lower epoch always means lower version (1.0 <=2!0.1)
  • post versions, which can be attached to both stable releases and prereleases
  • dev versions, which can be attached to sbpth table releases and prereleases. When attached to a prerelease the dev version is ordered just below the normal prerelease, however when attached to a stable version, the dev version is sorted before a prereleases
  • prerelease handling is a mess: "Pre-releases of any kind, including developmental releases, are implicitly excluded from all version specifiers, unless they are already present on the system, explicitly requested by the user, or if the only available version that satisfies the version specifier is a pre-release.". This means that we can't say whether a specifier matches without also looking at the environment
  • prelease vs. prerelease incl. dev is fuzzy
  • local versions on top of all the others, which are added with a + and have implicitly typed string and number segments
  • no semver-caret (^), but a pseudo-semver tilde (~=)
  • ordering contradicts matching: We have e.g. 1.0+local > 1.0 when sorting, but ==1.0 matches 1.0+local. While the ordering of versions itself is a total order the version matching needs to catch all sorts of special cases

Metadata

Release files for pep440-rs 0.6.5

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

Source distribution (sdist)

Source distribution for pep440-rs 0.6.5
File Size Uploaded Provenance Actions
pep440_rs-0.6.5.tar.gz 47.8 kB Without provenance Details for pep440_rs-0.6.5.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for pep440-rs 0.6.5
File Actions
pep440_rs-0.6.5-cp38-abi3-win_amd64.whl CPython 3.8 abi3 Windows x86-64 Details for pep440_rs-0.6.5-cp38-abi3-win_amd64.whl
pep440_rs-0.6.5-cp38-abi3-win32.whl CPython 3.8 abi3 Windows x86-32 Details for pep440_rs-0.6.5-cp38-abi3-win32.whl
pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_x86_64.whl CPython 3.8 abi3 Linux musl 1.2+ x86-64 Details for pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_x86_64.whl
pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_i686.whl CPython 3.8 abi3 Linux musl 1.2+ x86-32 Details for pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_i686.whl
pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_armv7l.whl CPython 3.8 abi3 Linux musl 1.2+ ARMv7l Details for pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_armv7l.whl
pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_aarch64.whl CPython 3.8 abi3 Linux musl 1.2+ ARM64 Details for pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_aarch64.whl
pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.8 abi3 Linux glibc 2.17+ x86-64 Details for pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl CPython 3.8 abi3 Linux glibc 2.17+ IBM System/390x Details for pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl CPython 3.8 abi3 Linux glibc 2.17+ PowerPC 64-le Details for pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl CPython 3.8 abi3 Linux glibc 2.17+ ARMv7l Details for pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.8 abi3 Linux glibc 2.17+ ARM64 Details for pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
pep440_rs-0.6.5-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.8 abi3 Linux glibc 2.5+ x86-32 Details for pep440_rs-0.6.5-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl
pep440_rs-0.6.5-cp38-abi3-macosx_11_0_arm64.whl CPython 3.8 abi3 macOS 11.0+ ARM64 Details for pep440_rs-0.6.5-cp38-abi3-macosx_11_0_arm64.whl
pep440_rs-0.6.5-cp38-abi3-macosx_10_12_x86_64.whl CPython 3.8 abi3 macOS 10.12+ x86-64 Details for pep440_rs-0.6.5-cp38-abi3-macosx_10_12_x86_64.whl

Total release size: 4.9 MB

Release files / pep440_rs-0.6.5.tar.gz

Download URL pep440_rs-0.6.5.tar.gz
Size 47.8 kB
Tags Source
SHA-256 checksum
How to use checksums
97347b4423bdd903a30c6ac0ef9755bc2744f39ae10ffdf50844ef79089c4e02
BLAKE2b-256 checksum
How to use checksums
305ced6066ca8ae413e1f751bf7e61a08ec11642514d7d115b376ece6962d16d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-win_amd64.whl

Download URL pep440_rs-0.6.5-cp38-abi3-win_amd64.whl
Size 173.0 kB
Tags CPython 3.8 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
0814a66b7a67b50011f58dd425ce15d9f926e5c60eed9ca9b6465b5a8da73cd0
BLAKE2b-256 checksum
How to use checksums
7198ed56b7fd2e1cb340ae8e0a76ef14bcfd57db5232a0cec695dfa27be9368b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-win32.whl

Download URL pep440_rs-0.6.5-cp38-abi3-win32.whl
Size 165.2 kB
Tags CPython 3.8 Windows x86-32 abi3
SHA-256 checksum
How to use checksums
89b6557881cf80757982fd5fe7d4d366e27e6d51afcaf8a5087f918f7fdc0b64
BLAKE2b-256 checksum
How to use checksums
e75511255204893affd4201b589ff03be7e0789eb9b5667151c855831cfd40ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_x86_64.whl

Download URL pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_x86_64.whl
Size 476.0 kB
Tags CPython 3.8 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
0de9686e1cf356c7abd4a29148e6254b3bcbc58ec6388e57e9f9a8501c85cb6d
BLAKE2b-256 checksum
How to use checksums
c51139a875e7adb7015d07ce6ea1257a16b83e114ced8d19d7f914c6c20c2d0b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_i686.whl

Download URL pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_i686.whl
Size 500.0 kB
Tags CPython 3.8 Linux musl 1.2+ x86-32 abi3
SHA-256 checksum
How to use checksums
65cba7c0350f7443b6d8eb9b4a0612d35b64f0149448d9294c8d02819ebc2667
BLAKE2b-256 checksum
How to use checksums
c3febb8e454e0dd777f92bbc2b4bea1af12e831af10280f1b9fadd46cd3c01b4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_armv7l.whl

Download URL pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_armv7l.whl
Size 578.7 kB
Tags CPython 3.8 Linux musl 1.2+ ARMv7l abi3
SHA-256 checksum
How to use checksums
78a15ff8408c30ee3e501e97fe9e8a9f5c87e4e0f07a5e1cba997530bf6ecb1e
BLAKE2b-256 checksum
How to use checksums
d137c623ce1ea2e8f60d0b865158fb6990bbadbe6c1acbfbf22e0a449066745e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_aarch64.whl

Download URL pep440_rs-0.6.5-cp38-abi3-musllinux_1_2_aarch64.whl
Size 493.3 kB
Tags CPython 3.8 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
2ac95c12aeeb3bf3fc7cc40cacae6f57a33b42097d65a3c1ad81b189271d0485
BLAKE2b-256 checksum
How to use checksums
170c3feb949e45ea012f8e8dcdeeb038181041b4b6e2fd13f0a0ac12f762899a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 305.6 kB
Tags CPython 3.8 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
ad8a63034c1e4d3a64107b9681df40cd692eb5d71ba9f12c70ca2d7b24225021
BLAKE2b-256 checksum
How to use checksums
90bad7a1f9f39229415d0e9a9cc75fb125339ef1e882b0fc56e2d0a3c7140622
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 357.8 kB
Tags CPython 3.8 Linux glibc 2.17+ IBM System/390x abi3
SHA-256 checksum
How to use checksums
f5fdb68ee25f9c42c6a812f3f67cb3df4a2e34e2a08d7984de2e6ecd6ad6a6f6
BLAKE2b-256 checksum
How to use checksums
2291a019f49e607b1b4cf637a9892d304510dac295a1b97c7274e99f36864d74
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 343.4 kB
Tags CPython 3.8 Linux glibc 2.17+ PowerPC 64-le abi3
SHA-256 checksum
How to use checksums
a0498ad4fbcfe74ac8cc3e55fc2b3f0e22fcafa9b203030d162693726305f1d1
BLAKE2b-256 checksum
How to use checksums
f1f6712018c85fa795765dff57860a157e2f961637fa04c26e70888fcca2fef2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 316.4 kB
Tags CPython 3.8 Linux glibc 2.17+ ARMv7l abi3
SHA-256 checksum
How to use checksums
b9c35e06dd90f76ac510c3e55f5f20226ebffd60bc317c13ef7074bc2fe52511
BLAKE2b-256 checksum
How to use checksums
b4fe0afabff9dd72a4c9fbc01d54baf52f8c56c86a546bab843908a77592c7e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL pep440_rs-0.6.5-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 315.4 kB
Tags CPython 3.8 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
35aa07b312f781937d6606a8f74428679c35953946b0061d618eb2b9c348942a
BLAKE2b-256 checksum
How to use checksums
4ddb06f606d6ecb0977b36d30b76a885b48604f36405b4092688ede42afb71cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl

Download URL pep440_rs-0.6.5-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl
Size 323.7 kB
Tags CPython 3.8 Linux glibc 2.5+ x86-32 abi3
SHA-256 checksum
How to use checksums
9aff97fd300aa500bd279e17430252a98fca5d2e9208edec5107e9e120091cf3
BLAKE2b-256 checksum
How to use checksums
6cda5013b5a6e9cc24daf643f6ee678fd152b0468778eb5bc3f0a1c541ad53a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-macosx_11_0_arm64.whl

Download URL pep440_rs-0.6.5-cp38-abi3-macosx_11_0_arm64.whl
Size 264.8 kB
Tags CPython 3.8 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
aa9bacde12f3e21582c7f072cba587eb3666babb51dcb35af5390a6734759231
BLAKE2b-256 checksum
How to use checksums
a1165cc32b4fbf247a77af1a9a28bba38b4c52f2ddcdd7880488acd1ac246a2a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Release files / pep440_rs-0.6.5-cp38-abi3-macosx_10_12_x86_64.whl

Download URL pep440_rs-0.6.5-cp38-abi3-macosx_10_12_x86_64.whl
Size 272.5 kB
Tags CPython 3.8 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
bb78fa69cbfb565fe78c974cda89b4b205fbc6e682bf9fee8b0fea96cb51d0f8
BLAKE2b-256 checksum
How to use checksums
e85f931fc3a873603abfe89ff6feed919b168218d215e4a59f4ce0d7ff0f08c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via maturin/1.7.0

Security for pep440-rs 0.6.5

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.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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