2024-10-17 16:33:13 -04:00
|
|
|
This document provides a step-by-step list to remind Cthulhu
|
|
|
|
maintainers how to make a release.
|
|
|
|
|
|
|
|
The general instructions for a release are here:
|
|
|
|
|
|
|
|
https://wiki.gnome.org/MaintainersCorner/Releasing
|
|
|
|
|
|
|
|
See also:
|
|
|
|
|
|
|
|
https://discourse.gnome.org/t/new-gnome-versioning-scheme/4235
|
|
|
|
|
|
|
|
Here's a summary for Cthulhu:
|
|
|
|
|
|
|
|
PREPARE SOURCES FOR THE RELEASE:
|
|
|
|
-------------------------------
|
|
|
|
|
|
|
|
Make sure you are up to date:
|
|
|
|
|
|
|
|
git pull
|
|
|
|
git status
|
|
|
|
|
|
|
|
Update ./NEWS with changes from the last tagged release. You can use
|
|
|
|
commands like the following:
|
|
|
|
|
2024-10-20 21:11:35 -04:00
|
|
|
Detailed commits since the CTHULHU_40_BETA tag:
|
2024-10-17 16:33:13 -04:00
|
|
|
|
2024-10-20 21:11:35 -04:00
|
|
|
git log CTHULHU_40_BETA..
|
2024-10-17 16:33:13 -04:00
|
|
|
|
|
|
|
Short list of translation changes with author names and files:
|
|
|
|
|
2024-10-20 21:11:35 -04:00
|
|
|
git log CTHULHU_40_BETA.. --grep translation --pretty=format:"%s - %an" --name-only
|
2024-10-17 16:33:13 -04:00
|
|
|
|
|
|
|
Quick-and-dirty formatted list of translation changes:
|
|
|
|
|
2024-10-20 21:11:35 -04:00
|
|
|
git log CTHULHU_40_BETA.. --grep translation --pretty=format:"%s,%an" --name-only |
|
2024-10-17 16:33:13 -04:00
|
|
|
awk -F/ '/\.(po|am)/ {gsub("(\.po|Makefile.am)", "", $NF); printf(",%s",$NF); next;}
|
|
|
|
{gsub("(Updated* |Add(ed)* | translation| help)", "", $0); printf("\n%s",$0);}' |
|
|
|
|
awk -F, '!seen[$0]++ {if (NF == 3) printf(" %-15s %-25s %s\n", $3, $1, $2);}' |
|
|
|
|
sort
|
|
|
|
|
|
|
|
Short list of non-translation commits:
|
|
|
|
|
2024-10-20 21:11:35 -04:00
|
|
|
git log CTHULHU_40_BETA.. --grep translation --invert-grep --pretty=format:" * %s%n"
|
2024-10-17 16:33:13 -04:00
|
|
|
|
|
|
|
NOTE: You should also make sure the external dependencies listed in
|
|
|
|
configure.ac and README are accurate.
|
|
|
|
|
|
|
|
|
|
|
|
BUILD THE RELEASE:
|
|
|
|
-----------------
|
|
|
|
|
|
|
|
./autogen.sh --prefix=`pwd`/bld && make && make install && make distcheck
|
|
|
|
|
|
|
|
COMMIT RELEASE CHANGES AND TAG THE RELEASE:
|
|
|
|
-------------------------------------------
|
|
|
|
|
|
|
|
git commit -a
|
|
|
|
git push
|
2024-10-20 21:11:35 -04:00
|
|
|
git tag -a -s CTHULHU_40_RC
|
|
|
|
git push origin CTHULHU_40_RC
|
2024-10-17 16:33:13 -04:00
|
|
|
|
|
|
|
|
|
|
|
UPLOAD THE RELEASE:
|
|
|
|
------------------
|
|
|
|
|
|
|
|
scp cthulhu-40.rc.tar.xz yourusername@master.gnome.org:
|
|
|
|
ssh master.gnome.org
|
|
|
|
ftpadmin install cthulhu-40.rc.tar.xz
|
|
|
|
|
|
|
|
|
|
|
|
BUMP THE VERSION:
|
|
|
|
-----------------
|
|
|
|
|
|
|
|
Modify this line in ./configure.ac:
|
|
|
|
|
|
|
|
m4_define([cthulhu_version], [40.rc])
|
|
|
|
|
|
|
|
The major version (40) increments by 1 each new GNOME release cycle.
|
|
|
|
The minor version proceeds as follows: alpha, beta, rc, 0, 1, 2, 3, etc.
|
|
|
|
|
|
|
|
Modify ./README.md to make sure it has the right Cthulhu version.
|
|
|
|
|
|
|
|
git commit -a
|
|
|
|
git push
|