Update how-to-release instructions

Document bakefile version needed and the commands for regenerating the
files generated by it.

Also update instructions for changing C:R:A values.

Closes https://github.com/wxWidgets/wxWidgets/pull/1838
This commit is contained in:
Danny Scott
2020-05-04 15:22:51 -03:00
committed by Vadim Zeitlin
parent 7158c9b5be
commit b424ac6fe9

View File

@@ -5,6 +5,7 @@ Creating a new release requires a few things before getting started:
* Linux (or another Unix but GNU tar is required).
* Windows 7+ with HTML Help Workshop, and Inno Setup installed.
* 7-Zip, Doxygen 1.8.8, and GraphViz installed on both machines.
* [Bakefile 0.2.12](https://bakefile.org/) installed on the linux machine.
Unless mentioned otherwise, all steps should be run on Linux or OSX so that the
repository export used for the release is primarily using LF line endings. Files
@@ -47,10 +48,15 @@ and then run it using the new DLLs.
## Pre-Release Steps
1. Perform the following steps. You can run `build/tools/pre-release.sh` to do
the straightforward changes like updating the date and version number
the straightforward changes like updating the dates and checksums
automatically, but please also review and update the contents of the README
and announcement text.
The Post-Release step of the previous release will have updated
the micro version of this release. If this release represents a major
or minor release, these changes will have to be performed manually at
this point.
Note that the best order depends on the release being prepared: for a
development release, `docs/publicity/announce.txt` contains the list of the
major changes since the last stable release and should be updated first, as
@@ -67,7 +73,18 @@ and then run it using the new DLLs.
* Update `docs/msw/binaries.md`: at least the version, but possibly also
the list of supported compilers.
2. Commit the changes and tag the release using your GPG key:
2. For micro releases, review the changelog to determine if any ABI changes
have been made. If so, or if this is a major or minor release, update
the C:R:A settings in `build/tools/version.bkl`. Then from the
`build/bakesfiles` directory run
bakefile_gen
and from the root directory run
autoconf -B build/autoconf_prepend-include
3. Commit the changes and tag the release using your GPG key:
git tag -s -m 'Tag X.Y.Z release' vX.Y.Z
@@ -182,22 +199,30 @@ Submit to https://isocpp.org/blog/suggest (need to be logged in to do it).
For major releases, submit the announcement to https://slashdot.org/submission
## Version Updates
## Post-Release Steps
Trac: mark the milestone corresponding to the release as completed and add a
new version for it to allow reporting bugs against it and create the next
milestone (ask Vadim or Robin to do it or to get admin password).
* Trac: mark the milestone corresponding to the release as completed and
add a new version for it to allow reporting bugs against it and create the
next milestone (ask Vadim or Robin to do it or to get admin password).
Update the roadmap at https://trac.wxwidgets.org/wiki/Roadmap to at least
mention the new release there.
* Update the roadmap at https://trac.wxwidgets.org/wiki/Roadmap to at
least mention the new release there.
Increase the version for the next release at https://trac.wxwidgets.org/wiki/Queries
in "Tickets to be fixed for the next release".
* Increase the version for the next release at
https://trac.wxwidgets.org/wiki/Queries in "Tickets to be fixed for the
next release".
Run `misc/scripts/inc_release` to increment micro version, i.e. replace x.y.z
with x.y.z+1 (minor or major versions updates require manual intervention)
and rerun both `bakefile_gen` and `autoconf` afterwards to update the version
in the generated files too.
* Run `misc/scripts/inc_release` to increment micro version,
i.e. replace x.y.z with x.y.z+1.
* Update the C:R:A settings in build/tools/version.bkl to C:R+1:A.
Then from the build/bakesfiles directory run
bakefile_gen
and from the root directory run
autoconf -B build/autoconf_prepend-include
## MSW Visual Studio Official Builds