@@ -129,57 +129,6 @@ LLVM has a code-review policy. Code review is one way to increase the quality of
129129software. Please see :doc: `CodeReview ` for more information on LLVM's code-review
130130process.
131131
132- .. _breaking :
133-
134- Making Potentially Breaking Changes
135- -----------------------------------
136-
137- Please help notify users and vendors of potential disruptions when upgrading to
138- a newer version of a tool. For example, deprecating a feature that is expected
139- to be removed in the future, removing an already-deprecated feature, upgrading a
140- diagnostic from a warning to an error, switching important default behavior, or
141- any other potentially disruptive situation thought to be worth raising
142- awareness of. For such changes, the following should be done:
143-
144- .. warning ::
145-
146- Phabricator is deprecated and is available in read-only mode,
147- for new code contributions use :ref: `GitHub Pull Requests <github-reviews >`.
148- This section contains old information that needs to be updated.
149-
150- * When performing the code review for the change, please add any applicable
151- "vendors" group to the review for their awareness. The purpose of these
152- groups is to give vendors early notice that potentially disruptive changes
153- are being considered but have not yet been accepted. Vendors can give early
154- testing feedback on the changes to alert us to unacceptable breakages. The
155- current list of vendor groups is:
156-
157- * `Clang vendors <https://reviews.llvm.org/project/members/113/ >`_
158- * `libc++ vendors <https://reviews.llvm.org/project/members/109/ >`_
159-
160- People interested in joining the vendors group can do so by clicking the
161- "Join Project" link on the vendor's "Members" page in Phabricator.
162-
163- * When committing the change to the repository, add appropriate information
164- about the potentially breaking changes to the ``Potentially Breaking Changes ``
165- section of the project's release notes. The release note should have
166- information about what the change is, what is potentially disruptive about
167- it, as well as any code examples, links, and motivation that is appropriate
168- to share with users. This helps users to learn about potential issues with
169- upgrading to that release.
170-
171- * After the change has been committed to the repository, the potentially
172- disruptive changes described in the release notes should be posted to the
173- `Announcements <https://discourse.llvm.org/c/announce/ >`_ channel on
174- Discourse. The post should be tagged with the ``potentially-breaking `` label
175- and a label specific to the project (such as ``clang ``, ``llvm ``, etc). This
176- is another mechanism by which we can give pre-release notice to users about
177- potentially disruptive changes. It is a lower-traffic alternative to the
178- joining "vendors" group. To automatically be notified of new announcements
179- with the ``potentially-breaking `` label, go to your user preferences page in
180- Discourse, and add the label to one of the watch categories under
181- ``Notifications->Tags ``.
182-
183132.. _maintainers :
184133
185134Maintainers
@@ -632,9 +581,11 @@ as a series of `incremental changes`_, not as a long-term development branch.
632581Incremental Development
633582-----------------------
634583
635- In the LLVM project, we do all significant changes as a series of incremental
636- patches. We have a strong dislike for huge changes or long-term development
637- branches. Long-term development branches have a number of drawbacks:
584+ In the LLVM project, we prefer the incremental development approach, where
585+ significant changes are developed in-tree incrementally. The alternative
586+ approach of implementing features in long-lived development branches or forks
587+ is discouraged, although we have accepted features developed this way in the
588+ past. Long-term development branches have a number of drawbacks:
638589
639590#. Branches must have mainline merged into them periodically. If the branch
640591 development and mainline development occur in the same pieces of code,
@@ -684,6 +635,51 @@ If you are interested in making a large change, and this scares you, please make
684635sure to first `discuss the change/gather consensus `_ then ask about the best way
685636to go about making the change.
686637
638+ .. _breaking :
639+
640+ Making Potentially Breaking Changes
641+ -----------------------------------
642+
643+ Please help notify users and vendors of potential disruptions when upgrading to
644+ a newer version of a tool. For example, deprecating a feature that is expected
645+ to be removed in the future, removing an already-deprecated feature, upgrading
646+ a diagnostic from a warning to an error, switching important default behavior,
647+ or any other potentially disruptive situation thought to be worth raising
648+ awareness of. For such changes, the following should be done:
649+
650+ * When performing the code review for the change, please add any applicable
651+ "vendors" github team to the review for their awareness. The purpose of these
652+ groups is to give vendors early notice that potentially disruptive changes
653+ are being considered but have not yet been accepted. Vendors can give early
654+ testing feedback on the changes to alert us to unacceptable breakages. The
655+ current list of vendor groups is:
656+
657+ * `Clang vendors <https://github.com/orgs/llvm/teams/clang-vendors >`_
658+ * `libc++ vendors <https://github.com/orgs/llvm/teams/libcxx-vendors >`_
659+
660+ People interested in joining the vendors group can do so by clicking the
661+ "Join team" button on the linked github pages above.
662+
663+ * When committing the change to the repository, add appropriate information
664+ about the potentially breaking changes to the ``Potentially Breaking Changes ``
665+ section of the project's release notes. The release note should have
666+ information about what the change is, what is potentially disruptive about
667+ it, as well as any code examples, links, and motivation that is appropriate
668+ to share with users. This helps users to learn about potential issues with
669+ upgrading to that release.
670+
671+ * After the change has been committed to the repository, the potentially
672+ disruptive changes described in the release notes should be posted to the
673+ `Announcements <https://discourse.llvm.org/c/announce/ >`_ channel on
674+ Discourse. The post should be tagged with the ``potentially-breaking `` label
675+ and a label specific to the project (such as ``clang ``, ``llvm ``, etc). This
676+ is another mechanism by which we can give pre-release notice to users about
677+ potentially disruptive changes. It is a lower-traffic alternative to the
678+ joining "vendors" group. To automatically be notified of new announcements
679+ with the ``potentially-breaking `` label, go to your user preferences page in
680+ Discourse, and add the label to one of the watch categories under
681+ ``Notifications->Tags ``.
682+
687683Attribution of Changes
688684----------------------
689685
0 commit comments