blob: e3ef7b66e5c117dbdebed44550e0a05652360ca6 [file] [log] [blame] [view]
ebraminio933a81d2017-10-01 19:35:24 +03301HarfBuzz release walk-through checklist:
2
31. Open gitk and review changes since last release.
ebraminio933a81d2017-10-01 19:35:24 +03304
Behdad Esfahbod61d1c602017-10-23 13:10:21 -04005 * `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
Behdad Esfahbodf3e58ab2018-06-12 19:32:04 -040010 deprecations. Ensure all new API / deprecations are in listed correctly in
Behdad Esfahbod10193912018-10-30 15:52:26 -070011 docs/harfbuzz-sections.txt. If release added new API, add entry for new
12 API index at the end of docs/harfbuzz-docs.xml.
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040013
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
Ebrahim Byagowi5f7f0bf2018-03-29 04:22:53 +0430203. Search for REPLACEME on the repository and replace it with the chosen version
21 for the release.
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040022
Ebrahim Byagowid5238c12020-07-06 01:53:27 +0430234. Make sure you have correct date and new version at the top of NEWS file.
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040024
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430255. Bump version in line 3 of meson.build and configure.ac.
Ebrahim Byagowid5238c12020-07-06 01:53:27 +043026 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).
Ebrahim Byagowi5f7f0bf2018-03-29 04:22:53 +043028
Ebrahim Byagowid5238c12020-07-06 01:53:27 +0430296. 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"
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040031
Ebrahim Byagowid5238c12020-07-06 01:53:27 +0430327. 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.
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040034
Ebrahim Byagowid5238c12020-07-06 01:53:27 +0430358. Tag the release and sign it: Eg. "git tag -s 1.4.7 -m 1.4.7". Enter your
Ebrahim Byagowi8571b352020-06-06 20:16:50 +043036 GPG password.
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040037
Ebrahim Byagowid5238c12020-07-06 01:53:27 +0430389. Build win32 bundle. See [README.mingw.md](README.mingw.md).
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040039
Ebrahim Byagowid5238c12020-07-06 01:53:27 +04304010. Push the commit and tag out: "git push --follow-tags".
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040041
Ebrahim Byagowid5238c12020-07-06 01:53:27 +04304211. 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.