1HarfBuzz release walk-through checklist: 2 31. Open gitk and review changes since last release. 4 5 * `git diff $(git describe | sed 's/-.*//').. src/*.h` prints all public API 6 changes. 7 8 Document them in NEWS. All API and API semantic changes should be clearly 9 marked as API additions, API changes, or API deletions. Document 10 deprecations. Ensure all new API / deprecations are in listed correctly in 11 docs/harfbuzz-sections.txt. If release added new API, add entry for new 12 API index at the end of docs/harfbuzz-docs.xml. 13 14 If there's a backward-incompatible API change (including deletions for API 15 used anywhere), that's a release blocker. Do NOT release. 16 172. Based on severity of changes, decide whether it's a minor or micro release 18 number bump, 19 203. Search for REPLACEME on the repository and replace it with the chosen version 21 for the release. 22 234. Make sure you have correct date and new version at the top of NEWS file. 24 255. Bump version in line 3 of meson.build and configure.ac. 26 Do a `meson test -Cbuild` so it both checks the tests and updates 27 hb-version.h (use `git diff` to see if is really updated). 28 296. Commit NEWS, meson.build, configure.ac, and src/hb-version.h, as well as any REPLACEME 30 changes you made. The commit message is simply the release number. Eg. "1.4.7" 31 327. Do a `meson dist -Cbuild` that runs the tests against the latest commited changes. 33 If doesn't pass, something fishy is going on, reset the repo and start over. 34 358. Tag the release and sign it: Eg. "git tag -s 1.4.7 -m 1.4.7". Enter your 36 GPG password. 37 389. Build win32 bundle. See [README.mingw.md](README.mingw.md). 39 4010. Push the commit and tag out: "git push --follow-tags". 41 4211. Go to GitHub release page [here](https://github.com/harfbuzz/harfbuzz/releases), 43 edit the tag, upload win32 bundle and NEWS entry and save. 44 No need to upload source tarball as we rely to GitHub's automatic tar.gz generation. 45