DIP11
Steven Schveighoffer
schveiguy at yahoo.com
Fri Aug 12 06:59:48 PDT 2011
On Fri, 12 Aug 2011 02:17:36 -0400, kennytm <kennytm at gmail.com> wrote:
> "Steven Schveighoffer" <schveiguy at yahoo.com> wrote:
>> On Thu, 11 Aug 2011 17:20:04 -0400, Nick Sabalausky <a at a.a> wrote:
>>
>> > "Andrei Alexandrescu" <SeeWebsiteForEmail at erdani.org> wrote in
>> > message
>> > news:j21g1a$ea4$1 at digitalmars.com...
>> >>
>> >> It's difficult to get all dependencies when not all sources have
>> > > been >> yet
>> >> downloaded.
>> >>
>> >
>> > With DIP11, yes. With a traditional-style package manager, no.
>>
>> With either style, you need to download a package in order to
>> determine if you need to download other packages (package a may
>> depend on package b even though your project does not depend on
>> package b). The DIP11 version does this JIT, whereas your version
>> does it before compilation. It's not really any different.
>>
>> -Steve
>>
>
> In Debian's apt, there will be a central index that records all
> dependencies for packages in the repository. So the client only needs to
> synchronize that index file regularly. The system will know package A
> depends on B which depends on C and D and download all 4 packages.
This could be done (in fact, the tool could have a url system that uses
apt). But it's beyond the scope of the DIP, which is to define a way to
hook the compiler for a downloading tool when a file is on the Internet.
> That said, since you need to download the pakcgaes anyway, having a
> central index doesn't reduce the bytes you need to transfer and parse if
> DIP11 doesn't support updating.
All the DIP does is provide a hook so the compiler can ask an external
tool to download files/packages/whatever. It leaves open the protocol
used by the tool, except that it should be in url form.
The tool can implement the download any way it wants (individual files,
packages, full-blown metadata-based centralized-indexed kitchen-sinked
github or apt or whatever).
-Steve
More information about the Digitalmars-d
mailing list