three-stdlib icon indicating copy to clipboard operation
three-stdlib copied to clipboard

Patch release introducing backwards incompatible changes

Open cgauld opened this issue 3 years ago • 2 comments
trafficstars

Hi all!

I'm not sure there's much that can be done about this now, but commit https://github.com/pmndrs/three-stdlib/commit/8125e625005aa03974bd535bf67e8cb888147806 introduces a backwards incompatible change in what becomes a patch version increment (v2.8.4 to v2.8.5).

The change in question is an increase in the minimum three peer dependency version.

This causes issues for users of libraries that depend on three-stdlib, such as react-three-fiber, which use a caret ^ in their package.json file for this dependency. It means that fresh NPM installs of projects that previously worked now pull in the latest version of three-stdlib and thus are in conflict with the version of three used by the project.

For us this is particularly problematic since the latest version of three introduces changes that we're not able to support yet. Explicitly choosing an older version of react-three-fiber in our project's package.json fails because the three-stdlib dependency tries to bring in three >= 0.137.

I believe this to be an issue in this project (rather than say in the dependencies of react-three-fiber) because there's an expectation that versioning should follow semver, and that the major version number should be incremented for backwards incompatible changes. My recommendation would be to increment major version for any change in peer dependencies.

Let me know if that all makes sense - and thanks for reading this far!

cgauld avatar Mar 29 '22 10:03 cgauld

Leaving this open as this has wider implications on policy, but I've reverted that change in #144. Should loosen up the peer dep requirement quite a bit.

CodyJasonBennett avatar Mar 30 '22 19:03 CodyJasonBennett

:tada: This issue has been resolved in version 2.8.12 :tada:

The release is available on:

Your semantic-release bot :package::rocket:

github-actions[bot] avatar Mar 30 '22 19:03 github-actions[bot]