-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix: VisionCamera session is not deinitialized/recycled when screen gets unmounted on native-stack
#49936
Fix: VisionCamera session is not deinitialized/recycled when screen gets unmounted on native-stack
#49936
Conversation
@mjasikowski 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 can take this review, (c+ on #37891 where this is orignally found) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@chrispader can you please create an issue in Expensify and link it here that will track removing these patches once we add support upstream? We can then make it monthly and make sure this gets done over time
This comment has been minimized.
This comment has been minimized.
@chrispader it seems like the ios build failed in the vision camera step https://github.com/Expensify/App/actions/runs/11125757985 |
Reviewer Checklist
Screenshots/VideosAndroid: NativeWhatsApp.Video.2024-10-02.at.10.19.10.PM.mp4Android: mWeb ChromeWhatsApp.Video.2024-10-02.at.10.30.17.PM.mp4iOS: Native![Uploading 372942263...] trim.10425D8E-0197-4CD8-946E-971DCE7B1A8B.MOViOS: mWeb SafariScreenRecording_10-02-2024.21-47-11_1.movMacOS: Chrome / SafariMacOS: Desktop |
@mountiny not sure why the iOS build fails, the throwing line is not changed by the patch, but i just re-applied the patch and removed some unused code. Could you please trigger another ad-hoc build? |
I tried to build locally with new commits, it still fails @chrispader |
…nted on `native-stack`
@chrispader running a new build. Can you check this out, please? https://github.com/Expensify/App/actions/runs/11143292660 |
🧪🧪 Use the links below to test this adhoc build on Android, iOS, Desktop, and Web. Happy testing! 🧪🧪
|
4c25476
to
00944c0
Compare
@mountiny @ishpaul777 just updated the patches. Now it should work! |
🧪🧪 Use the links below to test this adhoc build on Android, iOS, Desktop, and Web. Happy testing! 🧪🧪 |
@mountiny Ready for your review! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @ishpaul777 @chrispader !
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
🚀 Deployed to staging by https://github.com/mountiny in version: 9.0.45-1 🚀
|
🚀 Deployed to production by https://github.com/thienlnam in version: 9.0.45-4 🚀
|
@mountiny @ishpaul777 @chiragsalian
Details
Fixes an issue with
[email protected]
where theCameraSession
doesn't get de-initialized and/or recycled, when the screen gets popped/unmounted from the Navigation stack in@react-navigation/native-stack
.Note
This PR is needed in #37891
Since the fixing patch is based on another patch that we introduced in #45289, we can't (yet) create an upstream issue for this.
I raised this issue Margelo-internally so we can fix this once
react-native-vision-camera
is fully migrated to the New Architecture.We should also think about updating
react-native-vision-camera
to the latest (stable) version, because there are some new changes related to New Arch support.Fixed Issues
$ #49988
$ #37891
PROPOSAL: #37891 (comment)
Tests
Offline tests
QA Steps
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)myBool && <MyComponent />
.src/languages/*
files and using the translation methodSTYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)Design
label and/or tagged@Expensify/design
so the design team can review the changes.ScrollView
component to make it scrollable when more elements are added to the page.main
branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTest
steps.Screenshots/Videos
Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari
MacOS: Desktop