public inbox for elfutils@sourceware.org
 help / color / mirror / Atom feed
* Creating an elfutils release
@ 2023-11-03 18:33 Mark Wielaard
  0 siblings, 0 replies; only message in thread
From: Mark Wielaard @ 2023-11-03 18:33 UTC (permalink / raw)
  To: elfutils-devel

Although most things are automated there are a couple of manual steps.
I thought I would write those down, so others can also create a
release.

- Pre-release, go over any pending patches or recently updated
  bugs making sure there isn't anything urgent (or note those as
  known issues in the release notes).
  https://patchwork.sourceware.org/project/elfutils/list/
https://sourceware.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=SUSPENDED&bug_status=WAITING&bug_status=REOPENED&&order=Last%20Changed&product=elfutils&query_format=advanced

- Make sure the buildbot CI is all green
  https://builder.sourceware.org/buildbot/#/builders?tags=elfutils
  Also check the build-only builders (currently only sparc)
https://builder.sourceware.org/buildbot/#/builders?tags=elfutils-build
  And the snapshots (currently only coverage)
https://builder.sourceware.org/buildbot/#/builders?tags=elfutils-snapshots
  The actual latest coverage results can be found at:
  https://snapshots.sourceware.org/elfutils/coverage/latest/
  You can compare with the coverage of the last release:
  https://sourceware.org/elfutils/coverage/

- Create the last "prepare" commit.
  - Edit NEWS to include any noteworthy new items
    come up with a "release name"
  - Update version in configure.ac
    Check/update AC_COPYRIGHT year.
    Check/update lib/printversion.c year.
  - Update po files and config/elfutils.spec.in
    by running:
      autoreconf -f -v -i && \
      ./configure --enable-maintainer-mode && \
      make distcheck -j12
    after making the above updates.
    (This will also check that a dist can be created
     and a build and check can be done from that).
  - Double check the config/elfutils.spec.in changelog entry
    (often needs to be hand edited to adjust whitespace)
  - commit the NEWS, configure.ac, regenerated po and
    config/elfutils.spec.in
  - push
  - Good to wait for buildbots to do one last check.
  - tag and sign the last commit:
    git tag --sign elfutils-0.1xx -m "elfutils 0.1xx release"
  - git push --tags
    (Note that this might also push annotated tags you might
     have imported from other remotes, so check with
     git push --tags -n first)
  - Create and upload the release.
    Requires having sourceware scp access.
  - config/upload-release.sh 0.1xx
    This will do a new checkout using the given tag,
    verifies the tag signature, does a make dist,
    signs the dist tar ball and uploads dist and sig files.
  - Update the latest coverage in the website.
    checkout elfutils-htdocs.git
    ./update-coverage.sh 0.1xx
    This does a fresh checkout and runs make coverage
    Generating a new diff to commit. Check with git show
    then git push.
  - Sent out a "elfutils 0.1xx released" announcement
    to elfutils-devel@sourceware.org (preferably pgp signed)
    include URLs to download
    the NEWS section
    git shortlog elfutils-0.1xx-1.. | sed -e 's/    //'
  - Add release (notes) to website.
    Find release announcement permalink on
    https://inbox.sourceware.org/elfutils-devel/
    in elfutils-htdocs add it under "release notes" in index.html
    git commit -a -m "Add 0.1xx release notes" && git push
  - Update the #elfutils irc.libera.chat channel topic
    revealing the new version and "code name".


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-11-03 18:33 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-11-03 18:33 Creating an elfutils release Mark Wielaard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).