Closed kavimuru closed 1 year ago
Triggered auto assignment to @alexpensify (Bug
), see https://stackoverflow.com/c/expensify/questions/14418 for more details.
Platforms
in OP are ✅)I'm catching up from being OOO on Friday and Monday, I'll try to test this one soon.
I've run out of time this week; I will test over the weekend to continue the process.
I was able to verify this is an issue but I see other mentions of black screens: https://github.com/Expensify/App/issues?q=is%3Aissue+black+screen+is%3Aopen. Tomorrow, I'm going to create a thread to identify if we want to fix a larger problem or each issue as they come up.
I'll start the thread soon.
I'm OOO today and will start the thread tomorrow.
Job added to Upwork: https://www.upwork.com/jobs/~0181761327897bfb51
Current assignee @alexpensify is eligible for the External assigner, not assigning anyone new.
Triggered auto assignment to Contributor-plus team member for initial proposal review - @aimane-chnaif (External
)
Triggered auto assignment to @chiragsalian (External
), see https://stackoverflow.com/c/expensify/questions/7972 for more details.
After thinking about this more, let's address this problem here (one at a time) instead of trying to fix every screen issue. I've assigned the External label.
Proposal
Based on the information provided in the GitHub issue, it appears that the problem is related to the app showing a black screen for a brief moment before opening the Plaid screen when users attempt to link their bank accounts. To address this issue, I propose the following solution:
Implement a loading screen that will be displayed while the app loads the Plaid component. Optimize the performance of the app to reduce the loading time required to display the Plaid screen. Implement a caching mechanism to improve the speed at which the app loads data from the server. Minimize the amount of data transferred between the server and the app to reduce the loading time. To achieve these goals, I would suggest the following technical changes:
Use the React Native Navigation library to implement a loading screen that will be displayed while the Plaid component loads. This will provide users with a visual indication that the app is working and reduce the perceived loading time. Use the React Native Performance API to identify areas of the app that can be optimized for performance, such as reducing the size of images or reducing the number of API calls made by the app. Implement a caching mechanism using the React Native Async Storage library. This will allow the app to store frequently accessed data locally, reducing the amount of data that needs to be fetched from the server. Implement data compression techniques, such as Gzip compression, to reduce the amount of data transferred between the server and the app. If my proposal is accepted, I will post it on Upwork as required and provide regular updates on my progress. Once the code is ready for review, I will create a fork of the Expensify/App GitHub repo, create a branch for my changes, and create a pull request to merge my changes into the main codebase. I will also provide screenshots and confirmation that I have tested the pull request on all platforms.
I have reviewed the Expensify Contributor Guidelines and understand the payment timelines and requirements. I am confident that I can deliver high-quality code that meets your requirements and I look forward to the opportunity to work with your team.
Adil Rehman Software Engineer
Looks like something related to react-navigation
may have been mentioned in this issue discussion.
As a reminder, please make sure that all proposals are not workarounds and that any and all attempt to fix the issue holistically have been made before proceeding with a solution. Proposals to change our DeprecatedCustomActions.js
files should not be accepted.
Feel free to drop a note in #expensify-open-source with any questions.
📣 @adilwahla! 📣 Hey, it seems we don’t have your contributor details yet! You'll only have to do this once, and this is how we'll hire you on Upwork. Please follow these steps:
Contributor details
Your Expensify account email: <REPLACE EMAIL HERE>
Upwork Profile Link: <REPLACE LINK HERE>
Proposal
Based on the information provided in the GitHub issue, it appears that the problem is related to the app showing a black screen for a brief moment before opening the Plaid screen when users attempt to link their bank accounts. To address this issue, I propose the following solution:
Implement a loading screen that will be displayed while the app loads the Plaid component. Optimize the performance of the app to reduce the loading time required to display the Plaid screen. Implement a caching mechanism to improve the speed at which the app loads data from the server. Minimize the amount of data transferred between the server and the app to reduce the loading time. To achieve these goals, I would suggest the following technical changes:
Use the React Native Navigation library to implement a loading screen that will be displayed while the Plaid component loads. This will provide users with a visual indication that the app is working and reduce the perceived loading time. Use the React Native Performance API to identify areas of the app that can be optimized for performance, such as reducing the size of images or reducing the number of API calls made by the app. Implement a caching mechanism using the React Native Async Storage library. This will allow the app to store frequently accessed data locally, reducing the amount of data that needs to be fetched from the server. Implement data compression techniques, such as Gzip compression, to reduce the amount of data transferred between the server and the app. If my proposal is accepted, I will post it on Upwork as required and provide regular updates on my progress. Once the code is ready for review, I will create a fork of the Expensify/App GitHub repo, create a branch for my changes, and create a pull request to merge my changes into the main codebase. I will also provide screenshots and confirmation that I have tested the pull request on all platforms.
I have reviewed the Expensify Contributor Guidelines and understand the payment timelines and requirements. I am confident that I can deliver high-quality code that meets your requirements and I look forward to the opportunity to work with your team.
Adil Rehman Software Engineer
Contributor details Your Expensify account email: adilwahla360@gmail.com Upwork Profile Link: https://www.upwork.com/freelancers/~0169b7cd0e58547220
⚠️ Missing/invalid email or upwork profile link. Please make sure you add both your Expensify email and Upwork profile link in the format specified.
@aimane-chnaif - when you get a chance, can you review this proposal? Thanks!
@alexpensify @chiragsalian @aimane-chnaif this issue was created 2 weeks ago. Are we close to approving a proposal? If not, what's blocking us from getting this issue assigned? Don't hesitate to create a thread in #expensify-open-source to align faster in real time. Thanks!
I have reviewed the Expensify Contributor Guidelines
@adilwahla please follow proposal template clearly stated in guideline
@dylanexpensify - this one is moving forward, but assigning if a BZ team member is needed to step in while I'm OOO.
Based on the information provided in the GitHub issue, the problem is related to the app showing a black screen for a brief moment before opening the Plaid screen when users attempt to link their bank accounts.
The root cause of this problem is the lack of a loading screen during the loading process of the Plaid component, as well as potential performance optimizations and data transfer inefficiencies.
To address this issue, I propose the following solution:
No alternative solutions were explored in this proposal.
To achieve these goals, I would suggest the following technical changes:
If my proposal is accepted, I will post it on Upwork as required and provide regular updates on my progress. Once the code is ready for review, I will create a fork of the Expensify/App GitHub repository, create a branch for my changes, and submit a pull request to merge my code into the main codebase. I will also provide screenshots and confirmation that I have tested the pull request on all platforms.
I have reviewed the Expensify Contributor Guidelines and understand the payment timelines and requirements. I am confident that I can deliver high-quality code that meets your requirements, and I look forward to the opportunity to work with your team.
Contributor details:
Your Expensify account email: adilwahla360@gmail.com Upwork Profile Link: Adil Rehman on Upwork
Adil Rehman Software Engineer
@aimane-chnaif let's get this reviewed today if we can now that it's in the correct format! 🙇♂️
📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸
@aimane-chnaif please give an update today or let us know if we should reassign this! 🙇♂️
@adilwahla please provide solution in more detail. Which file do you wanna put changes on? And pick up one solution you think is the best. General 4 approaches don't make sense to me.
@dylanexpensify sorry I thought I had provided feedback, but actually not 🙇♂️. Waiting for better proposals.
Triggered auto assignment to @joekaufmanexpensify (Bug
), see https://stackoverflow.com/c/expensify/questions/14418 for more details.
Platforms
in OP are ✅)I'm heading OOO tomorrow for about a week so adding another BZ member while I'm away to help keep the train moving! 🚂 Thanks @joekaufmanexpensify!!
@alexpensify @chiragsalian @joekaufmanexpensify @aimane-chnaif this issue is now 3 weeks old. There is one more week left before this issue breaks WAQ and will need to go internal. What needs to happen to get a PR in review this week? Please create a thread in #expensify-open-source to discuss. Thanks!
Upwork job price has been updated to $2000
@joekaufmanexpensify - I'm going to hold on the reassignment process since there has been some movement today. I have a reminder to open tomorrow.
@alexpensify I'm starting to get ready for my own OOO next week, so going to let you take this one back!
@chiragsalian and @aimane-chnaif - Joe shared some good feedback in this Slack thread - here. We need your feedback. Thanks!
We already fixed similar issue in onfido flow by showing fullscreen loading indicator - On going back from identity verification screen, screen shows black for a brief moment. So we can apply same approach to plaid flow.
I believe the black screen here is actually part of the 3rd party plaid flow screen (https://github.com/plaid/react-native-plaid-link-sdk) and is not due to logic within EApp.
Thank you for this feedback!
@alexpensify @chiragsalian @aimane-chnaif this issue is now 4 weeks old and preventing us from maintaining WAQ, can you:
Thanks!
Current assignee @aimane-chnaif is eligible for the Internal assigner, not assigning anyone new.
I've bumped @chiragsalian for feedback.
Yeah, i think the issue is because of the 3rd party plaid flow screen. If someone notices I'm mistaken, please don't hesitate to reopen this issue. I'm closing it for now.
If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Action Performed:
1.Open setting
Expected result:
Shouldn't show any other screen before redirect in plaid
Actual result:
Showing black screen then redirect in plaid
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:
Which of our officially supported platforms is this issue occurring on?
Version Number: 1.3.8.8 Reproducible in staging?: y Reproducible in production?: y 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 Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/43996225/235775165-a219c9b0-f9a8-478c-b6c7-05561e212077.mp4
https://user-images.githubusercontent.com/43996225/235775200-cb7aefbb-4744-4204-9160-7d094cae1af8.mp4
Expensify/Expensify Issue URL: Issue reported by: @jaydipramani Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1682570253279599
View all open jobs on GitHub
Upwork Automation - Do Not Edit