On Sunday, 17 December 2017 at 14:13:05 UTC, WebFreak001 wrote:
On Sunday, 17 December 2017 at 12:52:57 UTC, bauss wrote:
This shouldn't have been released as 0.8.2, because it has a
lot of breaking changes.
For an instance anything that relies on HTTPServerRequest.path
will break.
I'm aware that there has been added the "requestPath"
property, but it's still a breaking change to all existing
code that relies on the old "path" property. Especially when
it's used to manipulate the path you receive.
Diamond cannot currently be used with latest release of
vibe.d, because of this and it was relying on vibe.d with
following dependency:
"vibe-d": "~>0.8.1"
0.8.2 should not be a breaking change, assuming you follow
semantic versioning.
https://semver.org/
4. Major version zero (0.y.z) is for initial development.
Anything may change at any time. The public API should not be
considered stable.
0.x.Y should always be compatible with 0.x.Z without breaking
changes.
Since it's MAJOR.MINOR.PATCH
This is a patch release 0.8.1 to 0.8.2 which means:
"PATCH version when you make backwards-compatible bug fixes."
Even a minor version should be backward-compatible.
"MINOR version when you add functionality in a
backwards-compatible manner, and"
I'm all for deprecating said features, but plain removing them in
a release like this is a breaking change and should at the very
least be a minor version upgrade, but definitely not a patch.