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/Atom Feed for Packages #2992

Closed
robertmuehsig opened this issue Apr 17, 2016 · 16 comments

Comments

@robertmuehsig
Copy link
Contributor

commented Apr 17, 2016

This idea is pretty old, but I would like to see such a feature on NuGet.org: A simple feed for packages updates. The other issue about the badge API did remind me about this obvious feature.

Two years ago I tried it with this old PR #2128 - at this time the NuGet API v3 was in the making and NuGet.org was fighting against OData/SQL issues, so the PR got rejected.

My idea would be that the feed should contain only the same information as the version history shows:
image

I'm not sure how this would impact the server - even with a very long output cache duration (e.g. output cache duration for a whole day).

The use case for such a feed would be to do such things like use ifttt to send an email when an package got updated.

What do you think? This "feed" should be a human readable and accessible feed, whichout knowing to much about the NuGetV3 api.

@maartenba

This comment has been minimized.

Copy link
Contributor

commented Apr 18, 2016

Is RSS an implementation detail or a feature?

Reason I'm asking is we're planning on creating a "replication API" which will give you a nice library to fetch things like "latest since" from our catalog store. Of course, that's not an RSS feed as such, but if the goal is fetching latest items then it'll do fine.

@robertmuehsig

This comment has been minimized.

Copy link
Contributor Author

commented Apr 18, 2016

The goal would be to provide a really simple RSS feed, which points to the details page of each version - without using a API.
Currently I could use the NuGet API to build a NuGet2RSS web app myself - I thought it would be nice to have such functionality builtin.

RubyGems has something like this implemented:
image

https://rubygems.org/gems/mysql & the feed: https://rubygems.org/gems/mysql/versions.atom

@maartenba

This comment has been minimized.

Copy link
Contributor

commented Apr 18, 2016

If it's per package, the RSS feed could easily be based off the registrations. E.g. https://api.nuget.org/v3/registration0/newtonsoft.json/index.json or even the flat container for DNX (https://api.nuget.org/v3/flatcontainer/newtonsoft.json/index.json).

Let's check first if we'd take it. @yishaigalatzer @harikm86 is an RSS feed per package something we'd like to have short term?

@robertmuehsig

This comment has been minimized.

Copy link
Contributor Author

commented Apr 18, 2016

The registration json seems good - it contains version and publishing date, which should fit in the feed model.

Does the Gallery currently query the API itself? Didn't found any reference (that's why I asked this question in the Badge API issue #2889).

@maartenba

This comment has been minimized.

Copy link
Contributor

commented Apr 18, 2016

No, it does not, the NuGet client does though (restores are served through these registration blobs)

@robertmuehsig

This comment has been minimized.

Copy link
Contributor Author

commented Apr 18, 2016

Mhh... if you would like to have this feature, would you prefer going via the API or just use the PackageService from the Gallery, e.g. (from the old PR) https://github.com/robertmuehsig/NuGetGallery/blob/85eabbd23ec47fe0603566a31c8f75fe8b1a2789/src/NuGetGallery/Controllers/PackagesController.cs#L258 ?

@ramonsmits

This comment has been minimized.

Copy link

commented May 12, 2016

Having an RSS feed would be great! I'm currently using http://nugetfeed.org/ but it seems it does not include pre-release packages.

I'm using it in combination with IFTTT but my notifications are incomplete.

@robertmuehsig

This comment has been minimized.

Copy link
Contributor Author

commented May 24, 2016

Just a small proof that this would be handy: http://www.hurryupandwait.io/blog/track-nuget-downloads-using-odata-rss-and-ifttt-com (the workaround here is via the OData feed)

But Nuget Has no RSS Feed with items representing downloads

Currently Nuget provides no RSS feed or any notification option for subscribing to download stats beyond what is displayed on the project search results and individual project details pages. I don’t know if there are plans to implement this by the Nuget team in the near future, but I wanted something up and running soon that didn’t need to be polished.

;)

@robertmuehsig

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2016

Just noticed something: If this feature would depend on the NuGet V3 API, what would be the "OnPremise" story? Can the V3 API be deployed on a custom NuGet Gallery?

Using the PackageService.FindPackageByIdAndVersion method for this kind of "api-service" would be hard to scale for NuGet.org and is not an option (at least for the real NuGet.org), right?

@maartenba

This comment has been minimized.

Copy link
Contributor

commented May 30, 2016

On-premise could use the database/repositories available, but that would be a clear no-go for NuGet.org (so it will have to be configurable).

@robertmuehsig

This comment has been minimized.

Copy link
Contributor Author

commented May 30, 2016

Maybe something like this:
Introduce a new config entry like "Gallery.ExposePackageAsSyndicationFeedMode"

With following possible values:

  • Off (so no RSS/Atom Feed is available - like today)
  • UseLocalDatabase => for On-Prem
  • UseV3Api => for NuGet.org

If value="UseV3Api" the "ServiceDiscoveryUri" must also be set.

@SeanFeldman

This comment has been minimized.

Copy link

commented Jun 27, 2017

👍 for this

@WilliamBZA

This comment has been minimized.

Copy link

commented Nov 24, 2017

This would be immensely helpful

@joelverhagen

This comment has been minimized.

Copy link
Member

commented Feb 15, 2019

Thanks to a wonderful contribution from @robertmuehsig, we've merged a change into our dev branch. This will make it's way to production (www.nuget.org) within the next couple weeks.

joelverhagen added a commit that referenced this issue Feb 15, 2019

joelverhagen added a commit that referenced this issue Feb 16, 2019

@zhhyu zhhyu closed this in 9eede69 Feb 22, 2019

@joelverhagen joelverhagen reopened this Feb 22, 2019

@joelverhagen

This comment has been minimized.

Copy link
Member

commented Feb 22, 2019

Re-opening to track it's progress to PROD.

@joelverhagen

This comment has been minimized.

Copy link
Member

commented Feb 26, 2019

This is live in PROD. If you run into any problems or have suggestions on the shape of the Atom feed, please feed free to open a new issue!
https://github.com/NuGet/NuGetGallery/issues/new

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.