High-performance Rust implementation of packaging - version parsing and comparison utilities
Project description
packaging-rs
High-performance Rust implementation of packaging - version parsing and comparison utilities.
Overview
packaging-rs is a Rust-powered Python library that provides fast version parsing and comparison, compatible with Python's packaging library but with significantly improved performance.
Installation
pip install packaging-rs
Features
- 🚀 High Performance: Built with Rust for maximum speed
- 📦 Version Handling: Parse and compare package versions
- 🔄 Compatible: Works with PEP 440 version specifications
- 🐍 Python 3.8+: Supports Python 3.8 through 3.14
- 🌍 Cross-Platform: Pre-built wheels for Linux, macOS, and Windows
Quick Start
from packaging_rs import Version, parse
# Parse versions
v1 = Version("1.2.3")
v2 = Version("2.0.0")
v3 = parse("1.2.3a1") # Pre-release version
# Compare versions
print(v1 < v2) # True
print(v2 > v1) # True
print(v1 == Version("1.2.3")) # True
# Version information
print(v1.major) # 1
print(v1.minor) # 2
print(v1.micro) # 3
Version Formats
Supports PEP 440 version formats:
- Standard versions:
1.2.3 - Pre-releases:
1.2.3a1,1.2.3b2,1.2.3rc1 - Post-releases:
1.2.3.post1 - Development releases:
1.2.3.dev1 - Local versions:
1.2.3+local.version
Performance
packaging-rs delivers significant performance improvements over pure Python implementations, especially when processing large numbers of version comparisons.
License
Apache License 2.0
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file packaging_rs-0.1.1-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 739.8 kB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57b3b3b7d83b3aa84c9c79fbc65dec27579d844d84ac0e479c4bb6dc083631dd
|
|
| MD5 |
828e3a8a008e5dd0cd02920e19b2e145
|
|
| BLAKE2b-256 |
aa24dcd49a53b1d3a2b26d0ec2c1b9e83f3a558fbd09833182696431d4464d9b
|
File details
Details for the file packaging_rs-0.1.1-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 739.8 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
772698d2be12e088df8ac45b6a778454e3f7ed4a63c8114109069483bebcaa91
|
|
| MD5 |
21f52a4b6a99a2a315dd33ac0140f5c3
|
|
| BLAKE2b-256 |
26eeeed4daf87d2738327cc090cac11dd14e0bc4b6c44129adcd37bc83b97c5c
|
File details
Details for the file packaging_rs-0.1.1-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 739.8 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
387d9969615c975821e75a09377d9033e215aa8e71003f9f6643281ca4f8439b
|
|
| MD5 |
5ade8517fe4adfba01d965bd9479ba8a
|
|
| BLAKE2b-256 |
62278eca1ab8dfee6031ca70208ecda02f9807b17ef6e16e922c13215b7ce105
|
File details
Details for the file packaging_rs-0.1.1-cp312-cp312-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp312-cp312-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 981.2 kB
- Tags: CPython 3.12, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d0bf1fb622702f825a7d52c121d67643d1c8c01828a6a9ad7b0170362792bfee
|
|
| MD5 |
966f7683034f3f32d611d3cac7f58730
|
|
| BLAKE2b-256 |
23ad0e0750b680cfc0e9eabac4662be6f99fbc4ca2c7c2ce76565709eb9bf45a
|
File details
Details for the file packaging_rs-0.1.1-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 822.5 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3b7cb9039031135f1d2cddfdbee656db82d4b867918f24a6aff902ef025156e2
|
|
| MD5 |
6d31fd43eeafeddf29af8456b5e1946b
|
|
| BLAKE2b-256 |
0bfde49a730239f87ffc9ebc6983b295b8ff524067ad9f4812b0732e00a22708
|
File details
Details for the file packaging_rs-0.1.1-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 740.5 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3c88682be0057b3cf8518941b19b4e765d3942715ea4871b10eb405634d99909
|
|
| MD5 |
bf998b06972c498c2244d403158d0719
|
|
| BLAKE2b-256 |
602d72936aae796b8dfc2fdad8f44845dbd1ae393bbb5f9028eae87824bc1898
|
File details
Details for the file packaging_rs-0.1.1-cp311-cp311-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp311-cp311-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 981.0 kB
- Tags: CPython 3.11, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e76b5f4d616e600d810293e418840d58139d4f2ba8d3348a01246d07433799e4
|
|
| MD5 |
0dc5b2adaf0a3ef13806a2feab078ad7
|
|
| BLAKE2b-256 |
a370f13bff4dc99f3d83489d9da7c7dbd99759e9654a369bf7809906528d42db
|
File details
Details for the file packaging_rs-0.1.1-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 822.8 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c9ae995ecd5eb19b4975ffa577e2c48a4f73fac4348757f092b279d1ae2837d9
|
|
| MD5 |
363a90b8f86869d5d17b27f88b0beeb3
|
|
| BLAKE2b-256 |
73c2030e518343572257762e9ded4c88fb1cc48413d001fbb01f51f00a7351c2
|
File details
Details for the file packaging_rs-0.1.1-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 743.1 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ae4f4699ff442040e28a5841a8002db85922c124ae85b53073fb8d4c5b5c9b8f
|
|
| MD5 |
cf622738a45e90bd6cc379245c50b050
|
|
| BLAKE2b-256 |
6dde58c3aa58ae0143183baa1e4025763ebdb263e34e0dadf7455c1dcd14105f
|
File details
Details for the file packaging_rs-0.1.1-cp310-cp310-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp310-cp310-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 980.9 kB
- Tags: CPython 3.10, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6b4b1ee86bc4cd18dbab60bcf18a88129afec738480b23436bcd2ffb8d59e858
|
|
| MD5 |
3a24d9825c5cb2277d5fc9cdedffd1d7
|
|
| BLAKE2b-256 |
55dfa8db43a3af55485720279751d64a97aeb124d9039af4b1ea917aecb4e49f
|
File details
Details for the file packaging_rs-0.1.1-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 823.1 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a0d6a7574819947bbd9a4ed58bfd0bf7ff7cb3fd1f7c6493ff3fa055a0fbdaa6
|
|
| MD5 |
dc1b7a8083e88a5c12c67f502376e1cf
|
|
| BLAKE2b-256 |
937bfca5622efa94bb24b3eaf10d401f5c7115256561eb891aad603623f4ac70
|
File details
Details for the file packaging_rs-0.1.1-cp39-cp39-win_amd64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp39-cp39-win_amd64.whl
- Upload date:
- Size: 745.3 kB
- Tags: CPython 3.9, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
42cb0d786a747b261f822e5339e98f77a991dfbf206331bbf1444441502db1d4
|
|
| MD5 |
ac3acaa54d85e8536ea745dc4f201843
|
|
| BLAKE2b-256 |
89f0278c71e181c03a76850dd86604178472fc9a8c20f107767265c6f6b61770
|
File details
Details for the file packaging_rs-0.1.1-cp39-cp39-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp39-cp39-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 981.5 kB
- Tags: CPython 3.9, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d531cccf0c802ae432bb27dd9096e806b22caf3bd10976e09cb43b5ce94f4d2b
|
|
| MD5 |
52566ac7353faa4e1edf8428a3843007
|
|
| BLAKE2b-256 |
cd9fce3f936ce6cf7f133835cb9db029359de6b70359889b86945cecf2061e72
|
File details
Details for the file packaging_rs-0.1.1-cp39-cp39-macosx_11_0_arm64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp39-cp39-macosx_11_0_arm64.whl
- Upload date:
- Size: 823.2 kB
- Tags: CPython 3.9, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dec2e4b7bfdaaf86244136358327eaff31c1edf01ff015dda6e224b67504a12a
|
|
| MD5 |
f61c0328df1a41db68c5682329961a70
|
|
| BLAKE2b-256 |
fc1fa6955adef42e1020a1f31a96c98437b1b8c81613a32ca58bc1868b722038
|
File details
Details for the file packaging_rs-0.1.1-cp38-cp38-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp38-cp38-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 981.7 kB
- Tags: CPython 3.8, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4dc1199d5b17c6f869bdbf1f67fc181e7af8e41011f1d4ddb7c0bd02f2b5e98e
|
|
| MD5 |
54e072ad85081d898241a283df09f41d
|
|
| BLAKE2b-256 |
74cf3a343dc362331c88f7094f42eb6a1feb4b3eca2ac33f9027a757c0fd7740
|
File details
Details for the file packaging_rs-0.1.1-cp38-cp38-macosx_11_0_arm64.whl.
File metadata
- Download URL: packaging_rs-0.1.1-cp38-cp38-macosx_11_0_arm64.whl
- Upload date:
- Size: 823.5 kB
- Tags: CPython 3.8, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aa0c21ca515e698883f742805892caeac69ee5cd6437a1ed737dbdadc09b68fe
|
|
| MD5 |
edd1125a26f28dd7e24081b3fd7c4ff4
|
|
| BLAKE2b-256 |
41ce5e4e83dc952a175d5dfcee5671e564bf15dfc3c7d3f0ef446a56b7784553
|