On Fri, Aug 24, 2018 at 04:58:12PM +0000, jmh530 via Digitalmars-d wrote: > On Friday, 24 August 2018 at 16:00:10 UTC, bachmeier wrote: > > > > You simply can't share a D program with anyone else. It's an endless > > cycle of compiler upgrades and figuring out how to fix code that > > stops compiling.
I got bitten by this just yesterday. Update dmd git master, update vibe.d git master, now my vibe.d project doesn't compile anymore due to some silly string.d error somewhere in one of vibe.d's dependencies. :-/ In the past this appeared to be a problem with out-of-date build targets, that was fixed by rebuilding everything from scratch. But this time appears to be something else... > > It doesn't work for those of us that are busy. Why there is not a > > stable branch with releases once a year is quite puzzling. (And no, > > "just use the old compiler" is not an answer.) > > ...hmm...I can't recall anyone ever suggesting to have a stable > branch. It's a good idea. > > That being said, I see forward progress on reducing breakage. The CI > infrastructure has improved a lot and there are a number of dub > projects that also get checked. This is probably completely unrealistic, but I've been thinking about the possibility of adding *all* D codebases to the CI infrastructure, including personal projects and what-not. Set it up such that any breakages send a notification to the author(s) in advance of a PR being checked in, so that they have time to respond. I'm not sure how this would work in practice since you have to deal with dead / unmaintained projects and/or slow/unresponsive authors, and some PRs you might want to push through regardless of breakage. But it would be nice to know exactly how much code we're breaking out there. Part of this is my suspicion that certain big, scary breaking changes actually may not have that big of an impact as we imagine, and could be worthwhile in the long run to get rid of wrinkles in the language and end up with a better, cleaner design that will last longer into the future. But I'm probably just dreaming. T -- VI = Visual Irritation