class Gem::CompactIndexClient

The CompactIndexClient fetches and parses the compact index files (names, versions and info/[gem]) served by a gem server, keeping a local cache so subsequent fetches only transfer what changed.

This is the single shared client: Bundler ships a copy of it and uses it underneath its own fetcher orchestration, injecting its fetcher and filesystem access hook.