# chore\(mobile\): upgrade to Expo SDK 58 beta and React Native 0.88 RC · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/commit/409c12f486f6b86c7dc6dcc94553a6db51f0e3e8)

Repository: [pingdotgg/t3code](https://git.cafe/pingdotgg/t3code)

Visibility: public

Requested revision: 409c12f486f6b86c7dc6dcc94553a6db51f0e3e8

Requested commit: 409c12f486f6b86c7dc6dcc94553a6db51f0e3e8

Commit: 409c12f486f6b86c7dc6dcc94553a6db51f0e3e8

Tree: ae4f41fcc16a70fe9c2160e4c78a90f05ef63d04

Author: Julius Marminge

Committer: Julius Marminge

## Message

```
chore(mobile): upgrade to Expo SDK 58 beta and React Native 0.88 RC

Bump every Expo package to the SDK 58 line (expo@58.0.0-preview.2,
react-native@0.88.0-rc.0, gesture-handler 3.x, reanimated 4.6, screens 4.27)
and absorb the breaking changes:

- iOS scene lifecycle: the SDK 58 prebuild template now generates
  SceneDelegate.swift and the scene manifest itself, so the custom
  withIosSceneLifecycle plugin (and its regex surgery on AppDelegate) is
  deleted. Expo forwards URL, user-activity, and quick-action events to the
  app delegate under the scene lifecycle.
- React Native strict TypeScript API: host-component refs use the new
  ViewInstance/TextInstance/TextInputInstance types, the codegen specs import
  codegenNativeComponent and CodegenTypes from the react-native root, and the
  removed StatusBar `translucent` prop is dropped. expo-blur and
  expo-glass-effect still type refs as Ref<View>, so both get a types-only
  pnpm patch until upstream adopts ViewInstance.
- expo-file-system: File.write, readBytes and writeBytes are async; call
  sites await them so the atomic rename and upload ordering hold.
- expo-notifications now shows foreground notifications by default. A
  notification handler suppresses the banner only when it targets the thread
  already on screen and lets everything else through.
- gesture-handler 3.x: ReanimatedSwipeable's simultaneousWithExternalGesture
  became simultaneousWith and dragOffsetFromRightEdge became
  dragOffsetFromRight, with Gesture.Native() swapped for useNativeGesture.
- Patches re-targeted to the new versions (metro-config source-map sanitizer,
  gesture-handler swipeable extensions, screens header bar items, expo-audio
  recorder error state, expo-sharing Android originalName, expo-widgets
  Live Activity environment). The reanimated layout-animation backport is
  upstream in 4.6.0 and its patch is removed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

```

## Parents

- [29a23fdf1481485593d7d90e195b7c8bf2a705a8](https://git.cafe/pingdotgg/t3code/commit/29a23fdf1481485593d7d90e195b7c8bf2a705a8?format=markdown)

[Source at this commit](https://git.cafe/pingdotgg/t3code/tree/409c12f486f6b86c7dc6dcc94553a6db51f0e3e8?format=markdown)
