Hello community, here is the log from the commit of package ki18n for openSUSE:Factory checked in at 2017-03-03 15:43:05 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ki18n (Old) and /work/SRC/openSUSE:Factory/.ki18n.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ki18n" Fri Mar 3 15:43:05 2017 rev:41 rq:461428 version:5.31.0 Changes: -------- --- /work/SRC/openSUSE:Factory/ki18n/ki18n.changes 2017-02-03 17:45:03.966154163 +0100 +++ /work/SRC/openSUSE:Factory/.ki18n.new/ki18n.changes 2017-03-03 15:43:06.423984062 +0100 @@ -1,0 +2,7 @@ +Thu Feb 9 09:29:10 UTC 2017 - hrvoje.sen...@gmail.com + +- Update to 5.31.0 + * For more details please see: + https://www.kde.org/announcements/kde-frameworks-5.31.0.php + +------------------------------------------------------------------- Old: ---- ki18n-5.30.0.tar.xz New: ---- ki18n-5.31.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ki18n.spec ++++++ --- /var/tmp/diff_new_pack.Qya6ZB/_old 2017-03-03 15:43:07.155880444 +0100 +++ /var/tmp/diff_new_pack.Qya6ZB/_new 2017-03-03 15:43:07.159879878 +0100 @@ -18,9 +18,9 @@ %bcond_without lang %define lname libKF5I18n5 -%define _tar_path 5.30 +%define _tar_path 5.31 Name: ki18n -Version: 5.30.0 +Version: 5.31.0 Release: 0 BuildRequires: cmake >= 3.0 BuildRequires: extra-cmake-modules >= %{_tar_path} @@ -28,11 +28,11 @@ BuildRequires: gettext-runtime BuildRequires: kf5-filesystem BuildRequires: python -BuildRequires: cmake(Qt5Concurrent) >= 5.5.0 -BuildRequires: cmake(Qt5Core) >= 5.5.0 -BuildRequires: cmake(Qt5Qml) >= 5.5.0 -BuildRequires: cmake(Qt5Script) >= 5.5.0 -BuildRequires: cmake(Qt5Test) >= 5.5.0 +BuildRequires: cmake(Qt5Concurrent) >= 5.6.0 +BuildRequires: cmake(Qt5Core) >= 5.6.0 +BuildRequires: cmake(Qt5Qml) >= 5.6.0 +BuildRequires: cmake(Qt5Script) >= 5.6.0 +BuildRequires: cmake(Qt5Test) >= 5.6.0 Summary: KDE Gettext-based UI text internationalization License: LGPL-2.1+ Group: System/GUI/KDE ++++++ ki18n-5.30.0.tar.xz -> ki18n-5.31.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/CMakeLists.txt new/ki18n-5.31.0/CMakeLists.txt --- old/ki18n-5.30.0/CMakeLists.txt 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/CMakeLists.txt 2017-02-05 11:59:21.000000000 +0100 @@ -1,11 +1,11 @@ cmake_minimum_required(VERSION 3.0) -set(KF5_VERSION "5.30.0") # handled by release scripts +set(KF5_VERSION "5.31.0") # handled by release scripts project(KI18n VERSION ${KF5_VERSION}) # ECM setup include(FeatureSummary) -find_package(ECM 5.30.0 NO_MODULE) +find_package(ECM 5.31.0 NO_MODULE) set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://projects.kde.org/projects/kdesupport/extra-cmake-modules") feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES) @@ -26,7 +26,7 @@ SOVERSION 5) # Dependencies -set(REQUIRED_QT_VERSION 5.5.0) +set(REQUIRED_QT_VERSION 5.6.0) find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Core) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/autotests/klocalizedstringtest.cpp new/ki18n-5.31.0/autotests/klocalizedstringtest.cpp --- old/ki18n-5.30.0/autotests/klocalizedstringtest.cpp 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/autotests/klocalizedstringtest.cpp 2017-02-05 11:59:21.000000000 +0100 @@ -43,7 +43,7 @@ m_hasFrench = true; if (m_hasFrench) { setlocale(LC_ALL, "fr_FR.utf8"); - if (setlocale(LC_ALL, NULL) != QByteArray("fr_FR.utf8")) { + if (setlocale(LC_ALL, nullptr) != QByteArray("fr_FR.utf8")) { qDebug() << "Failed to set locale to fr_FR.utf8."; m_hasFrench = false; } @@ -471,7 +471,7 @@ void KLocalizedStringTest::translateQt() { KLocalizedString::insertQtDomain("ki18n-test-qt"); - QString result = KLocalizedString::translateQt("QPrintPreviewDialog", "Landscape", 0, 0); + QString result = KLocalizedString::translateQt("QPrintPreviewDialog", "Landscape", nullptr, 0); // When we use the default language, translateQt returns an empty string. QString expected = m_hasFrench ? QString("Paysage") : QString(); QCOMPARE(result, expected); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/autotests/ktranscriptcleantest.cpp new/ki18n-5.31.0/autotests/ktranscriptcleantest.cpp --- old/ki18n-5.30.0/autotests/ktranscriptcleantest.cpp 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/autotests/ktranscriptcleantest.cpp 2017-02-05 11:59:21.000000000 +0100 @@ -29,7 +29,7 @@ QTEST_MAIN(KTranscriptCleanTest) KTranscriptCleanTest::KTranscriptCleanTest() - : m_transcript(0) + : m_transcript(nullptr) { } @@ -41,7 +41,7 @@ void KTranscriptCleanTest::cleanup() { autotestDestroyKTranscriptImp(); - m_transcript = 0; + m_transcript = nullptr; } void KTranscriptCleanTest::test_data() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/autotests/ktranscripttest.cpp new/ki18n-5.31.0/autotests/ktranscripttest.cpp --- old/ki18n-5.30.0/autotests/ktranscripttest.cpp 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/autotests/ktranscripttest.cpp 2017-02-05 11:59:21.000000000 +0100 @@ -37,7 +37,7 @@ } KTranscriptTest::KTranscriptTest() - : m_transcript(0) + : m_transcript(nullptr) { } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/autotests/pythontest.py new/ki18n-5.31.0/autotests/pythontest.py --- old/ki18n-5.30.0/autotests/pythontest.py 1970-01-01 01:00:00.000000000 +0100 +++ new/ki18n-5.31.0/autotests/pythontest.py 2017-02-05 11:59:21.000000000 +0100 @@ -0,0 +1,21 @@ +#!/usr/bin/env python +#-*- coding: utf-8 -*- + +from __future__ import print_function + +import sys + +sys.path.append(sys.argv[1]) + +from PyQt5 import QtCore +from PyQt5 import QtWidgets + +from PyKF5 import KI18n + +def main(): + app = QtWidgets.QApplication(sys.argv) + + assert(KI18n.i18n("foo".encode('utf-8')) == "foo") + +if __name__ == '__main__': + sys.exit(main()) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/cmake/rules_PyKF5.py new/ki18n-5.31.0/cmake/rules_PyKF5.py --- old/ki18n-5.30.0/cmake/rules_PyKF5.py 1970-01-01 01:00:00.000000000 +0100 +++ new/ki18n-5.31.0/cmake/rules_PyKF5.py 2017-02-05 11:59:21.000000000 +0100 @@ -0,0 +1,201 @@ +#============================================================================= +# Copyright 2016 by Shaheed Haque (srha...@theiet.org) +# Copyright 2016 Stephen Kelly <steve...@gmail.com> +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. The name of the author may not be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#============================================================================= + +import os, sys + +import rules_engine +sys.path.append(os.path.dirname(os.path.dirname(rules_engine.__file__))) +import Qt5Ruleset + +from clang.cindex import CursorKind + +def i18n_ellipsis(container, function, sip, matcher): + if len(sip["template_parameters"]) == 0: + sip["parameters"] += ["..."] + else: + sip["name"] = "" + +def i18np_ellipsis(container, function, sip, matcher): + if len(sip["template_parameters"]) == 1: + sip["parameters"][-1] = "..." + sip["template_parameters"] = "" + else: + sip["name"] = "" + +def local_function_rules(): + return [ + ["KLocalizedString", "subs", ".*", ".*", ".*unsigned int.*", rules_engine.function_discard], + ["KLocalizedString", "subs", ".*", ".*", ".*long.*", rules_engine.function_discard], + ["KLocalizedString", "subs", ".*", ".*", ".*unsigned long.*", rules_engine.function_discard], + ["KLocalizedString", "subs", ".*", ".*", ".*unsigned long long.*", rules_engine.function_discard], + ["KLocalizedString", "subs", ".*", ".*", ".*QChar.*", rules_engine.function_discard], + ["Kuit", "setupForDomain", ".*", ".*", ".*", rules_engine.function_discard], + ["KuitSetup", "setTagPattern", ".*", ".*", ".*", rules_engine.function_discard], + + ["klocalizedstring.h", "i18n", ".*", ".*", ".*", i18n_ellipsis], + ["klocalizedstring.h", "i18nc", ".*", ".*", ".*", i18n_ellipsis], + ["klocalizedstring.h", "i18np", ".*", ".*", ".*", i18np_ellipsis], + ["klocalizedstring.h", "i18ncp", ".*", ".*", ".*", i18np_ellipsis], + ] + +def local_typedef_rules(): + return [ + [".*", "TagFormatter", rules_engine.typedef_discard], + ] + +def _klocalizedstring_add_template_code(filename, sip, entry): + sip["code"] = """ +%ModuleCode +QString klocalizedstring_i18n_template(KLocalizedString base, PyObject *list,int *sipIsErr) { + KLocalizedString result = base; + QString *arg; + long long_arg; + double double_arg; + int iserr = 0; + + for (int i=0; i < PyTuple_Size(list); i++) { + PyObject *pyarg = PyTuple_GET_ITEM (list, i); +#if PY_MAJOR_VERSION >= 3 + if (PyLong_Check(pyarg)) { + long_arg = PyLong_AsLong(pyarg); +#else + if (PyInt_Check(pyarg)) { + long_arg = PyInt_AsLong(pyarg); +#endif + if (long_arg==-1 && PyErr_Occurred()) { + *sipIsErr = 1; + return QString(); + } + result = result.subs(long_arg); + +#if PY_MAJOR_VERSION >= 3 + } else if (PyNumber_Check(pyarg)) { + PyObject *long_py = PyNumber_Long(pyarg); + long_arg = PyLong_AsLong(long_py); + Py_DECREF(long_py); +#else + } else if (PyLong_Check(pyarg)) { + long_arg = PyLong_AsLong(pyarg); +#endif + if (long_arg==-1 && PyErr_Occurred()) { + *sipIsErr = 1; + return QString(); + } + result = result.subs(long_arg); + + } else if (PyFloat_Check(pyarg)) { + double_arg = PyFloat_AsDouble(pyarg); + result = result.subs(double_arg); + + } else { + int state = 0; + arg = (QString *)sipForceConvertToType(pyarg, sipType_QString, NULL, SIP_NOT_NONE, &state, &iserr); + if (iserr) { + *sipIsErr = 1; + return QString(); + } + + result = result.subs(*arg); + sipReleaseType(arg,sipType_QString,state); + arg = 0; + } + } + + return result.toString(); +} +%End\n +""" + +class RuleSet(Qt5Ruleset.RuleSet): + """ + SIP file generator rules. This is a set of (short, non-public) functions + and regular expression-based matching rules. + """ + def __init__(self): + Qt5Ruleset.RuleSet.__init__(self) + self._fn_db = rules_engine.FunctionRuleDb(lambda: local_function_rules() + Qt5Ruleset.function_rules()) + self._typedef_db = rules_engine.TypedefRuleDb(lambda: local_typedef_rules()) + self._methodcode = rules_engine.MethodCodeDb({ + "klocalizedstring.h": { + "i18n": + { + "code": + """ + %MethodCode + QString result = klocalizedstring_i18n_template(ki18n(a0),a1,&sipIsErr); + if (!sipIsErr) { + sipRes = new QString(result); + } + %End + """ + }, + "i18nc": + { + "code": + """ + %MethodCode + QString result = klocalizedstring_i18n_template(ki18nc(a0,a1),a2,&sipIsErr); + if (!sipIsErr) { + sipRes = new QString(result); + } + %End + """ + }, + "i18np": + { + "code": + """ + %MethodCode + QString result = klocalizedstring_i18n_template(ki18np(a0,a1),a2,&sipIsErr); + if (!sipIsErr) { + sipRes = new QString(result); + } + %End + """ + }, + "i18ncp": + { + "code": + """ + %MethodCode + QString result = klocalizedstring_i18n_template(ki18ncp(a0,a1,a2),a3,&sipIsErr); + if (!sipIsErr) { + sipRes = new QString(result); + } + %End + """ + }, + } + }) + + self._modulecode = rules_engine.ModuleCodeDb({ + "klocalizedstring.h": + { + "code": _klocalizedstring_add_template_code, + }, + }) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/po/gl/ki18n5.po new/ki18n-5.31.0/po/gl/ki18n5.po --- old/ki18n-5.30.0/po/gl/ki18n5.po 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/po/gl/ki18n5.po 2017-02-05 11:59:21.000000000 +0100 @@ -250,7 +250,7 @@ #, kde-format msgctxt "keyboard-key-name" msgid "Shift" -msgstr "Maiúsc" +msgstr "Maiús" #: kuitmarkup.cpp:357 #, kde-format diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/src/CMakeLists.txt new/ki18n-5.31.0/src/CMakeLists.txt --- old/ki18n-5.30.0/src/CMakeLists.txt 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/src/CMakeLists.txt 2017-02-05 11:59:21.000000000 +0100 @@ -37,6 +37,26 @@ REQUIRED_HEADERS KI18n_HEADERS ) +find_package(PythonModuleGeneration) + +if (PythonModuleGeneration_FOUND) + ecm_generate_python_binding( + TARGET KF5::I18n + PYTHONNAMESPACE PyKF5 + MODULENAME KI18n + RULES_FILE "${CMAKE_SOURCE_DIR}/cmake/rules_PyKF5.py" + INSTALL_DIR_SUFFIX ${KDE_INSTALL_PYTHONBINDINGSDIR} + SIP_DEPENDS + QtCore/QtCoremod.sip + HEADERS + klocalizedcontext.h + klocalizedstring.h + klocalizedtranslator.h + kuitmarkup.h + kuitsetup.h + ) +endif() + install(FILES ${KI18n_HEADERS} ${CMAKE_CURRENT_BINARY_DIR}/ki18n_export.h diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/src/gettext.h new/ki18n-5.31.0/src/gettext.h --- old/ki18n-5.30.0/src/gettext.h 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/src/gettext.h 2017-02-05 11:59:21.000000000 +0100 @@ -119,7 +119,7 @@ (msgctxt_len + msgid_len <= sizeof(buf) ? buf : (char *) malloc(msgctxt_len + msgid_len)); - if (msg_ctxt_id != NULL) + if (msg_ctxt_id != nullptr) #endif { memcpy(msg_ctxt_id, msgctxt, msgctxt_len - 1); @@ -169,7 +169,7 @@ (msgctxt_len + msgid_len <= sizeof(buf) ? buf : (char *) malloc(msgctxt_len + msgid_len)); - if (msg_ctxt_id != NULL) + if (msg_ctxt_id != nullptr) #endif { memcpy(msg_ctxt_id, msgctxt, msgctxt_len - 1); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/src/kcatalog.cpp new/ki18n-5.31.0/src/kcatalog.cpp --- old/ki18n-5.30.0/src/kcatalog.cpp 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/src/kcatalog.cpp 2017-02-05 11:59:21.000000000 +0100 @@ -45,7 +45,7 @@ extern "C" int Q_DECL_IMPORT _nl_msg_cat_cntr; #endif -static char *langenv = 0; +static char *langenv = nullptr; static const int langenvMaxlen = 42; // = "LANGUAGE=" + 32 chars for language code + terminating zero diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/src/klocalizedcontext.h new/ki18n-5.31.0/src/klocalizedcontext.h --- old/ki18n-5.30.0/src/klocalizedcontext.h 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/src/klocalizedcontext.h 2017-02-05 11:59:21.000000000 +0100 @@ -59,7 +59,7 @@ Q_PROPERTY(QString translationDomain READ translationDomain WRITE setTranslationDomain NOTIFY translationDomainChanged) public: - explicit KLocalizedContext(QObject *parent = Q_NULLPTR); + explicit KLocalizedContext(QObject *parent = nullptr); ~KLocalizedContext() Q_DECL_OVERRIDE; QString translationDomain() const; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/src/klocalizedstring.cpp new/ki18n-5.31.0/src/klocalizedstring.cpp --- old/ki18n-5.30.0/src/klocalizedstring.cpp 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/src/klocalizedstring.cpp 2017-02-05 11:59:21.000000000 +0100 @@ -320,7 +320,7 @@ , scriptModulesToLoad() , loadTranscriptCalled(false) - , ktrs(NULL) + , ktrs(nullptr) , formatters() @@ -641,7 +641,7 @@ // Execute any scripted post calls; they cannot modify the final result, // but are used to set states. - if (s->ktrs != NULL) { + if (s->ktrs != nullptr) { QStringList pcalls = s->ktrs->postCalls(language); foreach (const QString &pcall, pcalls) { postTranscript(pcall, language, country, finalTranslation, @@ -810,7 +810,7 @@ { KLocalizedStringPrivateStatics *s = staticsKLSP(); - if (s->ktrs == NULL) { + if (s->ktrs == nullptr) { // Scripting engine not available. return QString(); } @@ -1072,7 +1072,7 @@ { KLocalizedStringPrivateStatics *s = staticsKLSP(); - if (s->ktrs == NULL) { + if (s->ktrs == nullptr) { // Scripting engine not available. // (Though this cannot happen, we wouldn't be here then.) return QString(); @@ -1392,7 +1392,7 @@ QMutexLocker lock(&s->klspMutex); s->loadTranscriptCalled = true; - s->ktrs = NULL; // null indicates that Transcript is not available + s->ktrs = nullptr; // null indicates that Transcript is not available // QPluginLoader is just used to find the plugin QPluginLoader loader(QStringLiteral("kf5/ktranscript")); @@ -1501,18 +1501,18 @@ if (comment && comment[0]) { // Comment given, go for context call. KLocalizedStringPrivate::translateRaw(domain, s->languages, - comment, sourceText, 0, 0, + comment, sourceText, nullptr, 0, language, translation); } else { // Comment not given, go for try-fallback with context. if (context && context[0]) { KLocalizedStringPrivate::translateRaw(domain, s->languages, - context, sourceText, 0, 0, + context, sourceText, nullptr, 0, language, translation); } if (language.isEmpty() || language == s->codeLanguage) { KLocalizedStringPrivate::translateRaw(domain, s->languages, - 0, sourceText, 0, 0, + nullptr, sourceText, nullptr, 0, language, translation); } } @@ -1556,40 +1556,40 @@ KLocalizedString ki18n(const char *text) { - return KLocalizedString(NULL, NULL, text, NULL, false); + return KLocalizedString(nullptr, nullptr, text, nullptr, false); } KLocalizedString ki18nc(const char *context, const char *text) { - return KLocalizedString(NULL, context, text, NULL, false); + return KLocalizedString(nullptr, context, text, nullptr, false); } KLocalizedString ki18np(const char *singular, const char *plural) { - return KLocalizedString(NULL, NULL, singular, plural, false); + return KLocalizedString(nullptr, nullptr, singular, plural, false); } KLocalizedString ki18ncp(const char *context, const char *singular, const char *plural) { - return KLocalizedString(NULL, context, singular, plural, false); + return KLocalizedString(nullptr, context, singular, plural, false); } KLocalizedString ki18nd(const char *domain, const char *text) { - return KLocalizedString(domain, NULL, text, NULL, false); + return KLocalizedString(domain, nullptr, text, nullptr, false); } KLocalizedString ki18ndc(const char *domain, const char *context, const char *text) { - return KLocalizedString(domain, context, text, NULL, false); + return KLocalizedString(domain, context, text, nullptr, false); } KLocalizedString ki18ndp(const char *domain, const char *singular, const char *plural) { - return KLocalizedString(domain, NULL, singular, plural, false); + return KLocalizedString(domain, nullptr, singular, plural, false); } KLocalizedString ki18ndcp(const char *domain, const char *context, @@ -1600,40 +1600,40 @@ KLocalizedString kxi18n(const char *text) { - return KLocalizedString(NULL, NULL, text, NULL, true); + return KLocalizedString(nullptr, nullptr, text, nullptr, true); } KLocalizedString kxi18nc(const char *context, const char *text) { - return KLocalizedString(NULL, context, text, NULL, true); + return KLocalizedString(nullptr, context, text, nullptr, true); } KLocalizedString kxi18np(const char *singular, const char *plural) { - return KLocalizedString(NULL, NULL, singular, plural, true); + return KLocalizedString(nullptr, nullptr, singular, plural, true); } KLocalizedString kxi18ncp(const char *context, const char *singular, const char *plural) { - return KLocalizedString(NULL, context, singular, plural, true); + return KLocalizedString(nullptr, context, singular, plural, true); } KLocalizedString kxi18nd(const char *domain, const char *text) { - return KLocalizedString(domain, NULL, text, NULL, true); + return KLocalizedString(domain, nullptr, text, nullptr, true); } KLocalizedString kxi18ndc(const char *domain, const char *context, const char *text) { - return KLocalizedString(domain, context, text, NULL, true); + return KLocalizedString(domain, context, text, nullptr, true); } KLocalizedString kxi18ndp(const char *domain, const char *singular, const char *plural) { - return KLocalizedString(domain, NULL, singular, plural, true); + return KLocalizedString(domain, nullptr, singular, plural, true); } KLocalizedString kxi18ndcp(const char *domain, const char *context, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/src/klocalizedstring.h new/ki18n-5.31.0/src/klocalizedstring.h --- old/ki18n-5.30.0/src/klocalizedstring.h 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/src/klocalizedstring.h 2017-02-05 11:59:21.000000000 +0100 @@ -603,7 +603,7 @@ * with roundtrip TS->PO->TS through * Qt's \c lupdate and \c lconvert commands. */ - static QString translateQt(const char *context, const char *text, + KI18N_DEPRECATED static QString translateQt(const char *context, const char *text, const char *comment, int n) Q_REQUIRED_RESULT; /** @@ -616,7 +616,7 @@ * * \deprecated */ - static void insertQtDomain(const char *domain); + KI18N_DEPRECATED static void insertQtDomain(const char *domain); /** * Remove a domain from Qt translation lookup. @@ -634,7 +634,7 @@ * * \deprecated */ - static void removeQtDomain(const char *domain); + KI18N_DEPRECATED static void removeQtDomain(const char *domain); private: KLocalizedString(const char *domain, @@ -1013,7 +1013,7 @@ * \param comment Qt equivalent of disambiguation context * \return translated string */ -inline QString tr2i18n(const char *text, const char *comment = 0) +inline QString tr2i18n(const char *text, const char *comment = nullptr) { if (comment && comment[0] && text && text[0]) { return ki18nc(comment, text).toString(); @@ -1035,7 +1035,7 @@ * \return translated string */ inline QString tr2i18nd(const char *domain, - const char *text, const char *comment = 0) + const char *text, const char *comment = nullptr) { if (comment && comment[0] && text && text[0]) { return ki18ndc(domain, comment, text).toString(); @@ -1055,7 +1055,7 @@ * \param comment Qt equivalent of disambiguation context * \return translated string */ -inline QString tr2xi18n(const char *text, const char *comment = 0) +inline QString tr2xi18n(const char *text, const char *comment = nullptr) { if (comment && comment[0] && text && text[0]) { return kxi18nc(comment, text).toString(); @@ -1077,7 +1077,7 @@ * \return translated string */ inline QString tr2xi18nd(const char *domain, - const char *text, const char *comment = 0) + const char *text, const char *comment = nullptr) { if (comment && comment[0] && text && text[0]) { return kxi18ndc(domain, comment, text).toString(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/src/klocalizedtranslator.h new/ki18n-5.31.0/src/klocalizedtranslator.h --- old/ki18n-5.30.0/src/klocalizedtranslator.h 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/src/klocalizedtranslator.h 2017-02-05 11:59:21.000000000 +0100 @@ -66,9 +66,9 @@ { Q_OBJECT public: - explicit KLocalizedTranslator(QObject *parent = 0); + explicit KLocalizedTranslator(QObject *parent = nullptr); virtual ~KLocalizedTranslator(); - QString translate(const char *context, const char *sourceText, const char *disambiguation = 0, int n = -1) const Q_DECL_OVERRIDE; + QString translate(const char *context, const char *sourceText, const char *disambiguation = nullptr, int n = -1) const Q_DECL_OVERRIDE; /** * Sets the @p translationDomain to be used. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/src/ktranscript.cpp new/ki18n-5.31.0/src/ktranscript.cpp --- old/ki18n-5.30.0/src/ktranscript.cpp 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/src/ktranscript.cpp 2017-02-05 11:59:21.000000000 +0100 @@ -90,7 +90,7 @@ { Q_OBJECT public: - explicit Scriptface(const TsConfigGroup &config, QObject *parent = 0); + explicit Scriptface(const TsConfigGroup &config, QObject *parent = nullptr); ~Scriptface(); // Interface functions. @@ -431,7 +431,7 @@ // ---------------------------------------------------------------------- // Test build creation/destruction hooks -static KTranscriptImp *s_transcriptInstance = 0; +static KTranscriptImp *s_transcriptInstance = nullptr; KTranscriptImp *globalKTI() { @@ -440,16 +440,16 @@ KTranscript *autotestCreateKTranscriptImp() { - Q_ASSERT(s_transcriptInstance == 0); + Q_ASSERT(s_transcriptInstance == nullptr); s_transcriptInstance = new KTranscriptImp; return s_transcriptInstance; } void autotestDestroyKTranscriptImp() { - Q_ASSERT(s_transcriptInstance != 0); + Q_ASSERT(s_transcriptInstance != nullptr); delete s_transcriptInstance; - s_transcriptInstance = 0; + s_transcriptInstance = nullptr; } #else @@ -698,7 +698,7 @@ } Scriptface::Scriptface(const TsConfigGroup &config_, QObject *parent) - : QObject(parent), scriptEngine(new QScriptEngine(this)), fallbackRequest(0), config(config_) + : QObject(parent), scriptEngine(new QScriptEngine(this)), fallbackRequest(nullptr), config(config_) { QScriptEngine::QObjectWrapOptions wrapOptions; wrapOptions |= QScriptEngine::ExcludeSuperClassContents; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/src/kuitmarkup.cpp new/ki18n-5.31.0/src/kuitmarkup.cpp --- old/ki18n-5.30.0/src/kuitmarkup.cpp 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/src/kuitmarkup.cpp 2017-02-05 11:59:21.000000000 +0100 @@ -463,7 +463,7 @@ if (patterns.contains(attribKey) && patterns.value(attribKey).contains(format)) { QString modText; Kuit::TagFormatter formatter = formatters.value(attribKey).value(format); - if (formatter != NULL) { + if (formatter != nullptr) { modText = formatter(languages, name, attributes, text, tagPath, format); } else { modText = text; @@ -709,12 +709,12 @@ HI18NC("tag-format-pattern <> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "%1"), - NULL, 0); + nullptr, 0); SET_PATTERN(INTERNAL_TOP_TAG_NAME, QString(), RichText, HI18NC("tag-format-pattern <> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "%1"), - NULL, 0); + nullptr, 0); // -------> Title setTagClass(TITLE, StructTag); @@ -729,12 +729,12 @@ // - the proper quotes, those used in msgid are English-standard // - the <i> and <b> tags, does your language script work well with them? "== %1 =="), - NULL, 2); + nullptr, 2); SET_PATTERN(TITLE, QString(), RichText, ki18nc("tag-format-pattern <title> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<h2>%1</h2>"), - NULL, 2); + nullptr, 2); // -------> Subtitle setTagClass(QSL("subtitle"), StructTag); @@ -742,12 +742,12 @@ ki18nc("tag-format-pattern <subtitle> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "~ %1 ~"), - NULL, 2); + nullptr, 2); SET_PATTERN(QSL("subtitle"), QString(), RichText, ki18nc("tag-format-pattern <subtitle> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<h3>%1</h3>"), - NULL, 2); + nullptr, 2); // -------> Para setTagClass(QSL("para"), StructTag); @@ -755,12 +755,12 @@ ki18nc("tag-format-pattern <para> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "%1"), - NULL, 2); + nullptr, 2); SET_PATTERN(QSL("para"), QString(), RichText, ki18nc("tag-format-pattern <para> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<p>%1</p>"), - NULL, 2); + nullptr, 2); // -------> List setTagClass(QSL("list"), StructTag); @@ -768,12 +768,12 @@ ki18nc("tag-format-pattern <list> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "%1"), - NULL, 1); + nullptr, 1); SET_PATTERN(QSL("list"), QString(), RichText, ki18nc("tag-format-pattern <list> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<ul>%1</ul>"), - NULL, 1); + nullptr, 1); // -------> Item setTagClass(QSL("item"), StructTag); @@ -781,84 +781,84 @@ ki18nc("tag-format-pattern <item> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. " * %1"), - NULL, 1); + nullptr, 1); SET_PATTERN(QSL("item"), QString(), RichText, ki18nc("tag-format-pattern <item> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<li>%1</li>"), - NULL, 1); + nullptr, 1); // -------> Note SET_PATTERN(NOTE, QString(), PlainText, ki18nc("tag-format-pattern <note> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "Note: %1"), - NULL, 0); + nullptr, 0); SET_PATTERN(NOTE, QString(), RichText, ki18nc("tag-format-pattern <note> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<i>Note</i>: %1"), - NULL, 0); + nullptr, 0); SET_PATTERN(NOTE, QSL("label"), PlainText, ki18nc("tag-format-pattern <note label=> plain\n" "%1 is the text, %2 is the note label", // i18n: KUIT pattern, see the comment to the first of these entries above. "%2: %1"), - NULL, 0); + nullptr, 0); SET_PATTERN(NOTE, QSL("label"), RichText, ki18nc("tag-format-pattern <note label=> rich\n" "%1 is the text, %2 is the note label", // i18n: KUIT pattern, see the comment to the first of these entries above. "<i>%2</i>: %1"), - NULL, 0); + nullptr, 0); // -------> Warning SET_PATTERN(WARNING, QString(), PlainText, ki18nc("tag-format-pattern <warning> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "WARNING: %1"), - NULL, 0); + nullptr, 0); SET_PATTERN(WARNING, QString(), RichText, ki18nc("tag-format-pattern <warning> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<b>Warning</b>: %1"), - NULL, 0); + nullptr, 0); SET_PATTERN(WARNING, QSL("label"), PlainText, ki18nc("tag-format-pattern <warning label=> plain\n" "%1 is the text, %2 is the warning label", // i18n: KUIT pattern, see the comment to the first of these entries above. "%2: %1"), - NULL, 0); + nullptr, 0); SET_PATTERN(WARNING, QSL("label"), RichText, ki18nc("tag-format-pattern <warning label=> rich\n" "%1 is the text, %2 is the warning label", // i18n: KUIT pattern, see the comment to the first of these entries above. "<b>%2</b>: %1"), - NULL, 0); + nullptr, 0); // -------> Link SET_PATTERN(LINK, QString(), PlainText, ki18nc("tag-format-pattern <link> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "%1"), - NULL, 0); + nullptr, 0); SET_PATTERN(LINK, QString(), RichText, ki18nc("tag-format-pattern <link> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<a href=\"%1\">%1</a>"), - NULL, 0); + nullptr, 0); SET_PATTERN(LINK, QSL("url"), PlainText, ki18nc("tag-format-pattern <link url=> plain\n" "%1 is the descriptive text, %2 is the URL", // i18n: KUIT pattern, see the comment to the first of these entries above. "%1 (%2)"), - NULL, 0); + nullptr, 0); SET_PATTERN(LINK, QSL("url"), RichText, ki18nc("tag-format-pattern <link url=> rich\n" "%1 is the descriptive text, %2 is the URL", // i18n: KUIT pattern, see the comment to the first of these entries above. "<a href=\"%2\">%1</a>"), - NULL, 0); + nullptr, 0); // -------> Filename SET_PATTERN(QSL("filename"), QString(), PlainText, @@ -877,72 +877,72 @@ ki18nc("tag-format-pattern <application> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "%1"), - NULL, 0); + nullptr, 0); SET_PATTERN(QSL("application"), QString(), RichText, ki18nc("tag-format-pattern <application> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "%1"), - NULL, 0); + nullptr, 0); // -------> Command SET_PATTERN(COMMAND, QString(), PlainText, ki18nc("tag-format-pattern <command> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "%1"), - NULL, 0); + nullptr, 0); SET_PATTERN(COMMAND, QString(), RichText, ki18nc("tag-format-pattern <command> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<tt>%1</tt>"), - NULL, 0); + nullptr, 0); SET_PATTERN(COMMAND, QSL("section"), PlainText, ki18nc("tag-format-pattern <command section=> plain\n" "%1 is the command name, %2 is its man section", // i18n: KUIT pattern, see the comment to the first of these entries above. "%1(%2)"), - NULL, 0); + nullptr, 0); SET_PATTERN(COMMAND, QSL("section"), RichText, ki18nc("tag-format-pattern <command section=> rich\n" "%1 is the command name, %2 is its man section", // i18n: KUIT pattern, see the comment to the first of these entries above. "<tt>%1(%2)</tt>"), - NULL, 0); + nullptr, 0); // -------> Resource SET_PATTERN(QSL("resource"), QString(), PlainText, ki18nc("tag-format-pattern <resource> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "“%1”"), - NULL, 0); + nullptr, 0); SET_PATTERN(QSL("resource"), QString(), RichText, ki18nc("tag-format-pattern <resource> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "“%1”"), - NULL, 0); + nullptr, 0); // -------> Icode SET_PATTERN(QSL("icode"), QString(), PlainText, ki18nc("tag-format-pattern <icode> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "“%1”"), - NULL, 0); + nullptr, 0); SET_PATTERN(QSL("icode"), QString(), RichText, ki18nc("tag-format-pattern <icode> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<tt>%1</tt>"), - NULL, 0); + nullptr, 0); // -------> Bcode SET_PATTERN(QSL("bcode"), QString(), PlainText, ki18nc("tag-format-pattern <bcode> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "\n%1\n"), - NULL, 2); + nullptr, 2); SET_PATTERN(QSL("bcode"), QString(), RichText, ki18nc("tag-format-pattern <bcode> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<pre>%1</pre>"), - NULL, 2); + nullptr, 2); // -------> Shortcut SET_PATTERN(QSL("shortcut"), QString(), PlainText, @@ -973,94 +973,94 @@ ki18nc("tag-format-pattern <emphasis> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "*%1*"), - NULL, 0); + nullptr, 0); SET_PATTERN(EMPHASIS, QString(), RichText, ki18nc("tag-format-pattern <emphasis> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<i>%1</i>"), - NULL, 0); + nullptr, 0); SET_PATTERN(EMPHASIS, QSL("strong"), PlainText, ki18nc("tag-format-pattern <emphasis-strong> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "**%1**"), - NULL, 0); + nullptr, 0); SET_PATTERN(EMPHASIS, QSL("strong"), RichText, ki18nc("tag-format-pattern <emphasis-strong> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<b>%1</b>"), - NULL, 0); + nullptr, 0); // -------> Placeholder SET_PATTERN(QSL("placeholder"), QString(), PlainText, ki18nc("tag-format-pattern <placeholder> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "<%1>"), - NULL, 0); + nullptr, 0); SET_PATTERN(QSL("placeholder"), QString(), RichText, ki18nc("tag-format-pattern <placeholder> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<<i>%1</i>>"), - NULL, 0); + nullptr, 0); // -------> Email SET_PATTERN(QSL("email"), QString(), PlainText, ki18nc("tag-format-pattern <email> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "<%1>"), - NULL, 0); + nullptr, 0); SET_PATTERN(QSL("email"), QString(), RichText, ki18nc("tag-format-pattern <email> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<<a href=\"mailto:%1\">%1</a>>"), - NULL, 0); + nullptr, 0); SET_PATTERN(QSL("email"), QSL("address"), PlainText, ki18nc("tag-format-pattern <email address=> plain\n" "%1 is name, %2 is address", // i18n: KUIT pattern, see the comment to the first of these entries above. "%1 <%2>"), - NULL, 0); + nullptr, 0); SET_PATTERN(QSL("email"), QSL("address"), RichText, ki18nc("tag-format-pattern <email address=> rich\n" "%1 is name, %2 is address", // i18n: KUIT pattern, see the comment to the first of these entries above. "<a href=\"mailto:%2\">%1</a>"), - NULL, 0); + nullptr, 0); // -------> Envar SET_PATTERN(QSL("envar"), QString(), PlainText, ki18nc("tag-format-pattern <envar> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "$%1"), - NULL, 0); + nullptr, 0); SET_PATTERN(QSL("envar"), QString(), RichText, ki18nc("tag-format-pattern <envar> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<tt>$%1</tt>"), - NULL, 0); + nullptr, 0); // -------> Message SET_PATTERN(QSL("message"), QString(), PlainText, ki18nc("tag-format-pattern <message> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "/%1/"), - NULL, 0); + nullptr, 0); SET_PATTERN(QSL("message"), QString(), RichText, ki18nc("tag-format-pattern <message> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "<i>%1</i>"), - NULL, 0); + nullptr, 0); // -------> Nl SET_PATTERN(QSL("nl"), QString(), PlainText, ki18nc("tag-format-pattern <nl> plain", // i18n: KUIT pattern, see the comment to the first of these entries above. "%1\n"), - NULL, 0); + nullptr, 0); SET_PATTERN(QSL("nl"), QString(), RichText, ki18nc("tag-format-pattern <nl> rich", // i18n: KUIT pattern, see the comment to the first of these entries above. "%1<br/>"), - NULL, 0); + nullptr, 0); } void KuitSetupPrivate::setDefaultFormats() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ki18n-5.30.0/src/kuitmarkup.h new/ki18n-5.31.0/src/kuitmarkup.h --- old/ki18n-5.30.0/src/kuitmarkup.h 2017-01-09 09:18:05.000000000 +0100 +++ new/ki18n-5.31.0/src/kuitmarkup.h 2017-02-05 11:59:21.000000000 +0100 @@ -157,7 +157,7 @@ const QStringList &attribNames, Kuit::VisualFormat format, const KLocalizedString &pattern, - Kuit::TagFormatter formatter = NULL, + Kuit::TagFormatter formatter = nullptr, int leadingNewlines = 0); /**