Closed janicduplessis closed 1 week ago
@parasharrajat 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]
:test_tube::test_tube: Use the links below to test this adhoc build on Android, iOS, Desktop, and Web. Happy testing! :test_tube::test_tube: | Android :robot: | iOS :apple: |
---|---|---|
https://ad-hoc-expensify-cash.s3.amazonaws.com/android/41644/index.html | https://ad-hoc-expensify-cash.s3.amazonaws.com/ios/41644/index.html | |
Desktop :computer: | Web :spider_web: | |
https://ad-hoc-expensify-cash.s3.amazonaws.com/desktop/41644/NewExpensify.dmg | https://41644.pr-testing.expensify.com | |
:eyes: View the workflow run that generated this build :eyes:
@parasharrajat can we get an ETA on the review for this?
Had to merge main to get this fix, but that's on staging already. This tests well and makes sense
### Fixed Issues
section aboveTests
sectionQA steps
sectiontoggleReport
and not onIconClick
).myBool && <MyComponent />
.src/languages/*
files and using the translation methodSTYLE.md
) were followedAvatar
, I verified the components using Avatar
have been tested & I retested again)/** comment above it */
this
properly so there are no scoping issues (i.e. for onClick={this.submit}
the method this.submit
should be bound to this
in the constructor)this
are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this);
if this.submit
is never passed to a component event handler like onClick
)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG
)Avatar
is modified, I verified that Avatar
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 the Test
steps.🚀 Deployed to production by https://github.com/marcaaron in version: 1.4.70-5 🚀
platform | result |
---|---|
🤖 android 🤖 | success ✅ |
🖥 desktop 🖥 | success ✅ |
🍎 iOS 🍎 | success ✅ |
🕸 web 🕸 | success ✅ |
Details
We previously only checked for optimistic actions at the start of the chat, but they can actually be anywhere. This makes sure that we do not consider them when building the continuous action chain since the backend does not know of them and previousReportActionID will be wrong.
If the result of
getContinuousReportActionChain
is wrong it will cause the same reportActionID to be sent toGetOlderActions
and cause this loading loop.Before
We incorrectly detect a gap in the actions list and return only the first action. Because of this we never detect that we are at the end of the chat and stop calling
GetOlderActions
.The first array is
sortedAllReportActions
and the 2nd isreportActions
which is the result of callinggetContinuousReportActionChain
.After
We properly skip over the optimistic action and return the full chat. This causes
GetOlderActions
to stop being called since we have the CREATED action.Fixed Issues
$ https://github.com/Expensify/App/issues/41573 PROPOSAL: https://github.com/Expensify/App/issues/41573#issuecomment-2094317349
Tests
GetOlderActions
is no longer called in a loop after this fixOffline tests
QA Steps
GetOlderActions
is no longer called in a loop after this fixPR 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
![image](https://github.com/Expensify/App/assets/2677334/15e08416-3d55-42e8-b64f-8d9555af5be9)iOS: mWeb Safari
MacOS: Chrome / Safari
MacOS: Desktop