Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RSS feed for new file uploads to existing packages #2551

Open
edmorley opened this issue Nov 2, 2017 · 3 comments
Open

RSS feed for new file uploads to existing packages #2551

edmorley opened this issue Nov 2, 2017 · 3 comments
Labels
APIs/feeds feature request help needed We'd love volunteers to advise on or help fix/implement this.

Comments

@edmorley
Copy link

edmorley commented Nov 2, 2017

Hi!

Currently there are two RSS feeds available (added by #990):

The former allows for monitoring of when a new version of a package is released, however doesn't show when new uploads to an existing package occur - which is a problem, since it's not unusual for files to be uploaded to a package in a staggered manner.

For example:

This causes issues for projects using pip's --require-hashes mode along with tooling that automatically updates dependencies in requirements files (such as https://pyup.io/ ), since:

  1. pyup.io sees the updates.xml RSS feed saying a new package version has been published
  2. a PR is opened updating the requirements file with the new package version and hashes of whatever file uploads exist at that point in time
  3. the tests may or may not pass at that point (depending on if the sdist or an appropriate wheel exists; in the aiohttp case the sdist wasn't uploaded for hours later)
  4. even if the tests pass then, they may break later after the PR was merged, if an appropriate wheel becomes available, since pip prefers wheels over the sdist, and the requirements file will only contain the hash of the sdist

If an RSS feed were available of "40 newest file uploads" or even "40 newest changes of any type, whether that be metadata or uploads", then tools like pyup.io could use it to automatically update the requirements files hashes as uploads occurred (presumably with a slight delay to batch changes).

See:
pyupio/pyup#250

Note: This is different from #1683 / #2165, since they are about a feed for just one package (and I think still only at the releases level, not the uploads level), rather than a feed for all packages site-wide.

CC @jayfk

@di
Copy link
Member

di commented Jan 9, 2018

I think this makes sense and is doable. We occasionally have the same issue when using pyup as well, so we feel your pain. 🙂

@brainwane brainwane added the help needed We'd love volunteers to advise on or help fix/implement this. label Mar 14, 2018
@brainwane
Copy link
Contributor

Folks who need this might want to check whether the Libraries.io API for https://libraries.io/pypi might suit their needs in the short term.

@alexbecker
Copy link

This is also a problem for python mirroring at PyDist--there's no way to know whether a new distribution has been added, so the only real options are to:

  • ignore new distributions (perhaps re-query each release a short time after the first distribution for it is published)
  • periodically re-query every release of every package to find any new distributions

The former is not great if package maintainers are going back and publishing new wheels when new versions of Python are released, or when they start building for more platforms. But the latter seems like a lot of load for both the mirror and PyPI.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
APIs/feeds feature request help needed We'd love volunteers to advise on or help fix/implement this.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants