feat: upgrade CES templates to Expo SDK 57#616
Conversation
There was a problem hiding this comment.
Pull request overview
This PR upgrades the generated Create Expo Stack (CES) templates (and the CLI’s own Expo dependency) to align with Expo SDK 57 / React Native 0.86, including updating Expo-managed package ranges, removing now-redundant New Architecture config, and adjusting prebuild guidance to match SDK 57 behavior.
Changes:
- Bump Expo dependency versions to SDK 57 across the repo and CLI.
- Update generated template dependencies to SDK 57-compatible Expo + Software Mansion versions (incl. Expo Router 57).
- Remove generated
newArchEnabledconfig and update printed prebuild instructions for SDK 57’s default clean behavior.
Reviewed changes
Copilot reviewed 6 out of 7 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| package.json | Bumps repo-level Expo dependency to ~57.0.4. |
| cli/package.json | Bumps CLI’s Expo dependency to ^57.0.4. |
| cli/src/utilities/printOutput.ts | Updates printed prebuild guidance for SDK 57. |
| cli/src/templates/base/package.json.ejs | Updates generated template dependency versions to SDK 57 / RN 0.86 ranges. |
| cli/src/templates/base/app.json.ejs | Removes generated newArchEnabled config from template output. |
| .changeset/expo-sdk-57-upgrade.md | Adds a changeset documenting the SDK 57 upgrade and related template/CLI changes. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@danstepanov It's ready. I generated some test apps and everything looks good. PS I noticed the EAS install-condition fix in cli/src/utilities/printOutput.ts is unrelated to the SDK 57 upgrade. It fixes an older inverted condition that caused normal EAS output to repeat the package-install step. |
|
@DavidJGrimsley Expo SDK should probably live in |
Summary
Files
.changeset/expo-sdk-57-upgrade.md- records a paired minor release forcreate-expo-stackandrn-newwith the SDK 57 upgrade notesbun.lockb- refreshes the workspace lockfile for the updated Expo dependency graphcli/package.json- aligns the CLI package's Expo dependency with SDK 57cli/src/templates/base/app.json.ejs- stops generatingnewArchEnabled; SDK 55+ always uses the New Architecture, so the setting is redundantcli/src/templates/base/package.json.ejs- updates generated app dependencies to the Expo SDK 57 / React Native 0.86 compatible versionscli/src/utilities/printOutput.ts- uses the new clean-by-defaultexpo prebuildcommand and removes redundant install instructions from normal EAS outputpackage.json- aligns the monorepo root Expo dependency with SDK 57www/demo/steps/printOutput.js- keeps the website CLI demo's prebuild instructions consistent with the real CLIVerification
bun run build:clibun run snapshot-updatebun run testexpo install --check,expo-doctor, andtsc --noEmitexpo install --check,expo-doctor, andtsc --noEmit