Hello community,

here is the log from the commit of package i18nspector for openSUSE:Factory 
checked in at 2017-11-04 19:28:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/i18nspector (Old)
 and      /work/SRC/openSUSE:Factory/.i18nspector.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "i18nspector"

Sat Nov  4 19:28:55 2017 rev:26 rq:538589 version:0.25.5

Changes:
--------
--- /work/SRC/openSUSE:Factory/i18nspector/i18nspector.changes  2017-08-18 
15:06:38.803202544 +0200
+++ /work/SRC/openSUSE:Factory/.i18nspector.new/i18nspector.changes     
2017-11-04 19:29:01.817688657 +0100
@@ -1,0 +2,9 @@
+Thu Nov  2 21:05:49 UTC 2017 - lazy.k...@opensuse.org
+
+- Update to 0.25.5.
+  * Don't complain about POT-Creation-Date missing in MO files.
+    In the future versions of gettext (>> 0.19.8.1), msgfmt will be
+    removing the POT-Creation-Date header.
+  * Improve error handling.
+
+-------------------------------------------------------------------

Old:
----
  i18nspector-0.25.4.tar.gz
  i18nspector-0.25.4.tar.gz.asc

New:
----
  i18nspector-0.25.5.tar.gz
  i18nspector-0.25.5.tar.gz.asc

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ i18nspector.spec ++++++
--- /var/tmp/diff_new_pack.bJHpbj/_old  2017-11-04 19:29:03.469628297 +0100
+++ /var/tmp/diff_new_pack.bJHpbj/_new  2017-11-04 19:29:03.469628297 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           i18nspector
-Version:        0.25.4
+Version:        0.25.5
 Release:        0
 Summary:        Tool for Checking gettext POT/PO/MO Files
 License:        MIT
@@ -66,7 +66,7 @@
 
 %files
 %defattr(-,root,root,-)
