chore(deps): Update NitroSQLite to 9.8.2 - #101437
NicolasBonet merged 14 commits into
Conversation
|
|
|
@MelvinBot please create an Expensify/App issue to track updating NitroSQLite from 9.6.0 to the latest upstream code, packaged in this PR as an unreleased 9.8.0 snapshot at Please include the main reasons for the update:
Answered by Codex, instructed by Chris. |
|
Created chore(deps): Update NitroSQLite from 9.6.0 to 9.8.0 and assigned it to The issue tracks the dependency update itself: the I also updated this PR's |
|
@ikevin127 Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
|
@MelvinBot can you please request review from @NicolasBonet 🙌🏼 |
|
Requested a review from Current reviewers on this PR: |
ec26355 to
719b37c
Compare
|
@ikevin127 could you please follow the steps in here: #96531 (Tests A, B and C)? 🙏 |
|
I've just noticed that i've unnecessarily bumped the peer dependency range for NitroModules in the last NitroSQLite release, i'm going to lower that again in I'll ping @ikevin127 once i've updated the PR! |
Reviewer Checklist
Screenshots/VideosAndroid: Nativescreen-20260929-204838-1790739961078.1.mp4iOS: Nativeios.mp4 |
I'll hold on reviewing until you give the green light 🙌 |
|
I think we need to append the steps outlined in here: #100531 for the QA testing, so they can check how this behaves @chrispader, @ikevin127 could you please attach the video to close this one? |
|
@chrispader Do we also plan to bump react-native-nitro-sqlite in Onyx repo too? |
|
@NicolasBonet I added the applicable QA steps from #100531: preserving existing files, checking PDF/image/video downloads, CSV export, digits-only filenames, and fresh installs. Native QA and the video requested from @ikevin127 are still pending, so I left this PR WIP and did not mark either as complete. Answered by Codex, instructed by Chris. |
@fabioh8010 yes, let's do that too. I'm planning a separate PR to update NitroSQLite to latest major release
|
|
@ikevin127 could you please help us with the remaining part? |
ikevin127
left a comment
There was a problem hiding this comment.
🟢 LGTM - Done, completed checklist - tests well
NicolasBonet
left a comment
There was a problem hiding this comment.
Feel free to merge afterwards.
Reviewer Checklist
|
|
Unblocking with my checklist, but it was done here: #101437 (comment) |
|
🚧 NicolasBonet has triggered a test Expensify/App build. You can view the workflow run here. |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, and Web. Happy testing! 🧪🧪
|
|
🚀 Deployed to staging by https://github.com/NicolasBonet in version: 9.5.0-0 🚀
|
|
Deploy Blocker #102728 was identified to be related to this PR. |
|
Chris's AI code gremlin checking in. 🤖 NitroSQLite 9.8.3 is published with the database connection-lifetime fix for deploy blocker #102728. The dependency-only follow-up PRs are ready for review: Both descriptions include the deploy blocker's test and QA steps. Manual native and staging QA remain pending. |
|
Deploy Blocker #102798 was identified to be related to this PR. |
|
🚀 Deployed to production by https://github.com/Julesssss in version: 9.5.0-5 🚀
Bundle Size Analysis (Sentry): |
NitroSQLite 9.6.0 still needs local fixes for rollback errors and iOS database storage. The published 9.8.2 release includes those fixes and works with NitroModules 0.37.1, which is now on main. This PR upgrades SQLite and removes both local SQLite patches; the NitroModules and NitroFetch updates are already on main. NewDot and the companion HybridApp PR opt into the upstream Application Support location in their respective Info.plist files.
@NicolasBonet
Explanation of Change
The published NitroSQLite 9.8.2 package replaces the temporary archive built from an upstream commit. The dependency now resolves from the package registry, so the vendored archive and its provenance note are removed.
The upstream batch executor preserves the original error when rollback also fails. Its per-database migration replaces the old OnyxDB-specific patch. NewDot and HybridApp each set
RNNitroSQLite_DatabaseLocationtoApplicationSupportin their host Info.plist, so NitroSQLite needs no local patch. The separate Nitro runtime PR is now on main. It upgraded NitroModules to 0.37.1 and NitroFetch to 1.6.2; this PR changes neither dependency.ios/Podfile.lockchanges only the RNNitroSQLite version and checksum. The companion HybridApp lockfile pins NitroSQLite 9.8.2 while retaining NitroModules 0.36.3 and NitroFetch 1.5.4.Fixed Issues
$ #101448
MOBILE-EXPENSIFY: https://github.com/Expensify/Mobile-Expensify/pull/14129
No separate approved proposal applies to this dependency update.
Tests
Manual device verification is pending.
Offline tests
QA Steps
Manual device verification is pending.
2024.pdf. Relaunch the app and verify it is still visible in Files.PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectionAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
No screenshots or videos are included because this dependency and plist change has no visible UI.