gem feed

Gems served as static files, without an account or a credential.

GemVersions
acemq-amqp0.2.0, 0.3.0, 0.5.0, 0.6.0, 0.7.0, 0.7.1, 0.7.2, 0.7.3, 0.7.4, 0.7.5, 0.7.6, 0.7.7, 0.7.8, 0.7.9, 0.7.10, 0.7.11, 0.7.12, 0.7.13, 0.7.14
acemq-amqp-rails0.1.0, 0.2.0, 0.2.1, 0.2.2, 0.2.3, 0.2.4

Adding the source

# Gemfile
source "https://rubygems.org"

source "https://acemq.org/gems" do
  gem "acemq-amqp"
end

A block rather than a second top-level source, so only the gems named inside it are looked for here. Two open-ended sources make resolution ambiguous, and Bundler warns about precisely that.

Without Bundler:

gem install acemq-amqp --source https://acemq.org/gems/

Why this exists

The AceMQ Ruby library is not on rubygems.org yet. A gem name there is permanent and a pushed version cannot really be withdrawn — a yank hides it, it does not unpublish it — so the library is served from here until that decision is one worth making irreversible.

Nothing about the gem changes when it moves. The same gem install acemq-amqp works from either source.

What a static feed can and cannot do

CapabilityHere
Install and resolve dependenciesyes
Version listingyes
Bundler source blocksyes, via the compact index
Searchno — there is no server to ask
Yankno — delete the file and re-index
Ownership and signingno — the repository is the record

Both index formats are here. The compact index — versions, info/<gem>, names — is what current Bundler and RubyGems ask for first, and it is plain text a directory serves as-is. That is worth saying because it sounds like it should not be possible: rubygems.org builds the compact index on demand from a database, which makes it easy to assume a static feed can only offer the old one. The classic index sits alongside it for older clients.

Elsewhere

Maven repository for the JVM libraries, NuGet feed for .NET, and Python index for the Python library. Go needs no feed: the module proxy serves it from the tags.