Re-squash the crates.io repository

As it were, Bundler, one of the main inspirations for Cargo, started off with a query API, but (I believe?) eventually moved to CDN-friendly flat files (leveraging a set of append-only index files, I think).

Interesting! I've found an enlightening bit of history here: https://andre.arko.net/2014/03/28/the-new-rubygems-index-format/

It seems like it started with an index equivalent of all Cargo.toml files, then minimal index similar Cargo's current index, then index trimmed down only to latest versions, then API, then switched to append-only CSV-like files.

I've reexecuted this script and the index has been squashed.

3 Likes

I liked Bundler's solution so much that I adapted it for Cargo and proposed it as an RFC. The cool thing is that it doesn't require any changes to the index format!

2 Likes

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.