Skip to content

Commit 89d18a9

Browse files
committed
Rearrange text
1 parent e614357 commit 89d18a9

File tree

2 files changed

+48
-44
lines changed

2 files changed

+48
-44
lines changed

llvm/docs/DeveloperPolicy.rst

Lines changed: 7 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -593,11 +593,6 @@ having this ability would help that work.
593593
Proposing Major Changes (RFCs)
594594
------------------------------
595595

596-
LLVM is a large community with many stakeholders, and before landing any major
597-
change, it is important to discuss the design of a change publicly with the
598-
community. This is done by posting a Request For Comments (RFC) on the `LLVM
599-
Discourse forums`_.
600-
601596
The design of LLVM is carefully controlled to ensure that all the pieces fit
602597
together well and are as consistent as possible. If you plan to make a major
603598
change to the way LLVM works or want to add a major new extension, it is a good
@@ -606,45 +601,13 @@ significant effort in an implementation. Prototype implementations, however, can
606601
often be helpful in making design discussions more concrete by demonstrating
607602
what is possible.
608603

609-
These are some suggestions for how to get a major change accepted:
610-
611-
* Make it targeted, and avoid touching components irrelevant to the task.
612-
613-
* Explain how the change improves LLVM for other stakeholders rather than
614-
focusing on your specific use case.
615-
616-
* As discussion evolves, periodically summarize the current state of the
617-
discussion and clearly separate points where consensus seems to emerge from
618-
those where further discussion is necessary.
619-
620-
* Compilers are foundational infrastructure, so there is a high quality bar,
621-
and the burden of proof is on the proposer. If reviewers repeatedly ask for
622-
an unreasonable amount of evidence or data, proposal authors can escalate to
623-
the area team to resolve disagreements.
624-
625-
After posting a major proposal, it is common to receive lots of conflicting
626-
feedback from different parties, or no feedback at all, leaving authors without
627-
clear next steps. As a community, we are aiming for `"rough consensus"
628-
<https://en.wikipedia.org/wiki/Rough_consensus>`_, similar in spirit to what is
629-
described in `IETF RFC7282 <https://datatracker.ietf.org/doc/html/rfc7282>`_.
630-
This requires considering and addressing all of the objections to the RFC, and
631-
confirming that we can all live with the tradeoffs embodied in the proposal.
632-
633-
The LLVM Area Teams (defined in `LP0004
634-
<https://github.com/llvm/llvm-www/blob/main/proposals/LP0004-project-governance.md>`_)
635-
are responsible for facilitating project decision making. In cases where there
636-
isn't obvious agreement, area teams should step in to restate their perceived
637-
consensus. In cases of deeper disagreement, area teams should try to identify
638-
the next steps for the proposal, such as gathering more data, changing the
639-
proposal, or rejecting it outright. They can also act as moderators by
640-
scheduling calls for participants to speak directly to resolve disagreements,
641-
subject to normal :ref:`Code of Conduct <LLVM Community Code of Conduct>`
642-
guidelines.
643-
644-
Once the design of the new feature is finalized, the work itself should be done
645-
as a series of `incremental changes`_, not as a long-term development branch.
646-
647-
.. _incremental changes:
604+
LLVM is a large community with many stakeholders, and before landing any major
605+
change, it is important to discuss the design of a change publicly with the
606+
community. This is done by posting a Request For Comments (RFC) on the `LLVM
607+
Discourse forums`_. See the :doc:`RFC process <RFCProcess>` documentation for
608+
more details.
609+
610+
.. _incremental-changes:
648611

649612
Incremental Development
650613
-----------------------

llvm/docs/RFCProcess.rst

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,29 @@ to words no longer in the proposal.
4343
There is not a set time limit to the feedback period; it lasts as long as
4444
discussion is actively continuing on the proposal.
4545

46+
After posting a major proposal, it is common to receive lots of conflicting
47+
feedback from different parties, or no feedback at all, leaving authors without
48+
clear next steps. As a community, we are aiming for `"rough consensus"
49+
<https://en.wikipedia.org/wiki/Rough_consensus>`_, similar in spirit to what is
50+
described in `IETF RFC7282 <https://datatracker.ietf.org/doc/html/rfc7282>`_.
51+
This requires considering and addressing all of the objections to the RFC, and
52+
confirming that we can all live with the tradeoffs embodied in the proposal.
53+
54+
The LLVM Area Teams (defined in `LP0004
55+
<https://github.com/llvm/llvm-www/blob/main/proposals/LP0004-project-governance.md>`_)
56+
are responsible for facilitating project decision making. In cases where there
57+
isn't obvious agreement, area teams should step in to restate their perceived
58+
consensus. In cases of deeper disagreement, area teams should try to identify
59+
the next steps for the proposal, such as gathering more data, changing the
60+
proposal, or rejecting it outright. They can also act as moderators by
61+
scheduling calls for participants to speak directly to resolve disagreements,
62+
subject to normal :ref:`Code of Conduct <LLVM Community Code of Conduct>`
63+
guidelines.
64+
65+
Once the design of the new feature is finalized, the work itself should be done
66+
as a series of :ref:`incremental changes <incremental-changes>`, not as a long-term development branch.
67+
68+
4669
Trivial Acceptance or Rejection
4770
-------------------------------
4871
Some proposals have obvious consensus (for or against) after discussion in the
@@ -82,3 +105,21 @@ future. The new RFC should either clearly identify new information that may
82105
change the community's perception of the proposal and/or explicitly address the
83106
concerns previously raised by the community. It is helpful to explicitly call
84107
out such information in the subsequent RFC.
108+
109+
Suggestions on Getting a Change Accepted
110+
----------------------------------------
111+
These are some suggestions for how to get a major change accepted:
112+
113+
* Make it targeted, and avoid touching components irrelevant to the task.
114+
115+
* Explain how the change improves LLVM for other stakeholders rather than
116+
focusing on your specific use case.
117+
118+
* As discussion evolves, periodically summarize the current state of the
119+
discussion and clearly separate points where consensus seems to emerge from
120+
those where further discussion is necessary.
121+
122+
* Compilers are foundational infrastructure, so there is a high quality bar,
123+
and the burden of proof is on the proposer. If reviewers repeatedly ask for
124+
an unreasonable amount of evidence or data, proposal authors can escalate to
125+
the area team to resolve disagreements.

0 commit comments

Comments
 (0)