NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #747 most downloaded on PyPI
This is a small Python module for parsing Pip requirement files.
Last release 3 months ago
18 Jun 2026
Release timing varies
gaps range from 3 weeks to 3.9 years
Nearly every release is documented
notes for 20 of 20 stable releases
1 version withdrawn
withdrawn after publishing
13 years old
21 releases · first in 2013
ci : Use latest macos runner - macos-13 is deprecated
ci: Modernised release workflow to get it working (157285b)
ci: Use latest macos runner - macos-13 is deprecated (6601558)
Detailed Changes: v0.13.0...v0.13.1
chore(ci): update actions/upload-artifact
One column per quarter.
actions/upload-artifactSigned-off-by: Paul Horton <paul.horton@owasp.org> (4ec20b6)
actions/upload-artifactSigned-off-by: Paul Horton <paul.horton@owasp.org> (089094f)
Signed-off-by: Paul Horton <paul.horton@owasp.org> (80d296e)
chore(deps): remove obsolete types-setuptools
types-setuptools (#106)Before #105,
pkg_resources was implicitly present with setuptools, so it was
useful to have types-setuptools to check typing. But now that the
usage is gone, the typing dependency should not be needed. It probably
should have never been a direct dependency anyway, but only a dev
dependency, as AFAIK it was only useful locally to verify typing, not
when installing the library for consumers.
Signed-off-by: Mathieu Kniewallner <mathieu.kniewallner@gmail.com> (5937fb4)
Signed-off-by: Edgar Ramírez Mondragón <edgarrm358@gmail.com> (cf149b2)
feat: replace deprecated pkg_resources with packaging ( #105 ) - thanks to @oh2fih
Signed-off-by: Esa Jokinen <esa@esajokinen.net>
Signed-off-by: Esa Jokinen <esa@esajokinen.net>
Signed-off-by: Esa Jokinen <esa@esajokinen.net> (19dddfa)
fix: support extras and more chars in names for VCS lines ( #103 ) - thanks @theCapypara
Signed-off-by: Marco "Capypara" Köpcke <hello@capypara.de> (90e7f9e)
Signed-off-by: Marco "Capypara" Köpcke <hello@capypara.de> (90e7f9e)
fix: ValueError when parsing -e . ( #99 ) thanks to @vergenzt
chore(ci): use non-latest macos runner
chore(ci): use non-latest macos runner (93b2a85)
chore(doc): Updated README
Signed-off-by: Paul Horton <paul.horton@owasp.org> (6736727)
Signed-off-by: Cal Crosby <calcruiseby@gmail.com> (2927e00)
feat: handle hashes without error (thanks to @dymart via #67 )
feat: Add support for Python 3.12 #93 via #94
feat: Drop support for Python 3.7 as part of #91
fix: Publish anciliary files only to sdist #66 via #87 (thanks to Maxwell G <maxwell@gtmx.me>)
fix: Type of Requirement.specs was incorrect #78
fix: -e in requirements.txt did not handle local paths correctly #97
chore(dev-deps): Updated all development dependencies
chore(deps): include types-setuptools as dependency
Signed-off-by: Paul Horton <paul.horton@owasp.org> (16ffe88)
Signed-off-by: Paul Horton <paul.horton@owasp.org>
Co-authored-by: Maxwell G <maxwell@gtmx.me> (5c3442a)
chore: update release workflow to run from main
Signed-off-by: Paul Horton <paul.horton@owasp.org> (c363b80)
Signed-off-by: Paul Horton <paul.horton@owasp.org> (10f0c07)
Signed-off-by: Paul Horton <paul.horton@owasp.org> (1a455be)
Signed-off-by: Paul Horton <paul.horton@owasp.org> (`2c52fef`)
Signed-off-by: Paul Horton <paul.horton@owasp.org> (2c52fef)
Signed-off-by: Paul Horton <paul.horton@owasp.org> (e27c717)
Signed-off-by: Paul Horton <paul.horton@owasp.org> (1a09ab9)
d71ab54)feat: upgrade CI workflows to get them running again (#90)
ci: update actions to latest for all workflows
Signed-off-by: Paul Horton <paul.horton@owasp.org> (e76a3f5)
Automatically generated by python-semantic-release (d6755f2)
Merge branch 'master' of github.com:madpah/requirements-parser (58d5e50)
0.6.0
Automatically generated by python-semantic-release (3724009)
Signed-off-by: Paul Horton <paul.horton@owasp.org> (1ce9236)
Signed-off-by: Paul Horton <paul.horton@owasp.org> (ee91237)
Support all documented options in requirements files #62 (#63) (`f92c0c0`)
Signed-off-by: Paul Horton <phorton@sonatype.com> (b8d5c56)
feat: support all documented options in requirements files #62 (#63)
feat: support all documented options in requirements files #62
Signed-off-by: Paul Horton <phorton@sonatype.com>
Signed-off-by: Paul Horton <phorton@sonatype.com> (f92c0c0)
Automatically generated by python-semantic-release (19e3ddf)
Library is now typed according to PEP561 (`0e1bb6a`)
0e1bb6a)Signed-off-by: Paul Horton <phorton@sonatype.com> (5184747)
Signed-off-by: Paul Horton <phorton@sonatype.com> (24463ba)
Signed-off-by: Paul Horton <phorton@sonatype.com> (9487044)
feat: library is now typed according to PEP561
chore: added static analysis to CI
Signed-off-by: Paul Horton <phorton@sonatype.com> (0e1bb6a)
Automatically generated by python-semantic-release (a16fd0b)
Signed-off-by: Paul Horton <phorton@sonatype.com> (793ce91)
Signed-off-by: Paul Horton <phorton@sonatype.com> (203a0ed)
Signed-off-by: Paul Horton <phorton@sonatype.com> (9d22e23)
### Fix * Readthedocs config (`ac1e7fb`)
ac1e7fb)Signed-off-by: Paul Horton <phorton@sonatype.com> (ac1e7fb)
Automatically generated by python-semantic-release (186cfd4)
Removed Python 2 code (`82f9473`)
Signed-off-by: Paul Horton <phorton@sonatype.com> (4fb1bf5)
Signed-off-by: Paul Horton <phorton@sonatype.com> (d3ee857)
Signed-off-by: Paul Horton <phorton@sonatype.com> (4b54c79)
Signed-off-by: Paul Horton <phorton@sonatype.com> (5b7a6e4)
Signed-off-by: Paul Horton <phorton@sonatype.com> (07bea05)
Signed-off-by: Paul Horton <phorton@sonatype.com> (c8da36d)
requirements-parser
doc: updated license and changelog to work with new release processSigned-off-by: Paul Horton <phorton@sonatype.com> (068e3f8)
Signed-off-by: Paul Horton <phorton@sonatype.com> (ae53393)
Signed-off-by: Paul Horton <phorton@sonatype.com> (550f8af)
Signed-off-by: Paul Horton <phorton@sonatype.com> (ceba061)
Signed-off-by: Paul Horton <phorton@sonatype.com> (169ff6e)
Signed-off-by: Paul Horton <phorton@sonatype.com> (82f9473)
Signed-off-by: Paul Horton <phorton@sonatype.com> (4e83b9d)
Signed-off-by: Paul Horton <phorton@sonatype.com> (99ffc65)
Signed-off-by: Paul Horton <phorton@sonatype.com> (e17734a)
Signed-off-by: Paul Horton <phorton@sonatype.com> (5d2eebe)
Automatically generated by python-semantic-release (8760e01)
Migration to Poetry and other updates after David kindly transferred to Paul (8833cdb)
Signed-off-by: Paul Horton <phorton@sonatype.com> (3d78272)
Signed-off-by: Paul Horton <phorton@sonatype.com> (2a9dcf7)
Signed-off-by: Paul Horton <phorton@sonatype.com> (6f73ee5)
Fix parsing lines using -e and end of line comments (ea3dbee)
Adds equality (and inequality) testing to Requirement class (d8e6737)
MANIFEST.in: Add tests and docs (beda9cf)
.travis.yml: Run Python 3.8 without coverage (b265c38)
.travis.yml: Replace 3.3 with 3.7 & 3.8
Travis no longer provides 3.3 (772412a)
MANIFEST.in: Add tests and docs (ecabc1d)
Merge pull request #38 from cooperlees/master
Add setuptools as a install_requires Dependency (ad404ad)
pkg_resources is needed at runtime, lets be explicit and state that so pip etc. do the right thing. (212078b)
Update changelog for release (`2fd0faf`)
Increment version (52f802c)
Update changelog for release (2fd0faf)
Adds equality (and inequality) testing to Requirement class (de158d7)
Merge pull request #33 from sbidoul/preserve-login-sbi
preserve login part of uri (caca172)
preserve login part of uri (c34f405)
Update the README (a3dc6d2)
Add an authors file to credit helpful folks (90571d3)
Merge branch 'subdirectory-sbi' of https://github.com/sbidoul/requirements-parser into sbidoul-subdirectory-sbi (b9f0290)
Merge pull request #30 from ticosax/fix-vcs-extras_require
Fix vcs urls parsing with extras_require (f9e93d0)
Produce more predictable output for tests (4aaeae7)
support subdirectory fragment (fd2c098)
[FIX] specs and extras are now unordered
Fix tests, reckoning that setuptools.parse does not
preserve ordering of specs and extras anymore. (5c8f85d)
fixup! Extract extras from fragment's egg when vcs is specified (cab9ebd)
Extract extras from fragment's egg when vcs is specified (01b2f5c)
Produce expected output during tests
pkg_req.extras and pkg_req.specs are stored in Sets and thus ordering
can't be predicted. (44812d9)
pkg_req.extras and pkg_req.specs are stored in Sets and thus ordering
can't be predicted. (817229e)
Drop python 3.2 as it is not maintained since February 2016 (659c4af)
https://docs.python.org/devguide/devcycle.html#summary (bf11658)
Drop Python2.6 support; Add 3.6 support (e35b9f7)
Merge pull request #24 from mshenfield/issue-22-add-hash-information-to-requirements
Add hash and hash_name fragment (af136a1)
Fix parsing lines using -e and end of line comments (95006a3)
Flake8 3.0 dropped support for Python26 (4a43544)
Add setup.py notes about 3.4-3.5 (9e85381)
Travis CI updates
93428bb)This supports retreiving hashing algorithms supported by pip. If multiple algorithms are present in the fragemnt portion of a url, the hashes included in the requirement will be non-deterministic. (86c46b3)
Parsing fragment supports arbitrary keys (b05c2ff)
More information on the travis-ci issue tracker here (09379dc)
This satisfies coveralls. Because I added lines of code to an untested portion of the codebase, the overall coverage went down. (5db4fde)
This switches parsing the fragment (string following '#' at the end of a requirement) from looking for 'egg' at the beginning of the fragment to allowing any key value pair. These can be extracted as needed - right now only the 'egg' key is used to get the name of the package.
Tests include URI with a single fragment, and multiple fragments. (f9559f7)
Update sphinx theme (`c54532c`)
Update versions (c84b72a)
Update sphinx theme (c54532c)
Update the year (294959e)
Update the changelog (8efccb2)
Merge pull request #19 from jaysonsantos/master
add ability to parse recursive requirements (5b1721f)
Fix pep8 max column size (8fefe15)
add ability to parse recursive requirements (fa55463)
Merge pull request #17 from saschpe/master-underscores
Properly parse underscores (a6af275)
pkg_resources.Requirement's constructor calls save_name() on the
project_name member which converts underscores to hyphens. Thus use
Requirement.unsafe_name (the pristine name) instead. (6403d51)
### Unknown * v0.0.6 :sparkles: (`7b0cc23`) * v0.0.5 :sparkles: (`773bba5`)
Backwards incompatible API change!
Version 0.0.3 :sparkles: (`fc0a140`)
Version v0.0.2 :sparkles: (`772bda4`)
Version v0.0.2 :sparkles: (772bda4)
Formatting improvements (662e85e)
No longer testing on 3.0 and 3.1
However, the wall of superpowers at least checks for
Programming Language :: Python :: 3 (14bc67d)
http://about.travis-ci.org/docs/user/ci-environment/#Python-VM-images (7971479)
Add manifest (d7649b6)
Add MANIFEST file noting inclusion of rst files (87fe595)
Bump version (between releases) (426e337)
Merge pull request #1 from davidfischer/image-fix
Fix travis-ci link (85601b6)
Your coding agent can read these notes before it upgrades. Set up the MCP server →