Skip to content

Bump zod and expo - #49

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/multi-fe859e4869
Closed

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/multi-fe859e4869

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Nov 3, 2026 •

Copy link
Copy Markdown
Contributor

Removes zod. It's no longer used after updating ancestor dependency expo. These dependencies need to be updated together.

Removes zod

Updates expo from 57.0.23 to 58.0.22

Release notes

Sourced from expo's releases.

expo@58.0.22

Patch Changes

expo-modules-jsi@58.0.22

Patch Changes

  • [iOS] Reduce the overhead of converting JavaScript arrays to Swift arrays, such as the array arguments of @JS functions. (#52476 by @​tsapeta)
  • [iOS] Reduce the overhead of calling the throwing as…() conversions of JavaScriptValue and JavaScriptUnownedValue from another module. JavaScriptValue.TypeError is now @frozen. (#52477 by @​tsapeta)
  • [iOS] Add JavaScriptSymbol, which creates symbols, reads Symbol.for and the well-known symbols, and converts to and from JavaScriptValue. Add JavaScriptValue.getSymbol(), JavaScriptValue.asSymbol(), JavaScriptUnownedValue.getSymbol(in:) and JavaScriptPropNameID(_:symbol:), so symbols can be property keys. (#52696 by @​tsapeta)
  • [iOS] Fix a crash on iOS 17 and older ("freed pointer was not the last allocation") when an async native function awaits JavaScriptRuntime.execute on the JavaScript thread. (#52570 by @​tsapeta)
  • [iOS] Optional conforms to JavaScriptDecodable also when its wrapped type is non-copyable, so an optional JavaScriptObject or JavaScriptValue decodes like any other optional, for example as an optional argument of a @JS function. (#52648 by @​tsapeta)

expo-sharing@58.0.22

Patch Changes

  • Updated dependencies. (#52788)
    • @​expo/config-plugins@​58.0.12

expo-modules-jsi@58.0.21

Patch Changes

  • [iOS] Add JavaScriptFunction.call(argumentCount:emplacing:) and call(argumentCount:returning:emplacing:) to call a JavaScript function with any JavaScriptEncodable arguments, and make JavaScriptValuesBuffer.emplace(_:at:) public. (#52210 by @​tsapeta)
  • [iOS] Reduce the overhead of calling a JavaScript function that a @JS function received as a closure, when native code calls it on the JavaScript thread. (#52208 by @​tsapeta)
  • [iOS] Reduce the overhead of JavaScriptActor.assumeIsolated with a throwing closure, and of blocking JavaScriptCallback calls on the JavaScript thread. The throwing assumeIsolated now throws untyped errors. (#52210 by @​tsapeta)
  • [iOS] Reduce the overhead of converting Swift arrays of numbers, booleans, strings and optionals to JavaScript arrays, by encoding each element straight into the array's buffer with JavaScriptEncodable.encode(_:into:in:). (#52293 by @​tsapeta)
  • [iOS] Add encode(_:into:in:) to Array and Dictionary, which move the array or the object they create into the slot, and set dictionary entries with setProperty(_:encoding:in:). This reduces the overhead of encoding nested arrays and dictionaries, and arrays and dictionaries in record properties. (#52350 by @​tsapeta)
  • [iOS] Add JavaScriptEncodable.encode(_:into:in:), which encodes a value straight into a JavaScriptValue.Slot. Numbers, booleans, strings and optionals construct the engine value in the slot, and JavaScriptValuesBuffer.emplace(_:at:in:) uses it, which reduces the overhead of passing these values as arguments to JavaScript functions. (#52286 by @​tsapeta)
  • [iOS] Add JavaScriptRuntime.HostFunctionClosure, a host function closure that writes its result into the engine's result slot with JavaScriptEncodable.encode(_:into:in:) and receives the runtime as a parameter, with createFunction and JavaScriptObject.setProperty(_:function:) overloads for it. This reduces the overhead of returning numbers, booleans and strings from native functions. (#52328 by @​tsapeta)
  • Fix a deadlock on iOS when a JavaScript error clears the React Native scheduler queues while a task holds a promise or callback. When a promise or callback is dropped on the JavaScript thread, it now schedules the release of its state from another thread. (#51880 by @​douglowder)
  • [iOS] Add JavaScriptObject.setProperty(_:encoding:), which encodes a value in the runtime of the object with encode(_:into:in:) straight into the engine value that the property is set to, and JavaScriptValue.Slot.emplace(_:) overloads for a JavaScriptObject and a JavaScriptArray. Setting a number, a boolean or a string property this way skips the intermediate JavaScriptValue. (#52346 by @​tsapeta)
  • [iOS] Create the standalone Hermes runtime (JavaScriptRuntime()) with the microtask queue and GC config of React Native's bridgeless runtime, so promise jobs go to the native microtask queue instead of running synchronously through a setImmediate shim. Add JavaScriptRuntime.drainMicrotasks(): a host of a standalone runtime calls it after each task, like React Native does. (#52254 by @​tsapeta)
  • [iOS] Add JavaScriptValue methods that convert tuples, and the arrays, optionals and dictionaries that hold them, for the code that expo-modules-macros generates: decodeTuple, encodeTuple, decodeArray, encodeArray, decodeOptional, encodeOptional, decodeDictionary and encodeDictionary. An unlabeled tuple converts to an array, and a labeled tuple to an object. The encode methods write into a JavaScriptValue.Slot. Also add JavaScriptObject.setProperty(_:encodingWith:) and JavaScriptValuesBuffer.emplace(at:encodingWith:), which encode a value straight into a slot of the property or the argument, JavaScriptValue.encoding(in:_:), which creates a value from what is written into a slot, and JavaScriptCallback.invokeBlocking(_:argumentCount:decoding:emplacing:), which decodes the result of a JavaScript function with a closure. (#52392 by @​tsapeta)
  • Rebuild precompiled iOS binaries against React Native 0.88.1. (#52404 by @​intergalacticspacehighway)

expo-sharing@58.0.21

Patch Changes

  • Updated dependencies.
    • @​expo/config-plugins@​58.0.11

... (truncated)

Changelog

Sourced from expo's changelog.

58.0.22

Patch Changes

58.0.21

Patch Changes

58.0.20

Patch Changes

... (truncated)

Commits

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Nov 3, 2026
Removes [zod](https://github.com/colinhacks/zod). It's no longer used after updating ancestor dependency [expo](https://github.com/expo/expo/tree/HEAD/packages/expo). These dependencies need to be updated together.


Removes `zod`

Updates `expo` from 57.0.23 to 58.0.22
- [Release notes](https://github.com/expo/expo/releases)
- [Changelog](https://github.com/expo/expo/blob/expo@58.0.22/packages/expo/CHANGELOG.md)
- [Commits](https://github.com/expo/expo/commits/expo@58.0.22/packages/expo)

---
updated-dependencies:
- dependency-name: expo
  dependency-version: 58.0.22
  dependency-type: direct:production
- dependency-name: zod
  dependency-version:
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/multi-fe859e4869 branch from aa4d08e to 7d0625d Compare November 3, 2026 16:38
@dependabot @github

dependabot Bot commented on behalf of github Nov 3, 2026

Copy link
Copy Markdown
Contributor Author

Looks like these dependencies are up-to-date now, so this is no longer needed.

@dependabot dependabot Bot closed this Nov 3, 2026
@dependabot
dependabot Bot deleted the dependabot/npm_and_yarn/multi-fe859e4869 branch November 3, 2026 16:49
@lana-20

lana-20 commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

@dependabot rebase

@dependabot @github

dependabot Bot commented on behalf of github Nov 3, 2026

Copy link
Copy Markdown
Contributor Author

Looks like this PR is closed. If the branch still exists, you can re-open the PR and then use @dependabot rebase or @dependabot recreate. If the branch was deleted, Dependabot will create a new PR on the next scheduled run, or you can trigger an update from the Dependency graph page.

@lana-20 lana-20 mentioned this pull request Nov 3, 2026
lana-20 added a commit that referenced this pull request Nov 3, 2026
expo install --fix moved every Expo package to 58 together, with
React Native 0.88.1, React 19.3, react-native-webview 14.0.1 and the
slider 5.2.1, and added expo-status-bar's config plugin. Dependabot's
bump (#49) moved expo alone and left the nine modules on 57.

What SDK 58 changed here:

- withSceneLifecycle.js is gone. SDK 58's prebuild writes the
  AppDelegate this plugin produced — window and React Native's start
  left to the scene delegate — and generates SceneDelegate.swift with
  the scene manifest naming it. A prebuild without the plugin gave an
  identical AppDelegate.swift; the plugin's only difference was a
  manifest naming the base EXExpoAppSceneDelegate. CLAUDE.md says so.
- React Native 0.88 types refs by instance: ViewInstance for the drop
  zone, TextInputInstance for the OTP boxes and the password field,
  and a list footer is undefined rather than null.
- File.write() is async now; the Storage screen uses writeSync, so
  the count it shows is the one written.
- @expo/cli no longer depends on zod, so its override is dropped;
  glob and minimatch stay (@expo/cli still asks glob ^13).
- Release builds are minified by R8 by default.

Checked: tsc --noEmit; expo install --check; a clean prebuild for
both platforms. On devices, with Mobium's checks at main 6213f11:

- Android 15 emulator, the minified release: 20 of the 21 checks
  CLAUDE.md names pass first time — crashes, graybox, graybox-edges,
  graybox-hooks, audio and biometric among them, the modules R8 could
  have stripped. mobium-app.sh failed once, its first run after the
  install, on an empty ref for Back after the WebView screen, then
  passed four runs in four. Not compared against SDK 57.
- iOS 27.0 simulator (iPhone 18 Pro), Release: launches under SDK
  58's own SceneDelegate, the one iOS 27 requires; mobium-app, login,
  keyboard, web-type, gestures, clear-data, crashes, source, frames
  and otp pass. dialogs.sh fails at the paste prompt, and fails the
  same way on SDK 57's build from main, fresh installs both: on this
  simulator the seeded clipboard raises no prompt. Not this change.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant