]> git.ipfire.org Git - thirdparty/gettext.git/commitdiff
maint: Adjust Admin/release-steps to the current procedure
authorDaiki Ueno <ueno@gnu.org>
Thu, 4 Dec 2014 05:53:53 +0000 (14:53 +0900)
committerDaiki Ueno <ueno@gnu.org>
Thu, 4 Dec 2014 05:53:53 +0000 (14:53 +0900)
Admin/release-steps

index e2b51291f912e062430695bf68b2ad3ceab24760..19474345b922fe77998ec05aabab16ff4c59bbbf 100644 (file)
-Tasks not to forget before release:
-
-- Update ABOUT-NLS and doc/matrix.texi with information from the Translation
-  Project, by running run.sh in gettext-runtime/doc/Admin/.
-
-- Update gettext-runtime/intl/locale.alias from glibc's intl/locale.alias.
-- Update gettext-runtime/intl/{localcharset.h,localcharset.c,config.charset}
-  from libcharset inside libiconv.
-  Check that gnulib/lib/{localcharset.h,localcharset.c,config.charset}
-  agrees with it, except for copyright header changes.
-
-- Update Origin version in
-    gettext-runtime/po/Makefile.in.in
-  if this file has changed since the last release.
-
-- Update the version numbers in
-    gettext-runtime/m4/po.m4
-    gettext-runtime/po/Makefile.in.in
-    gettext-runtime/intl/libgnuintl.in.h
-    gettext-tools/libgettextpo/gettext-po.in.h
-
-- Update -version-info arguments in gettext-runtime/intl/Makefile.in
-  and in gettext-tools/libgettextpo/Makefile.am.
-  * increment LTV_REVISION,
-  * if any functions/classes have been added, removed or changed, increment
-    LTV_CURRENT and set LTV_REVISION to 0,
-  * if any functions/classes have been added, increment LTV_AGE,
-  * if backwards compatibility has been broken, set LTV_AGE to 0.
-
-- Bump po-mode-version-string in gettext-tools/misc/po-mode.el.
-
-- Verify that the C files generated from *.y files contain no absolute
-  filenames.
-
-- Update djgpp/*.
-
-- Update gettext-tools/examples/*/LINGUAS and the file list in
-  gettext-tools/examples/Makefile.am. Also
-  "cd gettext-tools/examples/po; make update-po".
-
-- Update
-    NEWS
-    gettext-runtime/libasprintf/NEWS
-    gettext-runtime/NEWS
-
-- Iterate:
-    ./rerun-autogen
-    ./rerun-configure
+Release procedure
+============================================================================
+* Create a branch for release
+
+    git checkout -b release-0.XX
+
+* Update 'gnulib' git submodule:
+
+    git submodule foreach git pull origin master
+    git commit -m 'Update gnulib'
+
+* Update files:
+
+  - gettext-runtime/ABOUT-NLS
+  - gettext-runtime/doc/matrix.texi
+
+    Update with information from the Translation Project, by running
+    run.sh in gettext-runtime/doc/Admin/.
+
+  - gettext-runtime/intl/locale.alias
+
+    Update with glibc's intl/locale.alias.
+
+  - gettext-runtime/intl/localcharset.h
+  - gettext-runtime/intl/localcharset.c
+  - gettext-runtime/intl/config.charset
+
+    Update with libcharset inside libiconv.  Check that
+    gnulib/lib/{localcharset.h,localcharset.c,config.charset} agrees
+    with it, except for copyright header changes.
+
+  - gettext-runtime/po/Makefile.in.in
+
+    Update Origin version, if this file has changed since the last
+    release.
+
+  - gettext-runtime/m4/po.m4
+  - gettext-runtime/po/Makefile.in.in
+  - gettext-runtime/intl/libgnuintl.in.h
+  - gettext-tools/libgettextpo/gettext-po.in.h
+
+    Update the version numbers.
+
+  - gettext-runtime/intl/Makefile.in
+  - gettext-tools/libgettextpo/Makefile.am
+
+    Update -version-info arguments, according to libtool versioning
+    (info "(libtool) Updating version info").
+
+      * increment LTV_REVISION,
+      * if any functions/classes have been added, removed or changed, increment
+        LTV_CURRENT and set LTV_REVISION to 0,
+      * if any functions/classes have been added, increment LTV_AGE,
+      * if backwards compatibility has been broken, set LTV_AGE to 0.
+
+  - gettext-tools/misc/po-mode.el
+
+    Bump po-mode-version-string.
+
+  - NEWS
+  - gettext-runtime/libasprintf/NEWS
+  - gettext-runtime/NEWS
+
+  - djgpp/*
+
+* Run these commands, in this order:
+
+    ./autogen.sh
+    ./configure
     make distcheck-hook
-    ./rerun-make
+    make
+    (cd gettext-tools/examples/po && make update-po)
     make distcheck
-    Test tarball on various platforms.
-    Put fixes into gettext and gnulib.
-    make distclean
-  until it builds and installs fine on the said platforms.
 
-- Commit all the files in gnulib.
+  Then you will get a distribution tarball:
+
+    gettext-0.XX-*.tar.xz
+
+  Rename it e.g. gettext-ss.tar.xz
+
+* Test the snapshot tarball.  If it seems good, then upload to
+  alpha.gnu.org:
 
-- Update git submodules.
-  git submodule foreach git pull origin master
+    gnulib/build-aux/gnupload --to alpha.gnu.org:gettext \
+                              gettext-ss.tar.xz
 
-- Add an entry to all the ChangeLogs
-  except gettext-tools/examples/hello-c++-kde/admin/ChangeLog.
-  Run Admin/update-changelog from the top-level directory.
+  Notify translators and testers, by sending an email to:
 
-- Update translations from the Translation Project
+    coordinator@translationproject.org
+    platform-testers@gnu.org
 
-  rsync -Lrtvz translationproject.org::tp/latest/gettext-runtime/ \
-       gettext-runtime/po
-  rsync -Lrtvz translationproject.org::tp/latest/gettext-tools/ \
-       gettext-tools/po
-  rsync -Lrtvz translationproject.org::tp/latest/gettext-examples/ \
-       gettext-tools/examples/po
+* Once you get enough translation updates, update translations:
+
+    rsync -Lrtvz translationproject.org::tp/latest/gettext-runtime/ \
+          gettext-runtime/po
+    rsync -Lrtvz translationproject.org::tp/latest/gettext-tools/ \
+          gettext-tools/po
+    rsync -Lrtvz translationproject.org::tp/latest/gettext-examples/ \
+          gettext-tools/examples/po
 
   Adjust LINGUAS files if any of the languages has been added or
-  removed since the last release.  Commit the changes.  Please do NOT
-  commit regenerated PO files after "make dist".
-
-- Tag the repository (don't push it to the remote repository yet).
-  git tag -m 'gettext 0.19 release' v0.19
-
-- "make"; "make dist"; "make distcheck"
-- cd gettext-tools/misc
-  cp archive.dir.tar.gz-<last-release-number> archive.dir.tar.gz
-  ./add-to-archive /somewhere/gettext-0.xx.yy.tar.gz
-  Then update the case statement in autopoint.in.  Also, update
-  required_gettext_version in gettext-tools/tests/autopoint-[23].
-- regenerate POT and PO files with the built tools
-  PATH="$PWD/gettext-tools/src:$PWD/gettext-tools/misc:$PATH" \
-  gettext_datadir="$PWD/gettext-tools/misc" \
-  make maintainer-update-po
-- again: "make dist"
-
-- Upload gettext-0.xx.yy.tar.{gz,xz} to ftp.gnu.org, according to the
-  procedure given by Bradley M. Kuhn on 2003-11-11
-  http://www.gnu.org/prep/maintain/maintain.html#Automated-Upload-Procedure,
-  or using the gnupload script in gnulib.
-  gnulib/build-aux/gnupload --to ftp.gnu.org:gettext gettext-0.xx.yy.tar.{gz,xz}
-
-- Upload archive.dir.tar.xz to alpha.gnu.org.
-  xz gettext-tools/misc/archive.dir.tar
-  cp gettext-tools/misc/archive.dir.tar.xz archive.dir-0.xx.yy.tar.xz
-  gnulib/build-aux/gnupload --to alpha.gnu.org:gettext \
-                            --symlink-regex archive.dir-0.xx.yy.tar.xz
-
-- Push tag to the repository.
-  git push --tags
-
-- Update the homepage on www.gnu.org:
+  removed since the last release.  Commit the changes.
+
+* Regenerate POT and PO files with the built tools
+
+    PATH="$PWD/gettext-tools/src:$PWD/gettext-tools/misc:$PATH" \
+    gettext_datadir="$PWD/gettext-tools/misc" \
+    make maintainer-update-po
+
+  Note: Do not commit the generated PO files after "make dist".
+
+* Update autopoint related files:
+
+  - gettext-tools/misc/autopoint.in
+
+    Update the case statement to include the latest release.
+
+  - gettext-tools/tests/autopoint-[23]
+
+    Update required_gettext_version.
+
+  and commit the changes.
+
+* Update all ChangeLogs:
+
+    ./Admin/update-changelog
+
+  and commit the changes.
+
+* Create a release:
+
+    git clean -xdff
+    git checkout .
+    git tag -u <gpg-key-id> v0.XX
+    ./autogen.sh
+    ./configure
+    make distcheck-hook
+    make
+    make distcheck
+    (cd gettext-tools/misc
+     ./add-to-archive ../../gettext-0.XX.tar.gz)
+    make
+    make distcheck
+
+* Upload tarballs:
+
+    gnulib/build-aux/gnupload --to ftp.gnu.org:gettext gettext-0.XX.tar.{gz,xz}
+
+* Merge release-0.XX branch to master and push the changes to the
+  remote repository:
+
+    git checkout master
+    git merge release-0.XX
+    git push
+    git push --tags
+
+* Upload autopoint archive to alpha.gnu.org:
+
+    xz gettext-tools/misc/archive.dir.tar
+    cp gettext-tools/misc/archive.dir.tar.xz archive.dir-0.XX.tar.xz
+    gnulib/build-aux/gnupload --to alpha.gnu.org:gettext \
+                              --symlink-regex archive.dir-0.XX.tar.xz
+
+* Update the homepage on www.gnu.org:
+
   - Bump the version number in gettext.html.
   - Update FAQ.html from gettext-tools/doc/FAQ.html.
 
-- Regenerate the documentation for www.gnu.org:
-  - Run the update.sh script, or
-  - Do this:
-    - In the gettext-tools/doc/ directory, copy the
-      gendocs.sh and gendocs_template files and run
-        $ cp -p ../../gettext-runtime/doc/*.texi .
-        $ LC_ALL=C ./gendocs.sh --email bug-gnu-gettext gettext "GNU gettext"
-    - In the gettext-runtime/libasprintf/ directory, copy the
-      gendocs.sh and gendocs_template files and run
-        $ LC_ALL=C ./gendocs.sh --email bug-gnu-gettext autosprintf "GNU autosprintf"
-    Copy the resulting manual/ directories.
-  Commit the resulting manual/ directories in CVS, and for every removed HTML
-  file (that corresponds to a deleted node) add a line to the .symlinks file
-  in the same directory.
-
-- Submit a News entry on https://savannah.gnu.org/projects/gettext/
-
-- Announce on info-gnu
+* Regenerate the documentation for www.gnu.org:
+
+    cp gnulib/build-aux/gendocs.sh gettext-tools/doc
+    cp gnulib/doc/gendocs_template gettext-tools/doc
+    cp -p gettext-runtime/doc/*.texi gettext-tools/doc
+    (cd gettext-tools/doc
+     LC_ALL=C ./gendocs.sh --email bug-gnu-gettext gettext "GNU gettext")
+
+    cp gnulib/build-aux/gendocs.sh gettext-runtime/libasprintf
+    cp gnulib/doc/gendocs_template gettext-runtime/libasprintf
+    (cd gettext-runtime/libasprintf
+     LC_ALL=C ./gendocs.sh --email bug-gnu-gettext autosprintf "GNU autosprintf")
+
+  Copy the resulting manual/ directories.  Commit the resulting
+  manual/ directories in CVS, and for every removed HTML file (that
+  corresponds to a deleted node) add a line to the .symlinks file in
+  the same directory.
+
+* Submit a News entry on https://savannah.gnu.org/projects/gettext/
+
+* Announce on info-gnu