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

[HOLD #333755] [$500] [MEDIUM] Distance: Create a fork for react-beautiful-dnd and remove patch #28797

Closed
hayata-suenaga opened this issue Oct 4, 2023 · 62 comments
Assignees
Labels
Distance Wave5-free-submitters External Added to denote the issue can be worked on by a contributor Monthly KSv2

Comments

@hayata-suenaga
Copy link
Contributor

hayata-suenaga commented Oct 4, 2023

To fix some bugs found in react-beautiful-dnd, we created a patch file.

There was a discussion on whether we should consider creating a fork for better maintainability.

There is a strong argument that a fork should be created instead of leaving the patch file. Create a fork.

cc: @kosmydel @fabioh8010 @blazejkustra

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01be5681d4b0e2511a
  • Upwork Job ID: 1710111278084698112
  • Last Price Increase: 2023-10-16
@fabioh8010
Copy link
Contributor

FYI I will be on vacations starting tomorrow for the next two weeks and will return on Oct 23, but I will leave my thoughts here.

First of all, patches are intended to be temporary fixes until you have a newer release of the library you are patching with the proper fix. In this case, we face the first problem here: The authors of the library made it clear that they won't be addressing fixes / PRs unless is a security issue.

This library continues to be relied upon heavily by Atlassian products, but we are focused on other priorities right now and have no current plans for further feature development or improvements.

It will continue to be here on GitHub and we will still make critical updates (e.g. security fixes, if any) as required, but will not be actively monitoring or replying to issues and pull requests.

We recommend that you don’t raise issues or pull requests, as they will not be reviewed or actioned until further notice.

So we can assume that this patch file has a high probability of staying here forever in our repo if we continue to use this library.

Then the second problem comes, that is simply hard to make changes and manage patch files. It's difficult to understand why they are there and what they are fixing exactly. Currently we have means to separate patches fixes by using different files (e.g. the react-native patch files we have), but they need extra careful when managing and creating new ones, which increases complexity.

I understand that managing a separate fork comes with an overhead to Expensify, and I'm totally fine when you are dealing with temporary situations, but this one is different by the reasons I mentioned first.

@hayata-suenaga hayata-suenaga added the External Added to denote the issue can be worked on by a contributor label Oct 6, 2023
@melvin-bot melvin-bot bot changed the title [Clean UP] Consider if a fork should be created for react-beautiful-dnd [$500] [Clean UP] Consider if a fork should be created for react-beautiful-dnd Oct 6, 2023
@melvin-bot
Copy link

melvin-bot bot commented Oct 6, 2023

Job added to Upwork: https://www.upwork.com/jobs/~01be5681d4b0e2511a

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Oct 6, 2023
@melvin-bot
Copy link

melvin-bot bot commented Oct 6, 2023

Triggered auto assignment to Contributor-plus team member for initial proposal review - @narefyev91 (External)

@melvin-bot melvin-bot bot removed the Weekly KSv2 label Oct 6, 2023
@hayata-suenaga hayata-suenaga changed the title [$500] [Clean UP] Consider if a fork should be created for react-beautiful-dnd Create a fork for react-beautiful-dnd and remove patch Oct 6, 2023
@hayata-suenaga
Copy link
Contributor Author

hayata-suenaga commented Oct 6, 2023

@DylanDylann
Copy link
Contributor

Proposal

Please re-state the problem that we are trying to solve in this issue.

Create a fork for react-beautiful-dnd and remove patch

What is the root cause of that problem?

It is a improvement

What changes do you think we should make in order to solve the problem?

  1. We need to apply all changes in the patch file to fork repository
  2. Remove the patch of this lib on patch file
  3. Add the fork to package.json
  4. npm install to load this lib
  5. Test again to make sure it works well

@melvin-bot melvin-bot bot added the Overdue label Oct 9, 2023
@melvin-bot
Copy link

melvin-bot bot commented Oct 9, 2023

@narefyev91, @hayata-suenaga Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@hayata-suenaga
Copy link
Contributor Author

@melvin-bot melvin-bot bot removed the Overdue label Oct 10, 2023
@trjExpensify
Copy link
Contributor

@hayata-suenaga this issue has no status in the wave5 project. Should it be CRITICAL, HIGH, MEDIUM or LOW? Thanks!

@melvin-bot melvin-bot bot added the Overdue label Oct 12, 2023
@melvin-bot
Copy link

melvin-bot bot commented Oct 13, 2023

@narefyev91, @hayata-suenaga Whoops! This issue is 2 days overdue. Let's get this updated quick!

@hayata-suenaga
Copy link
Contributor Author

don't know why the title wasn't updated to put the price. updating the title

@melvin-bot melvin-bot bot removed the Overdue label Oct 16, 2023
@hayata-suenaga hayata-suenaga changed the title Create a fork for react-beautiful-dnd and remove patch [$500] Create a fork for react-beautiful-dnd and remove patch Oct 16, 2023
@melvin-bot
Copy link

melvin-bot bot commented Oct 16, 2023

⚠️ This issue has had its price increased by 4x or more. Please review the issue and ensure the price is correct.

@melvin-bot
Copy link

melvin-bot bot commented Oct 16, 2023

Upwork job price has been updated to $500

@nebiyuelias1
Copy link

Proposal

Please re-state the problem that we are trying to solve in this issue.

We're using a package called react-beautiful-dnd that is no longer being maintained. To fix problems, we've created a patch and now it's decided to maintain the package ourselves. Therefore, we've forked the repo.

What is the root cause of that problem?

The package is no longer being maintained. It says on their page:

This library continues to be relied upon heavily by Atlassian products, but we are focused on other priorities right now and have no current plans for further feature development or improvements.

It will continue to be here on GitHub and we will still make critical updates (e.g. security fixes, if any) as required, but will not be actively monitoring or replying to issues and pull requests.

We recommend that you don’t raise issues or pull requests, as they will not be reviewed or actioned until further notice.

What changes do you think we should make in order to solve the problem?

We need to apply the patch to our forked repo. We can apply the .patch file using the git apply command:

git apply react-beautiful-dnd+13.1.1.patch

We can then create a pr to the forked repo. After the pr is merged we can use the forked repo in our Expensify project.

What alternative solutions did you explore? (Optional)

@neonbhai
Copy link
Contributor

neonbhai commented Oct 16, 2023

Proposal

Please re-state the problem that we are trying to solve in this issue.

The react-beautiful-dnd library is not maintained. Meaning we will have a permanent patch file in the repo. We need to move this patch to a forked repo.

What is the root cause of that problem?

Feature Request.

What changes do you think we should make in order to solve the problem?

Here are the steps:

We need to:

  1. Have an official Expensify fork of react-beautiful-dnd.
  2. I will be submitting a PR to the Expensify fork, applying the changes in the patch file;
  3. When the patch file PR is accepted, I will be submitting a PR our main repo which will:

@hungvu193
Copy link
Contributor

Proposal

Please re-state the problem that we are trying to solve in this issue.

Using our own fork of react-beatiful-dnd and remove the current patch.

What is the root cause of that problem?

react-beatiful-dnd is not maintained for a while and we should use our own fork instead of using the patch.

What changes do you think we should make in order to solve the problem?

  • Apply the current patch react-beautiful-dnd+13.1.1.patch to our fork here (https://github.com/Expensify/react-beautiful-dnd) and create a PR.
  • Remove the current patch file react-beautiful-dnd+13.1.1.patch
  • Wait for the PR in our fork to merge then update our package json of Expensify app to use our own fork.

What alternative solutions did you explore? (Optional)

N/A

@DylanDylann
Copy link
Contributor

@hayata-suenaga Any update here?

@hayata-suenaga
Copy link
Contributor Author

might have time to work on this this month

@DylanDylann
Copy link
Contributor

@hayata-suenaga Any update here?

@hayata-suenaga
Copy link
Contributor Author

sorry this GH ticket has the least priority in my backlog

@melvin-bot melvin-bot bot added the Overdue label Apr 29, 2024
@hayata-suenaga
Copy link
Contributor Author

same as above 🙇

@melvin-bot melvin-bot bot removed the Overdue label Apr 29, 2024
@melvin-bot melvin-bot bot added the Overdue label May 31, 2024
@hayata-suenaga
Copy link
Contributor Author

not a high priority issue now. will come back to this when I have time

@melvin-bot melvin-bot bot removed the Overdue label Jun 5, 2024
@melvin-bot melvin-bot bot added the Overdue label Jul 8, 2024
@hayata-suenaga
Copy link
Contributor Author

will come back to this when I have time 🙇

@DylanDylann
Copy link
Contributor

@rafecolton Any update here?

@rafecolton
Copy link
Member

Sorry I'm not involved in this particular issue, I just removed Hayata's assignment. Please ask in Slack.

@trjExpensify
Copy link
Contributor

@DylanDylann what exactly needs to be done here? I can see we have the fork of this library, what are we waiting on?

@DylanDylann
Copy link
Contributor

Waiting for @hayata-suenaga to fix this problem #28797 (comment)

@DylanDylann
Copy link
Contributor

@hayata-suenaga Could you help to give an ETA on this issue? Or should we close this issue?

cc @trjExpensify

@trjExpensify
Copy link
Contributor

@DylanDylann, Hayata is no longer at Expensify. I think we close it for focus and circle back if we have a need for it.

@DylanDylann
Copy link
Contributor

@trjExpensify Yes

@trjExpensify
Copy link
Contributor

Cool, done.

@trjExpensify trjExpensify closed this as not planned Won't fix, can't repro, duplicate, stale Oct 1, 2024
@github-project-automation github-project-automation bot moved this from Polish to Done in [#whatsnext] #wave-collect Oct 1, 2024
@DylanDylann
Copy link
Contributor

@trjExpensify In this issue, I created two PRs and one of them was merged

As mentioned on Slack, the contributor should get fully paid because I am hired and did the work

I am happy to hear your though. Thanks

@DylanDylann
Copy link
Contributor

DylanDylann commented Oct 1, 2024

It has been almost a year since I started working on this issue

@trjExpensify
Copy link
Contributor

Oh sorry, I thought you were settled on that. Cool, sent you an offer for $500 per the issue title.

@DylanDylann
Copy link
Contributor

@trjExpensify Thank you! I accepted the offer

@trjExpensify
Copy link
Contributor

Paid!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Distance Wave5-free-submitters External Added to denote the issue can be worked on by a contributor Monthly KSv2
Projects
No open projects
Development

No branches or pull requests