This is step-by-step description on how to release new version of CopyQ.
Update CHANGES.md
file (go through all commits since the last release tag).
Bump the version:
utils/bump_version.sh 9.1.0
Verify and push the changes:
for r in origin gitlab bitbucket; do git push --follow-tags $r master || break; done
Upload source files for copyq Ubuntu package:
git checkout v9.1.0
utils/debian/create_source_packages.sh
dput ppa:hluk/copyq ../copyq_9.1.0~*.changes
Build on OBS:
osc co home:lukho:copyq
cd home:lukho:copyq/CopyQ-Qt5
./create_beta_package.sh
$EDITOR debian.changelog
osc commit
NOTE: In case of system package conflicts like the following one, update
project
configuration
(for example: Prefer: clang13-libs util-linux-core
).
have choice for libclang.so.13()(64bit) needed by qt5-doctools: clang-libs
clang13-libs, have choice for libclang.so.13(LLVM_13)(64bit) needed by
qt5-doctools: clang-libs clang13-libs, have choice for (util-linux-core or
util-linux) needed by systemd: util-linux util-linux-core
Update flathub package:
- Update "tag" and "commit" in "com.github.hluk.copyq.json" file.
- Push to your fork.
- Create pull request.
- Verify the build when the build finishes (flathubbot will add comments).
- Merge the changes if the build is OK.
Download:
-
Binaries for Windows from AppVeyor:
$COPYQ_SOURCE/utils/download_window_builds.sh 9.1.0
-
Binaries for OS X from github
-
Create source package:
$COPYQ_SOURCE/utils/create_source_package.sh 9.1.0
-
OBS packages:
$COPYQ_SOURCE/utils/download_obs_packages.sh 9.1.0 1.1
Create checksums and sign all new packages, source tarball and binaries:
$COPYQ_SOURCE/utils/sign_released_files.sh
This creates checksums-sha512.txt
with the checksums and its signature in
cosign.bundle
.
Create release on GitHub for the new version tag.
Upload packages and binaries to:
-
github (include
checksums-sha512.txt
andcosign.bundle
) -
./utils/fosshub.py 9.1.0 $TOKEN
Update Homebrew package for OS X.
brew install vitorgalvao/tiny-scripts/cask-repair
brew upgrade cask-repair
cask-repair copyq
Write release announcement to CopyQ group.