- MAJOR version at maintaners’ discretion (refactoring core)
- MINOR version when you make improvements in a backwards-compatible manner (performance)
- PATCH version when you make backwards-compatible bug fixes (spec compliance)
Polyfills don’t have “breaking changes” (or at least they shouldn’t), so I’m wondering what makes sense for major versions. “Whenever we do a lot of things” doesn’t seem particularly nailed-down, but I’m not sure there’s a better way.
I imagine a polyfill could have a breaking change if the spec it's adhering to suddenly introduces a breaking change of its own, which I'd fathom warranting a major version bump so that developers using the polyfill have a fair warning / chance to update their usage.