diff --git a/doc/README.maintainer b/doc/README.maintainer new file mode 100644 index 0000000..0bc52f9 --- /dev/null +++ b/doc/README.maintainer @@ -0,0 +1,55 @@ +# How to do a uchardet release # + +* Update UCHARDET_VERSION_MAJOR, UCHARDET_VERSION_MINOR and + UCHARDET_VERSION_REVISION as needed in CMakeLists.txt. + +* Update README.md. + +* Commit the version change with the message "Release: version X.Y.Z." + +* Tag your release commit with: + + git tag -a vx.y.z + + The tag message should be have the header "Version x.y.z released." followed + by a list of new features or important fixes. This tag message will be + considered as the release note, hence have to be carefully crafted. + + Considering that the previous release was va.b.c, you can read the full list + of commits between a.b.c and x.y.z with: + + git log va.b.c.. + + This should help you to build a proper release note. + +* Push the release and the tag: + + git push + git push origin vx.y.z + +* Create a release tarball: + + git archive --format=tar.xz --prefix=uchardet-x.y.z/ vx.y.z >uchardet-x.y.z.tar.xz + +Note: if you have not already set this up, you have to run first: + + git config tar.tar.xz.command "xz -c" + +Cf. EXAMPLES section in `git help archive`. + +* Compute a SHA1 checksum: + + sha1sum uchardet-x.y.x.tar.xz > uchardet-x.y.z.tar.xz.sha1 + +* Upload to annarchy download server: + + scp uchardet-x.y.x.tar.xz uchardet-x.y.z.tar.xz.sha1 annarchy.freedesktop.org:/srv/www.freedesktop.org/www/software/uchardet/releases/ + + The archive and its checksum file should now be available from: + https://www.freedesktop.org/software/uchardet/releases/ + +* Update the wiki page: https://www.freedesktop.org/wiki/Software/uchardet/ + The release note will be the tag content: + https://cgit.freedesktop.org/uchardet/uchardet/tag/?h=vx.y.z + +* Spread the good news!