-
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
[HOLD for payment 2023-07-21] [$1000] Fix upstream ESLint bug #22459
Comments
Job added to Upwork: https://www.upwork.com/jobs/~01e054af762caa3272 |
Triggered auto assignment to @tjferriss ( |
Bug0 Triage Checklist (Main S/O)
|
Triggered auto assignment to @alexpensify ( |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @allroundexperts ( |
Not sure why we got both @tjferriss and @alexpensify, so I'm going to unassign @alexpensify since he was assigned second |
@roryabraham It seems like there is a fix already in progress in upstream repository. |
According to this comment, that fix will probably come with v9.0.0 |
📣 @HLEDYA! 📣
|
Contributor details |
✅ Contributor details stored successfully. Thank you for contributing to Expensify! |
ProposalPlease re-state the problem that we are trying to solve in this issue.An ESLint bug about defining more than one What is the root cause of that problem?Here only Lines 19 to 42 in 60f4817
To enable ESlint to check TouchableOpacity, you need to move it to the bottom. ScreenRecordExpensify.mp4What changes do you think we should make in order to solve the problem?All the separate 'no-restricted-imports': [
'error',
{
paths: [
{
name: 'react-native',
importNames: ['useWindowDimensions', 'StatusBar', 'TouchableOpacity', 'TouchableWithoutFeedback', 'TouchableNativeFeedback', 'TouchableHighlight'],
message: `If you're using following components from react native:\n
Touchable* => please use PressableWithFeedback and/or PressableWithoutFeedback from src/components/Pressable instead\n
StatusBar => please use StatusBar from src/libs/StatusBar instead\n
useWindowDimensions => please use useWindowDimensions from src/hooks/useWindowDimensions instead
`,
}
],
},
], What alternative solutions did you explore? (Optional)None |
ProposalPlease re-state the problem that we are trying to solve in this issue.Fix upstream ESLint bug What is the root cause of that problem?I've gone through the code of the rule from What changes do you think we should make in order to solve the problem?Maybe add a new rule inside I have written a rule to fix this, which seems working fine. What alternative solutions did you explore? (Optional)NA |
@allroundexperts imo eslint/eslint#16196 is kind of yucky since it introduces an "allowlist" approach where only certain imports are explicitly allowed, instead of a "blocklist" approach where only certain imports are explicitly disallowed. What do you think? |
ProposalPlease re-state the problem that we are trying to solve in this issue.Not all restricted What is the root cause of that problem?An issue with ESLint concerning the no-restricted-imports rule. When more than one What changes do you think we should make in order to solve the problem?All distinct This is a workaround, but since ESlint team is working on the fix in the upstream repository I believe it isn't worth the effort to fix eslint rule 'no-restricted-imports': [
'error',
{
paths: [
{
name: 'react-native',
importNames: ['useWindowDimensions', 'TouchableOpacity', 'TouchableWithoutFeedback', 'TouchableNativeFeedback', 'TouchableHighlight', 'StatusBar'],
message: [
"For 'useWindowDimensions', please use 'src/hooks/useWindowDimensions' instead.",
"For 'TouchableOpacity', 'TouchableWithoutFeedback', 'TouchableNativeFeedback', 'TouchableHighlight', please use 'PressableWithFeedback' and/or 'PressableWithoutFeedback' from 'src/components/Pressable' instead.",
"For 'StatusBar', please use 'src/libs/StatusBar' instead.",
].join('\n'),
},
],
},
], What alternative solutions did you explore? (Optional)None |
Ok, since @HLEDYA proposed prettymuch the same fix as @blazejkustra and did so first, I'm going to assign this job to @HLEDYA to implement the workaround in our eslint config |
📣 @allroundexperts 🎉 An offer has been automatically sent to your Upwork account for the Reviewer role 🎉 Thanks for contributing to the Expensify app! |
📣 @HLEDYA You have been assigned to this job! |
The PR is submitted and under review. |
🎯 ⚡️ Woah @allroundexperts / @HLEDYA, great job pushing this forwards! ⚡️ The pull request got merged within 3 working days of assignment, so this job is eligible for a 50% #urgency bonus 🎉
On to the next one 🚀 |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.3.40-5 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2023-07-21. 🎊 After the hold period is over and BZ checklist items are completed, please complete any of the applicable payments for this issue, and check them off once done.
As a reminder, here are the bonuses/penalties that should be applied for any External issue:
|
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
|
Upworks offers sent to @allroundexperts and @HLEDYA. This job is eligible for a 50% #urgency bonus. |
Hi @tjferriss! |
Checklist is not needed here since this was a upstream bug. |
Payment to @HLEDYA tomorrow assuming no regression. |
Hi @tjferriss, afaik there is none. |
@tjferriss this is ready to pay |
Paid! |
Requested $1500 on the App. |
I received the payment, thank you all. |
@tjferriss Can you please summarize the appropriate individual payments for all parties involved in this issue? This is holding up @allroundexperts NewDot payments. More information on this compliance process in Slack. |
Updated payment comment #22459 (comment) |
Reviewed details for @allroundexperts . These details are accurate based on summary from Business Reviewer and are now approved for payment in NewDot. |
If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Problem
We are affected by this upstream bug in ESLint: eslint/eslint#15261
Solution
Fix it!
View all open jobs on GitHub
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: