git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [RFC PATCH] doc: describe the project's decision-making process

From
Josh Steadmon <steadmon@google.com>
Date
Apr 22, 2024, 21:10 UTC
Message-ID
<ZibSUPezSU3ZV1HA@google.com>
In-Reply-To
<xmqq34rmi28h.fsf@gitster.g>
On 2024.04.15 17:24, Junio C Hamano wrote:
Show 21 quoted lines
> Josh Steadmon <steadmon@google.com> writes:
> 
> > The Git project currently operates according to informal, unstated norms
> > when it comes to making bigger-picture decisions (above and beyond
> > individual patches and patch series). Document these norms so that
> > newcomers to the project can learn what to expect.
> 
> It would be a good idea to write things down to help newcomers, but
> the thing is, that we do not do that kind of design discussion +
> design review + implementaiton waterfall here very often (a notable
> exception was the sha256 transition design).  I am afraid that
> "according to informal unstated norms" is an overstatement.  We do
> not have any "process" concrete, nothing more than concensus
> building among amicable parties.
> 
> Most of the time, technical decisions are made on individual series
> and by the time the consensus is reached on the series that it is
> good, the implementation should be finished, and there is no
> separate "implementation" step.  Newcomers would probably want to
> become familiar with that part of the decision process before
> joining the "big picture" discussion, I suspect.

Yes, as I noted in the doc (but need to emphasize), I'm not intending to describe day-to-day patch review here. I'm thinking more of larger-scale discussions such as "Introducing Rust into the Git project" [1] or the spinoff discussion "Defining a platform support policy" [2].

[1] https://lore.kernel.org/git/ZZ77NQkSuiRxRDwt@nand.local/ [2] https://lore.kernel.org/git/CAJoAoZnHGTFhfR6e6r=GMSfVbSNgLoHF-opaWYLbHppiuzi+Rg@mail.gmail.com/

While clearly nothing has been decided on those topics, it seems to me at least that they follow a pattern of "discussion now, consensus (hopefully) soon, implementation later".

Or do you think it's more accurate to say that we rarely/never make decisions without patches? Does that mean it's pointless to start a discussion without a patch series attached? I'm trying to decide whether it's worth editing this doc for V2, or just starting over with a much smaller one instead.

Show 27 quoted lines
> > One particular blind spot for me is how the Project Leadership Committee
> > operates, or if that's even relevant to this doc.
> 
> I think this is the part PLC@SFC is supposed to be of relevance:
> 
> > +For non-technical decisions such as community norms or processes, it is up to
> > +the community as a whole to implement and sustain agreed-upon changes.
> 
> > +Anyone with an interest in the topic is welcome to discuss the matter. It is
> > +expected that all discussion will adhere to the Code of Conduct rules.
> 
> It is very much worth mentioning CoC here.
> 
> > diff --git a/Documentation/Makefile b/Documentation/Makefile
> > index 3f2383a12c..a04da672c6 100644
> > --- a/Documentation/Makefile
> > +++ b/Documentation/Makefile
> > @@ -103,6 +103,7 @@ SP_ARTICLES += howto/coordinate-embargoed-releases
> >  API_DOCS = $(patsubst %.txt,%,$(filter-out technical/api-index-skel.txt technical/api-index.txt, $(wildcard technical/api-*.txt)))
> >  SP_ARTICLES += $(API_DOCS)
> >  
> > +TECH_DOCS += DecisionMaking
> >  TECH_DOCS += ReviewingGuidelines
> >  TECH_DOCS += MyFirstContribution
> >  TECH_DOCS += MyFirstObjectWalk
> >
> > base-commit: 436d4e5b14df49870a897f64fe92c0ddc7017e4c
Previous: Junio C HamanoNext: Junio C Hamano
Message 3 of 44 in “doc: describe the project's decision-making process”
  1. doc: describe the project's decision-making processJosh Steadmon, Apr 15, 2024
  2. Junio C HamanoApr 16, 2024
  3. Josh SteadmonApr 22, 2024
  4. Junio C HamanoApr 22, 2024
  5. Junio C HamanoApr 23, 2024
  6. Enrico MrassApr 17, 2024
  7. Junio C HamanoApr 17, 2024
  8. Junio C HamanoMay 3, 2024
  9. Josh SteadmonMay 3, 2024
  10. Junio C HamanoMay 3, 2024
  11. Taylor BlauMay 3, 2024
  12. Patrick SteinhardtMay 6, 2024
  13. Taylor BlauMay 6, 2024
  14. Josh SteadmonMay 6, 2024
  15. Taylor BlauMay 6, 2024
  16. Emily ShafferApr 22, 2024
  17. Junio C HamanoApr 22, 2024
  18. Emily ShafferApr 22, 2024
  19. Junio C HamanoApr 23, 2024
  20. doc: describe the project's decision-making processJosh Steadmon, May 9, 2024
  21. Junio C HamanoMay 9, 2024
  22. Junio C HamanoMay 9, 2024
  23. 0/2 Describe patch-flow better in SubmittingPatchesJunio C Hamano, May 9, 2024
  24. 1/2 SubmittingPatches: move the patch-flow section earlierJunio C Hamano, May 9, 2024
  25. 2/2 SubmittingPatches: extend the "flow" sectionJunio C Hamano, May 9, 2024
  26. Karthik NayakMay 10, 2024
  27. Junio C HamanoMay 10, 2024
  28. Karthik NayakMay 10, 2024
  29. 0/2 Describe life cycle of a patch seriesJunio C Hamano, May 10, 2024
  30. 1/2 SubmittingPatches: move the patch-flow section earlierJunio C Hamano, May 10, 2024
  31. 2/2 SubmittingPatches: extend the "flow" sectionJunio C Hamano, May 10, 2024
  32. decisions: focus on larger scale issuesJunio C Hamano, May 10, 2024
  33. Josh SteadmonMay 15, 2024
  34. Junio C HamanoMay 15, 2024
  35. Josh SteadmonMay 15, 2024
  36. doc: describe the project's decision-making processJosh Steadmon, May 16, 2024
  37. Junio C HamanoMay 16, 2024
  38. Josh SteadmonMay 17, 2024
  39. Patrick SteinhardtMay 17, 2024
  40. Junio C HamanoMay 17, 2024
  41. Patrick SteinhardtMay 21, 2024
  42. doc: describe the project's decision-making processJosh Steadmon, May 17, 2024
  43. Junio C HamanoMay 17, 2024
  44. Patrick SteinhardtMay 21, 2024

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.