Conversation
📝 WalkthroughWalkthroughUpdated the Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 inconclusive)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@package.json`:
- Line 171: Update verification: confirm react-native-mmkv@~3.3.3 is safe to
merge by validating build compatibility for our RN 0.81.5 + Expo SDK 54 setup;
check the react-native-mmkv changelog/release notes for 3.2.x→3.3.x, run iOS pod
install and a full ios build (including prebuild if using Expo prebuild), run
Android gradle assemble/build, and apply any documented patches/workarounds if
pod install or native builds fail; reference the dependency line
"react-native-mmkv": "~3.3.3" when updating package.json or adding fixes and
ensure no runtime API breaks compared to 3.1.x in our usage.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 054f0ff2-0348-48b6-8e17-bedf05e53c03
⛔ Files ignored due to path filters (1)
yarn.lockis excluded by!**/yarn.lock,!**/*.lock
📒 Files selected for processing (1)
package.json
| "react-native-keyboard-controller": "1.18.5", | ||
| "react-native-logs": "~5.3.0", | ||
| "react-native-mmkv": "~3.1.0", | ||
| "react-native-mmkv": "~3.3.3", |
There was a problem hiding this comment.
🧩 Analysis chain
🌐 Web query:
Is react-native-mmkv 3.3.3 compatible with React Native 0.81.x and Expo SDK 54? Please include any documented breaking changes between react-native-mmkv 3.1.x and 3.3.x, especially around MMKV constructor options, encryptionKey behavior, and getString/set/delete/useMMKVBoolean APIs.
💡 Result:
No, react-native-mmkv 3.3.3 is not fully compatible with React Native 0.81.x and Expo SDK 54 out-of-the-box. While users have successfully used it with RN 0.81.x after applying patches or updates (e.g., CMake C++ standard fix in 3.3.1+), there are build issues on Android and iOS prebuild that require workarounds or specific versions like 3.3.1 or 3.3.3. For Expo SDK 54 (RN 0.81.4), 3.3.3 fixes a Codegen pod install error seen in 3.3.2. Documented breaking changes between 3.1.x and 3.3.x are minimal within minor releases; major changes were in 3.0.0 (requires RN >=0.74, new arch/TurboModules): - Buffer APIs: Uint8Array -> ArrayBuffer. - set/recrypt now properly throw on failure. No explicit breaking changes in constructor options, encryptionKey behavior, or getString/set/delete/useMMKVBoolean APIs between 3.1.x and 3.3.x. Encryption fixes (e.g., long keys) were in 3.0.0. Later V4 introduces encrypt/decrypt replacing recrypt, but not relevant here. Sources confirm usage with patches for RN 0.81/Expo 54, but recommend V4 for newer RN (0.82+) or checking official docs for exact compat.
Citations:
- 1: 0.81 react-native android build failed mrousavy/react-native-mmkv#849
- 2: https://github.com/mrousavy/react-native-mmkv/releases
- 3: https://www.npmjs.com/package/react-native-mmkv
- 4: MoreThanOneModuleRegistryCallsParserError: Module NativeMmkv iOS prebuild Pod install fails mrousavy/react-native-mmkv#896
- 5: feat: V3 🫴 mrousavy/react-native-mmkv#656
- 6: Build not compiling with MMKV 3.3.0 mrousavy/react-native-mmkv#865
- 7: https://github.com/mrousavy/react-native-mmkv/releases/tag/v3.0.0
- 8: https://github.com/mrousavy/react-native-mmkv/releases/tag/v3.1.0
- 9: encryption key mrousavy/react-native-mmkv#955
- 10:
getStringfails on reload after callingdeletewithencyptionKeyset in config mrousavy/react-native-mmkv#665
🏁 Script executed:
cat package.json | grep -E '"react-native"|"expo"' | head -20Repository: Resgrid/BigBoard
Length of output: 125
Confirm react-native-mmkv@~3.3.3 build compatibility before merge.
This version bump moves to 3.3.3 for React Native 0.81.5 + Expo SDK 54, a combination with documented Android/iOS build issues requiring patches or workarounds. While 3.3.3 fixes the pod install error from 3.3.2, review known build concerns and confirm your prebuild/native build setup handles this version. No API breaking changes exist between 3.1.x and 3.3.x.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@package.json` at line 171, Update verification: confirm
react-native-mmkv@~3.3.3 is safe to merge by validating build compatibility for
our RN 0.81.5 + Expo SDK 54 setup; check the react-native-mmkv changelog/release
notes for 3.2.x→3.3.x, run iOS pod install and a full ios build (including
prebuild if using Expo prebuild), run Android gradle assemble/build, and apply
any documented patches/workarounds if pod install or native builds fail;
reference the dependency line "react-native-mmkv": "~3.3.3" when updating
package.json or adding fixes and ensure no runtime API breaks compared to 3.1.x
in our usage.
|
Approve |
Summary by CodeRabbit