-%doc doc/{changelog,LICENSE,tags.txt,todo.txt}
+%doc doc/{changelog,LICENSE,tags.txt,todo}
 %{_bindir}/%{name}
 %{_datadir}/%{name}/
 %{_mandir}/man?/*

++++++ i18nspector-0.25.4.tar.gz -> i18nspector-0.25.5.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/data/tags 
new/i18nspector-0.25.5/data/tags
--- old/i18nspector-0.25.4/data/tags    2017-06-23 18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/data/tags    2017-08-22 21:21:25.000000000 +0200
@@ -965,7 +965,7 @@
 certainty = certain
 description =
  The message entry contains annotations about previous untranslated string
- (``#| msgid ``\ *...*),
+ (``#| msgid``\ *...*),
  even though the message is not marked as fuzzy.
  These annotations are only useful for fuzzy messages,
  and should be removed when unfuzzying.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/doc/Makefile 
new/i18nspector-0.25.5/doc/Makefile
--- old/i18nspector-0.25.4/doc/Makefile 2017-06-23 18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/doc/Makefile 2017-08-22 21:21:25.000000000 +0200
@@ -1,4 +1,4 @@
-# Copyright © 2012-2016 Jakub Wilk <jw...@jwilk.net>
+# Copyright © 2012-2017 Jakub Wilk <jw...@jwilk.net>
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the “Software”), to deal
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/doc/README 
new/i18nspector-0.25.5/doc/README
--- old/i18nspector-0.25.4/doc/README   1970-01-01 01:00:00.000000000 +0100
+++ new/i18nspector-0.25.5/doc/README   2017-08-22 21:21:25.000000000 +0200
@@ -0,0 +1,44 @@
+Overview
+========
+
+**i18nspector** is a tool for checking translation templates (POT), message
+catalogues (PO) and compiled message catalogues (MO) files for common problems.
+These files are used by the GNU gettext translation functions and tools in
+many different development environments.
+
+Prerequisites
+=============
+
+The following software is needed to run i18nspector:
+
+* Python ≥ 3.2;
+
+* polib_ ≥ 1.0.0, a gettext catalogs manipulation library;
+
+* RPLY_, a parser generator.
+
+Additionally, the following software is needed to rebuild the manual page from
+source:
+
+* docutils_ ≥ 0.6.
+
+
+For pip users::
+
+   python3 -m pip install polib rply
+   python3 -m pip install docutils
+
+For Debian users::
+
+   apt-get install python3-polib python3-rply
+   apt-get install python3-docutils
+
+
+.. _polib:
+   https://pypi.python.org/pypi/polib
+.. _RPLY:
+   https://pypi.python.org/pypi/rply
+.. _docutils:
+   http://docutils.sourceforge.net/
+
+.. vim:ft=rst ts=3 sts=3 sw=3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/doc/changelog 
new/i18nspector-0.25.5/doc/changelog
--- old/i18nspector-0.25.4/doc/changelog        2017-06-23 18:25:45.000000000 
+0200
+++ new/i18nspector-0.25.5/doc/changelog        2017-08-22 21:21:25.000000000 
+0200
@@ -1,3 +1,13 @@
+i18nspector (0.25.5) unstable; urgency=low
+
+  * Don't complain about POT-Creation-Date missing in MO files.
+    In the future versions of gettext (>> 0.19.8.1), msgfmt will be removing
+    the POT-Creation-Date header.
+    https://savannah.gnu.org/bugs/?49654
+  * Improve error handling.
+
+ -- Jakub Wilk <jw...@jwilk.net>  Tue, 22 Aug 2017 21:21:13 +0200
+
 i18nspector (0.25.4) unstable; urgency=low
 
   * Fix crash when checking Python brace formats string that have both named
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/doc/dependencies.txt 
new/i18nspector-0.25.5/doc/dependencies.txt
--- old/i18nspector-0.25.4/doc/dependencies.txt 2017-06-23 18:25:45.000000000 
+0200
+++ new/i18nspector-0.25.5/doc/dependencies.txt 1970-01-01 01:00:00.000000000 
+0100
@@ -1,33 +0,0 @@
-The following software is needed to run i18nspector:
-
-* Python ≥ 3.2;
-
-* polib_ ≥ 1.0.0, a gettext catalogs manipulation library;
-
-* RPLY_, a parser generator.
-
-Additionally, the following software is needed to rebuild the manual page from
-source:
-
-* docutils_ ≥ 0.6.
-
-
-For pip users::
-
-   python3 -m pip install polib rply
-   python3 -m pip install docutils
-
-For Debian users::
-
-   apt-get install python3-polib python3-rply
-   apt-get install python3-docutils
-
-
-.. _polib:
-   https://pypi.python.org/pypi/polib
-.. _RPLY:
-   https://pypi.python.org/pypi/rply
-.. _docutils:
-   http://docutils.sourceforge.net/
-
-.. vim:ft=rst ts=3 sts=3 sw=3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/doc/i18nspector.1 
new/i18nspector-0.25.5/doc/i18nspector.1
--- old/i18nspector-0.25.4/doc/i18nspector.1    2017-06-23 18:25:57.000000000 
+0200
+++ new/i18nspector-0.25.5/doc/i18nspector.1    2017-08-22 21:21:34.000000000 
+0200
@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH I18NSPECTOR 1 "2017-06-23" "i18nspector 0.25.4" ""
+.TH I18NSPECTOR 1 "2017-08-22" "i18nspector 0.25.5" ""
 .SH NAME
 i18nspector \- checking tool for gettext POT, PO and MO files
 .
@@ -2066,7 +2066,7 @@
 .SS stray\-previous\-msgid
 .sp
 The message entry contains annotations about previous untranslated string
-(\fB#| msgid\ \fP\fI\&...\fP),
+(\fB#| msgid\fP\ \fI\&...\fP),
 even though the message is not marked as fuzzy.
 These annotations are only useful for fuzzy messages,
 and should be removed when unfuzzying.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/doc/i18nspector.txt 
new/i18nspector-0.25.5/doc/i18nspector.txt
--- old/i18nspector-0.25.4/doc/i18nspector.txt  2017-06-23 18:25:45.000000000 
+0200
+++ new/i18nspector-0.25.5/doc/i18nspector.txt  2017-08-22 21:21:25.000000000 
+0200
@@ -7,7 +7,7 @@
 ----------------------------------------------
 
 :manual section: 1
-:version: i18nspector 0.25.4
+:version: i18nspector 0.25.5
 :date: |date|
 
 Synopsis
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/doc/tags.txt 
new/i18nspector-0.25.5/doc/tags.txt
--- old/i18nspector-0.25.4/doc/tags.txt 2017-06-23 18:25:55.000000000 +0200
+++ new/i18nspector-0.25.5/doc/tags.txt 2017-08-22 21:21:32.000000000 +0200
@@ -1304,7 +1304,7 @@
 stray-previous-msgid
 ~~~~~~~~~~~~~~~~~~~~
 The message entry contains annotations about previous untranslated string
-(``#| msgid ``\ *...*),
+(``#| msgid``\ *...*),
 even though the message is not marked as fuzzy.
 These annotations are only useful for fuzzy messages,
 and should be removed when unfuzzying.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/doc/todo 
new/i18nspector-0.25.5/doc/todo
--- old/i18nspector-0.25.4/doc/todo     1970-01-01 01:00:00.000000000 +0100
+++ new/i18nspector-0.25.5/doc/todo     2017-08-22 21:21:25.000000000 +0200
@@ -0,0 +1,217 @@
+Add more ``Plural-Forms``. Document how the current ``Plural-Forms`` were
+obtained.
+
+ * 
http://docs.translatehouse.org/projects/localization-guide/en/latest/l10n/pluralforms.html?id=l10n/pluralforms
+ * http://unicode.org/cldr/trac/browser/trunk/common/supplemental/plurals.xml
+
+Complain about incorrect locale codes:
+
+ * https://www.loc.gov/standards/iso639-2/php/code_changes.php
+ * ``al`` → ``sq``
+ * ``bh`` → ``bho`` | ``mai`` | ``mag``
+ * ``ca-XV`` → ``ca@valencia``
+ * ``cn`` → ``zh``
+ * ``cz`` → ``cs``
+ * ``dk`` → ``da``
+ * ``en_UK`` → ``en_GB``
+ * ``gr`` → ``el``
+ * ``in`` → ``id``
+ * ``iw`` → ``he``
+ * ``ji`` → ``yi``
+ * ``jw`` → ``jv``
+ * ``mo`` → ``ro_MD``
+ * ``no`` → ``nb``
+ * ``sh_BA`` → ``bs_BA``
+ * ``sh_HR`` → ``hr_HR``
+ * ``sh_RS`` → ``sr_RS``
+ * ``sr@Latn`` → ``sr@latin``
+ * ``sr_CS`` → ``sr``
+ * ``sr_SR`` → ``sr_RS``
+ * ``sr_YU`` → ``sr``
+ * ``uk_UK`` → ``uk_UA``
+ * ``vn`` → ``vi``
+
+Correct locale codes in invalid format, e.g.:
+
+ * ``da-DK`` → ``da_DK``: 
https://anonscm.debian.org/cgit/debian-handbook/debian-handbook.git/tree/da-DK/00a_preface.po?h=debian/8.20151209
+ * ``pt_br`` → ``pt_BR``: 
https://sources.debian.net/data/main/p/pam-pkcs11/0.6.8-1/po/pt_br.po
+ * ``Pt`` → ``pt``: 
https://sources.debian.net/data/main/d/darcsweb/1.1-3.1/debian/po/pt.po
+
+Correct ``Language`` with both a natural language and a language code, e.g.:
+
+ * ``nl (Dutch)``: 
https://sources.debian.net/data/main/g/garcon/0.1.12-1/po/nl.po
+ * ``Serbian (sr)``: 
https://sources.debian.net/data/main/a/at-spi2-atk/2.5.3-2/po/sr.po
+
+Guess language from ``Language-Team``.
+
+ * https://translationproject.org/team/
+
+Guess language from the filename even when it includes encoding. Test-cases:
+
+ * https://sources.debian.net/src/vim/2:7.3.547-7/src/po/
+
+Add ``characters=``\ … for more languages. Document how the current values were
+obtained.
+
+Fix support for ``X-Poedit-Language: (Afan) Oromo``.
+
+Fix support for ``X-Poedit-Language: Serbian (Latin)``.
+
+Document the security model.
+
+Add tests for:
+
+ * Debian source packages
+ * Debian binary packages
+ * MO files (at least against some tags)
+ * languages with multiple correct ``Plural-Forms``
+ * lib.moparser
+ * all non-Python encodings
+ * 0x5c byte as a part of a multibyte character:
+   https://sources.debian.net/src/vim/2:7.3.547-7/src/po/zh_TW.po/#L13
+ * SHIFT_JIS encoding:
+   
http://git.savannah.gnu.org/cgit/gettext.git/tree/gettext-tools/src/po-lex.c?id=v0.18.3#n179
+
+Detect question marks in unusual places.
+
+Add support for configuration files. Once it's implemented:
+
+ * Disable ``--pedantic`` by default.
+
+Add support for profiles: severity of a tag may depend on whether you are
+upstream, a translator, or a user.
+
+Add support for overrides.
+
+Add option for disabling/forcing colored output.
+
+Use `blessings <https://pypi.python.org/pypi/blessings>`_ for colored output.
+
+Reimplement the EUC-TW codec with PyICU.
+
+Check for hardcoded Language in POT files.
+
+Add option for printing tag descriptions.
+
+When emitting ``encoding-in-language-header-field``, check if the encoding
+matches the one from ``Content-Type``. Test-cases:
+
+ * 
https://sources.debian.net/data/main/r/rhn-client-tools/1.8.9-3/po/zh_CN.GB2312.po
+
+Split ``no-email-address-in-last-translator`` from ``invalid-last-translator``.
+Test-cases:
+
+ * https://sources.debian.net/data/main/m/mtpaint/3.40-1/po/de.po
+ * 
https://sources.debian.net/data/main/y/yaboot-installer/1.1.26/debian/po/hi.po
+
+Split ``missing-timezone-in-date`` from ``invalid-date``.
+
+Check for non-ASCII (translated?) project id. Test-case:
+
+ * https://sources.debian.net/data/main/a/alarm-clock/1.2.5-1.2/po/sr.po
+
+Check for localized boilerplate in headers.
+
+Decide what to do with commas in ``Last-Translator``: either accept them, or
+provide a better error message. Test-case:
+
+ * 
https://sources.debian.net/data/main/i/installation-guide/20130503/po/zh_TW/using-d-i.po
+
+polib PO encoding detection is not robust enough.
+Test-case: ``xfail-header-imitation.po``
+
+Add support for system-dependent messages (minor revision 1).
+
+Check for PO files that are not encoding-aware:
+
+ * https://marc.info/?l=openbsd-ports&m=98988950322667&w=2
+
+Add support for MediaWiki Translate's ``invalid-plural`` flag. Test-case:
+
+ * https://sources.debian.net/data/main/e/evolution/3.4.4-3/po/fi.po
+
+Add support for pygettext's ``docstring`` flag.
+
+Check .desktop files:
+
+ * 
https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s04.html
+
+Check Shared Mime Info files:
+
+ * 
https://specifications.freedesktop.org/shared-mime-info-spec/shared-mime-info-spec-latest.html
+
+Figure out what to do with software that call ``gettext("")`` intentionally.
+Test-case:
+
+ * https://sources.debian.net/src/evolution/3.4.4-3/shell/main.c/#L579
+
+Check for ``msgstr_plural`` without ``msgstr[N]``, and other way round.
+
+Verify that if *n* = plural(1) = plural(*i*) for some *i* > 1, then msgstr[*n*]
+distinguishes singular and plural forms, even when no numeral is involved.
+
+ * https://bugs.debian.org/753946#51
+
+Add support for more string formats (in order of popularity on GitHub)::
+
+   php-format
+   javascript-format
+   perl-format
+   java-format
+   csharp-format
+   kde-format
+   sh-format
+   qt-format
+   tcl-format
+   perl-brace-format
+   scheme-format
+   ycp-format
+   lisp-format
+   awk-format
+   objc-format
+   object-pascal-format
+   librep-format
+   smalltalk-format
+   boost-format
+   qt-plural-format
+   lua-format
+   kde-kuit
+   gfc-internal-format
+   gcc-internal-format
+   elisp-format
+
+Improve C format string checks:
+
+ * Check for the ``I`` C format string flag in msgid.
+ * Recognize type mismatch between ``%*d%d`` and ``%d%*d``.
+ * Make sure ``%%`` is treated as text wrt. omitting integer conversion.
+
+SHIFT_JIS and JOHAB encodings are broken in Python; or at least they
+are not compatible with glibc. Implement a work-around. Test-case::
+
+    assert b'\\'.decode('SHIFT_JIS') == '\N{YEN SIGN}'
+    assert b'\\'.decode('JOHAB') == '\N{WON SIGN}'
+
+Timezone abbreviations not only are not unique, but also can change their
+meaning over time.
+
+ * https://mm.icann.org/pipermail/tz/2014-June/021089.html
+
+Check for capitalization inconsistencies.
+
+Language codes for some locales supported by glibc aren't recognized::
+
+   ayc ber brx cmn hak hne lij lzh mhr nan nhn pap quz shs szl the unm wae yue
+
+The tag name ``invalid-language`` might be misleading.
+Rename or split it.
+
+Check for ``li.org`` mailing lists in ``Language-Team``.
+
+ * https://lists.gnu.org/archive/html/bug-gettext/2016-02/msg00003.html
+
+Add support for xgettext message syntax check flags:
+
+ * http://git.savannah.gnu.org/cgit/gettext.git/commit/?id=d9fc3d2a3f43
+
+.. vim:ft=rst ts=3 sts=3 sw=3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/doc/todo.txt 
new/i18nspector-0.25.5/doc/todo.txt
--- old/i18nspector-0.25.4/doc/todo.txt 2017-06-23 18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/doc/todo.txt 1970-01-01 01:00:00.000000000 +0100
@@ -1,217 +0,0 @@
-Add more ``Plural-Forms``. Document how the current ``Plural-Forms`` were
-obtained.
-
- * 
http://docs.translatehouse.org/projects/localization-guide/en/latest/l10n/pluralforms.html?id=l10n/pluralforms
- * http://unicode.org/cldr/trac/browser/trunk/common/supplemental/plurals.xml
-
-Complain about incorrect locale codes:
-
- * https://www.loc.gov/standards/iso639-2/php/code_changes.php
- * ``al`` → ``sq``
- * ``bh`` → ``bho`` | ``mai`` | ``mag``
- * ``ca-XV`` → ``ca@valencia``
- * ``cn`` → ``zh``
- * ``cz`` → ``cs``
- * ``dk`` → ``da``
- * ``en_UK`` → ``en_GB``
- * ``gr`` → ``el``
- * ``in`` → ``id``
- * ``iw`` → ``he``
- * ``ji`` → ``yi``
- * ``jw`` → ``jv``
- * ``mo`` → ``ro_MD``
- * ``no`` → ``nb``
- * ``sh_BA`` → ``bs_BA``
- * ``sh_HR`` → ``hr_HR``
- * ``sh_RS`` → ``sr_RS``
- * ``sr@Latn`` → ``sr@latin``
- * ``sr_CS`` → ``sr``
- * ``sr_SR`` → ``sr_RS``
- * ``sr_YU`` → ``sr``
- * ``uk_UK`` → ``uk_UA``
- * ``vn`` → ``vi``
-
-Correct locale codes in invalid format, e.g.:
-
- * ``da-DK`` → ``da_DK``: 
https://anonscm.debian.org/cgit/debian-handbook/debian-handbook.git/tree/da-DK/00a_preface.po?h=debian/8.20151209
- * ``pt_br`` → ``pt_BR``: 
https://sources.debian.net/data/main/p/pam-pkcs11/0.6.8-1/po/pt_br.po
- * ``Pt`` → ``pt``: 
https://sources.debian.net/data/main/d/darcsweb/1.1-3.1/debian/po/pt.po
-
-Correct ``Language`` with both a natural language and a language code, e.g.:
-
- * ``nl (Dutch)``: 
https://sources.debian.net/data/main/g/garcon/0.1.12-1/po/nl.po
- * ``Serbian (sr)``: 
https://sources.debian.net/data/main/a/at-spi2-atk/2.5.3-2/po/sr.po
-
-Guess language from ``Language-Team``.
-
- * https://translationproject.org/team/
-
-Guess language from the filename even when it includes encoding. Test-cases:
-
- * https://sources.debian.net/src/vim/2:7.3.547-7/src/po/
-
-Add ``characters=``\ … for more languages. Document how the current values were
-obtained.
-
-Fix support for ``X-Poedit-Language: (Afan) Oromo``.
-
-Fix support for ``X-Poedit-Language: Serbian (Latin)``.
-
-Document the security model.
-
-Add tests for:
-
- * Debian source packages
- * Debian binary packages
- * MO files (at least against some tags)
- * languages with multiple correct ``Plural-Forms``
- * lib.moparser
- * all non-Python encodings
- * 0x5c byte as a part of a multibyte character:
-   https://sources.debian.net/src/vim/2:7.3.547-7/src/po/zh_TW.po/#L13
- * SHIFT_JIS encoding:
-   
http://git.savannah.gnu.org/cgit/gettext.git/tree/gettext-tools/src/po-lex.c?id=v0.18.3#n179
-
-Detect question marks in unusual places.
-
-Add support for configuration files. Once it's implemented:
-
- * Disable ``--pedantic`` by default.
-
-Add support for profiles: severity of a tag may depend on whether you are
-upstream, a translator, or a user.
-
-Add support for overrides.
-
-Add option for disabling/forcing colored output.
-
-Use `blessings <https://pypi.python.org/pypi/blessings>`_ for colored output.
-
-Reimplement the EUC-TW codec with PyICU.
-
-Check for hardcoded Language in POT files.
-
-Add option for printing tag descriptions.
-
-When emitting ``encoding-in-language-header-field``, check if the encoding
-matches the one from ``Content-Type``. Test-cases:
-
- * 
https://sources.debian.net/data/main/r/rhn-client-tools/1.8.9-3/po/zh_CN.GB2312.po
-
-Split ``no-email-address-in-last-translator`` from ``invalid-last-translator``.
-Test-cases:
-
- * https://sources.debian.net/data/main/m/mtpaint/3.40-1/po/de.po
- * 
https://sources.debian.net/data/main/y/yaboot-installer/1.1.26/debian/po/hi.po
-
-Split ``missing-timezone-in-date`` from ``invalid-date``.
-
-Check for non-ASCII (translated?) project id. Test-case:
-
- * https://sources.debian.net/data/main/a/alarm-clock/1.2.5-1.2/po/sr.po
-
-Check for localized boilerplate in headers.
-
-Decide what to do with commas in ``Last-Translator``: either accept them, or
-provide a better error message. Test-case:
-
- * 
https://sources.debian.net/data/main/i/installation-guide/20130503/po/zh_TW/using-d-i.po
-
-polib PO encoding detection is not robust enough.
-Test-case: ``xfail-header-imitation.po``
-
-Add support for system-dependent messages (minor revision 1).
-
-Check for PO files that are not encoding-aware:
-
- * https://marc.info/?l=openbsd-ports&m=98988950322667&w=2
-
-Add support for MediaWiki Translate's ``invalid-plural`` flag. Test-case:
-
- * https://sources.debian.net/data/main/e/evolution/3.4.4-3/po/fi.po
-
-Add support for pygettext's ``docstring`` flag.
-
-Check .desktop files:
-
- * 
https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s04.html
-
-Check Shared Mime Info files:
-
- * 
https://specifications.freedesktop.org/shared-mime-info-spec/shared-mime-info-spec-latest.html
-
-Figure out what to do with software that call ``gettext("")`` intentionally.
-Test-case:
-
- * https://sources.debian.net/src/evolution/3.4.4-3/shell/main.c/#L579
-
-Check for ``msgstr_plural`` without ``msgstr[N]``, and other way round.
-
-Verify that if *n* = plural(1) = plural(*i*) for some *i* > 1, then msgstr[*n*]
-distinguishes singular and plural forms, even when no numeral is involved.
-
- * https://bugs.debian.org/753946#51
-
-Add support for more string formats (in order of popularity on GitHub)::
-
-   php-format
-   javascript-format
-   perl-format
-   java-format
-   csharp-format
-   kde-format
-   sh-format
-   qt-format
-   tcl-format
-   perl-brace-format
-   scheme-format
-   ycp-format
-   lisp-format
-   awk-format
-   objc-format
-   object-pascal-format
-   librep-format
-   smalltalk-format
-   boost-format
-   qt-plural-format
-   lua-format
-   kde-kuit
-   gfc-internal-format
-   gcc-internal-format
-   elisp-format
-
-Improve C format string checks:
-
- * Check for the ``I`` C format string flag in msgid.
- * Recognize type mismatch between ``%*d%d`` and ``%d%*d``.
- * Make sure ``%%`` is treated as text wrt. omitting integer conversion.
-
-SHIFT_JIS and JOHAB encodings are broken in Python; or at least they
-are not compatible with glibc. Implement a work-around. Test-case::
-
-    assert b'\\'.decode('SHIFT_JIS') == '\N{YEN SIGN}'
-    assert b'\\'.decode('JOHAB') == '\N{WON SIGN}'
-
-Timezone abbreviations not only are not unique, but also can change their
-meaning over time.
-
- * https://mm.icann.org/pipermail/tz/2014-June/021089.html
-
-Check for capitalization inconsistencies.
-
-Language codes for some locales supported by glibc aren't recognized::
-
-   ayc ber brx cmn hak hne lij lzh mhr nan nhn pap quz shs szl the unm wae yue
-
-The tag name ``invalid-language`` might be misleading.
-Rename or split it.
-
-Check for ``li.org`` mailing lists in ``Language-Team``.
-
- * https://lists.gnu.org/archive/html/bug-gettext/2016-02/msg00003.html
-
-Add support for xgettext message syntax check flags:
-
- * http://git.savannah.gnu.org/cgit/gettext.git/commit/?id=d9fc3d2a3f43
-
-.. vim:ft=rst ts=3 sts=3 sw=3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/i18nspector 
new/i18nspector-0.25.5/i18nspector
--- old/i18nspector-0.25.4/i18nspector  2017-06-23 18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/i18nspector  2017-08-22 21:21:25.000000000 +0200
@@ -1,7 +1,7 @@
 #!/usr/bin/env python3
 # encoding=UTF-8
 
-# Copyright © 2012-2015 Jakub Wilk <jw...@jwilk.net>
+# Copyright © 2012-2017 Jakub Wilk <jw...@jwilk.net>
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the “Software”), to deal
@@ -48,6 +48,11 @@
         message = 'Python >= %s is required' % version_str
         error(message)
 
+def require_maxunicode(n):
+    if sys.maxunicode < n:
+        message = 'sys.maxunicode >= 0x%X is required' % n
+        error(message)
+
 def require_polib(*version):
     import polib
     polib_version = tuple(
@@ -59,6 +64,7 @@
         error(message)
 
 require_python(3, 2)
+require_maxunicode(0x10FFFF)
 require_polib(1, 0, 0)
 
 # ----------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/lib/check/__init__.py 
new/i18nspector-0.25.5/lib/check/__init__.py
--- old/i18nspector-0.25.4/lib/check/__init__.py        2017-06-23 
18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/lib/check/__init__.py        2017-08-22 
21:21:25.000000000 +0200
@@ -1,4 +1,4 @@
-# Copyright © 2012-2016 Jakub Wilk <jw...@jwilk.net>
+# Copyright © 2012-2017 Jakub Wilk <jw...@jwilk.net>
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the “Software”), to deal
@@ -122,6 +122,7 @@
         else:
             extension = '.' + self.options.file_type
         is_template = False
+        is_binary = False
         if extension == '.po':
             constructor = polib.pofile
         elif extension == '.pot':
@@ -129,6 +130,7 @@
             is_template = True
         elif extension in ('.mo', '.gmo'):
             constructor = polib.mofile
+            is_binary = True
         else:
             self.tag('unknown-file-type')
             return
@@ -184,6 +186,7 @@
         ctx = misc.Namespace()
         ctx.file = file
         ctx.is_template = is_template
+        ctx.is_binary = is_binary
         self.check_comments(ctx)
         self.check_headers(ctx)
         self.check_language(ctx)
@@ -588,6 +591,11 @@
                 self.tag('duplicate-header-field-date', field)
                 dates = sorted(set(dates))
             elif len(dates) == 0:
+                if field.startswith('POT-') and ctx.is_binary:
+                    # In gettext >> 0.19.8.1, msgfmt will be removing
+                    # the POT-Creation-Date header.
+                    # https://savannah.gnu.org/bugs/?49654
+                    continue
                 self.tag('no-date-header-field', field)
                 continue
             for date in dates:
@@ -865,7 +873,7 @@
                     self.tag('partially-translated-message', 
message_repr(message))
         if len(msgid_counter) == 0:
             possible_hidden_strings = False
-            if isinstance(ctx.file, polib.MOFile):
+            if ctx.is_binary:
                 possible_hidden_strings = ctx.file.possible_hidden_strings
             if not possible_hidden_strings:
                 self.tag('empty-file')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/lib/check/msgformat/__init__.py 
new/i18nspector-0.25.5/lib/check/msgformat/__init__.py
--- old/i18nspector-0.25.4/lib/check/msgformat/__init__.py      2017-06-23 
18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/lib/check/msgformat/__init__.py      2017-08-22 
21:21:25.000000000 +0200
@@ -1,4 +1,4 @@
-# Copyright © 2014-2015 Jakub Wilk <jw...@jwilk.net>
+# Copyright © 2014-2017 Jakub Wilk <jw...@jwilk.net>
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the “Software”), to deal
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/lib/cli.py 
new/i18nspector-0.25.5/lib/cli.py
--- old/i18nspector-0.25.4/lib/cli.py   2017-06-23 18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/lib/cli.py   2017-08-22 21:21:25.000000000 +0200
@@ -39,7 +39,7 @@
 from lib import tags
 from lib import terminal
 
-__version__ = '0.25.4'
+__version__ = '0.25.5'
 
 def initialize_terminal():
     if sys.stdout.isatty():
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/private/online-build-po-corpus 
new/i18nspector-0.25.5/private/online-build-po-corpus
--- old/i18nspector-0.25.4/private/online-build-po-corpus       2017-06-23 
18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/private/online-build-po-corpus       2017-08-22 
21:21:25.000000000 +0200
@@ -29,18 +29,11 @@
 import sys
 import tarfile
 import tempfile
-import unittest.mock
 import urllib.parse
 
 import apt
 import apt_pkg
 
-with unittest.mock.patch.dict(os.environ, PATH='/nonexistent'):
-    # tqdm wants to execute git for no good reason:
-    # https://github.com/tqdm/tqdm/issues/328
-    # Let's foil this plan:
-    import tqdm
-
 def is_po_path(path):
     return path.endswith(('.po', '.pot'))
 
@@ -154,21 +147,6 @@
                         for pkg in packages:
                             validate_package_name(pkg)
                         interesting_packages.update(packages)
-            whole_size = 0
-            for para in apt_pkg.TagFile(sources_path):
-                pkg = para['Package']
-                if pkg not in interesting_packages:
-                    continue
-                fileinfo = para['Files'].splitlines()
-                dscname = None
-                names = set()
-                for line in fileinfo:
-                    _, size, _ = line.strip().split(' ')
-                    size = int(size)
-                    whole_size += size
-            progress = tqdm.tqdm(unit='B', unit_scale=True, bar_format='* 
{n_fmt}/{total_fmt}, {rate_fmt}, ETA: {remaining}\n')
-            progress.total = whole_size
-            progress.refresh()
             for para in apt_pkg.TagFile(sources_path):
                 pkg = para['Package']
                 if pkg not in interesting_packages:
@@ -176,9 +154,8 @@
                 fileinfo = para['Files'].splitlines()
                 dscname = None
                 names = set()
-                size = 0
                 for line in fileinfo:
-                    _, fsize, name = line.strip().split(' ')
+                    _, name = line.rsplit(' ', 1)
                     ok = (
                         name.startswith(pkg + '_') and
                         '/' not in name and
@@ -191,7 +168,6 @@
                         if dscname is not None:
                             raise RuntimeError('Package {pkg}: duplicate .dsc 
file'.format(pkg=pkg))
                         dscname = name
-                    size += int(fsize)
                 if dscname is None:
                     raise RuntimeError('Package {pkg}: missing .dsc 
file'.format(pkg=pkg))
                 names = list(names)
@@ -216,7 +192,6 @@
                                 if is_po_path(unp_file):
                                     unp_path = os.path.join(unp_root, unp_file)
                                     tar.add(unp_path, filter=tarfilter)
-                progress.update(size)
     tar.close()
 
 if __name__ == '__main__':
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/tests/blackbox_tests/__init__.py 
new/i18nspector-0.25.5/tests/blackbox_tests/__init__.py
--- old/i18nspector-0.25.4/tests/blackbox_tests/__init__.py     2017-06-23 
18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/tests/blackbox_tests/__init__.py     2017-08-22 
21:21:25.000000000 +0200
@@ -1,4 +1,4 @@
-# Copyright © 2012-2015 Jakub Wilk <jw...@jwilk.net>
+# Copyright © 2012-2017 Jakub Wilk <jw...@jwilk.net>
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the “Software”), to deal
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/i18nspector-0.25.4/tests/blackbox_tests/header-imitation.mo.gen 
new/i18nspector-0.25.5/tests/blackbox_tests/header-imitation.mo.gen
--- old/i18nspector-0.25.4/tests/blackbox_tests/header-imitation.mo.gen 
2017-06-23 18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/tests/blackbox_tests/header-imitation.mo.gen 
2017-08-22 21:21:25.000000000 +0200
@@ -5,7 +5,6 @@
 # P: no-mime-version-header-field MIME-Version: 1.0
 # P: no-content-transfer-encoding-header-field Content-Transfer-Encoding: 8bit
 # E: no-content-type-header-field Content-Type: text/plain; charset=<encoding>
-# W: no-date-header-field POT-Creation-Date
 # W: no-date-header-field PO-Revision-Date
 # W: no-project-id-version-header-field
 # W: no-report-msgid-bugs-to-header-field
Binary files old/i18nspector-0.25.4/tests/blackbox_tests/okay-big-endian.mo and 
new/i18nspector-0.25.5/tests/blackbox_tests/okay-big-endian.mo differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/i18nspector-0.25.4/tests/blackbox_tests/okay-big-endian.mo.gen 
new/i18nspector-0.25.5/tests/blackbox_tests/okay-big-endian.mo.gen
--- old/i18nspector-0.25.4/tests/blackbox_tests/okay-big-endian.mo.gen  
2017-06-23 18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/tests/blackbox_tests/okay-big-endian.mo.gen  
2017-08-22 21:21:25.000000000 +0200
@@ -1,3 +1,4 @@
 #!/bin/sh
 set -e -u -x
-exec msgfmt --endian=big "${here}/okay.po" -o "${target}"
+exec grep -v '^"POT-Creation-Date: ' "${here}/okay.po"\
+| msgfmt --endian=big - -o "${target}"
Binary files old/i18nspector-0.25.4/tests/blackbox_tests/okay-little-endian.mo 
and new/i18nspector-0.25.5/tests/blackbox_tests/okay-little-endian.mo differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/i18nspector-0.25.4/tests/blackbox_tests/okay-little-endian.mo.gen 
new/i18nspector-0.25.5/tests/blackbox_tests/okay-little-endian.mo.gen
--- old/i18nspector-0.25.4/tests/blackbox_tests/okay-little-endian.mo.gen       
2017-06-23 18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/tests/blackbox_tests/okay-little-endian.mo.gen       
2017-08-22 21:21:25.000000000 +0200
@@ -1,3 +1,4 @@
 #!/bin/sh
 set -e -u -x
-exec msgfmt --endian=little "${here}/okay.po" -o "${target}"
+exec grep -v '^"POT-Creation-Date: ' "${here}/okay.po"\
+| msgfmt --endian=little - -o "${target}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/tests/coverage.txt 
new/i18nspector-0.25.5/tests/coverage.txt
--- old/i18nspector-0.25.4/tests/coverage.txt   2017-06-23 18:25:45.000000000 
+0200
+++ new/i18nspector-0.25.5/tests/coverage.txt   2017-08-22 21:21:25.000000000 
+0200
@@ -3,10 +3,10 @@
 Name                             Stmts   Miss Branch BrPart  Cover   Missing
 ----------------------------------------------------------------------------
 lib.py                               1      0      0      0   100%
-lib/check.py                       796    745    501      0     4%   81-85, 
88-101, 109, 115-197, 200-216, 220-352, 356-500, 504-576, 580-618, 623-658, 
663-707, 710-788, 791-871, 874-988, 991-998, 1001-1017, 1022
+lib/check.py                       801    750    503      0     4%   81-85, 
88-101, 109, 115-200, 203-219, 223-355, 359-503, 507-579, 583-626, 631-666, 
671-715, 718-796, 799-879, 882-996, 999-1006, 1009-1025, 1030
 lib/check/msgformat.py              82     69     36      0    11%   32, 36, 
39, 42-152
 lib/check/msgformat/c.py            67     56     36      0    11%   37-44, 
47-105, 108-129
-lib/check/msgformat/pybrace.py      34     26     13      0    17%   17-28, 
31-55
+lib/check/msgformat/pybrace.py      35     26     13      0    19%   37-48, 
51-75
 lib/check/msgformat/python.py       77     67     47      0     8%   37-109, 
112-149
 lib/check/msgrepr.py                11      7      2      0    31%   28-34
 lib/cli.py                         156    122     44      0    17%   45-49, 
58-67, 70-71, 74-76, 82-112, 115-120, 126-132, 135-143, 146-154, 160, 168-188, 
191-225
@@ -28,4 +28,4 @@
 lib/terminal.py                     55     24      4      0    53%   79-106
 lib/xml.py                          21      0      2      0   100%
 ----------------------------------------------------------------------------
-TOTAL                             3442   1421   1509     30    55%
+TOTAL                             3448   1426   1511     30    55%
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/tests/test_encodings.py 
new/i18nspector-0.25.5/tests/test_encodings.py
--- old/i18nspector-0.25.4/tests/test_encodings.py      2017-06-23 
18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/tests/test_encodings.py      2017-08-22 
21:21:25.000000000 +0200
@@ -1,4 +1,4 @@
-# Copyright © 2012-2014 Jakub Wilk <jw...@jwilk.net>
+# Copyright © 2012-2017 Jakub Wilk <jw...@jwilk.net>
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the “Software”), to deal
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/tests/test_ling.py 
new/i18nspector-0.25.5/tests/test_ling.py
--- old/i18nspector-0.25.4/tests/test_ling.py   2017-06-23 18:25:45.000000000 
+0200
+++ new/i18nspector-0.25.5/tests/test_ling.py   2017-08-22 21:21:25.000000000 
+0200
@@ -1,4 +1,4 @@
-# Copyright © 2012-2016 Jakub Wilk <jw...@jwilk.net>
+# Copyright © 2012-2017 Jakub Wilk <jw...@jwilk.net>
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the “Software”), to deal
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/tests/test_misc.py 
new/i18nspector-0.25.5/tests/test_misc.py
--- old/i18nspector-0.25.4/tests/test_misc.py   2017-06-23 18:25:45.000000000 
+0200
+++ new/i18nspector-0.25.5/tests/test_misc.py   2017-08-22 21:21:25.000000000 
+0200
@@ -1,4 +1,4 @@
-# Copyright © 2012-2016 Jakub Wilk <jw...@jwilk.net>
+# Copyright © 2012-2017 Jakub Wilk <jw...@jwilk.net>
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the “Software”), to deal
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/tests/test_moparser.py 
new/i18nspector-0.25.5/tests/test_moparser.py
--- old/i18nspector-0.25.4/tests/test_moparser.py       2017-06-23 
18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/tests/test_moparser.py       2017-08-22 
21:21:25.000000000 +0200
@@ -1,4 +1,4 @@
-# Copyright © 2014-2015 Jakub Wilk <jw...@jwilk.net>
+# Copyright © 2014-2017 Jakub Wilk <jw...@jwilk.net>
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the “Software”), to deal
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/tests/test_polib4us.py 
new/i18nspector-0.25.5/tests/test_polib4us.py
--- old/i18nspector-0.25.4/tests/test_polib4us.py       2017-06-23 
18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/tests/test_polib4us.py       2017-08-22 
21:21:25.000000000 +0200
@@ -1,4 +1,4 @@
-# Copyright © 2013-2014 Jakub Wilk <jw...@jwilk.net>
+# Copyright © 2013-2017 Jakub Wilk <jw...@jwilk.net>
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the “Software”), to deal
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/i18nspector-0.25.4/tests/test_terminal.py 
new/i18nspector-0.25.5/tests/test_terminal.py
--- old/i18nspector-0.25.4/tests/test_terminal.py       2017-06-23 
18:25:45.000000000 +0200
+++ new/i18nspector-0.25.5/tests/test_terminal.py       2017-08-22 
21:21:25.000000000 +0200
@@ -1,4 +1,4 @@
-# Copyright © 2012-2016 Jakub Wilk <jw...@jwilk.net>
+# Copyright © 2012-2017 Jakub Wilk <jw...@jwilk.net>
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the “Software”), to deal


Reply via email to