mirror of
https://github.com/openharmony/third_party_gettext.git
synced 2026-07-21 00:25:49 -04:00
msgl-check: Treat missing header errors as warnings
Problem reported by Richard Hughes at <https://lists.fedoraproject.org/pipermail/devel/2014-June/199539.html>. After <https://savannah.gnu.org/bugs/?40262>, "msgfmt -c" reports error on missing PO headers. However, it turned out to be too strict for the projects using Launchpad Translations. Let's relax the check for the moment and wait for one or two release cycles. * gettext-tools/src/msgl-check.c (check_header_entry): Report missing required headers as warning, instead of error.
This commit is contained in:
@@ -1,3 +1,15 @@
|
||||
2014-06-02 Daiki Ueno <ueno@gnu.org>
|
||||
|
||||
msgl-check: Treat missing header errors as warnings
|
||||
Problem reported by Richard Hughes at
|
||||
<https://lists.fedoraproject.org/pipermail/devel/2014-June/199539.html>.
|
||||
After <https://savannah.gnu.org/bugs/?40262>, "msgfmt -c" reports
|
||||
error on missing PO headers. However, it turned out to be too strict
|
||||
for the projects using Launchpad Translations. Let's relax the check
|
||||
for the moment and wait for one or two release cycles.
|
||||
* msgl-check.c (check_header_entry): Report missing
|
||||
required headers as warning, instead of error.
|
||||
|
||||
2014-06-02 Daiki Ueno <ueno@gnu.org>
|
||||
|
||||
* gettext 0.19 released.
|
||||
|
||||
@@ -777,8 +777,18 @@ check_header_entry (const message_ty *mp, const char *msgstr_string)
|
||||
|
||||
for (cnt = 0; cnt < nfields; ++cnt)
|
||||
{
|
||||
/* 0.19 change: It would better report error if a required
|
||||
header field is missing. However, traditionally we didn't
|
||||
treat it as error. Let's wait for one or two cycles until we
|
||||
can assume the required header fields are always
|
||||
available in practical PO files. */
|
||||
#if 0
|
||||
int severity =
|
||||
(cnt < nrequiredfields ? PO_SEVERITY_ERROR : PO_SEVERITY_WARNING);
|
||||
#else
|
||||
int severity =
|
||||
PO_SEVERITY_WARNING;
|
||||
#endif
|
||||
const char *field = required_fields[cnt];
|
||||
size_t len = strlen (field);
|
||||
const char *line;
|
||||
@@ -805,7 +815,8 @@ check_header_entry (const message_ty *mp, const char *msgstr_string)
|
||||
field);
|
||||
po_xerror (severity, mp, NULL, 0, 0, true, msg);
|
||||
free (msg);
|
||||
seen_errors++;
|
||||
if (severity == PO_SEVERITY_ERROR)
|
||||
seen_errors++;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -821,7 +832,8 @@ check_header_entry (const message_ty *mp, const char *msgstr_string)
|
||||
field);
|
||||
po_xerror (severity, mp, NULL, 0, 0, true, msg);
|
||||
free (msg);
|
||||
seen_errors++;
|
||||
if (severity == PO_SEVERITY_ERROR)
|
||||
seen_errors++;
|
||||
}
|
||||
}
|
||||
return seen_errors;
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
2014-06-02 Daiki Ueno <ueno@gnu.org>
|
||||
|
||||
* msgfmt-10: Update after error checking behaviro change.
|
||||
|
||||
2014-06-02 Daiki Ueno <ueno@gnu.org>
|
||||
|
||||
* gettext 0.19 released.
|
||||
|
||||
@@ -48,7 +48,6 @@ msgstr ""
|
||||
"Project-Id-Version: GNU bison\n"
|
||||
"PO-Revision-Date: 2001-04-05 19:47+0200\n"
|
||||
"Last-Translator: ABC DEF <abc@gnu.uucp>\n"
|
||||
"Language-Team: test <test@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=ISO-8859-9\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -68,9 +67,10 @@ ${MSGFMT} --check -o /dev/null mf-test10.po2 \
|
||||
2>&1 | grep -v '^==' | sed -e 's|[^ ]*\\msgfmt\.exe|msgfmt|' -e 's|^msgfmt\.exe|msgfmt|' | LC_ALL=C tr -d '\r' > mf-test10.err
|
||||
|
||||
cat << EOF > mf-test10.ok
|
||||
mf-test10.po2:6: warning: header field 'Language-Team' missing in header
|
||||
mf-test10.po2:6: warning: header field 'Language' missing in header
|
||||
mf-test10.po2:20: number of format specifications in 'msgid_plural' and 'msgstr[1]' does not match
|
||||
msgfmt: found 2 fatal errors
|
||||
mf-test10.po2:19: number of format specifications in 'msgid_plural' and 'msgstr[1]' does not match
|
||||
msgfmt: found 1 fatal error
|
||||
EOF
|
||||
|
||||
: ${DIFF=diff}
|
||||
|
||||
Reference in New Issue
Block a user