|
1 | 1 | # Release checklist
|
2 | 2 |
|
| 3 | +**Important**: If releases for multiple branches are to be tagged, always tag the 3.x release first, 4.x second etc! |
| 4 | + |
3 | 5 | ## Before Release
|
4 | 6 |
|
5 | 7 | ### General
|
6 | 8 |
|
7 |
| -- [ ] Verify, and if necessary, update the version constraints for dependencies in the `composer.json` - PR #xxx |
8 |
| -- [ ] Verify that any new functions have type declarations (ClassName/array/callable) whenever possible. |
9 |
| -- [ ] Verify that the license tags all refer to the _new_ organisation and no longer to Squizlabs. (easily overlooked in new files) |
| 9 | +- [ ] Verify, and if necessary, update the version constraints for dependencies in the `composer.json`. |
| 10 | +- [ ] Verify that any new functions have type declarations whenever possible. |
| 11 | +- [ ] Verify that the license tags all refer to the _new_ organisation and no longer to Squizlabs. |
10 | 12 | - [ ] Verify that `@copyright` tags in new files use `@copyright 20xx PHPCSStandards and contributors`.
|
11 | 13 | - [ ] Check if the GPG key is still valid (not expired).
|
12 | 14 | If it has expired, create a new key before starting the release process.
|
|
27 | 29 | - [ ] Verify that any new sniffs which have `public` properties are listed on the Customizable Properties page in the Wiki.
|
28 | 30 | - [ ] Verify that any new CLI options are listed in the Wiki.
|
29 | 31 | - [ ] Verify that any new Reports have a section in the Reports page in the Wiki.
|
| 32 | +- [ ] Whenever relevant, but definitely for a new major, update the output examples which cannot currently be automatically updated. |
| 33 | + Search for "Regenerate the below output snippet by running the following command" comments to find the relevant sections in the wiki. |
30 | 34 |
|
31 | 35 | ### Majors only
|
32 | 36 |
|
33 |
| -- [ ] Move old changelog entries to `CHANGELOG_OLD.md` file. |
34 | 37 | - [ ] Verify that everything deprecated during the previous major was removed.
|
35 |
| -- [ ] Update the wiki for any references to anything deprecated/removed. |
36 |
| -- [ ] Change `Config::STABILITY` from "dev" to "stable" for the branch for the new major. - PR #xxx |
| 38 | +- Submit PRs to the documentation repository to update the wiki/website: |
| 39 | + - [ ] Remove notes from the wiki which refer to features removed in the _previous_ major. |
| 40 | + I.e. When releasing 4.0, notes about features removed/changed in or before 3.0 can be removed. |
| 41 | + - [ ] Update sections related to anything deprecated/removed features to mention the deprecation/removal. |
| 42 | +- [ ] Change `Config::STABILITY` from "dev" to "stable" for the branch for the new major. |
37 | 43 |
|
38 | 44 | ### Prepare changelog
|
39 | 45 |
|
@@ -76,9 +82,9 @@ Please consider [funding the PHP_CodeSniffer project](https://opencollective.com
|
76 | 82 | ## Release
|
77 | 83 |
|
78 | 84 | - [ ] Merge the changelog PR.
|
79 |
| - For now, cherrypick the changelog to the 4.0 branch. |
80 | 85 | - [ ] Make sure all CI builds for the release branch are green.
|
81 | 86 | - [ ] Create a tag for the release & push it.
|
| 87 | +- [ ] Merge any open PRs in the documentation repository which relate to the current release. |
82 | 88 | - [ ] Make sure all CI builds are green.
|
83 | 89 | - [ ] Download the PHAR files from the GH Actions test build page.
|
84 | 90 | - [ ] Sign the PHAR files using:
|
@@ -110,7 +116,7 @@ Please consider [funding the PHP_CodeSniffer project](https://opencollective.com
|
110 | 116 | gh attestation verify phars/phpcbf-x.x.x.phar -o PHPCSStandards
|
111 | 117 | ```
|
112 | 118 | - [ ] Commit & push the changes.
|
113 |
| - - [ ] Verify that the website regenerated correctly and that the phars can be downloaded. |
| 119 | + - [ ] Verify that the [website](https://phars.phpcodesniffer.com/) regenerated correctly. |
114 | 120 | - [ ] Create a release & copy & paste the changelog to it.
|
115 | 121 | - [ ] Upload the unversioned PHAR files + asc files to the release.
|
116 | 122 | - [ ] Announce the release in the discussions forum by checking the checkbox at the bottom of the release page.
|
|
0 commit comments