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
docs: add CodeQL review steps and restructure after-release checklist (#4200)
After the last release, @rejas left some notes in the collaboration
chat. This PR tries to address them.
Additionally I went through the whole file and fixed some typos and
formatting.
Copy file name to clipboardExpand all lines: Collaboration.md
+41-25Lines changed: 41 additions & 25 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,67 +4,78 @@ This document describes how collaborators of this repository should work togethe
4
4
5
5
## Pull Requests
6
6
7
-
- never merge your own PR's
8
-
- never merge without someone having approved (approving and merging from same person is allowed)
7
+
- never merge your own PRs
8
+
- never merge without someone having approved (approving and merging by the same person is allowed)
9
9
- wait for all approvals requested (or the author decides something different in the comments)
10
10
- merge to `master` only for releases or other urgent issues (update notification is only triggered by tags)
11
-
- merges to master should be tagged with the "mastermerge" label so that the test runs through
11
+
- merges to `master` should be tagged with the `mastermerge` label so that the test runs through
12
12
13
13
## Issues
14
14
15
-
- "real" Issues are closed if the problem is solved and the fix is released
16
-
- unrelated Issues (e.g. related to a foreign module) are closed immediately with a comment to open an issue in the module repository or to discuss this further in the forum or discord
15
+
- "real" issues are closed if the problem is solved and the fix is released
16
+
- unrelated issues (e.g. related to a third-party module) are closed immediately with a comment to open an issue in the module repository or to discuss this further in the forum or Discord
17
17
18
18
## Releases
19
19
20
-
Are done by
20
+
Releases are done by:
21
21
22
-
-[ ]@rejas
23
-
-[ ]@sdetweil
24
-
-[ ]@khassel
25
-
-[ ]@KristjanESPERANTO
22
+
-@rejas
23
+
-@sdetweil
24
+
-@khassel or
25
+
-@KristjanESPERANTO
26
26
27
-
### Pre-Deployment steps
27
+
### Pre-Deployment Steps
28
28
29
29
-[ ] update dependencies (a few days before)
30
30
31
-
### Deployment steps
31
+
### Deployment Steps
32
32
33
-
-[ ] pull latest `develop` branch
33
+
-[ ] pull the latest `develop` branch
34
34
-[ ] create `prep-release` branch from `develop`
35
35
-[ ] update `package.json` and `package-lock.json` to reflect correct version number `2.xx.0`
36
36
-[ ] test `prep-release` branch
37
37
-[ ] commit and push all changes
38
38
-[ ] create pull request from `prep-release` to `develop` branch with title `Prepare Release 2.xx.0`
39
-
-[ ] after successful test run via github actions: merge pull request to `develop`
39
+
-[ ] after successful test run via GitHub Actions: merge pull request to `develop`
40
40
-[ ] review the content of the automatically generated draft release named `unreleased`
41
41
-[ ] check contributor names
42
-
-[ ] check autogenerated min. node version and adjust it for better readability if necessary
42
+
-[ ] check auto-generated minimum Node.js version and adjust it for better readability if necessary
43
43
-[ ] check if all elements are assigned to the correct category
44
44
-[ ] change release name to `v2.xx.0`
45
-
-[ ] after successful test run via github actions: create pull request from `develop` to `master` branch
45
+
-[ ] after successful test run via GitHub Actions: create pull request from `develop` to `master` branch
46
46
-[ ] add label `mastermerge`
47
47
-[ ] title of the PR is `Release 2.xx.0`
48
48
-[ ] description of the PR is the body of the draft release with name `v2.xx.0`
49
-
-[ ] check if new PR has merge conflicts, if so, merge `master` into the new PR and solve the conflicts
50
-
-[ ] after PR tests run without issues, merge PR
49
+
-[ ] review all `github-code-quality` / CodeQL review comments in the release PR (these comments are triggered automatically)
50
+
-[ ] triage findings: if non-critical, continue the release; if critical and unclear, check with other maintainers and postpone the release if needed
51
+
-[ ] if a finding is a false positive, dismiss it in the CodeQL alert with a short explanation
52
+
-[ ] check if the new PR has merge conflicts; if so, merge `master` into the new PR and solve the conflicts
53
+
-[ ] after PR tests run without issues, merge the PR
51
54
-[ ] edit draft release with name `v2.xx.0`
52
55
-[ ] set corresponding version tag `v2.xx.0` (with `Select tag` and then `Create new tag`)
53
-
-[ ] update release link in `Compare to previous Release` by replacing `develop` with new tag `v2.xx.0`
56
+
-[ ] update release link in `Compare to previous Release` by replacing `develop` with the new tag `v2.xx.0`
54
57
-[ ] publish the release (button at the bottom)
55
58
56
59
### Draft new development release
57
60
58
-
-[ ]checkout`develop` branch
61
+
-[ ]check out`develop` branch
59
62
-[ ] update `package.json` and `package-lock.json` to reflect correct version number `2.xx.0-develop`
60
63
-[ ] commit and push `develop` branch
61
-
-[ ] if new release will be in January, update the year in LICENSE.md
64
+
-[ ] if the new release will be in January, update the year in `LICENSE.md`
62
65
63
66
### After release
64
67
65
-
-[ ] publish release notes with link to github release on forum in new locked topic (use edit release on github to copy the content with markdown syntax)
66
-
-[ ] close all issues with label `ready (coming with next release)`
67
-
-[ ] release new documentation by merging `develop` on `master` in documentation repository
68
+
#### Documentation repository
69
+
70
+
-[ ] create a pull request from `develop` to `master` with title `Release v2.xx.0`
71
+
-[ ] after successful test run via GitHub Actions: merge the pull request to `master`
72
+
-[ ] verify the updated documentation site is live
73
+
-[ ] create/publish a release in the documentation repository for the same version (`v2.xx.0`)
74
+
-[ ] update `package.json` and `package-lock.json` in the `develop` branch to reflect the next version number `2.xx.0-develop`
75
+
-[ ] commit and push `develop` branch
76
+
77
+
#### npm
78
+
68
79
-[ ] publish new version on [npm](https://www.npmjs.com/package/magicmirror)
69
80
-[ ] use a clean environment (e.g. container)
70
81
-[ ] clone this repository with the new `master` branch and `cd` into the local repository directory
@@ -74,7 +85,7 @@ Are done by
74
85
-[ ] execute `npm publish`
75
86
-[ ]**Method 2 (fallback for headless environments): With token (bypasses 2FA)**
76
87
-[ ] ⚠️ Note: This method bypasses 2FA and should only be used when a browser is not available
77
-
-[ ]goto`https://www.npmjs.com/settings/<username>/tokens/` and click `generate new token`
88
+
-[ ]go to`https://www.npmjs.com/settings/<username>/tokens/` and click `generate new token`
78
89
-[ ] enable `Bypass two-factor authentication (2FA)` and under `Packages and scopes` give `Read and write` permission to the `magicmirror` package, press `Generate token`
- [ ] publish release notes with a link to the GitHub release on the forum in a new locked topic (use edit release on GitHub to copy the content with Markdown syntax)
101
+
- [ ] close all issues with label `ready (coming with next release)`in both repositories
0 commit comments