Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package kpkpass for openSUSE:Factory checked in at 2021-04-24 23:07:52 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kpkpass (Old) and /work/SRC/openSUSE:Factory/.kpkpass.new.12324 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kpkpass" Sat Apr 24 23:07:52 2021 rev:33 rq:887718 version:21.04.0 Changes: -------- --- /work/SRC/openSUSE:Factory/kpkpass/kpkpass.changes 2021-03-08 15:14:07.461795581 +0100 +++ /work/SRC/openSUSE:Factory/.kpkpass.new.12324/kpkpass.changes 2021-04-24 23:08:46.967363385 +0200 @@ -1,0 +2,28 @@ +Fri Apr 16 16:12:33 UTC 2021 - Christophe Giboudeaux <[email protected]> + +- Update to 21.04.0 + * New feature release + * For more details please see: + * https://kde.org/announcements/gear/21.04 +- No code change since 21.03.90 + +------------------------------------------------------------------- +Fri Apr 9 17:40:59 UTC 2021 - Christophe Giboudeaux <[email protected]> + +- Update to 21.03.90 + * New feature release +- No code change since 21.03.80 + +------------------------------------------------------------------- +Sun Mar 21 13:28:48 UTC 2021 - Christophe Giboudeaux <[email protected]> + +- Update to 21.03.80 + * New feature release +- Changes since 20.12.3: + * This package doesn't have i18n + * Use git commit hook + * run git clang-format + * Use KDE_INSTALL_MIMEDIR instead of custom XDG_MIME_INSTALL_DIR + * Use non-deprecated KDE_INSTALL_CMAKEPACKAGEDIR + +------------------------------------------------------------------- Old: ---- kpkpass-20.12.3.tar.xz kpkpass-20.12.3.tar.xz.sig New: ---- kpkpass-21.04.0.tar.xz kpkpass-21.04.0.tar.xz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kpkpass.spec ++++++ --- /var/tmp/diff_new_pack.IHWKIf/_old 2021-04-24 23:08:47.451364069 +0200 +++ /var/tmp/diff_new_pack.IHWKIf/_new 2021-04-24 23:08:47.451364069 +0200 @@ -18,23 +18,23 @@ %bcond_without lang Name: kpkpass -Version: 20.12.3 +Version: 21.04.0 Release: 0 Summary: Library to parse Passbook files License: LGPL-2.1-or-later Group: System/GUI/KDE URL: https://www.kde.org Source: https://download.kde.org/stable/release-service/%{version}/src/%{name}-%{version}.tar.xz -BuildRequires: extra-cmake-modules >= 1.0.0 +%if %{with lang} +Source1: https://download.kde.org/stable/release-service/%{version}/src/%{name}-%{version}.tar.xz.sig +Source2: applications.keyring +%endif +BuildRequires: extra-cmake-modules BuildRequires: kf5-filesystem BuildRequires: shared-mime-info BuildRequires: cmake(KF5Archive) BuildRequires: cmake(Qt5Gui) BuildRequires: cmake(Qt5Test) -%if %{with lang} -Source1: https://download.kde.org/stable/release-service/%{version}/src/%{name}-%{version}.tar.xz.sig -Source2: applications.keyring -%endif %description kpkpass is a library to read and parse Apple Passbook files, such as the ones @@ -61,7 +61,7 @@ to build programs that use the kpkpass library. %prep -%setup -q +%autosetup -p1 %build %cmake_kf5 -d build ++++++ kpkpass-20.12.3.tar.xz -> kpkpass-21.04.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/.clang-format new/kpkpass-21.04.0/.clang-format --- old/kpkpass-20.12.3/.clang-format 1970-01-01 01:00:00.000000000 +0100 +++ new/kpkpass-21.04.0/.clang-format 2021-04-10 08:02:32.000000000 +0200 @@ -0,0 +1,76 @@ +--- +# SPDX-FileCopyrightText: 2019 Christoph Cullmann <[email protected]> +# SPDX-FileCopyrightText: 2019 Gernot Gebhard <[email protected]> +# +# SPDX-License-Identifier: MIT + +# Style for C++ +Language: Cpp + +# base is WebKit coding style: https://webkit.org/code-style-guidelines/ +# below are only things set that diverge from this style! +BasedOnStyle: WebKit + +# enforce C++11 (e.g. for std::vector<std::vector<lala>> +Standard: Cpp11 + +# 4 spaces indent +TabWidth: 4 + +# 2 * 80 wide lines +ColumnLimit: 160 + +# sort includes inside line separated groups +SortIncludes: true + +# break before braces on function, namespace and class definitions. +BreakBeforeBraces: Linux + +# CrlInstruction *a; +PointerAlignment: Right + +# horizontally aligns arguments after an open bracket. +AlignAfterOpenBracket: Align + +# don't move all parameters to new line +AllowAllParametersOfDeclarationOnNextLine: false + +# no single line functions +AllowShortFunctionsOnASingleLine: None + +# always break before you encounter multi line strings +AlwaysBreakBeforeMultilineStrings: true + +# don't move arguments to own lines if they are not all on the same +BinPackArguments: false + +# don't move parameters to own lines if they are not all on the same +BinPackParameters: false + +# In case we have an if statement whith multiple lines the operator should be at the beginning of the line +# but we do not want to break assignments +BreakBeforeBinaryOperators: NonAssignment + +# format C++11 braced lists like function calls +Cpp11BracedListStyle: true + +# do not put a space before C++11 braced lists +SpaceBeforeCpp11BracedList: false + +# remove empty lines +KeepEmptyLinesAtTheStartOfBlocks: false + +# no namespace indentation to keep indent level low +NamespaceIndentation: None + +# we use template< without space. +SpaceAfterTemplateKeyword: false + +# macros for which the opening brace stays attached. +ForEachMacros: [ foreach, Q_FOREACH, BOOST_FOREACH, forever, Q_FOREVER, QBENCHMARK, QBENCHMARK_ONCE ] + +# keep lambda formatting multi-line if not empty +AllowShortLambdasOnASingleLine: Empty + +# We do not want clang-format to put all arguments on a new line +AllowAllArgumentsOnNextLine: false diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/.git-blame-ignore-revs new/kpkpass-21.04.0/.git-blame-ignore-revs --- old/kpkpass-20.12.3/.git-blame-ignore-revs 1970-01-01 01:00:00.000000000 +0100 +++ new/kpkpass-21.04.0/.git-blame-ignore-revs 2021-04-10 08:02:32.000000000 +0200 @@ -0,0 +1,2 @@ +# clang-format +fbb28b70194761f7023f03b1b3eb073e5d804261 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/.gitignore new/kpkpass-21.04.0/.gitignore --- old/kpkpass-20.12.3/.gitignore 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/.gitignore 2021-04-10 08:02:32.000000000 +0200 @@ -18,3 +18,4 @@ .cmake/ CMakeLists.txt.user* *.unc-backup* +compile_commands.json diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/.gitlab-ci.yml new/kpkpass-21.04.0/.gitlab-ci.yml --- old/kpkpass-20.12.3/.gitlab-ci.yml 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/.gitlab-ci.yml 2021-04-10 08:02:32.000000000 +0200 @@ -1,10 +1,14 @@ +# SPDX-FileCopyrightText: 2020-2021 Laurent Montel <[email protected]> +# SPDX-FileCopyrightText: 2021 Laurent Montel <[email protected]> +# SPDX-License-Identifier: CC0-1.0 + include: - https://invent.kde.org/sysadmin/ci-tooling/raw/master/invent/ci-before.yml - https://invent.kde.org/sysadmin/ci-tooling/raw/master/invent/ci-applications-linux.yml build_clazy_clang_tidy: stage: build - image: kdeorg/ci-suse-qt514 + image: kdeorg/ci-suse-qt515 extends: .linux #only: # - merge_requests @@ -26,5 +30,5 @@ - python3 -u $CI_TOOLING/helpers/compile-build.py --product $PRODUCT --project $PROJECT --branchGroup $BRANCH_GROUP --platform $PLATFORM --usingInstall $INSTALL_PREFIX - cd build && run-clang-tidy variables: - PLATFORM: SUSEQt5.14 + PLATFORM: SUSEQt5.15 BRANCH_GROUP: kf5-qt5 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/CMakeLists.txt new/kpkpass-21.04.0/CMakeLists.txt --- old/kpkpass-20.12.3/CMakeLists.txt 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/CMakeLists.txt 2021-04-10 08:02:32.000000000 +0200 @@ -1,8 +1,8 @@ -cmake_minimum_required(VERSION 3.5) -set(PIM_VERSION "5.16.3") +cmake_minimum_required(VERSION 3.5 FATAL_ERROR) +set(PIM_VERSION "5.17.0") project(KPkPass VERSION ${PIM_VERSION}) -set(KF5_MIN_VERSION "5.75.0") +set(KF5_MIN_VERSION "5.79.0") find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE) set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) @@ -13,6 +13,7 @@ include(ECMQtDeclareLoggingCategory) include(ECMSetupVersion) include(FeatureSummary) +include(KDEGitCommitHooks) include(KDEInstallDirs) include(KDECMakeSettings) include(GenerateExportHeader) @@ -22,30 +23,39 @@ PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KPimPkPassConfigVersion.cmake" ) -set(QT_REQUIRED_VERSION "5.13.0") +set(QT_REQUIRED_VERSION "5.14.0") find_package(Qt5 ${QT_REQUIRED_VERSION} REQUIRED COMPONENTS Gui) find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS Archive) find_package(SharedMimeInfo 1.3 REQUIRED) add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0x050f00) -add_definitions(-DKF_DISABLE_DEPRECATED_BEFORE_AND_AT=0x054C00) +add_definitions(-DKF_DISABLE_DEPRECATED_BEFORE_AND_AT=0x055000) -add_definitions(-DQT_NO_FOREACH) -add_definitions(-DQT_NO_KEYWORDS) set(CMAKE_CXX_STANDARD 14) set(CMAKE_CXX_STANDARD_REQUIRED ON) +option(USE_UNITY_CMAKE_SUPPORT "Use UNITY cmake support (speedup compile time)" FALSE) + +set(COMPILE_WITH_UNITY_CMAKE_SUPPORT false) +if (USE_UNITY_CMAKE_SUPPORT) + if(${CMAKE_VERSION} VERSION_LESS "3.16.0") + message(STATUS "CMAKE version is less than 3.16.0 . We can't use cmake unify build support") + else() + set(COMPILE_WITH_UNITY_CMAKE_SUPPORT true) + endif() +endif() add_subdirectory(src) if (BUILD_TESTING) add_subdirectory(autotests) endif() +kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT) feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES) -set(CMAKECONFIG_INSTALL_DIR "${CMAKECONFIG_INSTALL_PREFIX}/KPimPkPass") +set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KPimPkPass") configure_package_config_file( "${CMAKE_CURRENT_SOURCE_DIR}/KPimPkPassConfig.cmake.in" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/CMakePresets.json new/kpkpass-21.04.0/CMakePresets.json --- old/kpkpass-20.12.3/CMakePresets.json 1970-01-01 01:00:00.000000000 +0100 +++ new/kpkpass-21.04.0/CMakePresets.json 2021-04-10 08:02:32.000000000 +0200 @@ -0,0 +1,56 @@ +{ + "version": 1, + "configurePresets": [ + { + "name": "dev", + "displayName": "Build as debug", + "generator": "Ninja", + "binaryDir": "${sourceDir}/build", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug", + "CMAKE_EXPORT_COMPILE_COMMANDS": "ON" + } + }, + { + "name": "asan", + "displayName": "Build with Asan support.", + "generator": "Ninja", + "binaryDir": "${sourceDir}/build-asan", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug", + "ECM_ENABLE_SANITIZERS" : "'address;undefined'", + "CMAKE_EXPORT_COMPILE_COMMANDS": "ON" + } + }, + { + "name": "unity", + "displayName": "Build with CMake unity support.", + "generator": "Ninja", + "binaryDir": "${sourceDir}/build-unity", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug", + "USE_UNITY_CMAKE_SUPPORT": "ON", + "CMAKE_EXPORT_COMPILE_COMMANDS": "ON" + } + }, + { + "name": "release", + "displayName": "Build as release mode.", + "generator": "Ninja", + "binaryDir": "${sourceDir}/build-release", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Release" + } + }, + { + "name": "profile", + "displayName": "profile", + "generator": "Ninja", + "binaryDir": "${sourceDir}/build-profile", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "RelWithDebInfo", + "CMAKE_EXPORT_COMPILE_COMMANDS": "ON" + } + } + ] +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/CMakePresets.json.license new/kpkpass-21.04.0/CMakePresets.json.license --- old/kpkpass-20.12.3/CMakePresets.json.license 1970-01-01 01:00:00.000000000 +0100 +++ new/kpkpass-21.04.0/CMakePresets.json.license 2021-04-10 08:02:32.000000000 +0200 @@ -0,0 +1,2 @@ +# SPDX-FileCopyrightText: 2021 Laurent Montel <[email protected]> +# SPDX-License-Identifier: BSD-3-Clause diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/LICENSES/CC0-1.0.txt new/kpkpass-21.04.0/LICENSES/CC0-1.0.txt --- old/kpkpass-20.12.3/LICENSES/CC0-1.0.txt 1970-01-01 01:00:00.000000000 +0100 +++ new/kpkpass-21.04.0/LICENSES/CC0-1.0.txt 2021-04-10 08:02:32.000000000 +0200 @@ -0,0 +1,119 @@ +Creative Commons Legal Code + +CC0 1.0 Universal CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES +NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE +AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION +ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE +OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS +LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION +OR WORKS PROVIDED HEREUNDER. + +Statement of Purpose + +The laws of most jurisdictions throughout the world automatically confer exclusive +Copyright and Related Rights (defined below) upon the creator and subsequent +owner(s) (each and all, an "owner") of an original work of authorship and/or +a database (each, a "Work"). + +Certain owners wish to permanently relinquish those rights to a Work for the +purpose of contributing to a commons of creative, cultural and scientific +works ("Commons") that the public can reliably and without fear of later claims +of infringement build upon, modify, incorporate in other works, reuse and +redistribute as freely as possible in any form whatsoever and for any purposes, +including without limitation commercial purposes. These owners may contribute +to the Commons to promote the ideal of a free culture and the further production +of creative, cultural and scientific works, or to gain reputation or greater +distribution for their Work in part through the use and efforts of others. + +For these and/or other purposes and motivations, and without any expectation +of additional consideration or compensation, the person associating CC0 with +a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright +and Related Rights in the Work, voluntarily elects to apply CC0 to the Work +and publicly distribute the Work under its terms, with knowledge of his or +her Copyright and Related Rights in the Work and the meaning and intended +legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be protected +by copyright and related or neighboring rights ("Copyright and Related Rights"). +Copyright and Related Rights include, but are not limited to, the following: + +i. the right to reproduce, adapt, distribute, perform, display, communicate, +and translate a Work; + + ii. moral rights retained by the original author(s) and/or performer(s); + +iii. publicity and privacy rights pertaining to a person's image or likeness +depicted in a Work; + +iv. rights protecting against unfair competition in regards to a Work, subject +to the limitations in paragraph 4(a), below; + +v. rights protecting the extraction, dissemination, use and reuse of data +in a Work; + +vi. database rights (such as those arising under Directive 96/9/EC of the +European Parliament and of the Council of 11 March 1996 on the legal protection +of databases, and under any national implementation thereof, including any +amended or successor version of such directive); and + +vii. other similar, equivalent or corresponding rights throughout the world +based on applicable law or treaty, and any national implementations thereof. + +2. Waiver. To the greatest extent permitted by, but not in contravention of, +applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and +unconditionally waives, abandons, and surrenders all of Affirmer's Copyright +and Related Rights and associated claims and causes of action, whether now +known or unknown (including existing as well as future claims and causes of +action), in the Work (i) in all territories worldwide, (ii) for the maximum +duration provided by applicable law or treaty (including future time extensions), +(iii) in any current or future medium and for any number of copies, and (iv) +for any purpose whatsoever, including without limitation commercial, advertising +or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the +benefit of each member of the public at large and to the detriment of Affirmer's +heirs and successors, fully intending that such Waiver shall not be subject +to revocation, rescission, cancellation, termination, or any other legal or +equitable action to disrupt the quiet enjoyment of the Work by the public +as contemplated by Affirmer's express Statement of Purpose. + +3. Public License Fallback. Should any part of the Waiver for any reason be +judged legally invalid or ineffective under applicable law, then the Waiver +shall be preserved to the maximum extent permitted taking into account Affirmer's +express Statement of Purpose. In addition, to the extent the Waiver is so +judged Affirmer hereby grants to each affected person a royalty-free, non +transferable, non sublicensable, non exclusive, irrevocable and unconditional +license to exercise Affirmer's Copyright and Related Rights in the Work (i) +in all territories worldwide, (ii) for the maximum duration provided by applicable +law or treaty (including future time extensions), (iii) in any current or +future medium and for any number of copies, and (iv) for any purpose whatsoever, +including without limitation commercial, advertising or promotional purposes +(the "License"). The License shall be deemed effective as of the date CC0 +was applied by Affirmer to the Work. Should any part of the License for any +reason be judged legally invalid or ineffective under applicable law, such +partial invalidity or ineffectiveness shall not invalidate the remainder of +the License, and in such case Affirmer hereby affirms that he or she will +not (i) exercise any of his or her remaining Copyright and Related Rights +in the Work or (ii) assert any associated claims and causes of action with +respect to the Work, in either case contrary to Affirmer's express Statement +of Purpose. + + 4. Limitations and Disclaimers. + +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, +licensed or otherwise affected by this document. + +b. Affirmer offers the Work as-is and makes no representations or warranties +of any kind concerning the Work, express, implied, statutory or otherwise, +including without limitation warranties of title, merchantability, fitness +for a particular purpose, non infringement, or the absence of latent or other +defects, accuracy, or the present or absence of errors, whether or not discoverable, +all to the greatest extent permissible under applicable law. + +c. Affirmer disclaims responsibility for clearing rights of other persons +that may apply to the Work or any use thereof, including without limitation +any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims +responsibility for obtaining any necessary consents, permissions or other +rights required for any use of the Work. + +d. Affirmer understands and acknowledges that Creative Commons is not a party +to this document and has no duty or obligation with respect to this CC0 or +use of the Work. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/autotests/pkpasstest.cpp new/kpkpass-21.04.0/autotests/pkpasstest.cpp --- old/kpkpass-20.12.3/autotests/pkpasstest.cpp 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/autotests/pkpasstest.cpp 2021-04-10 08:02:32.000000000 +0200 @@ -24,8 +24,7 @@ void testBoardingPass() { - std::unique_ptr<KPkPass::Pass> pass( - KPkPass::Pass::fromFile(QStringLiteral(SOURCE_DIR "/data/boardingpass-v1.pkpass"))); + std::unique_ptr<KPkPass::Pass> pass(KPkPass::Pass::fromFile(QStringLiteral(SOURCE_DIR "/data/boardingpass-v1.pkpass"))); QVERIFY(pass); QCOMPARE(pass->type(), KPkPass::Pass::BoardingPass); @@ -55,7 +54,7 @@ QCOMPARE(field.value().toString(), QLatin1String("20:25")); QCOMPARE(field.textAlignment(), Qt::AlignLeft); - auto boardingPass = dynamic_cast<KPkPass::BoardingPass*>(pass.get()); + auto boardingPass = dynamic_cast<KPkPass::BoardingPass *>(pass.get()); QVERIFY(boardingPass); QCOMPARE(boardingPass->transitType(), KPkPass::BoardingPass::Air); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/sanitizers.supp new/kpkpass-21.04.0/sanitizers.supp --- old/kpkpass-20.12.3/sanitizers.supp 1970-01-01 01:00:00.000000000 +0100 +++ new/kpkpass-21.04.0/sanitizers.supp 2021-04-10 08:02:32.000000000 +0200 @@ -0,0 +1,14 @@ +# Suppression file for ASAN/LSAN + +leak:libspeechd +leak:getdelim +leak:g_malloc +leak:libfontconfig +leak:libdbus +leak:QEasingCurve:: +leak:QtSharedPointer::ExternalRefCountData::getAndRef +leak:QArrayData::allocate +leak:QObject::QObject +leak:QObjectPrivate::addConnection +leak:QObjectPrivate::connectImpl +leak:QPropertyAnimation::QPropertyAnimation diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/src/CMakeLists.txt new/kpkpass-21.04.0/src/CMakeLists.txt --- old/kpkpass-20.12.3/src/CMakeLists.txt 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/src/CMakeLists.txt 2021-04-10 08:02:32.000000000 +0200 @@ -31,6 +31,10 @@ KF5::Archive ) +if (COMPILE_WITH_UNITY_CMAKE_SUPPORT) + set_target_properties(KPimPkPass PROPERTIES UNITY_BUILD ON) +endif() + ecm_generate_headers(KPkPass_HEADERS HEADER_NAMES Barcode @@ -41,7 +45,7 @@ REQUIRED_HEADERS KPkPass_HEADERS ) -install(TARGETS KPimPkPass EXPORT KPimPkPassTargets ${INSTALL_TARGETS_DEFAULT_ARGS}) +install(TARGETS KPimPkPass EXPORT KPimPkPassTargets ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}) install(FILES ${KPkPass_HEADERS} ${CMAKE_CURRENT_BINARY_DIR}/kpkpass_export.h @@ -49,8 +53,8 @@ ) if (NOT ANDROID) - install(FILES application-vnd-apple-pkpass.xml DESTINATION ${XDG_MIME_INSTALL_DIR}) - update_xdg_mimetypes(${XDG_MIME_INSTALL_DIR}) + install(FILES application-vnd-apple-pkpass.xml DESTINATION ${KDE_INSTALL_MIMEDIR}) + update_xdg_mimetypes(${KDE_INSTALL_MIMEDIR}) endif() ecm_qt_install_logging_categories(EXPORT KPKPASS FILE org_kde_kpkpass.categories DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/src/barcode.cpp new/kpkpass-21.04.0/src/barcode.cpp --- old/kpkpass-20.12.3/src/barcode.cpp 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/src/barcode.cpp 2021-04-10 08:02:32.000000000 +0200 @@ -12,7 +12,8 @@ using namespace KPkPass; -namespace KPkPass { +namespace KPkPass +{ class BarcodePrivate { public: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/src/barcode.h new/kpkpass-21.04.0/src/barcode.h --- old/kpkpass-20.12.3/src/barcode.h 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/src/barcode.h 2021-04-10 08:02:32.000000000 +0200 @@ -16,8 +16,8 @@ class QJsonObject; -namespace KPkPass { - +namespace KPkPass +{ class BarcodePrivate; class Pass; @@ -33,13 +33,7 @@ Q_PROPERTY(QString messageEncoding READ messageEncoding CONSTANT) public: - enum Format { - Invalid, - QR, - PDF417, - Aztec, - Code128 - }; + enum Format { Invalid, QR, PDF417, Aztec, Code128 }; Q_ENUM(Format) Barcode(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/src/boardingpass.h new/kpkpass-21.04.0/src/boardingpass.h --- old/kpkpass-20.12.3/src/boardingpass.h 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/src/boardingpass.h 2021-04-10 08:02:32.000000000 +0200 @@ -9,21 +9,15 @@ #include "pass.h" -namespace KPkPass { - +namespace KPkPass +{ /** Boarding pass */ class KPKPASS_EXPORT BoardingPass : public Pass { Q_OBJECT Q_PROPERTY(TransitType transitType READ transitType CONSTANT) public: - enum TransitType { - Air, - Boat, - Bus, - Train, - Generic - }; + enum TransitType { Air, Boat, Bus, Train, Generic }; Q_ENUM(TransitType) explicit BoardingPass(QObject *parent = nullptr); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/src/field.cpp new/kpkpass-21.04.0/src/field.cpp --- old/kpkpass-20.12.3/src/field.cpp 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/src/field.cpp 2021-04-10 08:02:32.000000000 +0200 @@ -13,8 +13,10 @@ using namespace KPkPass; -namespace KPkPass { -class FieldPrivate { +namespace KPkPass +{ +class FieldPrivate +{ public: const Pass *pass = nullptr; QJsonObject obj; @@ -26,10 +28,10 @@ { } -Field::Field(const Field&) = default; -Field::Field(Field&&) = default; +Field::Field(const Field &) = default; +Field::Field(Field &&) = default; Field::~Field() = default; -Field& Field::operator=(const Field&) = default; +Field &Field::operator=(const Field &) = default; Field::Field(const QJsonObject &obj, const Pass *pass) : d(new FieldPrivate) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/src/field.h new/kpkpass-21.04.0/src/field.h --- old/kpkpass-20.12.3/src/field.h 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/src/field.h 2021-04-10 08:02:32.000000000 +0200 @@ -16,8 +16,8 @@ class QJsonObject; -namespace KPkPass { - +namespace KPkPass +{ class Pass; class PassPrivate; class FieldPrivate; @@ -37,10 +37,10 @@ public: Field(); - Field(const Field&); - Field(Field&&); + Field(const Field &); + Field(Field &&); ~Field(); - Field& operator=(const Field&); + Field &operator=(const Field &); /** Field key, unique in the pass but not meant for display. */ Q_REQUIRED_RESULT QString key() const; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/src/location.cpp new/kpkpass-21.04.0/src/location.cpp --- old/kpkpass-20.12.3/src/location.cpp 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/src/location.cpp 2021-04-10 08:02:32.000000000 +0200 @@ -12,8 +12,10 @@ using namespace KPkPass; -namespace KPkPass { -class LocationPrivate { +namespace KPkPass +{ +class LocationPrivate +{ public: QJsonObject obj; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/src/location.h new/kpkpass-21.04.0/src/location.h --- old/kpkpass-20.12.3/src/location.h 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/src/location.h 2021-04-10 08:02:32.000000000 +0200 @@ -15,8 +15,8 @@ class QJsonObject; -namespace KPkPass { - +namespace KPkPass +{ class LocationPrivate; /** A pass location element. @@ -41,6 +41,7 @@ Q_REQUIRED_RESULT double longitude() const; /** Text to display when location is reached. */ Q_REQUIRED_RESULT QString relevantText() const; + private: friend class Pass; explicit Location(const QJsonObject &obj); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/src/pass.cpp new/kpkpass-21.04.0/src/pass.cpp --- old/kpkpass-20.12.3/src/pass.cpp 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/src/pass.cpp 2021-04-10 08:02:32.000000000 +0200 @@ -5,29 +5,29 @@ */ #include "pass.h" -#include "pass_p.h" #include "barcode.h" #include "boardingpass.h" #include "location.h" #include "logging.h" +#include "pass_p.h" #include <KZip> #include <QBuffer> #include <QColor> #include <QFile> +#include <QImage> #include <QJsonArray> #include <QJsonDocument> #include <QJsonObject> #include <QLocale> +#include <QRegularExpression> #include <QTextCodec> -#include <QImage> #include <QUrl> -#include <QRegularExpression> using namespace KPkPass; -static const char * const passTypes[] = { "boardingPass", "coupon", "eventTicket", "generic", "storeCard" }; +static const char *const passTypes[] = {"boardingPass", "coupon", "eventTicket", "generic", "storeCard"}; static const auto passTypesCount = sizeof(passTypes) / sizeof(passTypes[0]); QJsonObject PassPrivate::passData() const @@ -216,12 +216,12 @@ Pass *pass = nullptr; switch (passTypeIdx) { - case Pass::BoardingPass: - pass = new KPkPass::BoardingPass(parent); - break; - default: - pass = new Pass(static_cast<Pass::Type>(passTypeIdx), parent); - break; + case Pass::BoardingPass: + pass = new KPkPass::BoardingPass(parent); + break; + default: + pass = new Pass(static_cast<Pass::Type>(passTypeIdx), parent); + break; } pass->d->buffer = std::move(device); @@ -231,7 +231,6 @@ return pass; } - Pass::Pass(Type passType, QObject *parent) : QObject(parent) , d(new PassPrivate) @@ -338,7 +337,7 @@ return d->message(d->passObj.value(QLatin1String("logoText")).toString()); } -QImage Pass::image(const QString& baseName, unsigned int devicePixelRatio) const +QImage Pass::image(const QString &baseName, unsigned int devicePixelRatio) const { const KArchiveFile *file = nullptr; for (; devicePixelRatio > 1; --devicePixelRatio) { @@ -426,13 +425,7 @@ return codes; } -static const char * const fieldNames[] = { - "auxiliaryFields", - "backFields", - "headerFields", - "primaryFields", - "secondaryFields" -}; +static const char *const fieldNames[] = {"auxiliaryFields", "backFields", "headerFields", "primaryFields", "secondaryFields"}; static const auto fieldNameCount = sizeof(fieldNames) / sizeof(fieldNames[0]); QVector<Field> Pass::auxiliaryFields() const @@ -460,7 +453,7 @@ return d->fields(QLatin1String(fieldNames[4]), this); } -Field Pass::field(const QString& key) const +Field Pass::field(const QString &key) const { for (unsigned int i = 0; i < fieldNameCount; ++i) { const auto fs = d->fields(QLatin1String(fieldNames[i]), this); @@ -500,12 +493,13 @@ return nullptr; } -template <typename T> -static QVariantList toVariantList(const QVector<T> &elems) +template<typename T> static QVariantList toVariantList(const QVector<T> &elems) { QVariantList l; l.reserve(elems.size()); - std::for_each(elems.begin(), elems.end(), [&l](const T &e) { l.push_back(QVariant::fromValue(e)); }); + std::for_each(elems.begin(), elems.end(), [&l](const T &e) { + l.push_back(QVariant::fromValue(e)); + }); return l; } @@ -548,7 +542,9 @@ { QVariantMap m; const auto elems = fields(); - std::for_each(elems.begin(), elems.end(), [&m](const Field &f) { m.insert(f.key(), QVariant::fromValue(f)); }); + std::for_each(elems.begin(), elems.end(), [&m](const Field &f) { + m.insert(f.key(), QVariant::fromValue(f)); + }); return m; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/src/pass.h new/kpkpass-21.04.0/src/pass.h --- old/kpkpass-20.12.3/src/pass.h 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/src/pass.h 2021-04-10 08:02:32.000000000 +0200 @@ -7,8 +7,8 @@ #ifndef KPKPASS_PASS_H #define KPKPASS_PASS_H -#include "kpkpass_export.h" #include "field.h" +#include "kpkpass_export.h" #include <QObject> #include <QVector> @@ -22,8 +22,8 @@ class QUrl; class QVariant; -namespace KPkPass { - +namespace KPkPass +{ class Barcode; class Location; class PassPrivate; @@ -67,13 +67,7 @@ virtual ~Pass(); /** Type of the pass. */ - enum Type { - BoardingPass, - Coupon, - EventTicket, - Generic, - StoreCard - }; + enum Type { BoardingPass, Coupon, EventTicket, Generic, StoreCard }; Q_ENUM(Type) Q_REQUIRED_RESULT Type type() const; @@ -150,7 +144,7 @@ friend class Barcode; friend class Field; friend class PassPrivate; - explicit Pass (Type passType, QObject *parent = nullptr); + explicit Pass(Type passType, QObject *parent = nullptr); std::unique_ptr<PassPrivate> d; ///@endcond diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kpkpass-20.12.3/src/pass_p.h new/kpkpass-21.04.0/src/pass_p.h --- old/kpkpass-20.12.3/src/pass_p.h 2021-02-04 14:01:52.000000000 +0100 +++ new/kpkpass-21.04.0/src/pass_p.h 2021-04-10 08:02:32.000000000 +0200 @@ -16,8 +16,10 @@ class KZip; class QIODevice; -namespace KPkPass { -class PassPrivate { +namespace KPkPass +{ +class PassPrivate +{ public: /** The pass data structure of the pass.json file. */ QJsonObject passData() const; @@ -40,4 +42,3 @@ } #endif // KPKPASS_PASS_H -
