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: CONTRIBUTION.md
+18-14
Original file line number
Diff line number
Diff line change
@@ -211,25 +211,29 @@ For the Pull Request, you will need to write a PR message. This message is for a
211
211
212
212
The PR requires an approval from people who have permissions. They will review the changes before approve the Pull. During this step, you will get feedbacks from other people and they may request you to make some changes. When you need to make adjustments, you can commit new changes to the branch in your forlked repository that already has the changes in PR process. When new commits are added to the branch, they will automatically appear in the PR.
213
213
214
-
## Update your Repository
215
-
After your pull request is submitted, you can update your repository for your next changes.
214
+
## Addressing Code Reviews and Keep Branch In-Sync
215
+
After your pull request is submitted, you will receive code reviews from the community within 24 hours. Follow-up changes that address review comments should be pushed to your pull request branch as additional commits. When your branch is out of sync with top-of-tree, submit a merge commit to keep them in-sync. Do not rebase and force push after the PR is created to keep the change history during the review process.
216
216
217
-
Update your forked repository in github
218
-
When your forked repository is behind the original repository, Github will allow you to sync via a "Sync fork" button.
217
+
Use these commands to sync your branch:
219
218
220
-
Update your local machine from your forked repository
221
219
```
222
-
$ git checkout master
223
-
$ git pull
224
-
$ git submodule update --init --recursive
220
+
$ git fetch upstream master
221
+
$ git merge upstream/master # resolve any conflicts here
222
+
$ git submodule update --recursive
225
223
```
226
224
227
-
When you update the submodule, "--init" is required if there are new submodules added to the project.
228
-
Update tags on your local machine and your forked repository
229
-
```
230
-
$ git fetch --tags upstream
231
-
$ git push --tags origin
232
-
```
225
+
The Slang repository uses the squash strategy for merging pull requests, which means all your commits will be squashed into one commit by GitHub upon merge.
226
+
227
+
## Labeling Breaking Changes
228
+
229
+
All pull requests must be labeled as either `pr: non-breaking` or `pr: breaking change` before it can be merged to the main branch. If you are already a committer, you are expected to label your PR when you create it. If you are not yet a committer, a reviewer will do this for you.
230
+
231
+
A PR is considered to introduce a breaking change if an existing application that uses Slang may no longer compile or behave the same way with the change. Typical examples of breaking changes include:
232
+
233
+
- Changes to `slang.h` that modifies the Slang API in a way that breaks binary compatibility.
234
+
- Changes to the language syntax or semantics that may cause existing Slang code to not compile or produce different run-time result. For example changing the overload resolution rules.
235
+
- Removing or renaming an existing intrinsic from the core module.
236
+
233
237
234
238
## Code Style
235
239
Follow our [Coding conventions](docs/design/coding-conventions.md) to maintain consistency throughout the project.
0 commit comments