On Friday, 2 February 2024 at 16:46:29 UTC, Lance Bachmeier wrote:
> On Friday, 2 February 2024 at 14:46:45 UTC, aberba wrote:
A better solution would be something like this:
dub dxml;
void main() {
// Call functions from the dxml package
}
The compiler would know about certain popular packages on code.dlang.org. It would download the package if needed, and it would know where to find the relevant files.
I cannot argue strenuously enough against putting the packaging system in to the compiler directly. Not only will it balloon the build times by orders of magnitude, it is a serious violation of separation-of-concerns. The compiler should concern itself with compiling code and nothing else. The compiler is the wrong place to be handling third-party packages, that is properly the venue of the build system.
> There are good reasons to not add that stuff to Phobos. The standard to get something in Phobos is high enough that it leads to a lot of wasted time for many people, it doesn't bloat the compiler download size, it takes advantage of work that's already been done, and it could be done quickly, rather than the years it takes to get stuff done otherwise. (I'm writing this fully aware of how things get done around here, but I'm going to put it out there anyway.)
People always say there are good reasons, but are light on actual reasons. Saying that Phobos has a high bar is not itself a reason so much as an excuse to not make the effort.
In any case, I have a slightly different philosophy around PR's. I do not consider bikeshedding over formatting and other trivia to be a valid reason to delay a PR. I've posted about this elsewhere. If your code passes it's tests, delivers what it says it delivers, and helps us achieve our stated goals for the release, it goes in. Will bugs escape, sure, bugs escaping is normal, but I find our habit of using bikeshedding to stall out PRs we don't agree with to be rather odious. Merge buttons exist to prevent people from tying up PR's in bureaucratic nonsense. I intend to push them.
Furthermore, if you disagree with how a PR does something that is non-trivial, either offer up a competing PR or remain silent. If you do not offer up a competing PR then we will assume that you are either not as concerned as your comments make you sound, or you are not actually sure that your solution is better. In either case, you can always submit a PR to improve upon the original PR. PR's are free, let's make more of them.
Under my watch (if the community doesn't kick me out) Phobos will move faster. And yes, there might even be more bugs that escape. My plan is to use the monthly(Atila?) releases between the major roll-up releases mentioned in my original post to catch them before they get to the wider population.