How can I specify optional dependencies in a pip requirements file?
According to the pip documentation this is possible, but the documentation doesn't explain how to do it, and I can't find any examples on the web.
The pip install <package> command always looks for the latest version of the package and installs it. It also searches for dependencies listed in the package metadata and installs them to ensure that the package has all the requirements that it needs.
Install packages with pip: -r requirements.txt You can name the configuration file whatever you like, but requirements.txt is often used. Put requirements.txt in the directory where the command will be executed. If it is in another directory, specify its path like path/to/requirements.txt .
Use the pip install -r requirements. txt command to install all of the Python modules and packages listed in your requirements. txt file. This saves time and effort.
Instead of specifying optional dependencies in the same file as the hard requirements, you can create a optional-requirements.txt
and a requirements.txt
.
To export your current environment's packages into a text file, you can do this:
pip freeze > requirements.txt
If necessary, modify the contents of the requirements.txt to accurately represent your project's dependencies. Then, to install all the packages in this file, run:
pip install -U -r requirements.txt
-U
tells pip
to upgrade packages to the latest version, and -r
tells it to install all packages in requirements.txt.
In 2015 PEP-0508 defined a way to specify optional dependencies in requirements.txt
:
requests[security]
That means that yourpackage
needs requests
for its security option. You can install it as:
pip install yourpackage[security]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With