On 11/11/16 3:02 PM, jmh530 wrote:
On Friday, 11 November 2016 at 19:36:59 UTC, Nick Sabalausky wrote:
I've gone through a lot of compiler upgrades on a lot of D projects,
and in my experience, this "investigate and fix for the new dmd" has
always been trivial (aside from one instance where Phobos's standard
function deprecation policy wasn't followed).
Some things should certainly have a smooth transition path (like
above, when replacing a Phobos function with a different one), but
really, not everything needs to be.
They've talked about an auto-checker for dub packages. I suspect that
will go a long way to reducing regressions.
Actually, in this case, we knew this was going to break builds, and also
in this case, the fix for user code is not trivial. Breaking a cycle
involves breaking a module into multiple pieces, or putting the
initialization code elsewhere.
Unfortunately, there's not much ways to do this fix in a graceful
manner. This is a tougher one to swallow, and I don't think it's a
normal case. The DRT options were added to ease transition.