Hire someone to merge pull requests #10135
Replies: 1 comment
-
Merging pull requests requires contributors having reviewed and approved them. This is the bottleneck, not having one person hired to press the green "Merge" button. Reviewing pull requests involves testing the change, reviewing the code, assessing whether it's the right solution for the problem, whether the API is the most user-friendly it can be, what the impact will be on other features and workflows, etc. In some cases, it can take significantly longer than writing the original commit took, which is why things take time to be merged. See details in the documented Pull Request review process. Hiring more developers who can help review pull requests is indeed one of the priorities of the foundation, and part of what our recent job posting for a generalist senior developer would cover. We're also working on hiring contributors who can help with the triage work (for both pull requests and issues) to make sure that contributors know which PRs are waiting for their review to be merged. At the end of the day, the foundation has limited funds and can't solve all bottlenecks with money, unless it starts receiving a lot more financial support from companies and users. Godot has the "good problem" that it receives a lot of PRs - way more than the current pool of foundation contractors and volunteers maintainers can review. Yet we still manage to keep the average time to merge within a few days (OSSInsight). We need more people to get involved to help solve that bottleneck. Any Godot user can help by testing pull requests, and if they're familiar with that area (or are interested in learning it), reviewing the code. We're also working on ways to make this need clearer with calls to action for users to test pull requests which modify features they're actively using. But again these things take time, and resources to implement workflow improvements are also limited. For the record, for the past couple of months we've been in feature freeze for 4.3, which is why the pace of merging PRs has slowed down - we only merge critical fixes (or minor risk-free enhancements and documentation fixes). Around 10% of the currently open PRs are already approved and ready to merge for 4.4 once we release 4.3, but for now we need contributors focused on stabilizing the current beta. -- Note: I answered the proposal because I understand the concern and where it comes from, and I recognize that there is a need for more communication around how the pull request review process works, and the resources the foundation and the project have or lack to tackle it. That being said, this platform is for technical proposals for improving the engine, and not for discussion of the foundation's finances and hiring process. As such I'll lock this issue for further discussion, and redirect users who want to share their ideas to write to contact@godot.foundation, which is better suited for this kind of feedback than a GitHub discussion forum. |
Beta Was this translation helpful? Give feedback.
-
Describe the project you are working on
n/a
Describe the problem or limitation you are having in your project
4.3 release date says it's due in a couple of days. There are still 800 things with milestone 4.3 attached, a lot of which are small bug fix PR that have been waiting to be merged for over half a year now. The project owners obviously want to focus on what they find interesting, nothing wrong with that, but it looks like it's slowly becoming more and more unmanageable.
Describe the feature / enhancement and how it helps to overcome the problem or limitation
Use Godot foundation funds to hire someone to get these lesser pull requests merged.
The actual process of how contributions actually make it into the source isn't very transparent and probably happens in private meetings and it's doubtful those in charge want to give the community more write access.
So if they had someone who's job it was to take care of merging the bugfixes and lesser PRs (and maybe clean up old redundant PRs that no longer make sense), that'd solve this ever growing backlog.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
n/a
If this enhancement will not be used often, can it be worked around with a few lines of script?
n/a
Is there a reason why this should be core and not an add-on in the asset library?
n/a
Beta Was this translation helpful? Give feedback.
All reactions