v7.8.0 introduces a non-backwards-compatible change
See original GitHub issueBabel design docs claim that Babel follows semver. However, Semantic Versioning claims that non-backwards-compatible bug fixes should be released as major versions.
v7.8.0
included this PR: https://github.com/babel/babel/pull/10887. This PR changes the behavior of the public API, namely --ignore
combined with --copy-files
.
^v7.8.0
breaks all of our apps, and we have Dependabot configured to auto-merge minor/patch bumps, so this has been rather disruptive.
From reading through the history of #6226, it seems like it was pretty well established that this would be a breaking change. It seems like the idea of this even being a bug was contentious.
Is my understanding of semver out of line? The way I see it, to maintain previous behavior when upgrading to 7.8.0, I need to add --copy-ignored
. If I need to make a change to maintain previous behavior, that’s a breaking change.
Please consider either:
- reverting this change and including it in the v8 line instead
- changing the default for the new
--copy-ignored
flag totrue
, to maintain previous behavior (and possibly changing the default tofalse
in the v8 line)
(Note: I didn’t submit this as a bug report and I didn’t include repro steps because everything seems to be working as expected. The only issue is that this is a breaking change published as a minor. I can provide repro steps if necessary.)
Issue Analytics
- State:
- Created 4 years ago
- Comments:8 (6 by maintainers)
Agree
I think it makes sense to do a patch release with the non-breaking default value.