Skip to main content

Find newer package versions on PyPI

Project description

Introduction

Find newer versions of your installed Python packages, or newer versions of packages in a buildout file.

This package provides a console script named checkversions.

https://github.com/zopefoundation/z3c.checkversions/actions/workflows/tests.yml/badge.svg

Install

you can install this package either in a virtualenv:

$ virtualenv sandbox
$ sandbox/bin/pip install z3c.checkversions
$ sandbox/bin/checkversions --help

or in your system:

$ sudo pip install z3c.checkversions
$ checkversions --help

or in a buildout:

[buildout]
parts = checkversions

[checkversions]
recipe=zc.recipe.egg
eggs=z3c.checkversions [buildout]

Note that buildout support is optional and must be enabled with [buildout] so that zc.buildout is installed as well.

If you need buildout support while installing this package via pip you have to install it like this:

pip install z3c.checkversions[buildout]

Usage

$ checkversions -h
Usage: checkversions [-v] [-1] [-l LEVEL] [-i INDEX] [-b BLACKLIST] [buildout_file]

This script will check new package versions of either your current installed
distributions or a buildout file if provided. It can detect major or minor
versions availability: level 0 gets the highest version (X.y.z), level 1 gets
the highest intermediate version (x.Y.z), level 2 gets the highest minor
version (x.y.Z).  Using level 2, you can automatically retrieve all bugfix
versions of a buildout.  If you provide a blacklist file with bad versions,
these versions won't be suggested.

Options:
  -h, --help            show this help message and exit
  -l LEVEL, --level=LEVEL
                        Version level to check
  -i INDEX, --index=INDEX
                        Provide and alternative package index URL
  -b BLACKLIST, --blacklist=BLACKLIST
                        Provide a blacklist file with bad versions
  -1, --incremental     Suggest only one upgrade. Skip others.
  -v, --verbose         Verbose mode (prints old versions too)

Examples

For installed packages

Example with a virtualenv:

$ virtualenv --no-site-packages sandbox
$ sandbox/bin/pip install z3c.checkversions
$ sandbox/bin/checkversions -v -l 1
# Checking your installed distributions
pip=0.7.1 # was: 0.6.3

For a buildout

It can work either with a full buildout.cfg or with a simple versions.cfg file.

Here is a sample versions.cfg file:

[versions]
somepackage=0.5.3
otherpackage=0.1.1

You can generate a new versions.cfg

$ checkversions -v -l 1 versions.cfg
# Checking buildout file versions.cfg
somepackage=0.6.2 # was: 0.5.0
otherpackage=0.1.2 # was: 0.1.1

If you provide a blacklist file, such as blacklist.cfg containing bad versions, such as:

somepackage=0.6.2
somepackage=0.6.1

Then these versions won’t be suggested:

$ checkversions -v -l 1 versions.cfg -b blacklist.cfg
# Checking buildout file versions.cfg
somepackage=0.6.0 # was: 0.5.0
otherpackage=0.1.2 # was: 0.1.1

If you enable the –incremental option, only one upgrade will be suggested:

$ checkversions --incremental -v -l 1 versions.cfg
# Checking buildout file versions.cfg
somepackage=0.6.0 # was: 0.5.0
otherpackage=0.1.1

Run tests

Uncompress the archive, then run:

$ virtualenv .
$ bin/pip install tox
$ tox

Changelog

2.1 (2023-02-06)

  • Fix parsing of versions that are really requirements specifications. (#24)

2.0 (2023-02-14)

  • Add support for Python 3.10, 3.11.

  • Drop support for Python 2.7, 3.5, 3.6.

  • Pin setuptools < 66 as newer versions are no longer compatible.

1.2 (2020-04-13)

  • Add support for Python 3.8, drop support for Python 3.4.

  • Improve error message in case zc.buildout is not installed.

  • Improve installation instruction.

  • Pass the index url to both the ‘installed’ and ‘buildout’ checkers.

1.1 (2018-11-03)

  • Add support for Python 3.7.

  • Drop support for python setup.py test.

1.0 (2018-05-23)

  • Fix compatibility with setuptools 39 by using an API introduced in setuptools 8. (GH #8)

  • Add support for Python 3.5, 3.6 and PyPy3.

  • Drop support for Python 2.6 and 3.3.

  • Standardize namespace __init__.

0.5 (2014-09-15)

  • Python 3 support by Nicolas Dietrich (GH #2, GH #4)

0.4.2 (2013-10-02)

  • ignore installed packages while searching for new versions, only look in the package index (makes the test suite more reliable, among other things).

  • fix IndexError: list index out of range when buildout.cfg had a package with a blank version pin.

  • show updates for non-final package versions, if there’s a newer non-final version available on PyPI (GH #1)

0.4.1 (2010-08-25)

  • fixed edge case bug where 1.0 was never updated to 1.0.x

  • warn buildout users about the extra requirement

0.4 (2010-07-26)

  • added a blacklist option for passing versions to avoid (possibly coming from a buildbot)

  • added a incremental option to suggest only one upgrade

  • remove a temporary file during tests

0.3 (2010-07-09)

  • don’t accumulate old comments

  • prefer final versions

0.2 (2010-05-22)

  • added a verbose option to print old versions as well

  • updated metadata, doc and license

0.1 (2010-05-16)

  • Initial release

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

z3c.checkversions-2.1.tar.gz (15.8 kB view hashes)

Uploaded Source

Built Distribution

z3c.checkversions-2.1-py3-none-any.whl (17.2 kB view hashes)

Uploaded Python 3

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