On Fri, Feb 09, 2018 at 06:20:32PM +0000, Atila Neves via Digitalmars-d wrote:
> I'm perfectly happy with dub-the-package-manager.
> As for dub-the-build-system, I already did something about it: I wrote
> reggae. Nearly all of the problems I've had with using dub to build
> have disappeared by just using reggae instead. There's still a few
> things that aren't great (`dub describe` needs some love, probably
> because I'm the only one parsing the output), and sometimes I run into
> issues that only happen using reggae, but overall, it's been a good
> choice. For starters, I'd much rather have all our code build in 6min
> as it does now than over an hour as it was before.
I've only recently started using dub, and yeah, it *may* be great as a
package manager, but as a build tool, I found it extremely frustrating,
slow, and not easily reconfigurable. So much so that after struggling
with it for about a week or so, I threw my hands up and went back to
SCons as my go-to build system of choice.
Currently, my vibe.d project has a subdirectory containing an empty
dummy dub project, the sole purpose of which is to declare vibe.d
dependencies so that `dub build` in that subdirectory will fetch and
build vibe.d and whatever else it may depend on, and build it into a
linkable state. Once that's done, I leave dub aside and use SCons to
actually build and link my program with the libraries built by dub.
This resulted in an instant improvement in my build times by (at least)
half, as well as free me from needless network lookups when I'm actually
coding locally and don't *need* to be upgrading dependent libraries.
This setup currently serves its purpose well enough. But, glancing at
reggae, it seems to be a flexible and interesting idea that might just
suit my needs. So I'm going to put it on my list of things to try out.
> There are assumptions in the codebase that make solving some of the
> issues so hard as to practically be impossible, and:
> 1. I don't get paid to work on dub (I have a hard time supporting all my
> open source projects as it is!)
> 2. There are tons of things I want to do in/for D that I'm more interested
> 3. As mentioned above, it's easier for me to just use reggae
Yeah, if I'm already so disinclined to use dub (or insert any other
disliked software of your choice), then imagine how much motivation I
have to actually invest my limited time and energy into it, as opposed
to doing something else that is more interesting and more immediately
relevant to my needs.
If somebody *paid* me to work on dub, then perhaps I will. But right
now, my level of motivation and interest in doing so is pretty low, and
is on the losing side of the competition against the myriad other
projects that I could be working on.
Turning your clock 15 minutes ahead won't cure lateness---you're just making
time go faster!