bigcommerce/checkout-js

Dependency Conflict Warnings

Closed this issue · 1 comments

The following was observed running the dependency installation with Node v18.18.0, npm v9.8.1

There is a conflict between dependencies resulting in warnings during npm ci/install. The following didn't appear to affect the successful running of the checkout (the root React dependency overrode the conflicting dependency), but the formik dependency might need a review. The issue is a conflict between the root-level React version and a React version declared as a peerDependency later in the chain.

  • Root package.json declares "@types/react": "^17.0.2".
  • Root package.json declares "formik": "^1.5.8"
  • formik v1.5.8 declares "create-react-context": "^0.2.2"
  • create-react-context v0.2.3, which gets installed in node_modules/formik/node_modules, declares this in peerDependencies: "react": "^0.14.0 || ^15.0.0 || ^16.0.0"

The installation warnings are as follows:

npm WARN ERESOLVE overriding peer dependency
npm WARN While resolving: create-react-context@0.2.3
npm WARN Found: react@17.0.2
npm WARN node_modules/react
npm WARN   react@"^17.0.2" from the root project
npm WARN   18 more (@hypnosphi/create-react-context, ...)
npm WARN 
npm WARN Could not resolve dependency:
npm WARN peer react@"^0.14.0 || ^15.0.0 || ^16.0.0" from create-react-context@0.2.3
npm WARN node_modules/formik/node_modules/create-react-context
npm WARN   create-react-context@"^0.2.2" from formik@1.5.8
npm WARN   node_modules/formik
npm WARN 
npm WARN Conflicting peer dependency: react@16.14.0
npm WARN node_modules/react
npm WARN   peer react@"^0.14.0 || ^15.0.0 || ^16.0.0" from create-react-context@0.2.3
npm WARN   node_modules/formik/node_modules/create-react-context
npm WARN     create-react-context@"^0.2.2" from formik@1.5.8
npm WARN     node_modules/formik

formik v2 introduced several breaking changes that have yet to be resolved.
Consequently, we find ourselves currently constrained at formik 1.5.8.