Skip to content

React 19: peer dependency warnings from use-resize-observer and @xstate/react #3428

@pooya-badiee

Description

@pooya-badiee

What is the location of your example repository?

No response

Which package or tool is having this issue?

hydrogen-react

What version of that package or tool are you using?

@shopify/hydrogen-react and @shopify/hydrogen

What version of Remix are you using?

No response

Steps to Reproduce

  1. Create a starter template via shopify hydrogen init

  2. Update dependencies:

    Package From To
    @shopify/hydrogen 2025.7.0 2025.7.3
    react 18.3.1 ^19.2.3
    react-dom 18.3.1 ^19.2.3
    react-router 7.9.2 7.12.0
    react-router-dom 7.9.2 7.12.0
    @react-router/dev 7.9.2 7.12.0
    @react-router/fs-routes 7.9.2 7.12.0
    @shopify/cli 3.85.4 3.89.0
  3. Remove package-lock.json and node_modules, then run npm install

  4. Peer dependency warnings appear:

~/projects/hydrogen-storefront$ npm i
npm warn ERESOLVE overriding peer dependency
npm warn While resolving: @xstate/react@3.2.1
npm warn Found: react@19.2.4
npm warn node_modules/react
npm warn   react@"^19.2.3" from the root project
npm warn   7 more (@shopify/hydrogen, @shopify/hydrogen-react, react-dom, ...)
npm warn
npm warn Could not resolve dependency:
npm warn peer react@"^16.8.0 || ^17.0.0 || ^18.0.0" from @xstate/react@3.2.1
npm warn node_modules/@shopify/hydrogen-react/node_modules/@xstate/react
npm warn   @xstate/react@"3.2.1" from @shopify/hydrogen-react@2025.7.2
npm warn   node_modules/@shopify/hydrogen-react
npm warn
npm warn Conflicting peer dependency: react@18.3.1
npm warn node_modules/react
npm warn   peer react@"^16.8.0 || ^17.0.0 || ^18.0.0" from @xstate/react@3.2.1
npm warn   node_modules/@shopify/hydrogen-react/node_modules/@xstate/react
npm warn     @xstate/react@"3.2.1" from @shopify/hydrogen-react@2025.7.2
npm warn     node_modules/@shopify/hydrogen-react
npm warn ERESOLVE overriding peer dependency
npm warn While resolving: react-dom@18.3.1
npm warn Found: react@19.2.4
npm warn node_modules/react
npm warn   react@"^19.2.3" from the root project
npm warn   7 more (@shopify/hydrogen, @shopify/hydrogen-react, react-dom, ...)
npm warn
npm warn Could not resolve dependency:
npm warn peer react@"^18.3.1" from react-dom@18.3.1
npm warn node_modules/@shopify/hydrogen/node_modules/react-dom
npm warn   peer react-dom@"16.8.0 - 18" from use-resize-observer@9.1.0
npm warn   node_modules/@shopify/hydrogen/node_modules/use-resize-observer
npm warn
npm warn Conflicting peer dependency: react@18.3.1
npm warn node_modules/react
npm warn   peer react@"^18.3.1" from react-dom@18.3.1
npm warn   node_modules/@shopify/hydrogen/node_modules/react-dom
npm warn     peer react-dom@"16.8.0 - 18" from use-resize-observer@9.1.0
npm warn     node_modules/@shopify/hydrogen/node_modules/use-resize-observer
npm warn ERESOLVE overriding peer dependency
npm warn While resolving: use-resize-observer@9.1.0
npm warn Found: react@19.2.4
npm warn node_modules/react
npm warn   react@"^19.2.3" from the root project
npm warn   7 more (@shopify/hydrogen, @shopify/hydrogen-react, react-dom, ...)
npm warn
npm warn Could not resolve dependency:
npm warn peer react@"16.8.0 - 18" from use-resize-observer@9.1.0
npm warn node_modules/@shopify/hydrogen/node_modules/use-resize-observer
npm warn   use-resize-observer@"^9.1.0" from @shopify/hydrogen@2025.7.3
npm warn   node_modules/@shopify/hydrogen
npm warn
npm warn Conflicting peer dependency: react@18.3.1
npm warn node_modules/react
npm warn   peer react@"16.8.0 - 18" from use-resize-observer@9.1.0
npm warn   node_modules/@shopify/hydrogen/node_modules/use-resize-observer
npm warn     use-resize-observer@"^9.1.0" from @shopify/hydrogen@2025.7.3
npm warn     node_modules/@shopify/hydrogen

Expected Behavior

No peer dependency warnings when using React 19 with @shopify/hydrogen

Actual Behavior

Peer dependency warnings due to transitive dependencies not supporting React 19:

  • @shopify/hydrogenuse-resize-observer@9.1.0 (supports React 16-18)
  • @shopify/hydrogen-react@xstate/react@3.2.1 (supports React 16-18)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions