Skip to content

Commit 6ceab0e

Browse files
authored
Monthly non-darwin release process (#916)
* Monthly non-darwin release process * Update text to remove suggested in the feedback.
1 parent cb2ba55 commit 6ceab0e

File tree

2 files changed

+42
-0
lines changed

2 files changed

+42
-0
lines changed

_data/documentation.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,3 +93,7 @@
9393
url: /documentation/swift-compiler/
9494
description: |
9595
Overview of the Swift compiler architecture.
96+
- title: Monthly Non-Darwin Swift Releases
97+
url: /documentation/monthly-non-darwin-release/
98+
description: |
99+
Overview of the Swift monthly non-Darwin release process.
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
redirect_from: "/monthly-non-darwin-release/"
3+
layout: page
4+
title: Monthly Non-Darwin Swift Releases
5+
---
6+
7+
The release manager will announce the merge window for each monthly release. This merge window will remain open for about three weeks, after which it will close. Immediately following the merge window close, release managers have one week to finalize the release which will then be published on swift.org. All the relevant dates will be communicated upfront in the announcement on Swift Forums.
8+
9+
Once the merge window is open, everybody can open a pull request against the release branch announced in the forum post. To keep the process smooth and lightweight, the release manager will only consider pull requests that
10+
11+
* are bug fixes,
12+
* have already been merged to `main`,
13+
* pass all the unit tests on release branch, and
14+
* contain at least one unit test exercising the changed code.
15+
16+
We expect most bug fixes to be small corrections, so creating the pull request might be a matter of creating a branch followed by `git cherry-pick -x FIX-COMMIT-FROM-MAIN-SHA`. We do realize not all backports will be a conflict-free cherry picks but we hope the community works together to deliver the most pressing bug fixes in a timely manner. The changes for the dot release must be only focus on non-darwin platforms only.
17+
18+
19+
## Pull Requests for Release Branch
20+
21+
In order for a pull request to be considered for inclusion in the release branch after it has been cut, the pull request must have:
22+
23+
24+
* A title starting with a designation containing the release version number of the target branch.
25+
* [This](https://github.com/swiftlang/.github/blob/main/PULL_REQUEST_TEMPLATE/release.md?plain=1) form filled out in its description. An item that is not applicable may be left blank or completed with an indication thereof, but must not be omitted altogether.
26+
27+
To switch to this template when drafting a pull request in a [swiftlang](https://github.com/swiftlang) repository in a browser, append the `template=release.md` query parameter to the current URL and refresh. For example:
28+
29+
```
30+
-https://github.com/swiftlang/swift/compare/main...my-branch?quick_pull=1
31+
+https://github.com/swiftlang/swift/compare/main...my-branch?quick_pull=1&template=release.md
32+
```
33+
34+
**All changes** going on the release branch **must go through pull requests** that are accepted by the corresponding release manager.
35+
36+
If you think there's an important bug fix that should go into the next dot release, but you don’t have the ability to fix it in time, please use the Swift Forums to rally for help. The Swift community includes a bunch of folks ready to assist, and sometimes raising attention on a bug is all that’s needed to get it fixed. As always, please remember that most of the community is not working on Swift full time, so be kind.
37+
38+
Similarly, if you have opened a pull request, you might want to assign the release manager on the Github pull request so they can have a look straight away. The release managers will merge patches throughout the whole merge window. Once the merge window closes however, no further pull requests will be considered until the next merge window opens.

0 commit comments

Comments
 (0)