Skip to content

feat: upgrade expo example to SDK 56, React Native to 0.85.3#1196

Merged
jpudysz merged 1 commit into
mainfrom
feature/upgrade
May 27, 2026
Merged

feat: upgrade expo example to SDK 56, React Native to 0.85.3#1196
jpudysz merged 1 commit into
mainfrom
feature/upgrade

Conversation

@jpudysz
Copy link
Copy Markdown
Owner

@jpudysz jpudysz commented May 27, 2026

Summary

Summary by CodeRabbit

  • Bug Fixes

    • Fixed box shadow color rendering on web platforms
  • Chores

    • Updated React, React Native, and Expo SDK ecosystem dependencies to newer versions
    • Updated iOS build configuration settings for improved compatibility

Review Change Stack

@vercel
Copy link
Copy Markdown

vercel Bot commented May 27, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
react-native-unistyles-2.0 Ready Ready Preview, Comment May 27, 2026 8:22am
react-native-unistyles-docs Ready Ready Preview, Comment May 27, 2026 8:22am

Request Review

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 27, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 63a0c1fb-1151-4428-ae97-b0adb29bb30c

📥 Commits

Reviewing files that changed from the base of the PR and between b1a84d3 and f2d2800.

⛔ Files ignored due to path filters (2)
  • apps/example/ios/Podfile.lock is excluded by !**/*.lock
  • bun.lock is excluded by !**/*.lock
📒 Files selected for processing (7)
  • apps/example/ios/example.xcodeproj/project.pbxproj
  • apps/example/package.json
  • apps/expo-example/app.json
  • apps/expo-example/package.json
  • packages/unistyles/package.json
  • packages/unistyles/src/specs/StyleSheet/index.ts
  • packages/unistyles/src/web/convert/object/boxShadow.ts

Walkthrough

This PR upgrades ecosystem dependencies across the monorepo from React Native 0.83.x to 0.85.x, bumps Expo SDK from 55 to 56 in the example app, adds React Native legacy architecture removal flag to iOS build settings, updates the unistyles StyleSheet API to use a different absoluteFill reference, and adds color stringification to box shadow web rendering.

Changes

Monorepo dependency and platform configuration updates

Layer / File(s) Summary
Example app dependency updates
apps/example/package.json
React, React Native, Reanimated, and React Native tooling packages are bumped to newer 0.85.x versions.
Expo example ecosystem upgrade
apps/expo-example/app.json, apps/expo-example/package.json
Expo SDK upgrades from version 55 to 56, iOS deployment target bumped from 15.3 to 16.4, and Expo/React/React Native dependencies updated to match the newer toolchain.
Core library dependency updates
packages/unistyles/package.json
React, React Native, Reanimated, and normalize-colors versions are updated to align with the ecosystem upgrade.
iOS build configuration flags
apps/example/ios/example.xcodeproj/project.pbxproj
-DRCT_REMOVE_LEGACY_ARCH=1 compiler define added to OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS; SWIFT_ENABLE_EXPLICIT_MODULES set to NO in both Debug and Release configurations.

Core library API and implementation changes

Layer / File(s) Summary
StyleSheet absoluteFillObject mapping update
packages/unistyles/src/specs/StyleSheet/index.ts
UnistylesStyleSheet.absoluteFillObject type and runtime assignment changed to reference NativeStyleSheetType.absoluteFill instead of absoluteFillObject, altering what value is exposed through the public StyleSheet API.
Box shadow color stringification
packages/unistyles/src/web/convert/object/boxShadow.ts
createBoxShadowValue now coerces the color component to string using String() for consistent web rendering.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main changes: upgrading the Expo example to SDK 56 and React Native to 0.85.3, which are the primary updates reflected across multiple package.json files and configuration changes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/upgrade

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 ESLint

If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.

ESLint skipped: no ESLint configuration detected in root package.json. To enable, add eslint to devDependencies.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@jpudysz jpudysz merged commit d21fa2a into main May 27, 2026
5 checks passed
@jpudysz jpudysz deleted the feature/upgrade branch May 27, 2026 08:30
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.

1 participant