pidgin/nest

4b08d42c82ef
Parents 36361c968236
Children 2a27eadcc6bb
Fixes Formating in release-process
--- a/hugo/content/drafts/release-process.md Sun Feb 03 21:09:43 2019 -0500
+++ b/hugo/content/drafts/release-process.md Sun Mar 17 22:56:07 2019 +0000
@@ -25,17 +25,19 @@
Ask Gary Kramlich or Richard Laager if you need administrative access to [Pidgin's Transifex project](https://www.transifex.com/projects/p/pidgin/resources/) for the following steps.
**Steps**
+
1. Fetch and commit all translations from Transifex.
- a. `cd po`
- a. `make pidgin.pot`
- a. `tx pull --force` - Pulls all translations from Transifex, even if local timestamp is newer than remote.
- a. `XGETTEXT_ARGS=--no-location intltool-update --report` - Merges current strings into translations and strips filename and line numbers to keep diffs smaller.
- a. `find -name \*.po -exec msgfmt -cv {} \;` - Check for mismatched c-format specifiers. These can cause crashes so look at the output carefully! If any are found, follow these steps:
- 1. Edit the translation in Transifex.
- 1. Remove the string with the mismatched c-format specifiers (leave it blank).
- 1. `tx pull --force --language=NN` - Pull the updated translation from Transifex.
+ 1. `cd po`
+ 1. `make pidgin.pot`
+ 1. `tx pull --force` - Pulls all translations from Transifex, even if local timestamp is newer than remote.
+ 1. `XGETTEXT_ARGS=--no-location intltool-update --report` - Merges current strings into translations and strips filename and line numbers to keep diffs smaller.
+ 1. `find -name \*.po -exec msgfmt -cv {} \;` - Check for mismatched c-format specifiers. These can cause crashes so look at the output carefully! If any are found, follow these steps:
+ 1. Edit the translation in Transifex.
+ 1. Remove the string with the mismatched c-format specifiers (leave it blank).
+ 1. `tx pull --force --language=NN` - Pull the updated translation from Transifex.
**Other Pre-Release Steps**
+
1. Make sure list of translators in `pidgin/gtkdialogs.c` matches the Transifex translations teams. (TODO: This is labor intensive and error prone. Should find a way to automate.)
1. Check there are no open tickets for this release milestone
1. Make sure the date and version number are correct in ChangeLog and ChangeLog.API
@@ -46,46 +48,47 @@
1. Verify that win32 builds succeed (including building installers).
## Release
+
1. Tag the repository. The tag should have a `v` prefix. Ie: `v2.12.0`.
1. Extract the tagged code `hg archive -r $TAG ../pidgin-$VERSION`.
1. `cd ../pidgin-$VERSION`
1. Run `./autogen.sh`
- 1. Run `make release`
- This will perform the following steps (which can also be done by hand at this point):
- a. `make commit-check` - Checks a few files for correctness (UTF-8 encoding, sort order, etc.).
- a. `make version-check` - Make sure version string does not contain "dev," version is correct in ChangeLogs, and we're building from a clean hg tag.
- a. `make distcheck` - Standard automake target. Builds and verifies tarballs. If "distcheck" fails and you're sure the failure is innocuous then you can use `make dist`, instead.
- a. `make sign-packages` - Creates a gpg signature of the two tarballs.
+ 1. Run `make release`: This will perform the following steps (which can also be done by hand at this point):
+ 1. `make commit-check` - Checks a few files for correctness (UTF-8 encoding, sort order, etc.).
+ 1. `make version-check` - Make sure version string does not contain "dev," version is correct in ChangeLogs, and we're building from a clean hg tag.
+ 1. `make distcheck` - Standard automake target. Builds and verifies tarballs. If "distcheck" fails and you're sure the failure is innocuous then you can use `make dist`, instead.
+ 1. `make sign-packages` - Creates a gpg signature of the two tarballs.
1. [wiki:BuildingWinPidgin Build on Windows]
- a. If there's a new GTK+ Bundle, upload the zip file to [Sourceforge](https://sourceforge.net/projects/pidgin/files/Pidgin/) and make sure that the `BUNDLE_SHA1SUM` in `pidgin/win32/nsis/generate_gtk_zip.sh` is correct (this should have been checked before `make release`).
- a. Check the authenticode signature and timestamp for the installers (unfortunately needs to be done on a Windows box with the Platform SDK installed)
-```
-signtool.exe verify /pa /tw pidgin-$VERSION-offline.exe
-signtool.exe verify /pa /tw pidgin-$VERSION.exe
-```
- a. Install `pidgin-$VERSION-offline.exe` and check the authenticode signature and timestamp of pidgin.exe
-```
-signtool.exe verify /pa /tw %ProgramFiles(x86)%\Pidgin\pidgin.exe
-```
+ 1. If there's a new GTK+ Bundle, upload the zip file to [Sourceforge](https://sourceforge.net/projects/pidgin/files/Pidgin/) and make sure that the `BUNDLE_SHA1SUM` in `pidgin/win32/nsis/generate_gtk_zip.sh` is correct (this should have been checked before `make release`).
+ 1. Check the authenticode signature and timestamp for the installers (unfortunately needs to be done on a Windows box with the Platform SDK installed)
+
+ signtool.exe verify /pa /tw pidgin-$VERSION-offline.exe
+ signtool.exe verify /pa /tw pidgin-$VERSION.exe
+
+ 1. Install `pidgin-$VERSION-offline.exe` and check the authenticode signature and timestamp of pidgin.exe
+
+ signtool.exe verify /pa /tw %ProgramFiles(x86)%\Pidgin\pidgin.exe
+
1. `hg push` the tag.
1. Upload the two tarballs, the two signatures, and the Windows builds to [Sourceforge](https://sourceforge.net/projects/pidgin/files/Pidgin/)
1. Wait a few hours and let people test.
1. Build and upload new API docs.
- a. Run `make` locally?
- a. `scp docs/reference/libpurple/html nicobar.pidgin.im:/srv/www/developer.pidgin.im/doxygen/x.y.z/libpurple/`
- a. `scp docs/reference/pidgin/html nicobar.pidgin.im:/srv/www/developer.pidgin.im/doxygen/x.y.z/pidgin/`
- a. `scp docs/reference/finch/html nicobar.pidgin.im:/srv/www/developer.pidgin.im/doxygen/x.y.z/finch/`
+ 1. Run `make` locally?
+ 2. `scp docs/reference/libpurple/html nicobar.pidgin.im:/srv/www/developer.pidgin.im/doxygen/x.y.z/libpurple/`
+ 3. `scp docs/reference/pidgin/html nicobar.pidgin.im:/srv/www/developer.pidgin.im/doxygen/x.y.z/pidgin/`
+ 4. `scp docs/reference/finch/html nicobar.pidgin.im:/srv/www/developer.pidgin.im/doxygen/x.y.z/finch/`
1. Update the Pidgin website
- a. Change `inc/version.inc.php` (only for full releases, not for betas)
- a. Update the ChangeLog in https://bitbucket.org/pidgin/www/ (this is used by the release notification plugin)
+ 1. Change `inc/version.inc.php` (only for full releases, not for betas)
+ 2. Update the ChangeLog in https://bitbucket.org/pidgin/www/ (this is used by the release notification plugin)
1. Send announcement email to announce and packagers mailing lists (sending to announce also sends to support and devel)
- * Someone must approve the posts in the [support](https://pidgin.im/cgi-bin/mailman/admindb/support) and [devel](https://pidgin.im/cgi-bin/mailman/admindb/devel) admin interface.
+ * Someone must approve the posts in the [support](https://pidgin.im/cgi-bin/mailman/admindb/support) and [devel](https://pidgin.im/cgi-bin/mailman/admindb/devel) admin interface.
## Post Release
+
1. Increment version number in `configure.ac` & set `purple_version_suffix`and `gnt_version_suffix` to `devel`
1. Update `#pidgin` topic
1. Add new Trac Version for this release
1. Add new Trac milestone for the next release
- 1. "Complete" old milestone
+ 1. "Complete" old milestone
1. Bump the auto-close script to target auto-closed bugs to the new milestone (/srv/trac/developer.pidgin.im/mercurial_support/trac-hg-post-commit-hook.py on nicobar.pidgin.im)
- 1. Update "The Road to" on WikiStart to list tickets for the new version
\ No newline at end of file
+ 1. Update "The Road to" on WikiStart to list tickets for the new version