Skip to content

Commit 06ef9fa

Browse files
nashifjhedberg
authored andcommitted
doc: release: move merge criteria under release process
Merge criteria does not beling under project role, move it under release process. Signed-off-by: Anas Nashif <[email protected]>
1 parent ca37494 commit 06ef9fa

File tree

2 files changed

+65
-68
lines changed

2 files changed

+65
-68
lines changed

doc/project/project_roles.rst

Lines changed: 0 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -349,72 +349,4 @@ Generic guidelines for deciding and filling in the Maintainers' list
349349
implementation
350350

351351

352-
Release Activity
353-
################
354-
355-
.. figure:: img/img_release_activity.png
356-
:width: 663px
357-
:align: center
358-
:alt: Release Activity
359-
360-
.. _merge_criteria:
361-
362-
Merge Criteria
363-
++++++++++++++
364-
365-
* All :ref:`pr_requirements` must be met.
366-
* Minimal of 2 approvals, including an approval by the designated assignee.
367-
* Pull requests should be reviewed by at least a maintainer or collaborator of
368-
each affected area; Unless the changes to a given area are considered trivial
369-
enough, in which case approvals by other affected subsystems
370-
maintainers/collaborators would suffice.
371-
* Four eye principle on the organisation level. We already require at least 2
372-
approvals (basic four eye principle), however, such reviews and approvals
373-
might be unintentionally biased in the case where the submitter is from the
374-
same organisation as the approvers. To allow for project wide review and
375-
approvals, the merge criteria is extended with the guidelines below:
376-
377-
* Changes or additions to common and shared code shall have approvals from
378-
different organisations (at least one approval from an
379-
organisation different than the submitters').
380-
Common and shared code is defined as anything that does not fall under
381-
:file:`soc`, :file:`boards` and :file:`drivers/*/*`.
382-
* Changes or additions to hardware support (driver, SoC, boards) shall at
383-
least have the merger be from a different organisation. This applies only
384-
to implementation of an API supporting vendor specific hardware and not the
385-
APIs.
386-
* Release engineers may make exceptions for areas with contributions primarily
387-
coming from one organisation and where reviews from other organisations are
388-
not possible, however, merges shall be completed by a person from a different
389-
organisation. In such cases, the minimum review period of at least 2 days
390-
shall be strictly followed to allow for additional reviews.
391-
* Release engineers shall not merge code changes originating and reviewed
392-
only by their own organisation. To be able to merge such changes, at least
393-
one review shall be from a different organisation.
394-
395-
* A minimum review period of 2 business days, 4 hours for trivial changes (see
396-
:ref:`review_time`).
397-
* Hotfixes can be merged at any time after CI has passed and are excluded from
398-
most of the conditions listed above.
399-
* All required checks are passing:
400-
401-
* Device Tree
402-
* Documentation
403-
* Code linters (Gitlint, Pylint, Ruff, Sphinx, etc.)
404-
* Identity/Emails
405-
* Kconfig
406-
* License checks
407-
* Checkpatch (Coding Style)
408-
* Integration Tests (Via twister) on emulation/simulation platforms
409-
* Simulated Bluetooth Tests
410-
411-
* Planned
412-
413-
* Footprint
414-
* Code coverage
415-
* Coding Guidelines
416-
* Static Analysis (Coverity)
417-
* Documentation coverage (APIs)
418-
419-
420352
.. _Zephyr Contributor Badge form: https://forms.gle/oCw9iAPLhUsHTapc8

doc/project/release_process.rst

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,71 @@ The Zephyr release model was loosely based on the Linux kernel model:
5151
`Official GitHub Wiki <https://github.com/zephyrproject-rtos/zephyr/wiki/Release-Management>`_.
5252
Information on previous releases can be found :ref:`here <zephyr_release_notes>`.
5353

54+
55+
.. _merge_criteria:
56+
57+
Merge Criteria
58+
**************
59+
60+
.. figure:: img/img_release_activity.png
61+
:width: 663px
62+
:align: center
63+
:alt: Release Activity
64+
65+
* All :ref:`pr_requirements` must be met.
66+
* Minimal of 2 approvals, including an approval by the designated assignee.
67+
* Pull requests should be reviewed by at least a maintainer or collaborator of
68+
each affected area; Unless the changes to a given area are considered trivial
69+
enough, in which case approvals by other affected subsystems
70+
maintainers/collaborators would suffice.
71+
* Four eye principle on the organisation level. We already require at least 2
72+
approvals (basic four eye principle), however, such reviews and approvals
73+
might be unintentionally biased in the case where the submitter is from the
74+
same organisation as the approvers. To allow for project wide review and
75+
approvals, the merge criteria is extended with the guidelines below:
76+
77+
* Changes or additions to common and shared code shall have approvals from
78+
different organisations (at least one approval from an
79+
organisation different than the submitters').
80+
Common and shared code is defined as anything that does not fall under
81+
:file:`soc`, :file:`boards` and :file:`drivers/*/*`.
82+
* Changes or additions to hardware support (driver, SoC, boards) shall at
83+
least have the merger be from a different organisation. This applies only
84+
to implementation of an API supporting vendor specific hardware and not the
85+
APIs.
86+
* Release engineers may make exceptions for areas with contributions primarily
87+
coming from one organisation and where reviews from other organisations are
88+
not possible, however, merges shall be completed by a person from a different
89+
organisation. In such cases, the minimum review period of at least 2 days
90+
shall be strictly followed to allow for additional reviews.
91+
* Release engineers shall not merge code changes originating and reviewed
92+
only by their own organisation. To be able to merge such changes, at least
93+
one review shall be from a different organisation.
94+
95+
* A minimum review period of 2 business days, 4 hours for trivial changes (see
96+
:ref:`review_time`).
97+
* Hotfixes can be merged at any time after CI has passed and are excluded from
98+
most of the conditions listed above.
99+
* All required checks are passing:
100+
101+
* Device Tree
102+
* Documentation
103+
* Code linters (Gitlint, Pylint, Ruff, Sphinx, etc.)
104+
* Identity/Emails
105+
* Kconfig
106+
* License checks
107+
* Checkpatch (Coding Style)
108+
* Integration Tests (Via twister) on emulation/simulation platforms
109+
* Simulated Bluetooth Tests
110+
111+
* Planned
112+
113+
* Footprint
114+
* Code coverage
115+
* Coding Guidelines
116+
* Static Analysis (Coverity)
117+
* Documentation coverage (APIs)
118+
54119
Development Phase
55120
*****************
56121

0 commit comments

Comments
 (0)