conda / ceps

Conda Enhancement Proposals
Creative Commons Zero v1.0 Universal
19 stars 24 forks source link

base_url CEP #61

Closed dholth closed 6 months ago

dholth commented 11 months ago

Allow repodata.json and packages to live in separate places.

baszalmstra commented 11 months ago

I think this is great but what is the usecase for this?

dholth commented 11 months ago

Anaconda is experimenting with having a collection of historical repodata.json pointing at the (supposed to be immutable) set of packages. I could have used this while developing jlap, which also had a test proxy to fetch repodata.json more quickly than conda was able to. Someone might also be interested in subsetting repodata.json for policy reasons.

baszalmstra commented 11 months ago

I wonder if conda would work properly if the package keys were sha hashes so that you could point the whole thing at a content-addressed store instead of a server with normal filenames.

I would love to be able to directly use SHA hashes! At prefix we also use a content-addressable store, but we do the conversion on the server side now (which is a bit of a waste). We could also add a URL to each entry with a download URL. Or we can template the base_url to be able to construct a complete URL that might also include something other than the filename. WDYT?

baszalmstra commented 11 months ago

In rattler we do assume that the keys (filenames) are properly formatted and sorted for some speed optimizations so just using sha hashes wouldn't work there.

baszalmstra commented 10 months ago

I implemented this CEP in rattler: https://github.com/mamba-org/rattler/pull/322

baszalmstra commented 8 months ago

Should we maybe start a vote on this CEP?

jaimergp commented 7 months ago

Agreed, this would be awesome to have.

jezdez commented 6 months ago

@conda-incubator/steering

This vote falls under the "Enhancement Proposal Approval" policy of the conda governance policy, please vote and/or comment on this proposal at your earliest convenience.

It needs 60% of the Steering Council to vote yes to pass.

To vote, please leave yes, no or abstain as comments below.

If you have questions concerning the proposal, you may also leave a comment or code review.

This vote will end on 2024-01-18, End of Day, Anywhere on Earth (AoE).

Note: This is an extended voting period to accommodate the start of the year and the complexity of the proposal.

wolfv commented 6 months ago

yes

baszalmstra commented 6 months ago

yes

jezdez commented 6 months ago

yes

jaimergp commented 6 months ago

yes

(first repodata_version bump!)

chenghlee commented 6 months ago

yes

xhochy commented 6 months ago

Yes

ocefpaf commented 6 months ago

Yes

msarahan commented 6 months ago

Yes

wolfv commented 6 months ago

@CJ-Wright @goanpeca @chenghlee @marcelotrevisani @jakirkham @mbargull @kkraus14 this is a reminder to please vote with YES / NO / ABSTAIN on this CEP :)

marcelotrevisani commented 6 months ago

Yes!

kkraus14 commented 6 months ago

yes

mariusvniekerk commented 6 months ago

yes

CJ-Wright commented 6 months ago

Yes I am making this comment solely in my personal capacity and am not conveying any rights to any intellectual property of any third parties.

wolfv commented 6 months ago

Vote count:

The steering council consists of 15 people. That means, 86% have voted, and 100% have voted yes. This CEP is accepted! 🎉

wolfv commented 6 months ago

@dholth any last changes? Otherwise I or @jezdez should probably push the CEP (cep-15.md) to it's final name and merge to the repo.

dholth commented 6 months ago

LGTM, merge it.

wolfv commented 6 months ago

Done!