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
This script identifies pull request creators from `wp-cli/wp-cli-bundle`, `wp-cli/wp-cli`, `wp-cli/handbook`, and all bundled WP-CLI commands (e.g. `wp-cli/*-command`).
38
+
39
+
For `wp-cli/wp-cli-bundle`, `wp-cli/wp-cli` and `wp-cli/handbook`, the script uses the currently open release milestone.
40
+
41
+
For all bundled WP-CLI commands, the script uses all closed milestones since the last WP-CLI release (as identified by the version present in the `composer.lock` file). If a command was newly bundled since last release, contributors to that command will need to be manually added to the list.
42
+
43
+
The script will also produce a total contributor and pull request count you can use in the release post.
44
+
45
+
- [ ] Generate release notes for all packages (from within the [`wp-cli/wp-cli-dev`](https://githubcom/wp-cli/wp-cli-dev/) project repo)
46
+
47
+
From within the `wp-cli/wp-cli-dev` project repo, use `wp maintenance release-notes` to generate the release notes:
48
+
49
+
```
50
+
GITHUB_TOKEN=<token> wp maintenance release-notes
51
+
```
52
+
53
+
- [ ] Draft release post on the [make.wordpress.org CLI blog](https://make.wordpress.org/cli/wp-admin/post-new.php)
54
+
55
+
Use previous release blog posts as inspiration.
56
+
57
+
Use the contributor list and changelog from the previous steps in the blog post.
58
+
59
+
Note down the permalink already now, as it will be needed in later steps.
25
60
26
61
### Updating WP-CLI
27
62
28
-
- [ ] Create a branch called `release-x-x-x` on `wp-cli/wp-cli-bundle` to prepare the release PR.
63
+
#### In [`wp-cli/wp-cli`](https://github.com/wp-cli/wp-cli/)
29
64
30
-
- [ ] Ensure that the contents of [VERSION](https://github.com/wp-cli/wp-cli/blob/master/VERSION) in `wp-cli/wp-cli` are changed to latest.
65
+
- [ ] Create a branch called `prepare-x-x-x` to prepare the version bump.
31
66
32
67
- [ ] Update the WP-CLI version mention in `wp-cli/wp-cli`'s `README.md` ([ref](https://github.com/wp-cli/wp-cli/issues/3647)).
33
68
34
69
- [ ] Lock `php-cli-tools` version (if needed)
70
+
`php-cli-tools` is sometimes set to `dev-main` during the development cycle. During the WP-CLI release process, `composer.json` should be locked to a specific version. `php-cli-tools` may need a new version tagged as well.
71
+
72
+
- [ ] Ensure that the contents of [VERSION](https://github.com/wp-cli/wp-cli/blob/master/VERSION) in `wp-cli/wp-cli` are changed to latest.
35
73
36
-
`php-cli-tools` is sometimes set to `dev-master` during the development cycle. During the WP-CLI release process, `composer.json` should be locked to a specific version. `php-cli-tools` may need a new version tagged as well.
74
+
- [ ] Submit the PR and merge it once all checks are green.
37
75
38
-
- [ ] Lock the framework version in the ([bundle repository](https://github.com/wp-cli/wp-cli-bundle/))
76
+
- [ ] Create a Git tag for the new version. **Do not create a GitHub _release_ just yet**.
39
77
40
-
The version constraint of the `wp-cli/wp-cli` framework requirement is usually set to `"dev-master"`. Set it to the stable tagged release that represents the version to be published.
78
+
#### In [`wp-cli/wp-cli-bundle`](https://github.com/wp-cli/wp-cli-bundle/)
41
79
42
-
As an example, if releasing version 2.1.0 of WP-CLI, the `wp-cli/wp-cli-bundle` should require `"wp-cli/wp-cli": "^2.1.0"`.
80
+
- [ ] Create a branch called `release-x-x-x` to prepare the release PR. **Branch name is very important here!**
43
81
44
-
### Updating the contributor list
82
+
- [ ] Lock the framework version in `composer.json`
45
83
46
-
- [ ] Fetch the list of contributors (from within the [`wp-cli/wp-cli-dev`](https://githubcom/wp-cli/wp-cli-dev/) project repo)
84
+
The version constraint of the `wp-cli/wp-cli` framework requirement is usually set to `"dev-main"`. Set it to the stable tagged release that represents the version to be published.
47
85
48
-
From within the `wp-cli/wp-cli-dev` project repo, use `wp maintenance contrib-list` to generate a list of release contributors:
86
+
As an example, if releasing version 2.1.0 of WP-CLI, the `wp-cli/wp-cli-bundle` should require `"wp-cli/wp-cli": "^2.1.0"`.
This script identifies pull request creators from `wp-cli/wp-cli-bundle`, `wp-cli/wp-cli`, `wp-cli/handbook`, and all bundled WP-CLI commands (e.g. `wp-cli/*-command`).
55
-
56
-
For `wp-cli/wp-cli-bundle`, `wp-cli/wp-cli` and `wp-cli/handbook`, the script uses the currently open release milestone.
57
-
58
-
For all bundled WP-CLI commands, the script uses all closed milestones since the last WP-CLI release (as identified by the version present in the `composer.lock` file). If a command was newly bundled since last release, contributors to that command will need to be manually added to the list.
59
-
60
-
The script will also produce a total contributor and pull request count you can use in the release post.
61
-
62
92
### Updating the Phar build
63
93
64
94
- [ ] Create a PR from the `release-x-x-x` branch in `wp-cli/wp-cli-bundle` and merge it. This will trigger the `wp-cli-release.*` builds.
65
95
66
-
- [ ] Create a git tag and push it.
96
+
- [ ] Create a Git tag and push it. **Do not create a GitHub _release_ just yet**.
67
97
68
98
- [ ] Create a stable [Phar build](https://github.com/wp-cli/builds/tree/gh-pages/phar):
- [ ] Trigger Travis CI build on [wp-cli/deb-build](https://github.com/wp-cli/deb-build)
126
-
- [ ] Trigger Travis CI build on [wp-cli/rpm-build](https://github.com/wp-cli/rpm-build)
163
+
- [ ] In the [`wp-cli/builds`](https://github.com/wp-cli/builds) repository, verify that the Debian and RPM builds exist
127
164
128
-
The two builds shouldn't be triggered at the same time, as one of them will then fail to push its build artifact due to the remote not being in the same state anymore.
165
+
**Note:** Right now, they are actually already generated automatically before all the tagging happened.
129
166
130
-
Due to aggressive caching by the GitHub servers, the scripts might pull in cached version of the previous release instead of the new one. This seems to resolve automatically in a period of 24 hours.
167
+
- [ ] Change symlink of `deb/php-wpcli_latest_all.deb` to point to the new stable version.
131
168
132
169
### Updating the Homebrew formula (should happen automatically)
133
170
134
-
- [ ] Update the url and sha256 here: https://github.com/Homebrew/homebrew-core/blob/master/Formula/wp-cli.rb#L4-L5
135
-
136
-
The easiest way to do so is by using the following command:
- [ ] Follow this [example PR](https://github.com/Homebrew/homebrew-core/pull/152339) to update version numbers and sha256 for both `wp-cli` and `wp-cli-completion`
141
172
142
173
### Updating the website
143
174
144
175
- [ ] Verify <https://github.com/wp-cli/wp-cli.github.com#readme> is up-to-date
145
176
146
-
- [ ] Update the [roadmap](https://make.wordpress.org/cli/handbook/roadmap/)
147
-
148
177
- [ ] Update all version references on the homepage (and localized homepages).
149
178
179
+
Can be mostly done by using search and replace for the version number and the blog post URL.
180
+
181
+
- [ ] Update the [roadmap](https://make.wordpress.org/cli/handbook/roadmap/) to mention the current stable version
182
+
150
183
- [ ] Tag a release of the website
151
184
152
185
### Announcing
153
186
187
+
- [ ] Publish the blog post
188
+
154
189
- [ ] Announce release on the [WP-CLI Twitter account](https://twitter.com/wpcli)
155
-
- [ ] Announce using the `/announce` slash command in the [`#cli`](https://wordpress.slack.com/messages/C02RP4T41) Slack room.
190
+
191
+
- [ ] Optional: Announce using the `/announce` slash command in the [`#cli`](https://wordpress.slack.com/messages/C02RP4T41) Slack room.
192
+
193
+
This pings a lot of people, so it's not always desired. Plus, the blog post will pop up on Slack anyway.
156
194
157
195
### Bumping WP-CLI version again
158
196
159
197
- [ ] Bump [VERSION](https://github.com/wp-cli/wp-cli/blob/master/VERSION) in [`wp-cli/wp-cli`](https://github.com/wp-cli/wp-cli) again.
160
198
161
-
For instance, if the release version was `0.24.0`, the version should be bumped to `0.25.0-alpha`. Doing so ensure `wp cli update --nightly` works as expected.
199
+
For instance, if the release version was `2.8.0`, the version should be bumped to `2.9.0-alpha`.
200
+
201
+
Doing so ensures `wp cli update --nightly` works as expected.
162
202
163
-
- [ ] Change the version constraint on `"wp-cli/wp-cli"` in `wp-cli/wp-cli-bundle`'s [`composer.json`](https://github.com/wp-cli/wp-cli-bundle/blob/master/composer.json) file back to `"dev-master"`.
203
+
- [ ] Change the version constraint on `"wp-cli/wp-cli"` in `wp-cli/wp-cli-bundle`'s [`composer.json`](https://github.com/wp-cli/wp-cli-bundle/blob/master/composer.json) file back to `"dev-main"`.
204
+
205
+
```
206
+
composer require wp-cli/wp-cli:dev-main
207
+
```
164
208
165
209
- [ ] Adapt the branch alias in `wp-cli/wp-cli`'s [`composer.json`](https://github.com/wp-cli/wp-cli/blob/master/composer.json) file to match the new alpha version.
0 commit comments