Skip to content

Chore/update repack 5.4.2 & xcode 27 support - #177

Merged
dannyhw merged 2 commits into
callstack:chore/update-rn-0.87from
CristiCeban:chore/update-repack-5.4.1
Oct 9, 2026
Merged

dannyhw merged 2 commits into
callstack:chore/update-rn-0.87from
CristiCeban:chore/update-repack-5.4.1

Conversation

@CristiCeban

@CristiCeban CristiCeban commented Oct 9, 2026 •

Copy link
Copy Markdown
Contributor

Updates Re.Pack from the 5.4 canary to the stable 5.4.2 release, on top of #175. It also fixes the Release builds and gets the app building and launching on Xcode 27.

Re.Pack 5.4.2

  • Bumps @callstack/repack and @callstack/repack-plugin-reanimated to 5.4.2 in the catalog, host, sdk preset and docs. They're added to minimumReleaseAgeExclude until they clear the release-age gate.
  • Switches react-native.config.js to @callstack/repack/commands, because /commands/rspack is deprecated.
  • Adds @react-native/js-polyfills and @babel/plugin-syntax-typescript as direct devDependencies. Before, they only resolved through pnpm's NODE_PATH, so bundling from Xcode and Gradle failed.

Release build fixes

  • iOS: the bundle build phase now uses the community CLI, so Re.Pack bundles instead of RN's Metro-only scripts/bundle.js.
  • Android: hermesc is now found through hermes-compiler via react-native, because pnpm doesn't link it into the app's node_modules. The path includes .exe on Windows.

Xcode 27 / iOS 27

  • Raises pod deployment targets that Xcode 27 rejects (SDWebImage, AsyncStorage).
  • Adopts the UIScene lifecycle. Without it, the app crashes on launch when built with the iOS 27 SDK.

Test plan

  • pnpm typecheck, pnpm lint, pnpm test, pnpm peers check and pnpm format:check pass.
  • pnpm pods then build and run:
    • iOS Debug / Android Debug, with pnpm start running the dev servers.
    • iOS Release / Android Release, with production builds of the mini apps (react-native bundle --dev false) served on ports 9001–9003.
  • In each of the 4 builds, from a clean install, check:
    • sign in as the demo user
    • Trading list with live prices
    • BTC detail with chart, then open and close the trade sheet
    • Wallet portfolio
    • Account, then sign out

- Bump @callstack/repack and repack-plugin-reanimated to 5.4.1 (catalog,
  host, sdk align-deps preset, docs)
- Switch react-native.config.js to the non-deprecated
  `@callstack/repack/commands` entrypoint
