Skip to content

Latest commit

 

History

History
115 lines (109 loc) · 3.86 KB

RELEASE-CHECKLIST-TEMPLATE.org

File metadata and controls

115 lines (109 loc) · 3.86 KB

pandoc RELEASE_VERSION release checklist

Check priority-high tag

Release any prerelease packages in ./cabal.project

./pandoc.cabal - bump version number

./pandoc-cli/pandoc-cli.cabal - bump version, sync pandoc version

git log $(git describe --tags --abbrev=0)..HEAD --oneline pandoc-cli
git log $(git describe --tags --abbrev=0)..HEAD --oneline pandoc-lua-engine
git log $(git describe --tags --abbrev=0)..HEAD --oneline pandoc-server

Update ./MANUAL.txt date and rebuild man pages

NEWDATE=$(date -I)
sed -i '' -e "/^---$/,/^---$/s/^date:.*$/date: $NEWDATE/" MANUAL.txt
make man
git log $(git describe --tags --abbrev=0)..HEAD --mailmap --reverse --format=format:'  * %s%n    %aN%n%w(78,4,4)%b' | sed -e '/^ *John MacFarlane$/d' | sed -e 's/  *$//'

prerelease checks

make prerelease
make authors
curl -L \
  -X POST \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer $ghtoken"\
  -H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/jgm/pandoc/actions/workflows/release-candidate.yml/dispatches \
  -d '{"ref":"main"}'

Run release candidate workflows manually on cirrus-ci.com

If it builds successfully, download artifacts from GitHub, cirrus-ci.com

(Windows and intel mac from GitHub, linux amd64 and arm64 and m1 mac from cirrus)

Use ‘make’ in macos and windows artifacts to sign code

Update website

make update-website

Tag release in git:

  • use X.Y for pandoc
  • pandoc-cli-X.Y
  • if needed: pandoc-server-X.Y
  • if needed: pandoc-lua-engine-X.Y

Upload packages to Hackage:

echo pandoc
echo pandoc-cli
for package in pandoc-lua-engine pandoc-server; do
    lines=$(git log $(git describe --tags --abbrev=0)..HEAD --oneline $package | wc -l)
    if ! [ $lines -eq 0 ]; then
        echo $package;
    fi
done
  • pandoc
  • pandoc-cli

and if changed:

  • pandoc-server
  • pandoc-lua-engine

make pandoc-templates

make pandoc-templates
pushd ~/src/pandoc-templates
git tag RELEASE_VERSION
git push
git push --tags
popd

Copy deb to server, install it

create release announcement and add to GH release announcement

"I'm pleased to announce the release of pandoc RELEASE_VERSION,
available in the usual places:

Binary packages & changelog:
https://github.com/jgm/pandoc/releases/tag/RELEASE_VERSION

Source & API documentation:
http://hackage.haskell.org/package/pandoc-RELEASE_VERSION

Description of release.

Any API changes.

Thanks to all who contributed, especially new contributors ...
"
echo '```'
cat $announcement
echo '```'
echo ''
make changes_github

Announce on pandoc-announce