Skip to main content

Upgrade all your outdated requirements in a single command.

Project description

upgrade-requirements.py
=======================
[![Current version on PyPI](https://img.shields.io/pypi/v/upgrade-requirements.svg)](https://pypi.python.org/pypi/upgrade-requirements/)

Upgrade all your outdated `requirements.txt` in a single command.


Motivation
----------

Even though `pip list --outdated` exists, sometimes you just want to
run `pip install --upgrade` to upgrade a package, then persist it to
your `requirements.txt` in one big sweep.


Installation
------------

```bash
$ pip install upgrade-requirements
```


Usage
-----

```bash
$ upgrade-requirements
```

(Or use the shortcut command `upreq`.)

Now's a good time to grab a ☕ while it runs.

After it finishes, run your tests to make sure an individual upgrade didn't
break anything. Then move on to bigger things 🚀

#### Found a problem with an upgraded version?

No worries!

1. Revert individual entries in `requirements.txt` with the help of git
2. Run `pip install -r requirements.txt` to downgrade to working versions
3. Commit the upgraded-and-tweaked `requirements.txt` like normal and carry on 🎉

#### More usages
```bash
$ upgrade-requirements -h
```

```
usage: upgrade-requirements [-h] [-r REQUIREMENTS]

optional arguments:
-h, --help show this help message and exit
-r REQUIREMENTS, --requirements REQUIREMENTS
specify the location of the requirements.txt file
```


Room for improvement
--------------------

- This only work with pinned (`==`) packages at the moment. The intention is to
get it to work more generally. This can be broken down into three sub-tasks:

- Get it to ignore non-pinned requirements instead of fail
- Get it to work with other specifiers, e.g. `>=` (how would this work?)
- Handle all types of requirement entries

Feel free to open an issue or PR with ideas.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

upgrade-requirements-1.7.0.tar.gz (3.6 kB view details)

Uploaded Source

File details

Details for the file upgrade-requirements-1.7.0.tar.gz.

File metadata

File hashes

Hashes for upgrade-requirements-1.7.0.tar.gz
Algorithm Hash digest
SHA256 380c18d7cb5e174e7ee4acdda3e6f04dde693dbafc7074f4fcb230bb2177db31
MD5 defdc2792568db59ad3d970b4bec6ff9
BLAKE2b-256 8cb1dbe14e38298c26f62e9fffa6eaf00e56edb9070a7f0a732a6c48c24c5797

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page