A suggestion for modules names / sharing code between projects

Guillaume Piolat via Digitalmars-d digitalmars-d at puremagic.com
Wed Mar 2 03:12:02 PST 2016


On Tuesday, 1 March 2016 at 06:33:06 UTC, Sebastien Alaiwan wrote:
> However, we still need separate compilation. Otherwise your 
> turnaround time is going to resemble a tractor pulling 
> competition as your project grows. Recompiling everything 
> everytime you change one module is not an option ; Some of the 
> source files I work on in my company require 30s to compile 
> *alone* ; it's easy to reach, especially when the language has 
> features like templates and CTFE (Pegged anyone?).

Let me hype DUB a bit. :)

DUB provides completely composable dependencies, in a chain (A => 
B => C) with A not knowing about C.

Compile-times are excellent since DUB can do package-wise, 
file-wise or all-at-once builds from the same description and use 
caching.

Having a declarative build description allows for some goodies 
like IDE project generation.

The package namespace is global, but hierarchical with names like 
"myorg:mypackage".

However, you can't have versionned dependencies for private 
packages [painlessly] which is quite a big limitation.



More information about the Digitalmars-d mailing list