Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE/release_branch.md
Copy link
Contributor Author

@Matejkob Matejkob Apr 20, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right now since Github does not offer users UI for choosing a pull request template this is not very useful because one has to manually edit the URL during the process of creating the PR. Although, I believe it would not harm to have this template in the repo.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, nice. I didn’t know about the ability to specify a custom template. I have a script locally that hard-codes the template into the URL parameters 😉

Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
* **Explanation**: <!-- A description of the issue being fixed or enhancement being made. This can be brief, but it should be clear. -->
* **Scope**: <!-- An assessment of the impact/importance of the change. For example, is the change a source-breaking language change, etc. -->
* **Issue**: <!-- The GitHub Issue link if the change fixes/implements an issue/enhancement -->
* **Original PR**: <!-- Pull Request link from main branch -->
* **Risk**: <!-- What is the (specific) risk to the release for taking this change? -->
* **Testing**: <!-- What specific testing has been done or needs to be done to further validate any impact of this change? -->
* **Reviewer**: <!-- One or more code owners for the impacted components should review the change. Technical review can be delegated by a code owner or otherwise requested as deemed appropriate or useful. -->
28 changes: 28 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,34 @@ For more information and instructions, read the GitHub docs on [forking a repo](

Once you've pushed your branch, you should see an option on this repository's page to create a PR from a branch in your fork.

## Opening a PR for Release Branch

In order for a pull request to be considered for inclusion in a release branch (e.g. `release/6.0`) after it has been cut, it must meet the following requirements:

1. The title of the PR should start with the tag `[{swift version number}]`. For example, `[6.0]` for the Swift 6.0 release branch.

1. The PR description must include the following information:

```md
* **Explanation**: A description of the issue being fixed or enhancement being made. This can be brief, but it should be clear.
* **Scope**: An assessment of the impact/importance of the change. For example, is the change a source-breaking language change, etc.
* **Issue**: The GitHub Issue link if the change fixes/implements an issue/enhancement.
* **Original PR**: Pull Request link from the `main` branch.
* **Risk**: What is the (specific) risk to the release for taking this change?
* **Testing**: What specific testing has been done or needs to be done to further validate any impact of this change?
* **Reviewer**: One or more code owners for the impacted components should review the change. Technical review can be delegated by a code owner or otherwise requested as deemed appropriate or useful.
```

> [!TIP]
> The PR description can be generated using the [release_branch.md](https://github.com/apple/swift-syntax/blob/main/.github/PULL_REQUEST_TEMPLATE/release_branch.md) [pull request template](https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates). To use this template when creating a PR, you need to add the query parameter:
> ```
> ?expand=1&template=release_branch.md
> ```
> to the PR URL, as described in the [GitHub documentation on using query parameters to create a pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/using-query-parameters-to-create-a-pull-request).
> This is necessary because GitHub does not currently provide a UI to choose a PR template.

All changes going into a release branch must go through pull requests that are approved and merged by the corresponding release manager.

## Review and CI Testing

After you opened your PR, a maintainer will review it and test your changes in CI (*Continuous Integration*) by adding a `@swift-ci Please test` comment on the pull request. Once your PR is approved and CI has passed, the maintainer will merge your pull request.
Expand Down