Replies: 2 comments
-
This reminds me of Linux where different subsystem maintainers continuously publish sourcetrees that they consider mergeable. There is no auto-merging but the humans involved build trust and gradually lower the testing & review bar based on past results. In some cases Linus typically merges the whole tree at release time without any review. I think the same learning & trust building is already happening with our current vanilla system, you always need a manual merge but over time the maintainers learn to defer to each other in specific areas. Over time as the project grows and bottlenecks appear, we will find ways to scale this process with better tooling. Perhaps something like the linux system. However this can only happen on top of a robust code ownership and review system (which we don’t yet have). Auto-merging I think would weaken the system instead of strengthening it. In summary:
|
Beta Was this translation helpful? Give feedback.
-
An example of “strengthening” the system while achieving some of the same results: remove merge privileges for all humans, have a bot automatically merge not based on identity of the contributor, but on review requirements and ownership rules encoded in software. This gives us more granular control over quality vs. speed, contributor impatience vs. maintainer angst, etc. I think we should do this ASAP. |
Beta Was this translation helpful? Give feedback.
-
This is WIP, I just wanted to capture a thought that keeps coming back
I think that our most active & trusted collaborators (this applies to everyone from the community) could benefit from auto-merging pull requests. I am bringing this up again because I think it deserves us to think about.
I imagine a future world where collaborators can earn our trust and get the privilege to auto-merge after
n
days.If all checks pass, and there are no objections from anyone else (this implies that all collaborators will be able to prevent an auto-merge via e.g. a
/hold
action), the contribution will be automatically merged after a time period that we decide what it should be. In my mind,7
days would be a good starting point.I suspect that there is a proposal waiting to be written, but I am taking small steps towards it. This is all the time that I have for now.
While my first instinct was to put this into Discussions, I know that we prefer Issues so that it is easier to keep track of what is in flight. If we have changed our mind, I am OK to close this issue and move it into Discussions.
Beta Was this translation helpful? Give feedback.
All reactions