@@ -296,54 +296,53 @@ Quality
296
296
The minimum quality standards that any change must satisfy before being
297
297
committed to the main development branch are:
298
298
299
- #. Code must adhere to the `LLVM Coding Standards <CodingStandards.html >`_ .
299
+ #. Code must adhere to the :doc: `LLVM Coding Standards <CodingStandards >` .
300
300
301
301
#. Code must compile cleanly (no errors, no warnings) on at least one platform.
302
302
303
303
#. Bug fixes and new features should `include a testcase `_ so we know if the
304
304
fix/feature ever regresses in the future.
305
305
306
- #. Code must pass the ``llvm/test `` test suite.
307
-
308
- #. The code must not cause regressions on a reasonable subset of llvm-test,
309
- where "reasonable" depends on the contributor's judgement and the scope of
310
- the change (more invasive changes require more testing). A reasonable subset
311
- might be something like "``llvm-test/MultiSource/Benchmarks ``".
306
+ #. Pull requests should build and pass premerge checks. For first-time
307
+ contributors, this will require an initial cursory review to run the checks.
312
308
313
309
#. Ensure that links in source code and test files point to publicly available
314
- resources and are used primarily to add additional information rather than
315
- to supply critical context. The surrounding comments should be sufficient
316
- to provide the context behind such links.
310
+ resources and are used primarily to add additional information rather than to
311
+ supply critical context. The surrounding comments should be sufficient to
312
+ provide the context behind such links.
317
313
318
314
Additionally, the committer is responsible for addressing any problems found in
319
315
the future that the change is responsible for. For example:
320
316
321
- * The code should compile cleanly on all supported platforms.
317
+ * The code needs to compile cleanly and pass tests on all stable `LLVM
318
+ buildbots <https://lab.llvm.org/buildbot/> `_.
322
319
323
- * The changes should not cause any correctness regressions in the ``llvm-test ``
324
- suite and must not cause any major performance regressions.
320
+ * The changes should not cause any correctness regressions in the
321
+ `llvm-test-suite <https://github.com/llvm/llvm-test-suite >`_
322
+ and must not cause any major performance regressions.
325
323
326
324
* The change set should not cause performance or correctness regressions for the
327
- LLVM tools.
325
+ LLVM tools. See ` llvm-compile-time-tracker.com < https://llvm-compile-time-tracker.com >`_
328
326
329
327
* The changes should not cause performance or correctness regressions in code
330
328
compiled by LLVM on all applicable targets.
331
329
332
- * You are expected to address any `GitHub Issues < https://github.com/llvm/llvm-project/issues >`_ that
333
- result from your change.
330
+ * You are expected to address any `GitHub Issues
331
+ <https://github.com/llvm/llvm-project/issues> `_ that result from your change.
334
332
335
- We prefer for this to be handled before submission but understand that it isn't
336
- possible to test all of this for every submission. Our build bots and nightly
337
- testing infrastructure normally finds these problems. A good rule of thumb is
338
- to check the nightly testers for regressions the day after your change. Build
339
- bots will directly email you if a group of commits that included yours caused a
333
+ Our build bots and `nightly testing infrastructure
334
+ <https://llvm.org/docs/lnt/intro.html> `_ find many of these issues. Build bots
335
+ will directly email you if a group of commits that included yours caused a
340
336
failure. You are expected to check the build bot messages to see if they are
341
- your fault and, if so, fix the breakage.
337
+ your fault and, if so, fix the breakage. However, keep in mind that if you
338
+ receive such an email, it is highly likely that your change is not at fault.
339
+ Changes are batched together precisely because these tests are generally too
340
+ expensive to run continuously for every change.
341
+
342
+ Commits that violate these quality standards may be reverted (see below). This
343
+ is necessary when the change blocks other developers from making progress. The
344
+ developer is welcome to re-commit the change after the problem has been fixed.
342
345
343
- Commits that violate these quality standards (e.g. are very broken) may be
344
- reverted. This is necessary when the change blocks other developers from making
345
- progress. The developer is welcome to re-commit the change after the problem has
346
- been fixed.
347
346
348
347
.. _commit messages :
349
348
0 commit comments