Skip to content

chore(deps): weekly dependency update to latest pinned versions - #364

Draft
jimmydjabali wants to merge 1 commit into
mainfrom
claude/determined-shannon-07m7yz
Draft

chore(deps): weekly dependency update to latest pinned versions#364
jimmydjabali wants to merge 1 commit into
mainfrom
claude/determined-shannon-07m7yz

Conversation

@jimmydjabali

Copy link
Copy Markdown
Collaborator

Summary

Weekly dependency refresh: 58 dependencies bumped to their latest published versions, pinned exact (all patch/minor within the same major line). text-encoding-polyfill was also converted from a caret range to an exact pin (^0.6.70.6.7).

Validation

  • npm install resolves cleanly (legacy-peer-deps).
  • All 19 patch-package patches still apply cleanly.
  • tsc --noemit: 0 new type errors introduced vs. the pre-existing baseline (382 after vs. 383 before — the typecheck is already red on main, independent of this change).
  • Production web build (webpack --mode=production): succeeds (warnings only).

Note: native iOS/Android builds could not be exercised in the automated environment, so native-affecting majors were held (see below).

Code change required by an update

  • webpack.config.ts — added { test: /\.m?js$/, resolve: { fullySpecified: false } }.
    react-router-dom 7.18 imports process/browser (extension-less) from its .mjs build; webpack 5 rejects that under fully-specified ESM resolution, breaking the web build. This rule relaxes extension resolution for .mjs dependencies (the standard RN-web + webpack fix) and restores the build.

Held back (not updated) and why

React Native 0.81 toolchain — version-locked, needs a native migration

react-native (0.81.4 → 0.86.0), @react-native/assets-registry, @react-native/babel-preset, @react-native/eslint-config, @react-native/metro-config, @react-native/typescript-config, @react-native-community/cli (+ -platform-android / -platform-ios). RN 0.81 → 0.86 is 5 breaking RN releases touching iOS/Android native code; not validatable here.

Carry a version-pinned patch-package patch (bumping silently drops the patch)

react-native-web (0.21.1), babel-plugin-react-native-web (kept aligned), react-native-ble-plx (3.4.0), lottie-react-native (7.3.4), @ledgerhq/react-native-hid (6.32.10). (react-native-webview and @sentry/react-native also carry patches and are majors — listed below.)

Major bumps held — native / build-toolchain / broad surface, unvalidatable unattended

@fortawesome/react-native-fontawesome 0.3→1.0, @ledgerhq/hw-app-btc 10→11, @react-native-async-storage/async-storage 2→3, @react-native-community/slider 4→5, @sentry/react-native 7→8, @sentry/webpack-plugin 4→5, react-native-bootsplash 6→7, react-native-device-info 14→15, react-native-error-boundary 2→3, react-native-get-random-values 1→2, react-native-screenguard 1→2, react-native-vision-camera 4→5, react-native-webview 13→14, i18next 25→26 + react-i18next 15→17 (paired; broad t() type surface), @babel/* 7→8, eslint 9→10 + @eslint/js 9→10 + @eslint/compat 1→2 + eslint-plugin-react-hooks 5→7, typescript 5.9→7.0, @types/node 24→26, webpack-cli 6→7, webpack-dev-server 5→6, uuid 13→14, locale-currency 0.0.4→1.0.0.

Same-major bumps that regress in this repo — held to keep the change zero-regression

  • styled-components 6.1.19 → 6.4.3 — 6.4's polymorphic typing introduces ~7 new tsc errors (as prop / onPress / disabled / prop-existence on styled RN-web components). Needs a focused typing pass.
  • @yudiel/react-qr-scanner 2.1.0 → 2.6.0 — the audio key was removed from the components prop (IScannerComponents), breaking QRCamera.tsx. Payment-critical scanner; not bumped without runtime validation.

Intentional pins left as-is

  • react-native-nyx-printer — deliberate github fork pin.
  • bitcoinjs-lib 7.0.0-rc.0 — deliberate pre-release pin; rc → 7.0.1 on a wallet-signing core lib not done without runtime validation.
  • react-native-text-size 4.0.0-rc.1 — already latest, patched.

Generated by Claude Code

Bump 58 dependencies to their latest published versions (exact pins).
All patch/minor updates within the same major line, plus text-encoding-polyfill
pinned exact. Verified: npm install resolves, all 19 patch-package patches apply,
tsc introduces no new type errors vs. the pre-existing baseline, and the
production web build succeeds.

Adapt webpack config for react-router-dom 7.18: add resolve.fullySpecified=false
for .mjs so react-router's extension-less "process/browser" import resolves.

Held back (see PR description) 45 packages: the React Native 0.81 toolchain,
packages carrying version-pinned patch-package patches, native/build-toolchain
major upgrades, styled-components 6.4 and @yudiel/react-qr-scanner 2.6 (type/API
regressions), and the bitcoinjs-lib pre-release pin.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TfjnEKb2TT2HE1AoynE9Ko
@netlify

netlify Bot commented Jul 16, 2026

Copy link
Copy Markdown

Deploy Preview for swissbitcoinpayapp ready!

Name Link
🔨 Latest commit 2eac02a
🔍 Latest deploy log https://app.netlify.com/projects/swissbitcoinpayapp/deploys/6a58de42aa94c600085bfafa
😎 Deploy Preview https://deploy-preview-364--swissbitcoinpayapp.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify

netlify Bot commented Jul 16, 2026

Copy link
Copy Markdown

Deploy Preview for app-swiss-bitcoin-pay-ch ready!

Name Link
🔨 Latest commit 2eac02a
🔍 Latest deploy log https://app.netlify.com/projects/app-swiss-bitcoin-pay-ch/deploys/6a58de42ab00be00088df3c2
😎 Deploy Preview https://deploy-preview-364--app-swiss-bitcoin-pay-ch.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants