Python Requirements Version Helper
Test Python version specifiers such as ~=, == and != against real versions, and get a line-by-line explanation of a requirements.txt file.
Test a pip version specifier against a list of versions, or paste a requirements.txt file to get a plain-English explanation of every line.
Test a version specifier
Explain a requirements.txt file
More Software Version / Package Tools
View all 9Everything runs in your browser - nothing is sent to PyPI - so you can safely paste private package names.
What Is the Python Requirements Version Helper?
Python packages use PEP 440 versions and specifiers, which differ from npm and Composer: versions look like 1.0rc1, 2.1.post1 or 1!2.0, and operators include ~= (compatible release) and ==1.4.*. This tool applies the same rules as pip's packaging library.
When to Use It
- Checking whether a specifier allows the version you want before running
pip install. - Reviewing a requirements file for unpinned or unbounded dependencies.
- Understanding why pip skipped a prerelease.
How to Use It
- Test a specifier: enter something like
>=1.4,<2.0and list versions - each is marked as a match or not. - Explain requirements.txt: paste the file and click Explain Requirements.
Examples
~=2.2means>=2.2, ==2.*;~=2.2.0means>=2.2.0, ==2.2.*.==3.1.*matches 3.1.0 and 3.1.7 but not 3.2.0.<2.0does not match2.0rc1- prereleases of the bound itself are excluded.
Understanding the Result
Prereleases (a, b, rc, .dev) are excluded unless you tick "Allow prereleases" or the specifier itself names one with ==, >=, <= or ~=. The requirements explanation flags unpinned packages, missing upper bounds, duplicates (using normalized names) and environment markers.
Limitations
PyPI is not queried, so it cannot tell you which versions exist. Environment markers are shown but not evaluated. To generate a requirements file, use the Python Requirements Generator; to check a package name, the Python Package Name Checker.
Frequently Asked Questions
Explore More Tools
Keep going with related categories and our most used tools.