Release process and backwards compatibility

deadalnix deadalnix at gmail.com
Fri Mar 8 20:55:02 PST 2013


On Friday, 8 March 2013 at 20:33:20 UTC, Marco Leise wrote:
> I don't know much about the development process, but as you
> said some bugs may be features or vice versa. Sometimes real
> bugs are fixed and peoples' code breaks. But keeping the bug
> around isn't an option.

The problem isn't really breaking the code. It is known to be 
necessary on some subjects. It is more about how it is done.

> The next code breakage comes from making array slices
> consistently rvalues (the slice structure itself, not the
> data). It's not a new idea, like introducing immutable, just
> wasn't correctly implemented from the start. I don't know if
> this warrants a LTS release already. The problem will be
> obvious and easy to fix by introducing a temp variable to pass
> as lvalue into functions taking slices by ref. Or changing
> those functions to auto-ref.

Very good example (many code of mine broke on that one).

Yes this is the way things should have been from day 1. And 
solving that is clearly the way to go.

However, this change is right now into master and will go out 
with the next version of D, breaking a truly large amount of code 
(most code that uses slice as range will break).

This isn't the type of change you can release without any damage 
mitigation plan.


More information about the Digitalmars-d mailing list