Skip to content

Release Procedure

mcuee edited this page Jul 20, 2023 · 11 revisions
* update version info:
  src/configure.ac
  CMakeLists.txt
  NEWS: "changes since " => "changes in "
  git commit -a

* check autotools build:
  cd src
  ./bootstrap
  ./configure --enable-doc # also prepare for docs
  # doesn't run with -k; doc build asks for libavrdude.a :-] (Note: no need -k under Linux)
  make -k distcheck
  result: avrdude-.tar.gz

* build docs
  cd [src/]doc
  make -k (Note: no need -k under Linux)
  result: avrdude.pdf, avrdude-html/
  keep them somewhere

* run CMake build
  cd ../..
  ./build.sh
  this is already tested by CI anyway

* git tag v
  git push --tags

  CI should prepare Github release now

* update version info:
  src/configure.ac (add date tag after release name)
  NEWS: add template lines for "changes since "
  git commit -a
  git push

* update docs:
  git checkout onlinedocs
  mkdir docs/
  cd docs/
  cp ../../src/doc/avrdude-html/* .
  cp ../../src/doc/avrdude.pdf .
  cd ..
  $EDITOR index.html
  add links to new /avrdude.html and /avrdude.pdf
  git add 
  git add index.html
  git commit
  git push

  cd ..
  git checkout main

* download source tarballs from Github release area
  verify they are correct (unpack, and compare against local tree ...)
  gpg --sign --detach for the .zip and .tar.gz
  include GPG signatures in release assets
Clone this wiki locally