-
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: check if localize should render #26217
fix: check if localize should render #26217
Conversation
@mananjadhav 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] |
@WoLewicki Is this complete by any chance? I don't see the checklist completed along with the screenshots. |
@WoLewicki can you complete the checklist please? For recordings at least web please |
OK should be done. |
Appreciated |
@mountiny I didn't understand. Are we testing the number of rerenders only for Web? |
You can also see the console logs in the metro, cant you. I think however, testing the functionality is not changed should be on all platforms and then the re-renders can be mainly on web |
I think the behavior (meaning no excessive rerenders) should be the same on all platforms. |
@WoLewicki Hey! i think this changes is breaking sending messages Screen.Recording.2023-09-14.at.10.55.48.mov |
Reviewer Checklist
Screenshots/VideosWebWithout changes: web-without.movWith changes: web-with.movMobile Web - ChromeWithout changes: android-web-without.movWith changes: android-web-with.movMobile Web - SafariDesktopWithout changes:desktop-without.movWith changes: desktop-with.movChange naming: change-name.moviOSAndroid |
For reducing re-renders - i can say that there were done a great job - and i see significant improvement (even with less console.log triggers). Just needs to fix potential issues with current changes |
@narefyev91 so the sending message is the only regression you have found? |
The issue with not sending message is global one. Changes are fully breaking some things like - edit message, apply emoji to already existing message, add attachments not working, delete message not working - but if you reload the page - everything will pop-up app. We do not render related pages when any change happened. And if fix will be executed for sending message firstly - it may already unblock all other related items automatically. For now broken any page on which we have composer with interactions - and on which we can send something, like message, change amount of cash and etc |
Yeah, I am investigating it and current approach does not make sense after some more consideration. Since |
Yup seems so |
Maybe we should consider transforming |
I think because we still trying work with both classes and functional components |
@narefyev91 did you spot any issues or have in mind something that can break when only changes in |
With localize i did not see any issue |
Lets just do localize for now and I agree that the context consideration might be because of us not having the functional components migration completed. then it might be easier |
Ok I merged the newest main and reverted the wrong changes. Could we test it one more time? There is also another optimization to be made that comes from the slack thread with |
WEB, Desktop, Mobile web - for now no issues - will test on native platforms now |
@mountiny not issues found from my side - all broken items now working as expected |
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.
LGTM!
🎀 👀 🎀 C+ reviewed
As a thing to consider in the future, maybe we could do the API call for personal details wrapped with |
Could you propose this in slack in newdot-performance? |
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.
Thank you very much for getting this over the finish line!
✋ 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: 1.3.71-0 🚀
|
@WoLewicki @mountiny Can you help us with QA steps to be followed? |
I think the steps provided in the description should be enough for manual testing
cc @mountiny since I am not too acknowledged with those flows. |
@kavimuru updated the QA section |
🚀 Deployed to production by https://github.com/thienlnam in version: 1.3.71-12 🚀
|
Details
Some performance improvements for when opening the personal details of the user in report.
Fixed Issues
$ #22996
PROPOSAL:
Tests
Compare it with main.
See that there are no
withLocalize
andwithCurrentUserPersonalDetails
rerenders if they are not needed.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 methodWaiting for Copy
label for a copy review on the original GH to get the correct copy.STYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)/** comment above it */
this
properly so there are no scoping issues (i.e. foronClick={this.submit}
the methodthis.submit
should be bound tothis
in the constructor)this
are necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);
ifthis.submit
is never passed to a component event handler likeonClick
)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)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
Web
rerenders.mp4
Mobile Web - Chrome
Mobile Web - Safari
Desktop
iOS
Android