On 3/9/14, 5:35 AM, David wrote:
Am 09.03.2014 04:58, schrieb Andrei Alexandrescu:
std.json broke backward compatibility, starting with
https://github.com/D-Programming-Language/phobos/commit/1958c95666b0241d669d282806e4f724fbb37caf.
There's even no notice in the changelog of the breakage, which is quite
obvious by inspecting the diff.
This is a serious matter because it broke production code. Was there a
reason for the breakage? We should make sure breaking changes are
avoided or get a lot of scrutiny if they are really necessary.
I wonder how we can improve the process to avoid such issues in the future.
Andrei
What code did break?
I did use std.json heavily myself before this pull request and it was
basically unusable (hence the pull to improve the api), so I tried to
expand std.json without breaking backwards compatability, the tests ran
through also my code still worked.
As is plain from the diff, the publicly available storage now needs
".store" in there. Making untagged store public was probably a mistake
in the initial design, but breakage is what it is.
Andrei