ant-design: Missing peerDependencies breaks under Yarn 2 (Berry)
- I have searched the issues of this repository and believe that this is not a duplicate.
Reproduction link
http://www.example.com/not-applicable
Steps to reproduce
yarn set version berry yarn add antd yarn node -e ‘require(“antd”)’
What is expected?
node terminates without errors
What is actually happening?
Some variant of an error like this one:
Error: rc-upload tried to access react, but it isn’t declared in its dependencies; this makes the require call ambiguous and unsound.
Environment | Info |
---|---|
antd | 4.7.2 |
React | 16.13.1 |
System | n/a |
Browser | n/a |
Adding the following to your .yarnrc.yml fixes the issue:
packageExtensions:
"rc-animate@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-cascader@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-checkbox@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-collapse@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-dialog@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-drawer@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-dropdown@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-field-form@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-image@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-input-number@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-mentions@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-menu@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-motion@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-notification@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-pagination@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-picker@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-progress@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-rate@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-resize-observer@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-select@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-slider@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-steps@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-switch@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-table@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-tabs@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-textarea@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-tooltip@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-tree@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-tree-select@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-trigger@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-upload@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
"rc-util@*":
peerDependencies:
"react": 16.13.1
"react-dom": 16.13.1
Substitute your version of react or react-dom.
Since each of these dependencies is a separate component, it’s a bit of a pain to fix, deploy new versions, etc. If you’re willing to accept a series of PRs, I’d be happy to write a little script to update all the package.json files and submit PRs. Or if you have alternative suggestions, please let me know.
About this issue
- Original URL
- State: closed
- Created 4 years ago
- Comments: 15 (7 by maintainers)
Commits related to this issue
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
- Add react and react-dom as peer dependencies Fixes errors using Yarn 2 (berry). See https://github.com/ant-design/ant-design/issues/27339 for details. — committed to brandonbloom/animate by brandonbloom 4 years ago
It seems that the dependency
@ant-design/react-slick
doesn’t declare peer dependencies contrary to the original repository,react-slick
rc-field-from
rc-tooltip
rc-trigger
Wait for the patch to be released.
Thanks. I will do something for that.
By “missing releases” I mean that changes fixing this issue were merged but not tagged/released to npm: