@@ -129,57 +129,6 @@ LLVM has a code-review policy. Code review is one way to increase the quality of
129
129
software. Please see :doc: `CodeReview ` for more information on LLVM's code-review
130
130
process.
131
131
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
-
183
132
.. _maintainers :
184
133
185
134
Maintainers
@@ -632,9 +581,11 @@ as a series of `incremental changes`_, not as a long-term development branch.
632
581
Incremental Development
633
582
-----------------------
634
583
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:
638
589
639
590
#. Branches must have mainline merged into them periodically. If the branch
640
591
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
684
635
sure to first `discuss the change/gather consensus `_ then ask about the best way
685
636
to go about making the change.
686
637
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
+
687
683
Attribution of Changes
688
684
----------------------
689
685
0 commit comments