Skip to content
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

Tracker to follow up with react-native-web patches #32544

Closed
Beamanator opened this issue Dec 6, 2023 · 16 comments
Closed

Tracker to follow up with react-native-web patches #32544

Beamanator opened this issue Dec 6, 2023 · 16 comments
Assignees
Labels

Comments

@Beamanator
Copy link
Contributor

Beamanator commented Dec 6, 2023

Purpose of this issue is to regularly check on the upstream PR so we can ideally get rid of the patch-package fix we had to implement in App

Patches:

  1. patches/react-native-web+0.19.9+001+initial.patch & patches/react-native-web+0.19.9+002+fix-mvcp.patch
  2. patches/react-native-web+0.19.9+003+measureInWindow.patch
  3. patches/react-native-web+0.19.9+004+fix-pointer-events.patch
  4. patches/react-native-web+0.19.9+005+image-header-support.patch

We don't currently have an Expensify fork of react-native-web, we recently updated to v0.19.9 and we have the above patches in the patches folder.

cc @roryabraham , do you think it's worth tracking these patches & creating upstream PRs for all of them, so we can try to remove the patches eventually?

@roryabraham
Copy link
Contributor

@Beamanator Going to help fill this in as best as I can. At some point I also created a spreadsheet for a similar purpose

@roryabraham
Copy link
Contributor

do you think it's worth tracking these patches & creating upstream PRs for all of them, so we can try to remove the patches eventually?

In short, yes I think it's worth it

@Beamanator
Copy link
Contributor Author

@roryabraham oh nifty! I like the spreadsheet idea too - we coulddd just link to that spreadsheet from this issue, if that is better? 🤷

@Beamanator
Copy link
Contributor Author

And thanks for adding to the list... I wonder if we should just keep adding patches or if we know the RNW maintainer is planning to review those PRs eventually?

#27174 for example - we've been "Holding" on the Upstream PR for more than 2 months at this point

@roryabraham
Copy link
Contributor

Well if there's a specific PR and we're unsure of the status we can try to contact Meta and/or Necolas using discord. I want to be respectful of their time though, so I'm happy to reach out as long as:

  • there's an issue report with a minimal reproduction
  • we have an open PR to resolve the issue
  • they have made no recent comments on the issue or PR and have not previously made any comments to indicate when or why the PR may or may not be reviewed

So basically we can take it case-by-case but for a major dependency like react-native-web we should only rely on patches if we have a reasonable expectation that the patch or alternate solution will be merged upstream.

What we'd want to avoid is a scenario where we want a feature so we build it in a patch but don't try to get it merged upstream, or worse - the maintainer rejects an upstream solution and then we proceed with a patch anyways

@Beamanator
Copy link
Contributor Author

I like that as being some sort of standard process! So for the issue I mentioned above...

In this case, the patch would be super tiny, so I don't think it's a waste of time to at least get the fix in to our codebase, then keep waiting on maintainer to respond. What you think?

@roryabraham
Copy link
Contributor

Sure, as long as the PR that introduces the patch in E/App links to the upstream issue and PR

@Beamanator
Copy link
Contributor Author

Makes sense to me. I don't have a lot of time for this at the moment, but I still think the priority of all this is Monthly - so I'll get around to this eventually. What I'm thinking is:

  1. Recommend this (with slight improvements) as a formalized plan in Slack
  2. If we get agreement, write an SO
  3. Maybe make a GH issue template for this kind of tracker 🤷 (maybe not)
  4. Use new process to evaluate which PRs in this tracker to create as patches / which not to

@melvin-bot melvin-bot bot added the Overdue label Jan 14, 2024
@Beamanator
Copy link
Contributor Author

Not priority yet

@melvin-bot melvin-bot bot removed the Overdue label Jan 16, 2024
@melvin-bot melvin-bot bot added the Overdue label Feb 16, 2024
@Beamanator
Copy link
Contributor Author

Same

@melvin-bot melvin-bot bot removed the Overdue label Feb 19, 2024
@melvin-bot melvin-bot bot added the Overdue label Mar 25, 2024
@Beamanator
Copy link
Contributor Author

same

@melvin-bot melvin-bot bot removed the Overdue label Mar 25, 2024
@melvin-bot melvin-bot bot added the Overdue label Apr 25, 2024
@Beamanator
Copy link
Contributor Author

same

@melvin-bot melvin-bot bot removed the Overdue label Apr 26, 2024
@melvin-bot melvin-bot bot added the Overdue label May 27, 2024
@Beamanator
Copy link
Contributor Author

same

@melvin-bot melvin-bot bot removed the Overdue label May 29, 2024
@melvin-bot melvin-bot bot added the Overdue label Jul 1, 2024
@Beamanator
Copy link
Contributor Author

same

@melvin-bot melvin-bot bot removed the Overdue label Jul 1, 2024
@roryabraham
Copy link
Contributor

I somewhat recently added some simple enforcement that will help patches from being ignored during package upgrades: #45098

Given that this isn't likely to become more of a priority soon, and in all the current cases there isn't much we can do to speed things along, I'm going to close this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants