Skip to content

chore: address peer dependency warnings (React 19 + outdated packages) #590

@rickstaa

Description

@rickstaa

Description

Running pnpm install produces a large number of unmet peer dependency warnings. These are not currently breaking anything but indicate technical debt that could cause issues as dependencies are updated.

Categories

1. React 19 incompatibility

Most dependencies still declare peer deps for React 16-18 but we're on React 19.2.1:

  • @livepeer/design-system@1.1.0 — expects react@17.0.1
  • All @radix-ui/* packages — expect react@^16.8 || ^17.0 || ^18.0
  • @reach/dialog, @reach/tabs — expect react@^16.8.0 || 17.x
  • qrcode.react, react-query, react-table, react-number-format

2. Outdated packages

Some packages are significantly behind and should be evaluated for replacement:

  • react-truncate@2.4.0 — expects react <= 16.x.x
  • react-hook-form@3.29.4 — expects react@^16.8.0 (current is v7+)
  • apollo-link@1.2.14 and apollo-link-http@1.5.17 — expect graphql@^0.11-^15 (we're on 16)
  • graphql-tools@8.3.20 — pulls in old @apollo/client@3.7.17
  • @modulz/radix-icons@4.0.0 — expects react@^16.x || ^17.x

3. Other mismatches

  • wagmi@walletconnectviemabitype expects zod@^3 >=3.22.0 but found 4.1.12
  • @reown/appkituse-sync-external-store expects React 16-18
  • @coinbase/cdp-sdk@solana/rpc-subscriptions expects ws@^8.18.0 but found 7.5.10

Suggested approach

  • Prioritize updating @livepeer/design-system to support React 19 (or add pnpm.peerDependencyRules.allowedVersions overrides as a short-term fix)
  • Evaluate replacing react-truncate, react-hook-form@3, apollo-link, and @modulz/radix-icons with modern alternatives
  • Consider removing graphql-tools if unused or upgrading to a version that doesn't pull in the old Apollo client

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions