Fetching source index...

6 views
Skip to first unread message

Nick Quaranto

unread,
Aug 10, 2010, 9:23:05 AM8/10/10
to gemc...@googlegroups.com, Yehuda Katz, Carl Lerche
(from Bundler) is slow! What can we do to fix this? Maybe we need a resolver API endpoint, that at the very least returns a list of gem urls matching dependencies in our DB. Any ideas?

John Barnette

unread,
Aug 11, 2010, 12:07:04 PM8/11/10
to gemc...@googlegroups.com

We talked on #carlhuda a few months ago about an endpoint that would
return the source index in a much more compressed format: Just a
nested hash of gems, versions, platforms, deps. We even had a few
sketches of the structure, but I'm not sure where they went. I don't
suppose anybody has gists of those notes/convo still around?


~ j.

Nick Quaranto

unread,
Aug 11, 2010, 10:08:02 PM8/11/10
to gemc...@googlegroups.com
Yeah, I don't remember where the gists are, but here's what Yehuda mentioned...

...
give me [{:version => "version.number", :platform => "full-platform", :dependencies => ["simple", "dependencies"]}]
that same thing for "this list of gems"I think the dependencies array can be as simple as [["foo", ">= 1.0"], ["bar", "> 2.0"]]


...

and that would be marshal'd up, not gzipped.

so i'm thinking you would essentially have, for a given rubygem/version:

/api/v1/resolve?rubygem=rails&rubygem=rack

Get the latest rails and rack version, return just that version's information (number, platform, dependency list). It could just return a hash...

{"rails" => rails_info_hash, "rack" => rack_info_hash}

The real question is how many versions back should we go, and how do we include prereleases and different gem versions.

Any ideas on this would be great :)

-Nick
Reply all
Reply to author
Forward
0 new messages