252884ae7e
These implementations of the bc and dc programs offer a number of advantages compared to the current implementations in the FreeBSD base system: - They do not depend on external large number functions (i.e. no dependency on OpenSSL or any other large number library) - They implements all features found in GNU bc/dc (with the exception of the forking of sub-processes, which the author of this version considers as a security issue). - They are significantly faster than the current code in base (more than 2 orders of magnitude in some of my tests, e.g. for 12345^100000). - They should be fully compatible with all features and the behavior of the current implementations in FreeBSD (not formally verified). - They support POSIX message catalogs and come with localized messages in Chinese, Dutch, English, French, German, Japanese, Polish, Portugueze, and Russian. - They offer very detailed man-pages that provide far more information than the current ones. The upstream sources contain a large number of tests, which are not imported with this commit. They could be integrated into our test framework at a latter time. Installation of this version is controlled by the option "MK_GH_BC=yes". This option will be set to yes by default in 13-CURRENT, but will be off by default in 12-STABLE. Approved by: imp Obtained from: https://git.yzena.com/gavin/bc MFC after: 4 weeks Relnotes: yes Differential Revision: https://reviews.freebsd.org/D19982
55 lines
1.6 KiB
Markdown
55 lines
1.6 KiB
Markdown
# Release Checklist
|
|
|
|
This is the checklist for cutting a release.
|
|
|
|
1. Update the README.
|
|
2. Update the manuals.
|
|
3. Test history manually.
|
|
4. Test with POSIX test suite.
|
|
5. Run the randmath.py script an excessive amount and add failing tests to
|
|
test suite.
|
|
* debug
|
|
* release
|
|
* minrelease
|
|
6. Fuzz with AFL.
|
|
* reldebug
|
|
7. Fix AFL crashes.
|
|
8. Find ASan crashes on AFL test cases.
|
|
9. Fix ASan crashes.
|
|
10. Build with xstatic.
|
|
11. Run and pass the `release.sh` script on my own machine.
|
|
12. Run and pass the `release.sh` script, without generated tests and
|
|
sanitizers, on FreeBSD.
|
|
13. Run and pass the `release.sh` script, without generated tests, sanitizers,
|
|
and 64-bit, on Thalheim's ARM server.
|
|
14. Run and pass the release script, with no generated tests, no clang, no
|
|
sanitizers, and no valgrind, on NetBSD.
|
|
15. Run and pass the release script, with no generated tests, no clang, no
|
|
sanitizers, and no valgrind, on OpenBSD.
|
|
16. Run Coverity Scan and eliminate warnings, if possible (both only).
|
|
* debug
|
|
17. Run `scan-build make`.
|
|
18. Repeat steps 3-14 again and repeat until nothing is found.
|
|
19. Update the benchmarks.
|
|
20. Change the version (remove "-dev") and commit.
|
|
21. Run `make clean_tests`.
|
|
22. Run the release script.
|
|
23. Upload the custom tarball to GitHub.
|
|
24. Add sha's to release notes.
|
|
25. Edit release notes for the changelog.
|
|
26. Increment to the next version (with "-dev").
|
|
27. Notify the following:
|
|
* FreeBSD
|
|
* Adelie Linux
|
|
* Ataraxia Linux
|
|
* Sabotage
|
|
* xstatic
|
|
* OpenBSD
|
|
* NetBSD
|
|
28. Submit new packages for the following:
|
|
* Alpine Linux
|
|
* Void Linux
|
|
* Gentoo Linux
|
|
* Linux from Scratch
|
|
* Arch Linux
|