Description
Description
Due to the heavy usage of "file: ../
for linking to sibling packages this can lead to breaking changes, such as the fact that even though @wordpress/icons
hasn't actually had any real changes in a while, there have been no less than 13 new versions.
Some of those new versions came with other dependency changes, such as the latest including @wordpress/element@5.0.0
and thus react@18.2.0
causing major headaches for typescript usage.
Took me better part of a day to track down that the icon library update we randomly installed without consideration due to nothing noted in changelogs also was forcing our entire deps chain to rebuild (& fail) on react v18.
I propose either:
- Using actual versioning for each package.json for siblings,
- Not auto publishing packages with no real changes.
- Update changelogs with all the package changes that have also occurred. So the icon update for example should note requirement for react@18 that it now has.
I'm sure this won't get approved, but it is highly annoying realizing better part of 2 days work was wasted due to changelogs that clearly should have indicated breaking changes.
Step-by-step reproduction instructions
- View empty changelog for icon package.
- Notice that it uses
file: ../
for the@wordpress/element
dependency. - Realize that @wordpress/element now requires React 18 and is a breaking change.
Screenshots, screen recording, code snippet
Example here you can see npm chose to update to the latest version of @wordpress/primitives which required @wordpress/element@5.0.0.
https://www.npmjs.com/package/@wordpress/primitives?activeTab=explore
Strangely that update doesn't even exist in the github changelogs that I can find, but is none the less published on npm. Which further illustrates my point that there is a huge disconnect between the versioned releases & changelogs and what is actually happening.
Environment info
No response
Please confirm that you have searched existing issues in the repo.
Yes
Please confirm that you have tested with all plugins deactivated except Gutenberg.
Yes