App
App copied to clipboard
[HOLD for payment 2024-02-07] [HOLD for payment 2024-02-07] [$500] Android - Wallet - App crashes on tapping enable wallet.
If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!
Version Number: 1.4.33 Reproducible in staging?: Y Reproducible in production?: N If this was caught during regression testing, add the test name, ID and link from TestRail: Email or phone of affected tester (no customers): Logs: https://stackoverflow.com/c/expensify/questions/4856 Expensify/Expensify Issue URL: Issue reported by: Applause - Internal Team Slack conversation:
Action Performed:
- Launch app
- Tap profile icon
- Tap Wallet
- Tap Enable Wallet
Expected Result:
App must not crash on tapping enable wallet
Actual Result:
App crashes on tapping enable wallet
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
- [x] Android: Native
- [ ] Android: mWeb Chrome
- [ ] iOS: Native
- [ ] iOS: mWeb Safari
- [ ] MacOS: Chrome / Safari
- [ ] MacOS: Desktop
Screenshots/Videos
Add any screenshot/video evidence
https://github.com/Expensify/App/assets/78819774/b41b112e-4839-4017-be33-2a547664470d
Upwork Automation - Do Not Edit
- Upwork Job URL: https://www.upwork.com/jobs/~0165d2a9876eb54d92
- Upwork Job ID: 1752165534277464064
- Last Price Increase: 2024-01-30
:wave: Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open `StagingDeployCash` deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:
- Identify the pull request that introduced this issue and revert it.
- Find someone who can quickly fix the issue.
- Fix the issue yourself.
Triggered auto assignment to @marcaaron (Engineering
), see https://stackoverflowteams.com/c/expensify/questions/9980/ for more details.
@lanitochka17 can you confirm that this only happens on Android?
Hmm seems like possibly some issue with Plaid. This is the crash:
https://console.firebase.google.com/u/0/project/expensify-chat/crashlytics/app/android:com.expensify.chat/issues/e9d92dfee0a1b8347102bfce26614cf7?time=last-seven-days&types=crash&versions=1.4.33-2%20(1001043302)&sessionEventKey=65B841D100750001772CBB1688FCE15D_1908126535333268522
Possibly related to https://github.com/plaid/react-native-plaid-link-sdk/issues/620
Going to try to bump the Plaid version and see if that helps.
It works locally for me with the bumped version. I have to roll out now though so if someone can raise the PR and test that would be great. This is what we need to update:
"react-native-plaid-link-sdk": "10.12.0"
Job added to Upwork: https://www.upwork.com/jobs/~0165d2a9876eb54d92
Triggered auto assignment to Contributor-plus team member for initial proposal review - @getusha (External
)
@marcaaron I'm happy to take this and raise the PR
Proposal
Please re-state the problem that we are trying to solve in this issue.
App crashes on tapping enable wallet
What is the root cause of that problem?
We have outdated Plaid version. This is potentially related to this Plaid issue and they already roll out a new version to fix it, but we didn't update the version in our repo.
What changes do you think we should make in order to solve the problem?
We need to update the react-native-plaid-link-sdk
version to 10.12.0
as specified here
What alternative solutions did you explore? (Optional)
If there's no reason to avoid 11.x Plaid lib version, we can also upgrade to v11.4.0
Works for me, though regarding this bit specifically:
What alternative solutions did you explore? (Optional) If there's no reason to avoid 11.x Plaid lib version, we can also upgrade to v11.4.0
The potential risk of updating to a new major version would be that there could be breaking changes that we'd need to work out. In the short/medium, yes we should absolutely update to 11.4, but for this blocker it might be safer to upgrade to 10.12. (Just my 2¢)
Agree with @francoisl
Sorry I thought someone would have fixed this by now. But since not I'll raise the PR myself.
Current assignee @getusha is eligible for the Internal assigner, not assigning anyone new.
Proposal
Please re-state the problem that we are trying to solve in this issue.
Android app crashes on plaid flow on release build
What is the root cause of that problem?
This is regression from #34218 which enabled proguard in release build
What changes do you think we should make in order to solve the problem?
We should add below lines to proguard-rules.pro
file:
# Keep generic signature of Call, Response (R8 full mode strips signatures from non-kept items).
-keep,allowobfuscation,allowshrinking interface retrofit2.Call
-keep,allowobfuscation,allowshrinking class retrofit2.Response
# With R8 full mode generic signatures are stripped for classes that are not
# kept. Suspend functions are wrapped in continuations where the type argument
# is used.
-keep,allowobfuscation,allowshrinking class kotlin.coroutines.Continuation
cc @mountiny @Julesssss @shubham1206agra
build is running here to verify fix
Assigning @mkhutornyi since they have a PR ready that we already tested - https://github.com/Expensify/App/pull/35440
Reviewing
label has been removed, please complete the "BugZero Checklist".
The solution for this issue has been :rocket: deployed to production :rocket: in version 1.4.33-5 and is now subject to a 7-day regression period :calendar:. Here is the list of pull requests that resolve this issue:
- https://github.com/Expensify/App/pull/35440
If no regressions arise, payment will be issued on 2024-02-07. :confetti_ball:
For reference, here are some details about the assignees on this issue:
- @getusha requires payment (Needs manual offer from BZ)
- @mkhutornyi requires payment (Needs manual offer from BZ)
⚠️ Looks like this issue was linked to a Deploy Blocker here
If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results.
If a regression has occurred and you are the assigned CM follow the instructions here.
If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future.
The solution for this issue has been :rocket: deployed to production :rocket: in version 1.4.34-1 and is now subject to a 7-day regression period :calendar:. Here is the list of pull requests that resolve this issue:
- https://github.com/Expensify/App/pull/35440
If no regressions arise, payment will be issued on 2024-02-07. :confetti_ball:
For reference, here are some details about the assignees on this issue:
- @getusha requires payment (Needs manual offer from BZ)
- @mkhutornyi requires payment (Needs manual offer from BZ)
Issue is ready for payment but no BZ is assigned. @sakluger you are the lucky winner! Please verify the payment summary looks correct and complete the checklist. Thanks!
Payment Summary
- ROLE: @getusha paid $500 via Upwork (https://www.upwork.com/nx/wm/offer/100809395)
- ROLE: @mkhutornyi paid $500 via Upwork (https://www.upwork.com/nx/wm/offer/100809408)
BugZero Checklist (@sakluger)
- [x] I have verified the correct assignees and roles are listed above and updated the neccesary manual offers
- [x] I have verified that there are no duplicate or incorrect contracts on Upwork for this job (https://www.upwork.com/ab/applicants/1752165534277464064/hired)
- [ ] I have paid out the Upwork contracts or cancelled the ones that are incorrect
- [ ] I have verified the payment summary above is correct
@getusha @mkhutornyi I sent offers to both of you via Upwork.
@sakluger not able to accept the offer
Weird, it says I withdrew the offer. Sorry about that, I sent you a new one @getusha.
@getusha please let me know once you've accepted the offer, thanks 🙇
@sakluger accepted thank you! :)
Thanks! All paid 🙇
@sakluger I haven't received payment. Can you please check?