DUB - call to arms

Andre Pany andre at s-e-a-p.de
Mon Apr 15 16:09:10 UTC 2019


On Monday, 15 April 2019 at 13:34:21 UTC, Anton Fediushin wrote:
> On Monday, 15 April 2019 at 11:06:56 UTC, Andre Pany wrote:
>> On Monday, 15 April 2019 at 09:34:00 UTC, Anton Fediushin 
>> wrote:
>>> I don't have much experience contributing to dub but I have 
>>> contributed to dub-registry in the past and must I say, it 
>>> wasn't a pleasant experience for me. Everything I'm writing 
>>> in this post is from a year ago, I am not sure what's the 
>>> state of the ecosystem now.
>>>
>>> [...]
>>
>> What issues do you have specific to Dub?
>>
>> You wrote: it slows down the whole community. This statement 
>> is not true. It does not slow me down, actually it is working 
>> like a charme for me now (I did a few dub pull requests).
>>
>> Kind regards
>> Andre
>
> It is slowing down the d community because it's not what a 
> package manager and a build system of a modern programming 
> language should look like. For example, LDC is able to compile 
> code for quite a few architectures, even GPUs, yet you cannot 
> painlessly integrate that with dub.
>
> As soon as you want to do something slightly unusual, your 
> dub.json/dub.sdl becomes a spaghetti of 
> preBuildCommands/postBuildCommands. In my personal opinion, 
> package file of a high-level build system (which is what dub is 
> trying to be) should never contain any shell commands.
>
> And yes, dub.json/dub.sdl is another problem of dub. Having two 
> package formats is nothing but a bad decision. Sure, sdl can 
> contain comments that are very useful when you are trying to 
> make sense of pre/postBuildCommands-spaghetti. This is how one 
> bad design decision depends on another. Thing is, it's 
> impossible to fix without breaking changes
>
> Best regards,
> Anton

Integration of dub with LDC is working fine. I created a tutorial 
(german) here:

http://d-land.sepany.de/tutorials/einplatinenrechner/einstieg-in-die-raspberry-pi-entwicklung-mit-ldc/

But yes, integration could be better.

I use the shell commands to compile a git commit ID into the 
executable. It works like a charme. There are cases where shell 
commands are highly valuable and does not lead to spaghetti code.

Without specific examples it is hard to discuss wheter something 
works or not.

Kind regards
Andre


More information about the Digitalmars-d mailing list