Hello community,
here is the log from the commit of package translation-update-upstream for
openSUSE:Factory
checked in at Thu Feb 24 08:52:38 CET 2011.
--------
--- translation-update-upstream/translation-update-upstream.changes
2011-02-14 15:21:25.000000000 +0100
+++
/mounts/work_src_done/STABLE/translation-update-upstream/translation-update-upstream.changes
2011-02-23 17:19:03.000000000 +0100
@@ -1,0 +2,10 @@
+Wed Feb 23 17:11:45 CET 2011 - [email protected]
+
+- Added translations for more packages (bnc#673924).
+- Supplementary scripts improvements:
+ * Improved support for partial translations update.
+ * Added support for parallel processing of po files.
+ * Do not generate empty new translations.
+ * Use gettext-tools instead of sed hacks.
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
lcn-sle.hook
translation-update-mandatory-20110211.tar.bz2
translation-update-upstream-20110211.tar.bz2
New:
----
translation-update-mandatory-20110222.tar.bz2
translation-update-upstream-20110222.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ translation-update-upstream.spec ++++++
--- /var/tmp/diff_new_pack.yWpO5R/_old 2011-02-24 08:48:48.000000000 +0100
+++ /var/tmp/diff_new_pack.yWpO5R/_new 2011-02-24 08:48:48.000000000 +0100
@@ -21,9 +21,11 @@
Name: translation-update-upstream
License: GPLv2+
Group: System/Localization
-Version: 20110211
+Version: 20110222
Release: 1
Summary: Tool for Translation Update from Upstream
+# Ignore cracklib, as it causes build loop cracklib <->
translation-update-upstream
+#!BuildIgnore: cracklib libcrack2
Provides: translation-update-tool
Source: %{name}-%{version}.tar.bz2
Source1: %{name}.in
@@ -50,7 +52,6 @@
Source61: upstream-gnome_gtp.hook
Source62: freedesktop_org.tlst
Source63: lcn-sle.tlst
-Source64: lcn-sle.hook
Source65: misc.tlst
Source66: opensuse.tlst
BuildRoot: %{_tmppath}/%{name}-%{version}-build
++++++ lcn-sle.tlst ++++++
--- /var/tmp/diff_new_pack.yWpO5R/_old 2011-02-24 08:48:48.000000000 +0100
+++ /var/tmp/diff_new_pack.yWpO5R/_new 2011-02-24 08:48:48.000000000 +0100
@@ -97,7 +97,7 @@
#NA: scpm_groups scpm_groups
lcn - scpm_groups/po SLE11SP1
#NA: scpm_lib scpm_lib
lcn - scpm_lib/po SLE11SP1
shared-mime-info shared-mime-info lcn -
shared-mime-info/po SLE11SP1
-simple-ccsm-kde simple-ccsm-kde lcn -
simple-ccsm-kde/po SLE11SP1
+#DROPPED: simple-ccsm-kde simple-ccsm-kde
lcn - simple-ccsm-kde/po SLE11SP1
#NA: slideshow slideshow
lcn - slideshow/po SLE11SP1
#NA: slideshow-sled slideshow-sled
lcn - slideshow-sled/po SLE11SP1
#NA: suseplugger suseplugger
lcn - suseplugger/po SLE11SP1
++++++ misc.tlst ++++++
--- /var/tmp/diff_new_pack.yWpO5R/_old 2011-02-24 08:48:48.000000000 +0100
+++ /var/tmp/diff_new_pack.yWpO5R/_new 2011-02-24 08:48:48.000000000 +0100
@@ -3,3 +3,4 @@
#pam Linux-PAM cvs
pam.cvs.sourceforge.net:/cvsroot/pam Linux-PAM/po
# No update available yet:
#pidgin pidgin tbz
http://downloads.sourceforge.net/pidgin/pidgin-2.7.10.tar.bz2 pidgin-2.7.10/po
+gtkspell gtkspell tgz
http://downloads.sourceforge.net/gtkspell/gtkspell-2.0.16.tar.gz
gtkspell-2.0.16/po
++++++ msgheadermerge ++++++
--- /var/tmp/diff_new_pack.yWpO5R/_old 2011-02-24 08:48:48.000000000 +0100
+++ /var/tmp/diff_new_pack.yWpO5R/_new 2011-02-24 08:48:48.000000000 +0100
@@ -5,7 +5,7 @@
# This tool merges headers of two .po files and never loses extra info (e. g.
plurals).
rm -rf {${1%.po},${2%.po}}-msgheadermerge-temp.{merge-dir,order}
-trap "rm -rf {${1%.po},${2%.po}}-msgheadermerge-temp.{merge-dir,order}
${2%.po}-msgheadermerge-tempheader.po" 0
+trap "rm -rf {${1%.po},${2%.po}}-msgheadermerge-temp.{merge-dir,order}
${2%.po}-msgheadermerge-tempheader{,1}.po" 0
RC=0
@@ -44,7 +44,7 @@
cat ${1%.po}-msgheadermerge-temp.order >>${2%.po}-msgheadermerge-temp.order
msgmerge --quiet --force-po $2 $0-empty.pot -o
${2%.po}-msgheadermerge-tempheader.po
-sed -i '/^#~/,$d' ${2%.po}-msgheadermerge-tempheader.po
-msgfilter --force-po -i ${2%.po}-msgheadermerge-tempheader.po -o $3 $0-compose
${1%.po}-msgheadermerge-temp.merge-dir ${2%.po}-msgheadermerge-temp.order
+msgattrib --no-obsolete --force-po ${2%.po}-msgheadermerge-tempheader.po -o
${2%.po}-msgheadermerge-tempheader1.po
+msgfilter --force-po -i ${2%.po}-msgheadermerge-tempheader1.po -o $3
$0-compose ${1%.po}-msgheadermerge-temp.merge-dir
${2%.po}-msgheadermerge-temp.order
exit $RC
++++++ msgheadermerge-compose ++++++
--- /var/tmp/diff_new_pack.yWpO5R/_old 2011-02-24 08:48:48.000000000 +0100
+++ /var/tmp/diff_new_pack.yWpO5R/_new 2011-02-24 08:48:48.000000000 +0100
@@ -17,7 +17,11 @@
fi
rm -f "$PO_HEADER_DIR/$REPLY"
done
- rmdir $PO_HEADER_DIR
+ if ! rmdir $PO_HEADER_DIR ; then
+ echo "WARNING: These items of $PO_HEADER_DIR were not processed:" >&2
+ ls -1 $PO_HEADER_DIR >&2
+ echo "This can happen if the file lacks one of mandatory header items."
>&2
+ fi
else
exit 1
fi
++++++ opensuse.tlst ++++++
--- /var/tmp/diff_new_pack.yWpO5R/_old 2011-02-24 08:48:48.000000000 +0100
+++ /var/tmp/diff_new_pack.yWpO5R/_new 2011-02-24 08:48:48.000000000 +0100
@@ -35,7 +35,7 @@
#NA: pam_unix2 pam_unix2
lcn - pam_unix2/po
#TODO: patterns patterns
lcn - patterns/po
#YAST: sax sax
lcn - sax/po
-simple-ccsm-kde simple-ccsm-kde lcn -
simple-ccsm-kde/po
+#DROPPED: simple-ccsm-kde simple-ccsm-kde
lcn - simple-ccsm-kde/po
#NA: slideshow slideshow
lcn - slideshow/po
#NA: SUSEgreeter SUSEgreeter
lcn - SUSEgreeter/po
#NA: susetranslations susetranslations
lcn - susetranslations/po
++++++ translation-update-mandatory-20110211.tar.bz2 ->
translation-update-mandatory-20110222.tar.bz2 ++++++
++++ no output (probably identical)
++++++ translation-update-upstream-20110211.tar.bz2 ->
translation-update-upstream-20110222.tar.bz2 ++++++
translation-update-upstream/translation-update-upstream-20110211.tar.bz2
/mounts/work_src_done/STABLE/translation-update-upstream/translation-update-upstream-20110222.tar.bz2
differ: char 11, line 1
++++++ upstream-collect.sh ++++++
--- /var/tmp/diff_new_pack.yWpO5R/_old 2011-02-24 08:48:49.000000000 +0100
+++ /var/tmp/diff_new_pack.yWpO5R/_new 2011-02-24 08:48:49.000000000 +0100
@@ -6,8 +6,11 @@
# If you want to use po files for completing of translations, you can remove
--no-fuzzy-matching.
# It will run much slower, but you could start with fuzzy matches.
-WORK_DIR=$PWD
+# Debug mode. Set to true if you want to keep working directories.
DEBUG=false
+# Number of CPUs. When > 1, then parallel processing of more po files is
possible.
+CPUS=$(cat /proc/cpuinfo | grep processor | wc -l)
+WORK_DIR=$PWD
set -o errexit
shopt -s nullglob
@@ -32,7 +35,7 @@
trap - 0
}
-ONLY_PACKAGE=
+ONLY_PACKAGES=()
FULL_PROCESS=true
SNAPSHOT=$(LC_ALL=C LANG=C date +%Y%m%d)
case $1 in
@@ -45,7 +48,7 @@
"" )
;;
* )
- ONLY_PACKAGE="$1"
+ ONLY_PACKAGES=("$@")
FULL_PROCESS=false
;;
esac
@@ -53,7 +56,8 @@
rm -rf UPSTREAM
mkdir UPSTREAM
if ! test -d STAMPS ; then
- mkdir OSC PACKAGES UPDATE STAMPS pot
+ mkdir -p pot
+ mkdir OSC PACKAGES UPDATE STAMPS
rm -f upstream-collect.log
fi
@@ -96,6 +100,7 @@
tar -jxf ../$ARCHIVE
# If it is not a full process, increment only release
# SNAPSHOT 20090213 -> 20090213.1, 20090213.1 -> 20090213.2
+ cd ..
fi
SNAPSHOT=${ARCHIVE#translation-update-upstream-}
SNAPSHOT=${SNAPSHOT%.tar.bz2}
@@ -107,7 +112,6 @@
let SNAPSHOT_PART2++
fi
SNAPSHOT=$SNAPSHOT_PART1.$SNAPSHOT_PART2
- cd ..
fi
SERIAL=0
@@ -147,8 +151,15 @@
continue
fi
- if test -n "$ONLY_PACKAGE" ; then
- if test "$ONLY_PACKAGE" != "$PACKAGE" ; then
+ if test "${#ONLY_PACKAGES}" -gt 0 ; then
+ SKIP_PACKAGE=true
+ for ONLY_PACKAGE in "${ONLY_PACKAGES[@]}" ; do
+ if test "$ONLY_PACKAGE" = "$PACKAGE" ; then
+ SKIP_PACKAGE=false
+ break
+ fi
+ done
+ if $SKIP_PACKAGE ; then
if test -d $WORK_DIR/UPDATE_OLD/po/$DOMAIN ; then
if test -d $WORK_DIR/UPDATE/po/$DOMAIN ; then
echo "Should not happen. Internal error."
@@ -379,6 +390,7 @@
# foo-updates.po: fixes + additions in a single file, clean form with an
useful header (this file will be copied to UPDATE/)
#
for PO in *.po ; do
+ (
if $MANDATORY ; then
# Mandatory sources: copy the whole source to the mandatory po
directory. Strings must not be skipped.
mkdir -p $WORK_DIR/UPDATE/po-mandatory/$DOMAIN
@@ -390,7 +402,7 @@
fi
else
# step 0: Merge new po file into old project. Removes unused
(too new) translations.
- if ! msgmerge --no-fuzzy-matching $PO $RPMPODIR/$DOMAIN.pot -o
${PO%.po}-backport.po ; then
+ if ! msgmerge --no-fuzzy-matching $PO $RPMPODIR/$DOMAIN.pot -o
${PO%.po}-backport.po~ ; then
echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE
gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR
branch=${BRANCH:(default)} po=$PO: msgmerge error"
continue
fi
@@ -409,49 +421,49 @@
echo >>$WORK_DIR/upstream-collect.log
"package=$PACKAGE gettext-package=$DOMAIN repository=$REPO directory=$RPMPODIR
branch=${BRANCH:(default)} po=$PO: old po file, skipping fixes"
OLD_UPDATE=true
fi
- msgcat --force-po --use-first ${PO%.po}-uheader.po
${PO%.po}-backport.po $WORK_DIR/UPDATE/po/$DOMAIN/$PO -o ${PO%.po}-upstream.po
+ msgcat --force-po --use-first ${PO%.po}-uheader.po
${PO%.po}-backport.po~ $WORK_DIR/UPDATE/po/$DOMAIN/$PO -o ${PO%.po}-upstream.po
else
- cp -a ${PO%.po}-backport.po ${PO%.po}-upstream.po
+ cp -a ${PO%.po}-backport.po~ ${PO%.po}-upstream.po
fi
# step 3: Join both translations, without --use-first
string changes will disappear as fuzzy.
msgcat --force-po ${PO%.po}-upstream.po
$RPMPODIR/${PO%.po}-downstream.po -o ${PO%.po}-allfz.po
msgcat --use-first --force-po ${PO%.po}-upstream.po
$RPMPODIR/${PO%.po}-downstream.po -o ${PO%.po}-all.po
# step 4: Find string fixes (existed before, now different).
- msgcat --force-po --unique ${PO%.po}-all.po
${PO%.po}-allfz.po -o ${PO%.po}-fixes.po
+ msgcat --force-po --unique ${PO%.po}-all.po
${PO%.po}-allfz.po -o ${PO%.po}-fixes.po~
# step 5: Find newly translated strings (translation
removal is not supported).
- msgcat --force-po --unique
$RPMPODIR/${PO%.po}-downstream.po ${PO%.po}-all.po -o ${PO%.po}-additions.po
+ msgcat --force-po --unique
$RPMPODIR/${PO%.po}-downstream.po ${PO%.po}-all.po -o ${PO%.po}-additions.po~
# step 6: Join both to collect all known fixes.
if $OLD_UPDATE ; then
# If the update has an old time stamp, don't include
fixes. Use just additions.
- msgcat ${PO%.po}-additions.po -o
$RPMPODIR/${PO%.po}-updatesraw.po
+ msgcat ${PO%.po}-additions.po~ -o
$RPMPODIR/${PO%.po}-updatesraw.po
else
- msgcat ${PO%.po}-fixes.po ${PO%.po}-additions.po -o
$RPMPODIR/${PO%.po}-updatesraw.po
+ msgcat ${PO%.po}-fixes.po~ ${PO%.po}-additions.po~ -o
$RPMPODIR/${PO%.po}-updatesraw.po
fi
# Are there any updated? If no, game over.
if test -f $RPMPODIR/${PO%.po}-updatesraw.po ; then
# step 7: Compose the best po file header.
$WORK_DIR/msgheadermerge $RPMPODIR/$PO
${PO%.po}-upstream.po ${PO%.po}-header.po --newdate
# step 8: And yet another ugly game to get rid
commented out garbage.
- sed '/#~/d' <$RPMPODIR/${PO%.po}-updatesraw.po
>$RPMPODIR/${PO%.po}-updates.po~
+ msgattrib --no-obsolete --force-po
$RPMPODIR/${PO%.po}-updatesraw.po -o $RPMPODIR/${PO%.po}-updates.po~
# step 9: Merge correct header to the updates file.
msgcat --no-location --use-first ${PO%.po}-header.po
$RPMPODIR/${PO%.po}-updates.po~ -o $RPMPODIR/${PO%.po}-updates.po
fi
# step 10: Prepare texts for review. We created them in
previous steps, but files need cleanup.
if test -f ${PO%.po}-header.po ; then
- if test -f ${PO%.po}-additions.po ; then
- sed -i '/#~/d' ${PO%.po}-additions.po
+ if test -f ${PO%.po}-additions.po~ ; then
+ msgattrib --no-obsolete --force-po
${PO%.po}-additions.po~ -o ${PO%.po}-additions.po
mkdir -p $WORK_DIR/po-review/${PO%.po}/additions
msgcat --use-first ${PO%.po}-header.po
${PO%.po}-additions.po -o $WORK_DIR/po-review/${PO%.po}/additions/$DOMAIN.po
rmdir --ignore-fail-on-non-empty --parents
$WORK_DIR/po-review/${PO%.po}/additions
fi
- if test -f ${PO%.po}-fixes.po ; then
- sed -i '/#~/d' ${PO%.po}-fixes.po
+ if test -f ${PO%.po}-fixes.po~ ; then
+ msgattrib --no-obsolete --force-po
${PO%.po}-fixes.po~ -o ${PO%.po}-fixes.po
msgcat --use-first ${PO%.po}-header.po
${PO%.po}-fixes.po -o ${PO%.po}-fixes-clean.po
fi
if test -f ${PO%.po}-fixes-clean.po ; then
msgmerge ${PO%.po}-allfz.po
${PO%.po}-fixes-clean.po -o ${PO%.po}-fixes-review.po~
- sed -i '/#~/d' ${PO%.po}-fixes-review.po~
- msgcat ${PO%.po}-fixes-review.po~ -o
${PO%.po}-fixes-review.po
+ msgattrib --no-obsolete --force-po
${PO%.po}-fixes-review.po~ -o ${PO%.po}-fixes-review.po~~
+ msgcat ${PO%.po}-fixes-review.po~~ -o
${PO%.po}-fixes-review.po
if $OLD_UPDATE ; then
mkdir -p
$WORK_DIR/po-review/${PO%.po}/excluded-changes/${REPO//[\/:.]/_}/$REPODIR
cp -a ${PO%.po}-fixes-clean.po
$WORK_DIR/po-review/${PO%.po}/excluded-changes/${REPO//[\/:.]/_}/$REPODIR/$DOMAIN.po
@@ -469,10 +481,14 @@
fi
fi
else
- # If backport was empty, no file was generated.
- if test -f ${PO%.po}-backport.po ; then
+ # Test is not needed in current msgmerge, file is generated
even if there is nothing inside.
+ if test -f ${PO%.po}-backport.po~ ; then
# step 1: Merge new po and previous updates (if any).
- sed -i '/#~/d' ${PO%.po}-backport.po
+ msgattrib --no-obsolete --no-fuzzy --translated
${PO%.po}-backport.po~ -o ${PO%.po}-backport.po
+ if ! test -f ${PO%.po}-backport.po ; then
+ # backport file does not contain anything useful
+ continue
+ fi
if test -f $RPMPODIR/${PO%.po}-updates.po ; then
if ! msgcat --force-po --use-first
${PO%.po}-backport.po $RPMPODIR/${PO%.po}-updates.po -o
$RPMPODIR/${PO%.po}-updates.po~ ; then
echo >>$WORK_DIR/upstream-collect.log
"package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO
directory=$DIR branch=${BRANCH:(default)} po=$PO: msgcat error"
@@ -493,7 +509,30 @@
fi
fi
fi
+ ) &
+ if test $CPUS -le 1 ; then
+ wait
+ else
+ echo "JOBS: New job launched."
+ SHOWME=true
+ while test $(jobs -p | wc -l) -ge $CPUS ; do
+ if $SHOWME ; then
+ echo -n "JOBS: $CPUS jobs running. Will check later~"
+ SHOWME=false
+ else
+ echo -n "~"
+ fi
+ sleep 3
+ done
+ fi
+ if ! $SHOWME ; then
+ echo "JOBS: Releasing."
+ fi
done
+ if test $CPUS -gt 1 ; then
+ echo "JOBS: All tasks launched. Waiting for results."
+ wait
+ fi
mkdir -p $WORK_DIR/UPDATE/po/$DOMAIN
cd $RPMPODIR
++++++ upstream-gnome_gtp.hook ++++++
--- /var/tmp/diff_new_pack.yWpO5R/_old 2011-02-24 08:48:49.000000000 +0100
+++ /var/tmp/diff_new_pack.yWpO5R/_new 2011-02-24 08:48:49.000000000 +0100
@@ -13,9 +13,6 @@
if test $DOMAIN = banshee-1 ; then
REPODIR=banshee/banshee/po
fi
-if test $DOMAIN = beagle -a "$BRANCH" = "" ; then
- REPODIR=beagle/beagle/po
-fi
# Hack for gnome-themes, which bundles several projects in SuSE:
if test $DOMAIN = gnome-themes ; then
RPMPODIR=$(echo $RPMPKGDIR/BUILD/gnome-themes-*/${DIR#*/})
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]