Notes for the GnuPG maintainer (GIT only) ============================================ Here are some notes on how to maintain GnuPG. Release Planning: ================= If you are planning a new release and strings have changed you should send a notification to all translators, so that they have time to update their translations. scripts/mail-to-translators is useful for this. It might need some tweaking and it needs to be armored for actual sending. Running it as is to see what will happen is a good idea, though. Release process: ================ * Make sure that all new PO files are checked in. * Decide whether you want to update the automake standard files (Mainly config.guess and config.sub). * [1.4 only] Update gpg.texi and gpgv.texi from the trunk: make -C doc update-source-from-gnupg-2 * [1.4 and 2.0] Copy needed texinfo files from trunk. * Run "make -C po update-po". * Write NEWS entries and set the release date in NEWS. * In configure.ac set "my_issvn" to "no". * Commit all changes to GIT and push them. * Do a commit with a "Release " line. * Run "./autogen.sh --force" (--force is required for the svn magic in configure.ac and a good idea in any case) * Run "configure --enable-maintainer-mode". * Run "make distcheck". * Build and test the new tarball (best on a different machine). * Build and test the W32 version. * [2.x only] Using the final test build run a "make -C doc online". * Sign the tarball * Get the previous tarball and run "mkdiff gnupg". You might need to set a different signature key than mine. mkdiff has an option for this. * If you are satisfied with the result commit a tag for the release. * Copy the files to the FTP server * Update the webpages - at least the file swdb.wml needs an update. * Add a new headline to NEWS. * Bump "my_version" up and set "my_issvn" back to "yes" in configure.ac * Write an announcement. Update https://savannah.gnu.org/projects/gnupg . Gotchas ======= - If during "make distcheck" you get an error about a permission problem moving foo.new.po to foo.po; this is caused by a check whether the po files can be re-created. Now if the first tarball has been created in a different top directory and if there exists a no distributed file with the string "GNU gnupg" (e.g. a log file from running make) you end up with different comments in the po files. Check out /usr/lib/gettext/project-id for that silliness. As a hack we added this string into configure.ac.