Git, the D package manager

John Colvin via Digitalmars-d digitalmars-d at puremagic.com
Mon Feb 2 06:54:15 PST 2015


On Monday, 2 February 2015 at 14:09:55 UTC, Vladimir Panteleev 
wrote:
> On Monday, 2 February 2015 at 14:06:46 UTC, John Colvin wrote:
>> You can do this with dub. You selectively include or exclude 
>> files/directories on a per-configuration basis.
>
> I have addressed this in my initial post.

Not really. You say that it amounts to doing the computers work 
for it. I don't understand how the computer is supposed to know, 
in the general case, which files are relevant for which 
configurations. You have to tell it somehow. Dub has various 
features that can be leveraged to achieve this goal.

>> Overall - while you do have some valid complaints - you don't 
>> seems to know dub particularly well. Maybe you do, but it's 
>> not coming across.
>
> I don't understand what point you're trying to say here. The 
> thread starts with the line:
>
>>> I don't use Dub
>
> Andrej and I seem to have a very similar workflow, as the 
> additional experience he shared would affect me as well if I 
> tried to switch to it.

It seems there are 4 genuine problems that have been mentioned:

1) Dependency versioning at the git commit level.
2) Placing dependencies out-of-tree.
3) Cross-language builds.
4) Bugs.

Solutions:
1) Support for this could be added to dub. Alternatively dub 
packages could be based on a recursive clone, so if you really 
need submodules then you get them, but your package still works 
with dub.

2) --cache    I don't use it, but it seems like it would do what 
you want. Out-of-tree does have advantages though. Auto-created 
local symlinks to the global package cache would probably be 
best-of-both-worlds.

3) Genuinely difficult. Probably outside of the scope of dub.

4) The situations is better than it used to be. Note that dub is 
still pre-1.0


More information about the Digitalmars-d mailing list