PHP-compatible version comparison for Python
Project description
php-version-compare
ℹ️ Note: This project is feature-complete and will only receive updates for bug fixes or compatibility with new Python versions. No new features are planned. If you require additional features, please consider forking the project.
A simple Python library for comparing version strings in a manner compatible with PHP's version_compare function. Although this implementation is not derived from PHP's code, it passes the same tests to ensure compatibility.
Installation
To install php-version-compare
, use pip:
pip install php-version-compare
Usage
Documentation
The complete documentation can be found on Read the Docs.
Basic Usage
from php_version_compare import version_compare
# Without operator
print(version_compare('1.0', '1.1')) # Output: -1
print(version_compare('1.1', '1.0')) # Output: 1
print(version_compare('1.0', '1.0')) # Output: 0
# With operator
print(version_compare('1.1', '1.0.0', operator='>=')) # Output: True
print(version_compare('1.0.0', '1.1', operator='<=')) # Output: True
print(version_compare('1.0', '1.0', operator='!=')) # Output: False
Contributing
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Make your changes.
- Commit your changes (
git commit -m 'Add new feature'
). - Push to the branch (
git push origin feature-branch
). - Open a pull request.
Running Tests
To run tests, make sure you have tox
installed and run the following command, which will run the tests for all
supported Python versions that are installed on your system:
tox
If you only want to run the tests for a specific Python version, you can specify the version:
tox -e py39
License
This project is licensed under either of the following, at your option:
- Apache License, Version 2.0 (LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0)
- MIT License (LICENSE-MIT or https://opensource.org/licenses/MIT)
Which license to use is up to you. This project is dual-licensed for compatibility with both. When contributing, you agree to license your contributions under the same terms.
Versioning
This project uses Semantic Versioning. For the versions available, see the tags on this repository or the releases page.
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 Distribution
Built Distribution
File details
Details for the file php_version_compare-1.1.2.tar.gz
.
File metadata
- Download URL: php_version_compare-1.1.2.tar.gz
- Upload date:
- Size: 11.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ad47ba2f1d1f2329317f3b5ec6d69dc22307225cf2a297a90a55dd8856733d2c |
|
MD5 | 6f904b7ed9bf08d92fc2d55d1655b8ee |
|
BLAKE2b-256 | facab4dc6d03464556f9e0e37bfddf89f62fc8fc7e7f920d89b332820b5dfeaa |
File details
Details for the file php_version_compare-1.1.2-py3-none-any.whl
.
File metadata
- Download URL: php_version_compare-1.1.2-py3-none-any.whl
- Upload date:
- Size: 9.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 60e3a07f72b6b34e8ea15a5f9d3be171af9a3985901d76186392cdfe9fb1c3c4 |
|
MD5 | 3812d0a9b62f2be2a9d5c17b60aba120 |
|
BLAKE2b-256 | a1ec7755a334f39f55cd6385a3bc0b279a529c4df356f12da5a60caadcf1d533 |