Small pip update helpers.
Clone or download
nschloe Merge pull request #29 from cjbassi/fix-user-option
Fix upgrades with --user flag
Latest commit 2d19c9b Sep 28, 2018

README.md

pipdate

CircleCI codecov Code style: black PyPi Version GitHub stars

pipdate is a collection of small pip update helpers. The commands

pipdate
pipdate3

updates all your pip{3}-installed packages. (Only works on Unix.)

There's a Python interface as well that can be used for update notifications. This

import pipdate
msg = pipdate.check('matplotlib', '0.4.5')
print(msg)

will print

╭──────────────────────────────────────────────╮
│                                              │
│        Update available 0.4.5 → 2.2.2        │
│   Run pip3 install -U matplotlib to update   │
│                                              │
╰──────────────────────────────────────────────╯

If you guard the check with

if pipdate.needs_checking('matplotlib'):
    print(pipdate.check('matplotlib', '0.4.5'), end='')

then it will be performed at most every k seconds, where k is specified in the config file $HOME/.config/pipdate/config.ini, e.g., once a day

[DEFAULT]
secondsbetweenchecks = 86400

This can, for example, be used by module authors to notify users of upgrades of their own modules.

Installation

pipdate is available from the Python Package Index, so simply type

pip install pipdate

Testing

To run the pipdate unit tests, check out this repository and type

pytest

Distribution

To create a new release

  1. bump the __version__ number,

  2. publish to PyPi and GitHub:

    $ make publish
    

License

pipdate is published under the MIT license.