Git, the D package manager

Sönke Ludwig via Digitalmars-d digitalmars-d at puremagic.com
Thu Feb 5 07:05:11 PST 2015


Am 05.02.2015 um 16:01 schrieb ketmar:
> On Thu, 05 Feb 2015 14:48:12 +0100, Sönke Ludwig wrote:
>
>> Am 03.02.2015 um 21:08 schrieb ketmar:
>>> On Tue, 03 Feb 2015 19:43:53 +0100, Martin Nowak wrote:
>>>
>>>> On 02/03/2015 09:51 AM, ketmar wrote:
>>>>> 'cause it really sux as a build tool.
>>>>
>>>> Not getting into any of the lengthy discussions of yours, but 'it sux'
>>>> isn't really helping anyone to improve it.
>>>
>>> repeating the reasons why it sux doesn't help too. this thread alone
>>> has some of them, including inability to do separate compilation (and
>>> the reason why this can be needed).
>>
>> Separate per package (the default)? Separate by D module
>> (--build-mode=singleFile)? Something else?
>
> yes, incremental rebuilds, please. even for simple project with two
> modules dub is not able to do incremental rebuilds:
>
> === source/app.d ===
> import std.stdio;
> import mymod;
>
> void main () {
>    writeln(test);
> }
>
> === source/mymod.d ===
> module mymod;
>
> int test () { return 42; }
>
> % dub --build-mode=singleFile
> Building _00 ~master configuration "application", build type debug.
> Compiling using dmd...
> Compiling source/app.d...
> Compiling source/mymod.d...
> Linking...
> Running ./_00
> 42
>
> so far, so good.
>
> touch source/app.d
> % dub --build-mode=singleFile
> Building _00 ~master configuration "application", build type debug.
> Compiling using dmd...
> Compiling source/app.d...
> Compiling source/mymod.d...
> Linking...
> Running ./_00
> 42
>
> ??? i didn't modified "mymod.d"! why it is rebuilding it?! 'cmon, it's in
> no way better than a simple shell script that just executes "dmd -c" for
> each file and then links the results.
>

Yes, incremental building is indeed a missing feature. It's simply a 
matter of available developer time, as for many of the other concerns. 
Otherwise this is something that has been acknowledged for inclusion 
basically since the beginning of the project.


More information about the Digitalmars-d mailing list