Release X.Y.0-rcZ
- Dominant language
- C++
- Stars
- 3.9k
- Forks
- 1k
- Avg merge
- 1d 17h
- Merged PRs (30d)
- 123
Description
### :memo: TO DO
- [ ] :warning: checks that the milestone associated with the release has no outstanding pending work to be done
- [ ] :evergreen_tree: Create the new stable branch for the desktop repository
`⚠️ Only needed for the first release candidate.`
```
$ git checkout master
$ git pull
$ git checkout -b stable-X.Y
$ git push -u origin stable-X.Y
```
- [ ] :arrow_up: Bump VERSION.cmake to X.Y.50 in the master branch
- [ ] :arrow_up: Bump VERSION.cmake to X.(Y-1).8Z in the stable branch (e.g.: If you want to make a pre-release rc1 for 3.2.0 then bump to 3.1.81, a rc2 for instance will be 3.1.82 and so on)
- [ ] :label: Create tag from stable branch on the commit introducing the version bump
```
$ git checkout stable-X.Y
$ git pull
$ git tag -s -m "Release X.Y.0-rcZ" vX.Y.0-rcZ
$ git push origin vX.Y.0-rcZ
```
```
git remote add releases git@github.com:nextcloud-releases/desktop.git
git fetch origin vX.Y.0-rcZ
git push releases vX.Y.0-rcZ
```
- [ ] :evergreen_tree: Create the new stable branch for the client-building repository. Check that it is using the proper craft branch (https://cloud.nextcloud.com/apps/collectives/Desktop-Handbook-49/Management-of-craft-and-stable-branches-12217254#h-steps-to-do-when-creating-a-new-stable-branch)
```
$ git checkout master
$ git pull
$ git checkout -b stable-X.Y
$ git push -u origin stable-X.Y
```
- :factory: Trigger the builds on brander and wait for them to succeed:
- [ ] :penguin: Linux
- [ ] :apple: Mac OS one client
- [ ] :door: Windows MSI
- :test_tube: Execute the feature release test plan for each build:
- [ ] :penguin: Linux
- [ ] update from last release candidate (meaning that you have an existing account configured with the release candidate and use it with the official AppImage)
- [ ] upload/download/check activity/check integration to file browser
- [ ] check cpu usage during sync
- [ ] tray menu interaction
- [ ] test Talk notifications (receive notification, reply to a message)
- [ ] fresh installation
- [ ] configure a new account
- [ ] upload/download/check activity/check integration to file browser
- [ ] tray menu interaction
- [ ] test Talk notifications (receive notification, reply to a message)
- [ ] check cpu usage during sync
- [ ] test important new feature from the release
- [ ] :apple: Mac OS
⚠️ Check the logs for:
- [ ] *Sharing succeeded*: it needs to be signed similarly to .pkg file and uploaded everywhere.
- [ ] Get the link after the last mention of *Sharing succeeded* to download the delta update file (.tbz) (required for automated upgrade).
- [ ] be careful macOS VFS packages are wrongly named and should follow this pattern: `Nextcloud-x.y.z.pkg`
- [ ] update from last release candidate (meaning that you have an existing account configured with the release candidate and upgrade the installation via installer)
- [ ] upload/download/check activity/check integration to file browser
- [ ] check cpu usage during sync
- [ ] tray menu interaction
- [ ] test Talk notifications (receive notification, reply to a message)
- [ ] fresh installation
- [ ] configure a new account using VFS sync
- [ ] upload/download/check activity/check integration to file browser
- [ ] check cpu usage during sync
- [ ] tray menu interaction
- [ ] test Talk notifications (receive notification, reply to a message)
- [ ] test important new feature from the release
- [ ] configure a new account using selective sync
- [ ] upload/download/check activity/check integration to file browser
- [ ] check cpu usage during sync
- [ ] tray menu interaction
- [ ] test Talk notifications (receive notification, reply to a message)
- [ ] :door: Windows MSI
- [ ] update from last release candidate (meaning that you have an existing account configured with the release candidate and upgrade the installation via installer)
- [ ] upload/download/check activity/check integration to file browser
- [ ] check cpu usage during sync
- [ ] tray menu interaction
- [ ] test Talk notifications (receive notification, reply to a message)
- [ ] fresh installation
- [ ] configure a new account using VFS sync
- [ ] upload/download/check activity/check integration to file browser
- [ ] check cpu usage during sync
- [ ] tray menu interaction
- [ ] test Talk notifications (receive notification, reply to a message)
- [ ] test important new feature from the release
- [ ] configure a new account using selective sync
- [ ] upload/download/check activity/check integration to file browser
- [ ] check cpu usage during sync
- [ ] tray menu interaction
- [ ] test Talk notifications (receive notification, reply to a message)
- [ ] :old_key: Sign binaries (`ssh -P 2200` to signing VM, then, `cat how-to-sign`, then `scp -P 2200` to download signatures)
- :book: Create draft pre-release and release notes (click on ```Generate release notes```) at:
- [ ] [nextcloud/desktop/releases](https://github.com/nextcloud/desktop/releases)
`⚠️ Only add the release notes. Do not upload the binaries to nextcloud/desktop/releases.`
- [ ] [nextcloud-releases/desktop/releases](https://github.com/nextcloud-releases/desktop/releases)
`⚠️ Copy the changelog from nextcloud/desktop/releases.`
- :package: Upload binaries to:
- [ ] the draft pre-release at [nextcloud-releases/desktop/releases](https://github.com/nextcloud-releases/desktop/releases)
- [ ] download.nextcloud.com in the user home directory (so still private)
- :rocket: Publish the draft pre-releases created previously at:
- [ ] [nextcloud/desktop/releases](https://github.com/nextcloud/desktop/releases)
`:warning: No binaries on this release page.`
- [ ] [nextcloud-releases/desktop/releases](https://github.com/nextcloud-releases/desktop/releases)
- [ ] Run the publish_pre_release_desktop.sh script on download.nextcloud.com so that the binaries appear at [download.nextcloud.com/desktop/releases](https://download.nextcloud.com/desktop/releases)
- [ ] :bellhop_bell: Notify Marketing that the release is ready
- [ ] Create the milestone for X.(Y+1).0
- :memo: Update the documentation:
- [ ] Consider also [adding to the docs the new features](https://github.com/nextcloud/documentation/) included in the release.
- [ ] :up: Change the values of ```$betaReleaseDate``` and ```$betaVersion``` in the [updater server](https://github.com/nextcloud/client_updater_server/blob/master/config/config.php) config to serve the release.
⚠️ For the **mac update service**: the *sparkle:edSignature* and *length* values are printed right after the last mention of *Sharing succeeded* in the brander build log. Replace the values ```"signature"``` and ```"length"``` under ```'macos'``` in ```'beta'``` with them.
- [ ] Make sure **betaVersionInternal** is set to X.(Y-1).8Z, while **betaVersion** is set to X.Y.0-rcZ in the [config/config.php](https://github.com/nextcloud/client_updater_server/blob/master/config/config.php).
Contributor guide
Assessment
This issue has not been assessed yet.