Requirements.txt Parser
Breaks a requirements file into packages, extras, specifiers and markers, and flags the loose ones.
Loading the tool…
How to use this tool
- Paste the requirements file, or load it with the picker.
- Select Parse the requirements.
- Read the last column for what each specifier actually commits you to.
- Download the CSV if you want the list in a review or a ticket.
What requirements.txt parser does
A requirements file is a small language pretending to be a list. A single line can carry a package name, a set of extras in square brackets, several version constraints, and an environment marker after a semicolon — and lines beginning with a dash are not packages at all but options that change how pip behaves for everything after them. This page pulls each line apart and shows what it actually says.
The column that earns its place is the last one. A pinned package is reproducible but will not pick up a security fix on its own. A package with no version at all is the line that breaks a build months later, when a new release lands and nobody changed anything. A constraint with a lower bound and no upper bound will happily install a future major version. None of those is wrong in every project, but knowing which of your lines is which takes about ten seconds here and a surprisingly long time by eye.