Conversation
|
@hoangzinh 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] |
|
I'm still having trouble running the app on Android native. |
trjExpensify
left a comment
There was a problem hiding this comment.
No qualms for the product, nice catch.
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppScreen.Recording.2025-09-06.at.21.43.15.android.movAndroid: mWeb ChromeScreen.Recording.2025-09-06.at.21.50.35.andoir.chrome.moviOS: HybridAppScreen.Recording.2025-09-07.at.13.42.34.ios.moviOS: mWeb SafariScreen.Recording.2025-09-06.at.21.55.06.ios.safari.movMacOS: Chrome / SafariScreen.Recording.2025-09-06.at.17.23.00.web.movMacOS: DesktopScreen.Recording.2025-09-06.at.17.37.07.desktop.mov |
|
@hoangzinh regarding this one
will you handle the Hybrid code? Is it after this PR? |
|
@bernhardoj I will try to make a Hybrid PR in meanwhile. I think those PRs should merge together. |
|
Got it. Thanks! |
hoangzinh
left a comment
There was a problem hiding this comment.
Can you also update type here
| ONYXKEYS.PRESERVED_USER_SESSION, | ||
| ONYXKEYS.HYBRID_APP, | ||
| ONYXKEYS.SHOULD_USE_STAGING_SERVER, | ||
| ONYXKEYS.IS_DEBUG_MODE_ENABLED, |
There was a problem hiding this comment.
We can only include ONYXKEYS.SHOULD_USE_STAGING_SERVER into KEYS_TO_PRESERVE list
ONYXKEYS.IS_DEBUG_MODE_ENABLED seems isn't kept after clear Onyx or signin/signout.
There was a problem hiding this comment.
Just tested, and the debug mode is persisted.
w.mp4
There was a problem hiding this comment.
Can you try to test when turn-on both Debug mode and "Use staging server"?
Screen.Recording.2025-09-04.at.22.28.23.mov
There was a problem hiding this comment.
Oh yeah, that's really weird. Don't you think it's more like a bug, no? Like, why should the debug mode be turned off only if the staging server is on?
There was a problem hiding this comment.
Oh, that's because of this
Lines 641 to 643 in 3a05f5b
If the staging server is previously on, after Onyx.clear, we re-set the shouldUseStagingServer using Onyx.set. Not sure why this is needed because we already put ACCOUNT in KEYS_TO_PRESERVE.
There was a problem hiding this comment.
@Julesssss, what are your thoughts on IS_DEBUG_MODE_ENABLED? It looks like we don't intend to keep this data when switching between OD-ND app, or sign in/out, or resetting Onyx data. Thus, I suggested we can remove it from KEYS_TO_PRESERVE list, but if you think we can leave them as the current implementation of this PR, I'm happy to keep them in the list. It's a troubleshooting config, thus I'm 50:50 on this.
There was a problem hiding this comment.
Good spot. So there does seem to be good reason for keeping the staging flag, presumably for testing (original issue).
Not sure why this is needed because we already put ACCOUNT in KEYS_TO_PRESERVE.
So do you think that makes the shouldUseStagingServer condition redundant?
But yeah, similar to the staging env config, I think we should keep IS_DEBUG_MODE_ENABLED to allow us to test/debug flows that include signout.
| ONYXKEYS.IS_SIDEBAR_LOADED, | ||
| ONYXKEYS.NETWORK, | ||
| ONYXKEYS.SHOULD_USE_STAGING_SERVER, | ||
| ONYXKEYS.IS_DEBUG_MODE_ENABLED, |
There was a problem hiding this comment.
Same here, we can remove ONYXKEYS.IS_DEBUG_MODE_ENABLED. We can add back when it's nesessary.
There was a problem hiding this comment.
Same as above, I think we should preserve this too.
| keysToPreserve.push(ONYXKEYS.DEVICE_ID); | ||
| keysToPreserve.push(ONYXKEYS.ACCOUNT); | ||
| keysToPreserve.push(ONYXKEYS.SHOULD_USE_STAGING_SERVER); | ||
| keysToPreserve.push(ONYXKEYS.IS_DEBUG_MODE_ENABLED); |
There was a problem hiding this comment.
Same here, we can remove ONYXKEYS.IS_DEBUG_MODE_ENABLED. We can add back when it's nesessary.
Should I update to this?
|
|
Yes, I think so. |
|
Done |
|
Hybrid PR is here https://github.com/Expensify/Mobile-Expensify/pull/13681 |
|
🚧 @Julesssss has triggered a test Expensify/App build. You can view the workflow run here. |
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, Desktop, and Web. Happy testing! 🧪🧪
|
|
Thanks for confirming, @Julesssss. I will try to complete PR checklist today. @bernhardoj, how is it going with Android build? |
|
@hoangzinh just tried cleaning up and it worked. Added the recording! |
|
🚀 Deployed to staging by https://github.com/Julesssss in version: 9.2.3-0 🚀
|
|
🚀 Deployed to staging by https://github.com/Julesssss in version: 9.2.5-0 🚀
|
|
🚀 Deployed to staging by https://github.com/Julesssss in version: 9.2.8-0 🚀
|
|
🚀 Deployed to production by https://github.com/francoisl in version: 9.2.8-4 🚀
|
Explanation of Change
Fixed Issues
$ #69133
PROPOSAL: #69133 (comment)
Tests
Same as QA Steps
Offline tests
Same as QA Steps
QA Steps
Prerequisite:
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectioncanBeMissingparam foruseOnyxtoggleReportand notonIconClick)src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
android.mp4
Android: mWeb Chrome
android.mweb.mp4
iOS: Native
ios.mp4
iOS: mWeb Safari
ios.mweb.mp4
MacOS: Chrome / Safari
web.mp4
MacOS: Desktop
desktop.mp4