- Add @react-native/js-polyfills (no longer a react-native dependency on
  0.87, required by Re.Pack's NativeEntryPlugin) and
  @babel/plugin-syntax-typescript (injected by Re.Pack's babel-swc-loader)
  as direct devDependencies; both previously only resolved through pnpm's
  bin-shim NODE_PATH, so Xcode/Gradle release bundling failed
- iOS: use the community CLI in the bundle build phase so the Re.Pack
  bundle command is used instead of react-native/scripts/bundle.js
- Android: resolve hermesc from hermes-compiler via react-native's
  dependency graph, as it is not linked into the app's node_modules
@CristiCeban CristiCeban changed the title Chore/update repack 5.4.1 Chore/update repack 5.4.1 & xcode 27 support Oct 9, 2026
@CristiCeban
CristiCeban force-pushed the chore/update-repack-5.4.1 branch from 6385d36 to 2d4a42e Compare October 9, 2026 14:39
- Raise pod deployment targets below the app minimum (SDWebImage and
  AsyncStorage resource bundles declare 9.0/13.0, rejected by Xcode 27)
- Adopt the UIScene lifecycle; apps built with the iOS 27 SDK crash on
  launch without it
- Regenerate Podfile.lock
@CristiCeban
CristiCeban force-pushed the chore/update-repack-5.4.1 branch from 2d4a42e to 3fc4581 Compare October 9, 2026 15:44
@CristiCeban CristiCeban changed the title Chore/update repack 5.4.1 & xcode 27 support Chore/update repack 5.4.2 & xcode 27 support Oct 9, 2026
@dannyhw
dannyhw merged commit b6b4fc0 into callstack:chore/update-rn-0.87 Oct 9, 2026
1 check passed
dannyhw pushed a commit that referenced this pull request Oct 9, 2026
Updates Re.Pack from the 5.4 canary to the stable 5.4.2 release, on top
of #175. It also fixes the Release builds and gets the app building and
launching on Xcode 27.

Re.Pack 5.4.2
- Bumps @callstack/repack and @callstack/repack-plugin-reanimated to
5.4.2 in the catalog, host, sdk preset and docs. They're added to
minimumReleaseAgeExclude until they clear the release-age gate.
- Switches react-native.config.js to @callstack/repack/commands, because
/commands/rspack is deprecated.
- Adds @react-native/js-polyfills and @babel/plugin-syntax-typescript as
direct devDependencies. Before, they only resolved through pnpm's
NODE_PATH, so bundling from Xcode and Gradle failed.
- @babel/plugin-syntax-typescript is a workaround until
callstack/repack#1483 is released; there's a TODO next to it.

Release build fixes
- iOS: the bundle build phase now uses the community CLI, so Re.Pack
bundles instead of RN's Metro-only scripts/bundle.js.
- Android: hermesc is now found through hermes-compiler via
react-native, because pnpm doesn't link it into the app's node_modules.
The path includes .exe on Windows.

Xcode 27 / iOS 27
- Raises pod deployment targets that Xcode 27 rejects (SDWebImage,
AsyncStorage).
- Adopts the UIScene lifecycle. Without it, the app crashes on launch
when built with the iOS 27 SDK.

Test plan

- pnpm typecheck, pnpm lint, pnpm test, pnpm peers check and pnpm
format:check pass.
- pnpm pods then build and run:
  - iOS Debug / Android Debug, with pnpm start running the dev servers.
- iOS Release / Android Release, with production builds of the mini apps
(react-native bundle --dev false) served on ports 9001–9003.
- In each of the 4 builds, from a clean install, check:
  - sign in as the demo user
  - Trading list with live prices
  - BTC detail with chart, then open and close the trade sheet
  - Wallet portfolio
  - Account, then sign out
dannyhw pushed a commit that referenced this pull request Oct 9, 2026
Updates Re.Pack from the 5.4 canary to the stable 5.4.2 release, on top
of #175. It also fixes the Release builds and gets the app building and
launching on Xcode 27.

Re.Pack 5.4.2
- Bumps @callstack/repack and @callstack/repack-plugin-reanimated to
5.4.2 in the catalog, host, sdk preset and docs. They're added to
minimumReleaseAgeExclude until they clear the release-age gate.
- Switches react-native.config.js to @callstack/repack/commands, because
/commands/rspack is deprecated.
- Adds @react-native/js-polyfills and @babel/plugin-syntax-typescript as
direct devDependencies. Before, they only resolved through pnpm's
NODE_PATH, so bundling from Xcode and Gradle failed.
- @babel/plugin-syntax-typescript is a workaround until
callstack/repack#1483 is released; there's a TODO next to it.

Release build fixes
- iOS: the bundle build phase now uses the community CLI, so Re.Pack
bundles instead of RN's Metro-only scripts/bundle.js.
- Android: hermesc is now found through hermes-compiler via
react-native, because pnpm doesn't link it into the app's node_modules.
The path includes .exe on Windows.

Xcode 27 / iOS 27
- Raises pod deployment targets that Xcode 27 rejects (SDWebImage,
AsyncStorage).
- Adopts the UIScene lifecycle. Without it, the app crashes on launch
when built with the iOS 27 SDK.

Test plan

- pnpm typecheck, pnpm lint, pnpm test, pnpm peers check and pnpm
format:check pass.
- pnpm pods then build and run:
  - iOS Debug / Android Debug, with pnpm start running the dev servers.
- iOS Release / Android Release, with production builds of the mini apps
(react-native bundle --dev false) served on ports 9001–9003.
- In each of the 4 builds, from a clean install, check:
  - sign in as the demo user
  - Trading list with live prices
  - BTC detail with chart, then open and close the trade sheet
  - Wallet portfolio
  - Account, then sign out
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