I just created a dub package. Frankly, the whole thign is backward.

Dukc ajieskola at gmail.com
Sat May 7 20:31:00 UTC 2022


On Saturday, 23 April 2022 at 20:15:27 UTC, deadalnix wrote:
> Why do we use a package manager that expect everyone to use it 
> to work in a certain way? It is blatantly obvious that many 
> organization out there are not going to use the exact setup dub 
> expects. So what do they do if they want to adopt D? Not use 
> dub at all? It's an option, but everything is distributed via 
> dub nowadays in the D ecosystem. Use dub to build everything? 
> Fork their own version of dub? No, the only sensible path 
> forward for pretty much any organization stumbling on this 
> bullshit is to not use D at all because none of the crap we put 
> out there is going to play nicely with what they already have.

The problem is that if we don't impose restrictions on how Dub 
packages can build, it's a complete Wild West from user 
perspective. Dub packages would install, or require you to 
install countless third-party build systems or even package 
managers, and they would likely set and read environmental 
variables willy-nilly.

Also unlike general purpose package managers, Dub needs to be 
portable to the Windows world. This is another reason you can't 
just have it build however it happens to work on your system.

Same goes to the version scheme. If you could have versions like 
"1-experimental-0", Dub would have no way to know how it's 
supposed to sort different versions from oldest to newest. 
Forcing SemVer solves that.


More information about the Digitalmars-d mailing list