Client: Release 2.5.3

Created on 30 Jan 2019  路  25Comments  路  Source: owncloud/client

Some weeks before the release:

  • [ ] Check if we should update the bundled sqlite3 (https://github.com/owncloud/client/tree/master/src/3rdparty/sqlite3)
  • [ ] Check if we should update Sparkle on build machine (https://github.com/sparkle-project/Sparkle/releases)
  • [ ] Ensure NSIS is up to date on the build machine
  • [ ] Ensure up-to-date dependencies (e.g. latest Qt version is installed on the machine and picked up (cmake output)
  • [ ] Ensure the crash reporter server is up
  • [ ] Check crash reporter for bad crashes
  • [x] Ensure Windows Overlay DLLs are rebuilt. Why? How?
  • [x] Check daily builds are up and running, that is Jenkins.int jobs client-linux, client-osx and client-win32-msvc, client-win32--msvc-msi all green.
  • [x] Ensure Linux daily builds are built too for all distros https://build.opensuse.org/package/show/isv:ownCloud:desktop:daily:2.X/owncloud-client
  • [ ] Build branded clients through the scripting machine and smoke test one or two branded clients (especially with predefined url)
  • [ ] Upload a daily build of the windows version to virustotal.com

    • Contact AV vendors whom's engine reports a virus

  • [x] Documentation should be online before the release http://doc.owncloud.org/desktop/2.X/
  • [ ] QA goes over https://github.com/owncloud/client/wiki/Testing-Scenarios
  • [x] Make sure to have client/ChangeLog updated

    • use git log --format=oneline v<lastrelease>...master if your memory fails you

  • [ ] check if enterprise issues are fixed

For first Alpha/Beta of a Major or Minor release:

  • [ ] branch off master to new version branch (e.g. master -> 2.1, when releasing 2.1)
  • [ ] Adjust VERSION.cmake in master and count up (e.g. 2.2)
  • [ ] Add the new branch v2.X.X for the new version to gitea/jw/client-linux-build
  • [ ] Add the new version to gitea/ownbrander/scripting/client-linux/templates/client/2.X.X
  • [ ] Add branch to branches.only section in appveyor.yml, so PRs to that branch will be built by AppVeyor
  • [ ] Adjust translation jobs for client and NSIS to point to the release branch (e.g. 2.1).
  • [ ] Make sure there is a job for the docs of the new master branch and the current release branch on rotor e.g. http://doc.owncloud.org/desktop/1.X/ exists

rc1

  • [x] Add last updates to Changelog in the client source repository.
  • [x] Branch off a release branch called VERSION-rcX or VERSION-betaX (without v, v is for tags)
  • [x] Edit VERSION.cmake to set the suffix to beta1, beta2 etc. Commit the result to the release branch only
  • [ ] Make sure to increase the version number of the branched of release, e.g. if you release 2.3.2 then you should change VERSION.cmake in 2.3 to 2.3.3 since that branch now will be 2.3.3
  • [ ] Create build for theme 'ownCloud' using client-trigger (uncheck the "daily build" checkbox, use rcX or betaX dropdown for version suffix)
  • [ ] Create build for theme 'testpilotcloud' using client-trigger (uncheck the "daily build" checkbox, use the rcX or betaX dropdown for version suffix)
  • Build results are in https://download.owncloud.com/desktop/testing -- win and mac binaries are there, linux packages are listed in a *repo.html file.
  • [ ] Check if *tar.xz.asc files are there. If not resort to https://github.com/owncloud/enterprise/wiki/Desktop-Signing-Knowledge
  • [ ] Mac: Perform smoke test (Install, make sure it does not explode, and check if all version indicators are correct)
  • [ ] Win: Perform smoke test (Install, make sure it does not explode, and check if all version indicators are correct)
  • [ ] Linux: Smoke test of one distro package (Install, make sure it does not explode, and check if all version indicators are correct)
  • [x] Linux: Run https://jenkins.int.owncloud.com/job/client-linux-tests/ with REPO_URL=https://download.opensuse.org/repositories/isv:/ownCloud:/desktop:/testing
  • [x] Linux: add/remove build targets in isv:ownCloud:Qt5101 and isv:ownCloud:desktop:testing to match the list of supported platforms and announced(!) deprecations. Keep in sync with https://doc.owncloud.org/server/latest/admin_manual/installation/system_requirements.html#desktop
  • [ ] Create a signed tag using git tag -u E94E7B37 tagname (https://github.com/owncloud/enterprise/wiki/Desktop-Signing-Knowledge)
  • [x] update the wordpress content at owncloud.org/download (Attention: No staging!)
  • [ ] Inform packagers @dragotin (openSUSE), @hefee (Debian), ??? (Fedora)
  • [ ] Announce on https://central.owncloud.org
  • [ ] Inform community mailinglists [email protected] and [email protected] (make sure to mention it is an rc). Link to the central post so discussion happens there.
  • [ ] Check crash reporter

One week before the final release:

  • [ ] Communicate the release schedule on mailinglist [email protected]. Give a high level overview of the upcoming new features, changes etc.
  • [ ] Ensure marketing is aware ([email protected]) and prepared for the release (social, .com website, cust.communications)
  • [ ] Inform GCX knows the next version is about 1 week out ([email protected])

Day before final Release:

  • [ ] Check the translations coming from transifex: All synchronized? (20181109jw: where? how?)
  • [ ] Run the tx.pl scripts on the final code tag (20181109jw: really? What does that test?)
  • [ ] Run make test
  • [ ] Run smashbox (20180719 jw: FIXME: add details, how?)
  • [ ] Inform product management and marketing that we are 1 day out

On Release Day (for final release):

  • [x] Add last updates to Changelog in the client source repository.
  • [x] Branch off a release branch called VERSION (without v, v is for tags)
  • [x] Edit VERSION.cmake to set the suffix to "" etc. Commit the result to the release branch only
  • [x] Create build for theme 'ownCloud' using client-trigger (uncheck the "daily build" checkbox, use the proper dropdown for version suffix)
  • [x] Create build for theme 'testpilotcloud' using client-trigger (uncheck the "daily build" checkbox, use the proper dropdown for version suffix)
  • Build results are in https://download.owncloud.com/desktop/testing -- win and mac binaries are there, linux packages are listed in a *repo.html file.
  • [x] Check if *tar.xz.asc files are there. If not resort to https://github.com/owncloud/enterprise/wiki/Desktop-Signing-Knowledge
  • [x] Branch isv:ownCloud:desktop to isv:ownCloud:desktop:client-X.Y.Z using https://github.com/owncloud/administration/blob/master/jenkins/obs_integration/ (the Linux packages will always land in the :testing repository)
    obs-deepcopy-prj.sh isv:ownCloud:desktop isv:ownCloud:desktop:client-2.5.1
  • [x] Re-download Mac builds and check signature. Interactive in installer window
  • [x] Re-download Win build check signature. From Mac or Linux: osslsigncode verify ownCloud-version-setup.exe
  • [x] Mac: Perform smoke test (Install, make sure it does not explode, and check if all version indicators are correct)
  • [x] Win: Perform smoke test (Install, make sure it does not explode, and check if all version indicators are correct)
  • [x] Linux: Smoke test of one distro package (Install, make sure it does not explode, and check if all version indicators are correct)
  • [x] Linux: Run https://jenkins.int.owncloud.com/job/client-linux-tests/ with REPO_URL=https://download.opensuse.org/repositories/isv:/ownCloud:/desktop:/testing
  • [x] Win/Mac Copy builds from testing to stable on download.owncloud.com, double check the download links. (make sure the .asc is there too)
  • [x] Linux: disable publishing on project isv:ownCloud:desktop
  • [x] Linux: copy from testing to released in OBS:
    obs-deepcopy-prj.sh isv:ownCloud:desktop:testing isv:ownCloud:desktop
    obs-deepcopy-prj.sh isv:ownCloud:testpilot:testing isv:ownCloud:testpilot
  • [x] Linux: Re-enable OBS publishing on the project after official release date and if all distros build (check for accidentially disabled packages too)
  • [x] Linux: Wait until everything is built and published, then disable publishing on project isv:ownCloud:desktop
  • [x] Create git signed tag in client repository using git tag -u E94E7B37 tagname (https://github.com/owncloud/enterprise/wiki/Desktop-Signing-Knowledge)
  • [x] Create same tag for MSI code
  • [x] Create same tag for Windows toolchain
  • [x] Create same tag (actually a symlink) for macOS toolchain
  • [x] Create a (draft) release on https://github.com/owncloud/client/releases
  • [x] Update https://owncloud.org/changelog/desktop-client/
  • [x] Update https://owncloud.org/download/#owncloud-desktop-client -> Download ownCloud -> click open 'Desktop Client', edit win/mac/lin, each all three tabs "Production", "Technical Preview" [disabled], "Test pilot" enabled, edit the links.
  • [x] Update htpps://owncloud.com/download/#desktop-clients (achim)
  • [ ] Announce on https://central.owncloud.org
  • [ ] Announce on [email protected] Link to the central post so discussion happens there.
  • [x] Inform packagers @dragotin (openSUSE) @hefee (Debian) @Germano0 (Fedora)
  • [ ] Send out Social (tweet, blog, other)
  • [ ] Send out customer communication (if any)
  • [ ] Inform GCX that the new version is released ([email protected])
  • [ ] Inform [email protected]
  • [x] Ensure marketing is aware ([email protected])
  • [ ] Take pride and celebrate!
  • [ ] Tell GCX to increment the minimum supported version for enterprise customers
  • [ ] Check if minimum.supported.desktop.version (https://github.com/owncloud/core/blob/master/config/config.sample.php#L1152) needs to be updated in server

15 minutes after after release:

  • [x] Test all advertised download links to have the expected version
  • [x] Check for build errors in OBS, do
    obs-deepcopy-prj.sh isv:ownCloud:desktop isv:ownCloud:desktop:client-2.X.X
  • [x] disable publishing in OBS to prevent that accidential rebuilds hit the end users.
  • [x] add the previous release to https://owncloud.org/download/older-versions/

A few days after the release (for final release)

  • [ ] Review changes in the release branch, merge back into master
  • [ ] check the crash reporter if auto update is a good idea or we need a new release
  • [ ] Update the owncloud hosted updater according to https://github.com/owncloud/enterprise/blob/master/client_update_checker/README.md#deploy
  • [ ] Increment version number in daily builds. Special case: after the last release in a branch, jump forward to the 'next release branch'... That may mean, this is nightly is the same as edge then.
Plan

Most helpful comment

5.12.1 is out
blog.qt.io/blog/2019/02/01/qt-5-12-1-released/

All 25 comments

Because of some enterprise issues, macOS app notarization and HTTP2/Qt fixes we're thinking of doing a 2.5.3 relatively soon.

What is everybody's opinion on going to Qt 5.12.1 for this release? I'm for it..

(For the record, Qt wiki says to be released January 2019.. so there is still 2 days for this to happen, but usually dates slip
https://wiki.qt.io/Qt_5.12_Release
)

Qt-5.12.0 for linux is not ready yet in obs. Qt-5.12.1 is not out yet.

My opinion is to only update dependencies for patch releases if there is a pressing need, like a security bug or a severe issue that's solved by the upgrade. Currently I'm not aware of anything like that - and hence would stick to the same Qt version for 2.5.3.

How about that: 2.5.3 is the bugfix and 2.5.4 is the qt-5.12.1 sneak preview

How about that: 2.5.3 is the bugfix and 2.5.4 is the qt-5.12.1 sneak preview

works for me 馃憤

5.12.1 is out
blog.qt.io/blog/2019/02/01/qt-5-12-1-released/

Pushed a ChangeLog 9548d3cf39a0a2d1cc6acc5bc8d6d01d44c85065
We can still possibly wait today for @ckamm to change https://github.com/frankosterfeld/qtkeychain/pull/137 in QtKeyChain .. then we can have better error reporting for the enterprise issues

Thanks @dschmidt for pulling in qtkeychain at https://github.com/frankosterfeld/qtkeychain/commit/430bbbefc12869cdc5c440414403d4629bebba58 for this release. (which has @ckamm 's patch merged)

https://gitlab.com/ownclouders/client-linux-tests/pipelines/46378600
succeeded for 253rc1 on all tested platforms.

Final builds are triggered..

macOS smoke test OK

Windows smoke test OK

another Windows smoke test done. (While patiently waiting on obs to show me binaries... -- now I can blame it on SUSE that I used Windows today)

Pushed 2.5.3 packages into download.owncloud.com/desktop/stable and isv:ownCloud:desktop
publishing is not yet enabled. Waiting for the github 2.5.3 draft being published.

CC @dragotin (openSUSE) @hefee (Debian)

Thx @guruz, 2.5.3 is on the way through the Institutionen: https://build.opensuse.org/package/show/KDE:Extra/owncloud-client

https://owncloud.org/changelog/desktop-client/ is updated (thanks to @ogoffart 's merge from 2.5 to master)

Maybe we should keep low about this release until we fixed the dark mode stuff in 2.5.4 too?
(if the Qt update fixes that)
https://github.com/owncloud/client/issues/7025

owncloud.org/download/older-versions updated. 2.5.2 (and 2.5.1)

Was this page helpful?
0 / 5 - 0 ratings