logo_kerberos.gif

Difference between revisions of "Release engineering notes"

From K5Wiki
Jump to: navigation, search
Line 4: Line 4:
   
 
* check copyright years in project-wide stuff
 
* check copyright years in project-wide stuff
  +
* update <code>config.guess</code> and <code>config.sub</code> from <code>git://git.savannah.gnu.org/config.git</code>
 
* make sure you're in a build tree that's not the source tree and configured using <code>--enable-maintainer-mode</code>
 
* make sure you're in a build tree that's not the source tree and configured using <code>--enable-maintainer-mode</code>
 
* <code>make depend</code> and commit if changed
 
* <code>make depend</code> and commit if changed

Revision as of 16:54, 31 August 2016

Required manual steps

Pre-mkrel

  • check copyright years in project-wide stuff
  • update config.guess and config.sub from git://git.savannah.gnu.org/config.git
  • make sure you're in a build tree that's not the source tree and configured using --enable-maintainer-mode
  • make depend and commit if changed
  • regenerate manpages: (cd man && make man) and commit if changed
  • regenerate localization template (cd po && make update-po) and commit if changed
  • manually edit patchlevel.h to reflect the new release
  • manually update README
    • release dates (in major changes heading, ISO 8601 date format with hyphens)
    • changes
      • note whether bugfix release, maintenance vs current release
      • bullet list of major changes
      • minor changes = list of RT tickets fixed -- always grab a fresh list from RT when editing these!
    • contributors (RT is a good source for these)
  • make additional manpage and update-po commits with updated patchlevel.h
  • squash preceding commits so all versioning-related commits are a single commit (non-versioning changes to maintainer-mode stuff should remain separate commits)
  • git tag krb5-x.y.z-final

Running mkrel

  • path_to_mkrel/mkrel --repository $YOUR_SOURCE_TREE krb5-x.y.z-final krb5-x.y.z
  • manually inspect output for versioning and correctness
    • HTML docs
    • PDF docs
    • patchlevel.h as modified by mkrel
  • push to authoritative repository
  • rerun mkrel against the authoritative repository: path_to_mkrel/mkrel krb5-x.y.z-final krb5-x.y.z

Post-mkrel

  • PGP sign
  • generate branded HTML docs
  • edit web pages
  • send announcement to kerberos-announce