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