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

Feature: Download link for revised packages #1291

Open
andreasabel opened this issue Feb 3, 2024 · 2 comments
Open

Feature: Download link for revised packages #1291

andreasabel opened this issue Feb 3, 2024 · 2 comments

Comments

@andreasabel
Copy link
Member

Hackage provides download URLs for uploaded packages, but these do not include the revisions.
It would be good to also have download URLs for specific revisions of a package, which would deliver the patched package tarball.

There seems to be interest from the Arch community in such a feature see a discussion with @Vekhir at this PR:

@geekosaur
Copy link

This would have to be generated on the fly, because hackage-server doesn't store updated package tarballs; rather, it appends the updated revision to the index, and cabal get overwrites the original tarball's cabal file with the revised one. This is done to preserve immutability of the Hackage store. (@hasufell complains about this somewhat regularly.)

@hasufell
Copy link
Member

hasufell commented Oct 24, 2024

There seems to be interest from the Arch community in such a feature see a discussion with @Vekhir at this PR

Hackage does provide API though to get the latest (or any) cabal file revision for a package.

Using that you can easily circumvent this restriction. But it does make it more annoying for distributors, mirrors, etc.

@hasufell complains about this somewhat regularly.

It is indeed a mis-feature, for many reasons.

The strongest argument is that a tarball should be a self-contained entity.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants