blob: 2e5f2bd82ebd1f6161034c1c2791daf617ac61e3 [file] [log] [blame] [view]
Caleb Maclennaneee36bb2021-07-08 21:19:57 +03001# HarfBuzz release walk-through checklist:
ebraminio933a81d2017-10-01 19:35:24 +03302
Caleb Maclennaneee36bb2021-07-08 21:19:57 +03003- [ ] Open gitk and review changes since last release.
ebraminio933a81d2017-10-01 19:35:24 +03304
Caleb Maclennaneee36bb2021-07-08 21:19:57 +03005 - [ ] Print all public API changes:
6 `git diff $(git describe | sed 's/-.*//').. src/*.h`
Behdad Esfahbod61d1c602017-10-23 13:10:21 -04007
Caleb Maclennaneee36bb2021-07-08 21:19:57 +03008 - [ ] Document them in NEWS.
9 All API and API semantic changes should be clearly marked as API additions, API changes, or API deletions.
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040010
Caleb Maclennaneee36bb2021-07-08 21:19:57 +030011 - [ ] Document deprecations.
12 Ensure all new API / deprecations are in listed correctly in docs/harfbuzz-sections.txt.
13 If release added new API, add entry for new API index at the end of docs/harfbuzz-docs.xml.
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040014
Caleb Maclennaneee36bb2021-07-08 21:19:57 +030015 If there's a backward-incompatible API change (including deletions for API used anywhere), that's a release blocker.
16 Do NOT release.
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040017
Caleb Maclennaneee36bb2021-07-08 21:19:57 +030018- [ ] Based on severity of changes, decide whether it's a minor or micro release number bump.
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040019
Khaled Hosny0ea8bbd2023-02-11 20:01:06 +020020- [ ] Search for 'XSince: REPLACEME' on the repository and replace it with the chosen version for the release, e.g. 'Since: 1.4.7'.
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040021
Caleb Maclennaneee36bb2021-07-08 21:19:57 +030022- [ ] Make sure you have correct date and new version at the top of NEWS file.
Ebrahim Byagowi5f7f0bf2018-03-29 04:22:53 +043023
Caleb Maclennaneee36bb2021-07-08 21:19:57 +030024- [ ] Bump version in line 3 of meson.build and configure.ac.
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040025
Caleb Maclennaneee36bb2021-07-08 21:19:57 +030026- [ ] Do a `meson test -Cbuild` so it both checks the tests and updates hb-version.h (use `git diff` to see if is really updated).
27
28- [ ] Commit NEWS, meson.build, configure.ac, and src/hb-version.h, as well as any REPLACEME changes you made.
29 The commit message is simply the release number, e. g. "1.4.7"
30
luz paze2e30502022-01-16 07:00:53 -050031- [ ] Do a `meson dist -Cbuild` that runs the tests against the latest committed changes.
Ebrahim Byagowid5238c12020-07-06 01:53:27 +043032 If doesn't pass, something fishy is going on, reset the repo and start over.
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040033
Caleb Maclennaneee36bb2021-07-08 21:19:57 +030034- [ ] Tag the release and sign it: e.g. `git tag -s 1.4.7 -m 1.4.7`.
35 Enter your GPG password.
Behdad Esfahbod61d1c602017-10-23 13:10:21 -040036
Caleb Maclennaneee36bb2021-07-08 21:19:57 +030037- [ ] Push the commit and tag out: `git push --follow-tags`.