1# Release Checklist 2 3This is the checklist for cutting a release. 4 51. Update the README. 62. Update the manuals. 73. Test history manually. 84. Test with POSIX test suite. 95. Run the randmath.py script an excessive amount and add failing tests to 10 test suite. 11 * debug 12 * release 13 * minrelease 146. Fuzz with AFL. 15 * reldebug 167. Fix AFL crashes. 178. Find ASan crashes on AFL test cases. 189. Fix ASan crashes. 1910. Build with xstatic. 2011. Run and pass the `release.sh` script on my own machine. 2112. Run and pass the `release.sh` script, without generated tests and 22 sanitizers, on FreeBSD. 2313. Run and pass the `release.sh` script, without generated tests, sanitizers, 24 and 64-bit, on Thalheim's ARM server. 2514. Run and pass the release script, with no generated tests, no clang, no 26 sanitizers, and no valgrind, on NetBSD. 2715. Run and pass the release script, with no generated tests, no clang, no 28 sanitizers, and no valgrind, on OpenBSD. 2916. Run Coverity Scan and eliminate warnings, if possible (both only). 30 * debug 3117. Run `scan-build make`. 3218. Repeat steps 3-14 again and repeat until nothing is found. 3319. Update the benchmarks. 3420. Change the version (remove "-dev") and commit. 3521. Run `make clean_tests`. 3622. Run the release script. 3723. Upload the custom tarball to GitHub. 3824. Add sha's to release notes. 3925. Edit release notes for the changelog. 4026. Increment to the next version (with "-dev"). 4127. Notify the following: 42 * FreeBSD 43 * Adelie Linux 44 * Ataraxia Linux 45 * Sabotage 46 * xstatic 47 * OpenBSD 48 * NetBSD 4928. Submit new packages for the following: 50 * Alpine Linux 51 * Void Linux 52 * Gentoo Linux 53 * Linux from Scratch 54 * Arch Linux 55