Skip to content

Consider adding a lightweight /info_checksums endpoint to reduce /versions response size #6408

@hsbt

Description

@hsbt

Bundler and RubyGems clients currently fetch /versions to obtain gem names and their info checksums, but they do not use the version lists included in the response. A lighter-weight endpoint that omits the version numbers and returns only gem names paired with info checksums could significantly reduce response size and parsing time.

A proof-of-concept implementation for the response generation logic was proposed in rubygems/compact_index#95. That PR is being closed for now, but this issue serves as a reminder to revisit the idea when there is appetite for the full end-to-end change across compact_index, rubygems.org, and the Bundler/RubyGems client.

The work required would be:

  • lib/compact_index/* from Vendor compact index into rubygems.org #6404: add response generation for the new format (as prototyped in the PR above)
  • rubygems.org: add a new route and controller action serving the endpoint
  • Bundler/RubyGems: update the client to prefer the new endpoint with fallback to `/versions

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions