Am 24.05.2016 um 08:24 schrieb Jacob Carlborg:
On 2016-05-23 17:40, Sönke Ludwig wrote:
Oh, okay, misunderstood that. The basic protocol is very simple:
GET /packages/index.json
Yields a JSON array with all package names
GET /packages/[package].json
Returns a JSON object with general information about a package,
including all available versions
GET /packages/[package]/[version].json
Returns a JSON object with the package recipe of a particular version
(dub.json format), augmented with some additional fields
GET /packages/[package]/[version].zip
Yields a zipped up version of the package
So dependencies are fetched when they are discovered based on a package?
Wouldn't it be more efficient to have an API call that given a list of
packages, returns the full set of dependencies in one call. Then it
would be possible to fetch the dependencies in parallel.
Since fetching dependencies usually saturates the network connection,
that wouldn't save much time (or do you just mean fetching the package
recipes in parallel?). But because it also requires full dependency
resolution, it would have a considerable impact on server load. And of
course that would make it impossible to use a simple file server as a
package registry.