You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/reference/contributing/guidelines/workflow.md
+15-5Lines changed: 15 additions & 5 deletions
Original file line number
Diff line number
Diff line change
@@ -82,7 +82,7 @@ Release: patch
82
82
83
83
#### Refactor
84
84
85
-
A refactor is a contribution that modifies the codebase without fixing a bug or changing the existing behavior. Examples of this would be moving functions or variables between translation units, renaming source files or folders, scope modification for nonpublic code, documentation structure changes, and test organization changes. There is always the risk that someone depended on the location or name before a refactor; therefore, these are lower in priority than bug fixes and might require detailed justification for the change. Refactors are candidates for feature releases.
85
+
A refactor is a contribution that modifies the codebase without fixing a bug or changing the existing behavior. Examples of this are moving functions or variables between translation units, renaming source files or folders, scope modification for nonpublic code, documentation structure changes and test organization changes. There is always the risk that someone depended on the location or name before a refactor; therefore, these are lower in priority than bug fixes and might require detailed justification for the change. Refactors are candidates for feature releases.
86
86
87
87
Release: feature
88
88
@@ -94,10 +94,20 @@ Release: patch
94
94
95
95
#### Functionality change
96
96
97
-
Any change in the functionality, it can be adding a new feature, adding a new method or a function. Software language does not matter.
97
+
A functionality change can be any change in the functionality, including adding a new feature, a new method or a function. Software language does not matter.
98
98
99
99
A feature contribution contains a new API, capability or behavior. It does not break backward compatibility with existing APIs, capabilities or behaviors. New feature contributions are very welcome in Mbed OS. However, because they add capability to the codebase, it's easy for a new feature to introduce bugs and a support burden. The introduction of new features should also come with documentation, majority of targets support and comprehensive test coverage proving the correctness of the feature per the documentation. Feature PRs are treated cautiously, and new features require a new minor version for the codebase. Features are candidates for feature releases.
100
100
101
+
Every pull request changing or adding functionality must contain a release notes section called "Release notes" to describe the changes to users.
102
+
103
+
It must contain:
104
+
105
+
- A brief description of changes introduced.
106
+
- An analysis of effects: components affected, potential consequences for users and reasons for the addition or change.
107
+
- Migration guidance: actions for updating the current code. Please include code snippets to illustrate before and after the addition or change.
108
+
109
+
<spanclass="notes">**Note:** We may use this content in our official release notes.</span>
110
+
101
111
We initially implement new features on separate branches in the Mbed OS repository. Mbed OS maintainers create the new branches by following the naming convention: "feature-" prefix.
102
112
103
113
Each feature has a tech lead. This person is responsible for:
@@ -170,16 +180,16 @@ If a pull request is idle for more than two weeks, it will be closed. The author
170
180
171
181
#### Reviews
172
182
173
-
All pull requests must be reviewed. The Arm Mbed CI bot determines the most suitable person to review the pull request (based on the files changed) and tags that person accordingly. Specific, a PR creator can request reviewers by @ tagging people or teams in the *Reviewers* section of the pull request template. For example, @personA@TeamB.
183
+
All pull requests must be reviewed. The Arm Mbed CI bot determines the most suitable person to review the pull request (based on the files changed) and tags that person accordingly. A PR creator can request specific reviewers by @ tagging people or teams in the *Reviewers* section of the pull request template. For example, @personA@TeamB.
174
184
175
185
GitHub dismisses a reviewer's status after any change to the pull request commit history (such as adding a new commit or rebasing). Smaller changes, such as documentation edits or rebases on top of latest master, only require additional review by maintainers. Their approval is sufficient because a team assigned as a reviewer already approved the pull request.
176
186
177
187
Label: `needs: review`
178
188
Time: 3 days for reviewers to leave feedback after the maintainers add the "needs: review" label.
179
189
180
-
#### The CI (Continuous Integration) testing
190
+
#### The Continuous Integration (CI) testing
181
191
182
-
There are many [CI systems available](../contributing/workflow.html#guidelines-for-github-pull-requests) for testing Mbed OS pull requests and braches. Which CI tests we run against a particular pull request depends on the effect that pull request has on the code base. Irrespective of which CI tests run, Mbed OS has an allgreen policy, meaning that all the CI jobs that are triggered must pass before we merge the pull request.
192
+
There are many [CI systems available](../contributing/workflow.html#guidelines-for-github-pull-requests) for testing Mbed OS pull requests and braches. Which CI tests we run against a particular pull request depends on the effect that pull request has on the code base. Irrespective of which CI tests run, Mbed OS has an all-green policy, meaning that all the CI jobs that are triggered must pass before we merge the pull request.
183
193
184
194
Label: `needs: CI`
185
195
Time: 1 day for CI to complete and report back results.
0 commit comments