Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I subscribe to updates of a package on PyPI?

Tags:

I would like to be notified every time a new version of Virtualenv is released on PyPI, preferably by email or by RSS feed. Is this possible?

like image 289
Flimm Avatar asked Jun 30 '13 21:06

Flimm


People also ask

Can pip update packages?

Pip can be used to upgrade all packages on either Windows or Linux: Output a list of installed packages into a requirements file (requirements.

How do you update outdated packages on pip?

Run pip install --upgrade for all outdated packages ( pip list --outdated ). Allow specifying which version of pip to run, and parallel or serial execution of the upgrade step.


1 Answers

Yes, it's possible.

libraries.io

The open(*) libraries.io service provides an e-mail notification service and RSS release feeds for Python package releases.

An RSS feed URL follows these pattern:

https://libraries.io/pypi/{PACKAGENAME}/versions.atom 

Example:

curl -L https://libraries.io/pypi/virtualenv/versions.atom 

For the email subscription you need to login via github/gitlab/bitbucket OAuth, but it just requests the email address over OAuth. After login you can browse to

https://libraries.io/pypi/{PACKAGENAME} 

and hit the subscribe button to add a package to your subscriptions.

*open as in the server software being open source and the aggregated data being available under a creative commons license.

As of 2018-08, the libraries.io notifications aren't really reliable. For example, the PyPI release history page of a project has a new release and libraries.io doesn't send a notification mail nor updates the RSS feed for 11 days (and counting).

Anitya

Anitya (a.k.a. release-monitoring.org) is another open project for release notification. It originates from the Fedora context and Fedora infrastructure uses it, but it's basically open for anyone to create some email release notifications. Besides PyPI it supports monitoring other release sources.

A small howto:

  1. sign-up/sign-in to release-monitoring.org
  2. check if the PyPI packages you are interested in are already available, otherwise register the missing ones ('add project')
  3. sign-up/sign-in to Fedora Notfications, create a new filter in the email section and add the 'Anything regarding a particular "upstream project"' rule from the Anitya rules listing. There you can specify a comma separated list of project names.

This service is supposed to check for new releases twice a day.

PyPI vs. pyup.io

As of 2018, pypi.org directly doesn't provide similar functionality. It just provides a release feed for all releases. But it links to libraries.io from each package page (for statistics). Pypi also links to similar notification services in the GitHub ecosystem.

For example, pyup.io implements notifications by connecting to one or many of your GitHub repositories - requiring a bunch of broad OAuth GitHub write permissions. It then periodically scans the repository's requirements file and is able to create pull requests if newer dependency versions are available.

like image 68
maxschlepzig Avatar answered Oct 14 '22 21:10

maxschlepzig