Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package kidentitymanagement for 
openSUSE:Factory checked in at 2026-08-24 12:03:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kidentitymanagement (Old)
 and      /work/SRC/openSUSE:Factory/.kidentitymanagement.new.1258 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kidentitymanagement"

Mon Aug 24 12:03:01 2026 rev:130 rq:1372404 version:26.08.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/kidentitymanagement/kidentitymanagement.changes  
2026-07-02 22:06:10.938109670 +0200
+++ 
/work/SRC/openSUSE:Factory/.kidentitymanagement.new.1258/kidentitymanagement.changes
        2026-08-24 12:04:59.119776488 +0200
@@ -1,0 +2,35 @@
+Sun Aug 16 07:27:11 UTC 2026 - Christophe Marin <[email protected]>
+
+- Update to 26.08.0
+  * New feature release
+  * For more details please see:
+  * https://kde.org/announcements/gear/26.08.0/
+- No code change since 26.07.90
+
+-------------------------------------------------------------------
+Sat Aug  1 11:38:54 UTC 2026 - Christophe Marin <[email protected]>
+
+- Update to 26.07.90
+  * New feature release
+- No code change since 26.07.80
+
+-------------------------------------------------------------------
+Sat Jul 18 11:11:34 UTC 2026 - Christophe Marin <[email protected]>
+
+- Update to 26.07.80
+  * New feature release
+- Changes since 26.04.3:
+  * Add ECMInstalledLibraryCheck support
+  * Fix coding style
+  * CMAKE_CXX_SCAN_FOR_MODULES is already defined in ecm
+  * Add missing dep
+  * identitytreedelegate.cpp - fix compile warning
+  * Emit dataChanged after that we assign/save settings
+  * Don't store qlineedit
+  * Add check about value
+  * Make sure that pointer is not null
+  * USe QT_ENABLE_STRICT_MODE_UP_TO
+  * Remove unused #include <QString> already includes by #include <QStringList>
+  * KIDENTITYMANAGEMENT_LIB_VERSION is not used
+
+-------------------------------------------------------------------

Old:
----
  kidentitymanagement-26.04.3.tar.xz
  kidentitymanagement-26.04.3.tar.xz.sig

New:
----
  kidentitymanagement-26.08.0.tar.xz
  kidentitymanagement-26.08.0.tar.xz.sig

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

Other differences:
------------------
++++++ kidentitymanagement.spec ++++++
--- /var/tmp/diff_new_pack.rAvPnt/_old  2026-08-24 12:05:00.368820589 +0200
+++ /var/tmp/diff_new_pack.rAvPnt/_new  2026-08-24 12:05:00.371820695 +0200
@@ -16,13 +16,13 @@
 #
 
 
-%define kf6_version 6.19.0
+%define kf6_version 6.27.0
 %define qt6_version 6.9.0
-%define kpim6_version 6.7.3
+%define kpim6_version 6.8.0
 
 %bcond_without released
 Name:           kidentitymanagement
-Version:        26.04.3
+Version:        26.08.0
 Release:        0
 Summary:        KDE PIM Libraries: Identity Management
 License:        LGPL-2.1-or-later
@@ -36,8 +36,8 @@
 BuildRequires:  cmake(KF6Codecs) >= %{kf6_version}
 BuildRequires:  cmake(KF6Config) >= %{kf6_version}
 BuildRequires:  cmake(KF6CoreAddons) >= %{kf6_version}
-BuildRequires:  cmake(KF6KirigamiAddons) >= 0.11
 BuildRequires:  cmake(KF6KIO) >= %{kf6_version}
+BuildRequires:  cmake(KF6KirigamiAddons) >= 0.11
 BuildRequires:  cmake(KF6TextCustomEditor)
 BuildRequires:  cmake(KF6XmlGui) >= %{kf6_version}
 BuildRequires:  cmake(KPim6TextEdit) >= %{kpim6_version}
@@ -88,8 +88,8 @@
 %package devel
 Summary:        KDE PIM Libraries: Identity Management - development files
 Requires:       libKPim6IdentityManagementCore6 = %{version}
-Requires:       libKPim6IdentityManagementWidgets6 = %{version}
 Requires:       libKPim6IdentityManagementQuick6 = %{version}
+Requires:       libKPim6IdentityManagementWidgets6 = %{version}
 Requires:       cmake(KF6CoreAddons) >= %{kf6_version}
 Requires:       cmake(KPim6TextEdit) >= %{kpim6_version}
 


++++++ kidentitymanagement-26.04.3.tar.xz -> kidentitymanagement-26.08.0.tar.xz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kidentitymanagement-26.04.3/.kde-ci.yml 
new/kidentitymanagement-26.08.0/.kde-ci.yml
--- old/kidentitymanagement-26.04.3/.kde-ci.yml 2026-06-28 05:44:21.000000000 
+0200
+++ new/kidentitymanagement-26.08.0/.kde-ci.yml 2026-08-12 06:08:18.000000000 
+0200
@@ -16,3 +16,4 @@
  cppcheck-arguments: '--enable=warning,performance,portability,style 
--suppress-xml=cppcheck-suppressions.xml'
  run-qmllint: true
  cmake-options: '-DWARNINGS_AS_ERRORS=ON'
+ enable-lsan: True
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kidentitymanagement-26.04.3/.pre-commit-config.yaml 
new/kidentitymanagement-26.08.0/.pre-commit-config.yaml
--- old/kidentitymanagement-26.04.3/.pre-commit-config.yaml     2026-06-28 
05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/.pre-commit-config.yaml     2026-08-12 
06:08:18.000000000 +0200
@@ -21,7 +21,7 @@
     - id: destroyed-symlinks
     - id: check-executables-have-shebangs
  - repo: https://github.com/pre-commit/mirrors-clang-format
-   rev: v21.1.8
+   rev: v22.1.5
    hooks:
     - id: clang-format
     # force using this project's configuration rather
@@ -29,14 +29,14 @@
       args: [--style=file:.clang-format-pre-commit]
  - repo: https://github.com/astral-sh/ruff-pre-commit
   # Ruff version.
-   rev: v0.14.14
+   rev: v0.15.12
    hooks:
     # Run the linter.
     - id: ruff
     # Run the formatter.
     - id: ruff-format
  - repo: https://github.com/codespell-project/codespell
-   rev: v2.4.1
+   rev: v2.4.2
    hooks:
     - id: codespell
       exclude: 
(textemoticons/core/data/emoji.json|textgrammarcheck/grammalecte/autotests/data/result1.json|texttranslator/translator/plugins/bergamot/autotests/data/modellanguages/models.json|textgrammarcheck/languagetool/autotests/data/test2.json|textautocorrection/core/autotests/data/custom-fr-ref.xml|textgrammarcheck/common/autotests/grammarresultutiltest.cpp|textautocorrection/core/autotests/data/custom-fr.xml)
@@ -45,12 +45,12 @@
    hooks:
     - id: gersemi
  - repo: https://github.com/DavidAnson/markdownlint-cli2
-   rev: v0.20.0
+   rev: v0.22.1
    hooks:
     - id: markdownlint-cli2
       files: \.(md|mdown|markdown)$
  - repo: https://github.com/scop/pre-commit-shfmt
-   rev: v3.12.0-2
+   rev: v3.13.1-1
    hooks:
     - id: shfmt
  - repo: https://github.com/shellcheck-py/shellcheck-py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kidentitymanagement-26.04.3/CMakeLists.txt 
new/kidentitymanagement-26.08.0/CMakeLists.txt
--- old/kidentitymanagement-26.04.3/CMakeLists.txt      2026-06-28 
05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/CMakeLists.txt      2026-08-12 
06:08:18.000000000 +0200
@@ -1,16 +1,18 @@
 # SPDX-FileCopyrightText: none
 # SPDX-License-Identifier: BSD-3-Clause
-cmake_minimum_required(VERSION 3.27)
-set(PIM_VERSION "6.7.3")
+cmake_minimum_required(VERSION 3.29)
+set(PIM_VERSION "6.8.0")
 
 project(KIdentityManagement VERSION ${PIM_VERSION})
 
 # ECM setup
-set(KF_MIN_VERSION "6.22.0")
+set(KF_MIN_VERSION "6.25.0")
 set(QT_REQUIRED_VERSION "6.9.0")
-set(CMAKE_CXX_SCAN_FOR_MODULES OFF)
 find_package(ECM ${KF_MIN_VERSION} CONFIG REQUIRED)
-set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
+set(CMAKE_MODULE_PATH
+    ${CMAKE_CURRENT_SOURCE_DIR}/cmake/ecmcopy
+    ${ECM_MODULE_PATH}
+)
 
 include(KDEInstallDirs)
 include(KDECMakeSettings)
@@ -18,7 +20,7 @@
 include(ECMGenerateQDoc)
 include(GenerateExportHeader)
 include(ECMGenerateHeaders)
-
+include(ECMInstalledLibraryCheck)
 include(ECMSetupVersion)
 file(
     GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES
@@ -31,6 +33,9 @@
 
 if(GIT_SOURCE_TARBALL)
     set(PRE_COMMIT_INSTALLED FALSE)
+    include(KDEGitCommitHooks)
+    include(KDEClangFormat)
+    kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
     if(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
         if(EXISTS "${PROJECT_SOURCE_DIR}/.git/hooks/pre-commit")
             file(READ "${PROJECT_SOURCE_DIR}/.git/hooks/pre-commit" 
FILE_CONTENTS)
@@ -45,38 +50,42 @@
         endif()
     endif()
     if(NOT ${PRE_COMMIT_INSTALLED})
-        find_program(PRE_COMMIT_EXECUTABLE pre-commit)
-        if(PRE_COMMIT_EXECUTABLE)
+        function(install_hook executable hook_name)
             message(
                 STATUS
-                "This module has pre-commit support. pre-commit binary was 
found. Installing pre-commit hook"
+                "This module has ${hook_name} support. ${hook_name} binary was 
found. Installing ${hook_name} hook"
             )
             execute_process(
                 COMMAND
-                    "${PRE_COMMIT_EXECUTABLE}" install -f
+                    "${executable}" install -f
                 ERROR_QUIET
                 RESULT_VARIABLE _precommitresult
                 WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}"
             )
             if(_precommitresult EQUAL 0)
-                message(STATUS "Pre-commit installed.")
+                message(STATUS "${hook_name} installed.")
             else()
                 message(
                     WARNING
-                    "Error during installing pre-commit hook: 
${PRE_COMMIT_EXECUTABLE} project source dir ${PROJECT_SOURCE_DIR}"
+                    "Error during installing ${hook_name} hook: ${executable} 
project source dir ${PROJECT_SOURCE_DIR}"
                 )
-                include(KDEGitCommitHooks)
-                include(KDEClangFormat)
-                kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
             endif()
+        endfunction()
+
+        find_program(PREK_EXECUTABLE prek)
+        if(PREK_EXECUTABLE)
+            install_hook(${PREK_EXECUTABLE} "Prek")
         else()
-            message(WARNING "This module has pre-commit support. pre-commit 
binary was not found.")
-            include(KDEGitCommitHooks)
-            include(KDEClangFormat)
-            kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
+            find_program(PRE_COMMIT_EXECUTABLE pre-commit)
+            if(PRE_COMMIT_EXECUTABLE)
+                install_hook(${PRE_COMMIT_EXECUTABLE} "pre-commit")
+            else()
+                message(WARNING "This module has pre-commit support. 
pre-commit binary was not found.")
+            endif()
         endif()
     endif()
 endif()
+
 include(ECMQtDeclareLoggingCategory)
 include(ECMDeprecationSettings)
 include(ECMFeatureSummary)
@@ -85,9 +94,8 @@
 
 option(BUILD_QUICK_SUPPORT "Build quick support. Needed for merkuro project" 
ON)
 
-set(KIDENTITYMANAGEMENT_LIB_VERSION ${PIM_VERSION})
-set(PIMTEXTEDIT_LIB_VERSION "6.7.3")
-set(KTEXTADDONS_MIN_VERSION "2.0.0")
+set(PIMTEXTEDIT_LIB_VERSION "6.8.0")
+set(KTEXTADDONS_MIN_VERSION "2.0.2")
 
 ########### Find packages ###########
 
@@ -138,7 +146,7 @@
     # see e.g. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56556 or 
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79328
     string(APPEND CMAKE_CXX_FLAGS " -Wshadow")
 endif()
-ecm_set_disabled_deprecation_versions(QT 6.11.0 KF 6.23.0)
+ecm_set_disabled_deprecation_versions(QT 6.12.0 KF 6.28.0)
 
 option(WARNINGS_AS_ERRORS "Warnings are errors -Werror" OFF)
 if(WARNINGS_AS_ERRORS)
@@ -150,6 +158,7 @@
         add_compile_options(-Wno-error=deprecated-declarations)
     endif()
 endif()
+add_compile_definitions(QT_ENABLE_STRICT_MODE_UP_TO=0x060B00)
 
 ########### Targets ###########
 add_subdirectory(src)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/README-ECMInstalledLibraryCheck.md 
new/kidentitymanagement-26.08.0/README-ECMInstalledLibraryCheck.md
--- old/kidentitymanagement-26.04.3/README-ECMInstalledLibraryCheck.md  
1970-01-01 01:00:00.000000000 +0100
+++ new/kidentitymanagement-26.08.0/README-ECMInstalledLibraryCheck.md  
2026-08-12 06:08:18.000000000 +0200
@@ -0,0 +1,11 @@
+# Check Libs
+
+See [C++ Library Headers & CMake Config 
Files](https://frinring.wordpress.com/2026/06/30/c-library-headers-cmake-config-files-are-we-serviceable/)
+
+## Execute tests
+
+```bash
+ninja install
+
+ninja all_installed_library_check
+```
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/cmake/ecmcopy/ECMInstalledLibraryCheck.cmake 
new/kidentitymanagement-26.08.0/cmake/ecmcopy/ECMInstalledLibraryCheck.cmake
--- 
old/kidentitymanagement-26.04.3/cmake/ecmcopy/ECMInstalledLibraryCheck.cmake    
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/kidentitymanagement-26.08.0/cmake/ecmcopy/ECMInstalledLibraryCheck.cmake    
    2026-08-12 06:08:18.000000000 +0200
@@ -0,0 +1,769 @@
+# SPDX-FileCopyrightText: 2026 Friedrich W. H. Kossebau <[email protected]>
+#
+# SPDX-License-Identifier: BSD-3-Clause
+
+#[=======================================================================[.rst:
+ECMInstalledLibraryCheck
+------------------------
+
+Generates a check to test artifacts of the library installation, like the
+self-containedness of the CMake config files as well as of the official public
+headers in the deployed layout.
+
+::
+
+  ecm_add_installed_library_check(<library_target>
+      [PACKAGE_NAME <package_name>]
+      [PACKAGE_VERSION <package_version>]
+      [PACKAGE_TARGET_NAMESPACE <package_target_namespace>]
+      [NO_PACKAGE_TARGET_NAMESPACE]
+      [COMPILE_DEFINITIONS <definition> [...]]
+      [EXTRA_DEPENDENCIES <dependency> [<version>] [...]]
+      [EXTRA_LINK_LIBRARIES <library> [...]])
+
+The function creates a target "<library_target>_installed_library_check" which
+can be invoked after the installation to check if the installed library 
artifacts
+are self-contained when used from a consumer.
+All these targets are added as dependency to a target
+"all_installed_library_check", which is created at the level where this module
+is first included.
+The check generates a CMake project with a dummy library which searches the 
given
+package for any specified version, links to the exported target as imported 
from
+the package's Cmake config file and as its sources for each given include 
strings
+adds a C++ source file with just the content "#include <include_string>".
+This project then is configured with cmake and all these sources are built.
+
+``PACKAGE_NAME`` specifies the name of the CMake package to check for.
+The default is "${PROJECT_NAME}".
+
+``PACKAGE_VERSION`` specifies the version of the CMake package to check for.
+The default is "${PROJECT_VERSION}" if set, otherwise none.
+
+``PACKAGE_TARGET_NAMESPACE`` specifies what namespace the exported target
+name of the library is placed in. The default is the value estimated for
+the package name, unless ``NO_PACKAGE_TARGET_NAMESPACE`` is set.
+
+``NO_PACKAGE_TARGET_NAMESPACE`` defines that the library target is exported
+in the package without any namespace.
+
+``COMPILE_DEFINITIONS`` can be used to set custom definitions for the test
+builds against the headers.
+
+``EXTRA_DEPENDENCIES`` can be used to add custom dependencies to search for
+with "find_package()`. This can be used if the current dependencies declared
+in the installed CMake config are not complete, but can not be changed.
+
+``EXTRA_LINK_LIBRARIES`` can be used to add custom libraries to link to with
+"target_link_libraries()`. This can be used if the current list of libraries
+in the public interface is not complete, but can not be changed.
+
+::
+
+  ecm_installed_library_check_include_strings(<library_target>
+      HEADERS <package_name>
+      [PREFIX <prefix>])
+
+
+``HEADERS`` specifies the header files whose base names will be available as
+public include strings.
+
+``PREFIX`` specifies a prefix, which consumers need to append next to the base 
names
+of the headers passed to ``HEADERS``. The argument <prefix> is specified 
without a
+trailing "/". Default is none.
+
+::
+
+  ecm_installed_library_check_cmake_variable(<library_target>
+      NAME <name>
+      VALUE <value>
+      [TYPE <type>])
+
+
+``NAME`` specifies the name of a variable expected to be set after finding the
+package.
+
+``VALUE`` specifies the value expected to be set for the variable. For 
variables
+of the type "BOOL" the usual evaluation of CMake to a boolean value is 
compared.
+
+``TYPE`` specifies the type of the variable. The options are "BOOL", "STRING".
+Default is "STRING"
+
+::
+
+  ecm_installed_library_check_compile_definition(<library_target>
+      NAME <name>
+      [VALUE <value>]
+      [UNDEFINED])
+
+
+``NAME`` specifies the name of a macro to test.
+
+``VALUE`` specifies the value expected to be set for the macro If not passed,
+the macro is only tested for being defined. Only numeric values are supported.
+
+``UNDEFINED`` specifies if the macro should be tested for being undefined.
+
+::
+
+  ecm_installed_library_check_preprocessor_macro(<library_target>
+      NAME <name>
+      [VALUE <value>]
+      [UNDEFINED]
+      [SILENT])
+
+
+``NAME`` specifies the name of a macro to test.
+
+``VALUE`` specifies the value expected to be set for the macro If not passed,
+the macro is only tested for being defined. Only numeric values are supported.
+
+``UNDEFINED`` specifies if the macro should be tested for being undefined.
+
+``SILENT`` specifies if the positive result should not be reported.
+
+::
+
+  ecm_installed_library_check_version_preprocessor_macros(<library_target>
+      PREFIX <prefix>
+      [VERSION <version>]
+      [SILENT])
+
+
+``PREFIX`` specifies the prefix of the version macros to test. The expected 
macro
+names are: "<prefix>_VERSION" (hexadecimal number), "<prefix>_VERSION_MAJOR",
+"<prefix>_VERSION_MINOR" and "<prefix>_VERSION_PATCH".
+
+``VERSION`` specifies the version string "<major>.<minor>.<patch>".
+
+``SILENT`` specifies if the positive results should not be reported.
+
+Example usage:
+
+.. code-block:: cmake
+
+  # add a non-default target "MyLib_installed_library_check",
+  # which will test for a CMake config file for "MyPackage",
+  # at version "1.0",  with the imported library target
+  # "MyPackage::MyLib" and whose include strings (headers)
+  # can be used self-contained when linking the target
+  ecm_add_installed_library_check(MyLib
+      PACKAGE_NAME "MyPackage"
+      PACKAGE_VERSION "1.0"
+  )
+
+  # for any <MLFoo> etc. includes
+  ecm_installed_library_check_include_strings(MyLib
+      HEADERS
+          /absolute/path/MLFoo
+          relative/path/MLBar
+          # etc
+  )
+
+  # for any <ML/Foo> etc. includes
+  ecm_installed_library_check_include_strings(MyLib
+      HEADERS
+          /absolute/path/Foo
+          relative/path/Bar
+          # etc
+      PREFIX ML
+  )
+
+Since 6.29
+#]=======================================================================]
+
+cmake_policy(VERSION 3.29)
+
+if(NOT TARGET all_installed_library_check)
+    add_custom_target(all_installed_library_check)
+endif()
+
+# Purpose: testing basic self-containedness of public headers and cmake config 
files
+# no testing of actual symbols or template methods
+# TODO: support testing with other build metadata formats, like pkgconfig?
+function(ecm_add_installed_library_check _target)
+    set(options NO_PACKAGE_TARGET_NAMESPACE)
+    set(oneValueArgs
+        PACKAGE_NAME
+        PACKAGE_VERSION
+        PACKAGE_TARGET_NAMESPACE
+    )
+    set(multiValueArgs
+        EXTRA_DEPENDENCIES
+        EXTRA_LINK_LIBRARIES
+        COMPILE_DEFINITIONS
+    )
+
+    cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" 
"${multiValueArgs}" ${ARGN})
+
+    # argument checks
+    if(ARG_UNPARSED_ARGUMENTS)
+        message(
+            FATAL_ERROR
+            "Unknown keywords given to ecm_add_installed_library_check(): 
\"${ARG_UNPARSED_ARGUMENTS}\""
+        )
+    endif()
+    if(ARG_NO_PACKAGE_TARGET_NAMESPACE AND ARG_PACKAGE_TARGET_NAMESPACE)
+        message(
+            FATAL_ERROR
+            "ecm_add_installed_library_check cannot be called with both 
NO_PACKAGE_TARGET_NAMESPACE and PACKAGE_TARGET_NAMESPACE args."
+        )
+    endif()
+    set(_library_types
+        "STATIC_LIBRARY"
+        "SHARED_LIBRARY"
+        "INTERFACE_LIBRARY"
+    )
+    get_target_property(_type ${_target} TYPE)
+    if(NOT ${_type} IN_LIST _library_types)
+        message(
+            FATAL_ERROR
+            "ecm_add_installed_library_check cannot be called on a target 
which is not some library. Was: ${_type}"
+        )
+    endif()
+
+    # setup data
+    if(ARG_PACKAGE_NAME)
+        set(_package_name "${ARG_PACKAGE_NAME}")
+    else()
+        set(_package_name "${PROJECT_NAME}")
+    endif()
+    if(ARG_PACKAGE_VERSION)
+        set(_package_version ${ARG_PACKAGE_VERSION})
+    else()
+        if(PROJECT_VERSION)
+            set(_package_version ${PROJECT_VERSION})
+        else()
+            set(_package_version)
+        endif()
+    endif()
+    if(_package_version)
+        set(_package_version_exact "EXACT")
+    else()
+        set(_package_version_exact)
+    endif()
+    if(ARG_PACKAGE_TARGET_NAMESPACE)
+        set(_library_target_namespace ${ARG_PACKAGE_TARGET_NAMESPACE})
+    else()
+        if(ARG_NO_PACKAGE_TARGET_NAMESPACE)
+            set(_library_target_namespace)
+        else()
+            set(_library_target_namespace "${_package_name}::")
+        endif()
+    endif()
+    set(_extra_find_packages_statements)
+    if(ARG_EXTRA_DEPENDENCIES)
+        list(LENGTH ARG_EXTRA_DEPENDENCIES _deps_count)
+        set(_i 0)
+        while(${_i} LESS ${_deps_count})
+            list(GET ARG_EXTRA_DEPENDENCIES ${_i} _extra_package_name)
+            math(EXPR _i "${_i} + 1")
+            set(_extra_package_version_string)
+            # check next arg if it is version and thus to be consumed
+            if(${_i} LESS ${_deps_count})
+                list(GET ARG_EXTRA_DEPENDENCIES ${_i} _extra_package_version)
+                if(_extra_package_version MATCHES 
"^([0-9]+)\\.([0-9]+)(\\.([0-9]+))?$")
+                    set(_extra_package_version_string " 
${_extra_package_version}")
+                    math(EXPR _i "${_i} + 1")
+                endif()
+            endif()
+            set(_extra_find_packages_statements
+                
"find_package(${_extra_package_name}${_extra_package_version_string} 
REQUIRED)\n"
+            )
+        endwhile()
+    endif()
+    set(_extra_link_libraries_list)
+    foreach(_link_library IN LISTS ARG_EXTRA_LINK_LIBRARIES)
+        string(APPEND _extra_link_libraries_list "\n    ${_link_library}")
+    endforeach()
+    set(_compile_definitions_statement)
+    if(ARG_COMPILE_DEFINITIONS)
+        set(_compile_definitions_statement
+            "target_compile_definitions(InstalledLibraryCheck PRIVATE 
${ARG_COMPILE_DEFINITIONS})\n"
+        )
+    endif()
+    set(_prefix_path "${CMAKE_INSTALL_PREFIX}")
+
+    set(_compiler_propagation)
+    foreach(_compiler IN ITEMS CMAKE_C_COMPILER CMAKE_CXX_COMPILER)
+        if(${_compiler})
+            list(APPEND _compiler_propagation "-D${_compiler}=${${_compiler}}")
+        endif()
+    endforeach()
+
+    set(_languages)
+    if(CMAKE_C_COMPILER)
+        string(APPEND _languages " C")
+    endif()
+    if(CMAKE_CXX_COMPILER)
+        string(APPEND _languages " CXX")
+    endif()
+    if(_languages)
+        string(PREPEND _languages " LANGUAGES")
+    endif()
+
+    # prepare (generator) expressions
+    set(_installed_library_check_dir 
"${CMAKE_CURRENT_BINARY_DIR}/${_target}_ECMInstalledLibraryCheck")
+    set(_include_strings 
"$<TARGET_PROPERTY:${_target},ECM_INSTALLED_LIBRARY_INCLUDE_STRINGS>")
+    set(_include_strings_sorted "$<LIST:SORT,${_include_strings}>")
+    set(_include_strings_lines "$<JOIN:${_include_strings_sorted},\n    >")
+    set(_exported_target_name "$<TARGET_PROPERTY:${_target},EXPORT_NAME>")
+    set(_library_target_name
+        
"${_library_target_namespace}$<IF:$<BOOL:${_exported_target_name}>,${_exported_target_name},${_target}>"
+    )
+
+    set(_cmake_variables_check_statements
+        
"$<TARGET_PROPERTY:${_target},ECM_INSTALLED_LIBRARY_CMAKE_VARIABLES_CHECK_CODE>"
+    )
+
+    set(_compile_definitions_check_statements
+        
"$<TARGET_PROPERTY:${_target},ECM_INSTALLED_LIBRARY_COMPILE_DEFINITIONS_CHECK_CODE>"
+    )
+    set(_source_file "ecm_installed_library_check_compile_definitions.cpp")
+    set(_compile_definitions_check_code
+        "$<IF:$<BOOL:${_compile_definitions_check_statements}>,
+file(GENERATE OUTPUT ${_source_file} CONTENT 
\"${_compile_definitions_check_statements}\")\n
+target_sources(InstalledLibraryCheck PRIVATE ${_source_file})\n,>"
+    )
+
+    set(_preprocessor_macro_check_statements
+        
"$<TARGET_PROPERTY:${_target},ECM_INSTALLED_LIBRARY_PREPROCESSOR_MACRO_CHECK_CODE>"
+    )
+    set(_preprocessor_macro_check_code
+        "$<IF:$<BOOL:${_preprocessor_macro_check_statements}>,
+\"${_preprocessor_macro_check_statements}\",>"
+    )
+
+    file(
+        GENERATE OUTPUT "${_installed_library_check_dir}/CMakeLists.txt"
+        CONTENT
+            "# This file was generated by ecm_add_installed_library_check(). 
DO NOT EDIT!
+cmake_minimum_required(VERSION 3.29)
+
+project(InstalledLibraryCheck${_languages})
+
+find_package(${_package_name} ${_package_version} ${_package_version_exact} 
CONFIG REQUIRED NO_DEFAULT_PATH
+    PATHS \"${_prefix_path}\"
+)
+${_extra_find_packages_statements}
+include(FeatureSummary)
+feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
+${_cmake_variables_check_statements}
+add_library(InstalledLibraryCheck MODULE)
+target_link_libraries(InstalledLibraryCheck
+    ${_library_target_name}${_extra_link_libraries_list}
+)
+${_compile_definitions_statement}
+set(_include_strings
+    ${_include_strings_lines}
+)
+${_compile_definitions_check_code}
+set(_preprocessor_macro_check_statements${_preprocessor_macro_check_code})
+
+foreach(_include_string IN LISTS _include_strings)
+    string(REPLACE \"/\" \"__\" _escaped_include_string \${_include_string})
+    set(_source_file 
\"\${CMAKE_CURRENT_BINARY_DIR}/\${_escaped_include_string}.cpp\")
+    file(GENERATE OUTPUT \${_source_file} CONTENT \"#include 
<\${_include_string}>\\n\${_preprocessor_macro_check_statements}\")
+    target_sources(InstalledLibraryCheck PRIVATE \${_source_file})
+endforeach()
+"
+    )
+
+    set(_check_target_name ${_target}_installed_library_check)
+    add_custom_target(
+        ${_check_target_name}
+        COMMAND
+            ${CMAKE_COMMAND}
+            # TODO: other options to pass on? e.g. for cross-compilation, 
tool-chain file?
+            -G ${CMAKE_GENERATOR} ${_compiler_propagation} --fresh .
+        COMMAND
+            ${CMAKE_COMMAND} --build .
+        WORKING_DIRECTORY ${_installed_library_check_dir}
+        JOB_SERVER_AWARE
+    )
+
+    add_dependencies(all_installed_library_check ${_check_target_name})
+endfunction()
+
+function(ecm_installed_library_check_include_strings _target)
+    set(options)
+    set(oneValueArgs PREFIX)
+    set(multiValueArgs HEADERS)
+
+    cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" 
"${multiValueArgs}" ${ARGN})
+
+    # argument checks
+    if(ARG_UNPARSED_ARGUMENTS)
+        message(
+            FATAL_ERROR
+            "Unknown keywords given to 
ecm_installed_library_check_include_strings(): \"${ARG_UNPARSED_ARGUMENTS}\""
+        )
+    endif()
+
+    # store data with library target
+    get_target_property(_names ${_target} 
ECM_INSTALLED_LIBRARY_INCLUDE_STRINGS)
+    if(_names STREQUAL "_names-NOTFOUND")
+        set(_names)
+    endif()
+
+    if(ARG_PREFIX)
+        string(APPEND ARG_PREFIX "/")
+    endif()
+    foreach(_header IN LISTS ARG_HEADERS)
+        cmake_path(GET _header FILENAME _name)
+        list(APPEND _names "${ARG_PREFIX}${_name}")
+    endforeach()
+
+    set_target_properties(
+        ${_target}
+        PROPERTIES
+            ECM_INSTALLED_LIBRARY_INCLUDE_STRINGS
+                "${_names}"
+    )
+endfunction()
+
+function(ecm_installed_library_check_cmake_variable _target)
+    set(options)
+    set(oneValueArgs NAME TYPE VALUE)
+    set(multiValueArgs)
+
+    cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" 
"${multiValueArgs}" ${ARGN})
+
+    # argument checks
+    if(ARG_UNPARSED_ARGUMENTS)
+        message(
+            FATAL_ERROR
+            "Unknown keywords given to 
ecm_installed_library_check_cmake_variable(): \"${ARG_UNPARSED_ARGUMENTS}\""
+        )
+    endif()
+    if(NOT DEFINED ARG_NAME)
+        message(
+            FATAL_ERROR
+            "Missing NAME argument to 
ecm_installed_library_check_cmake_variable(): \"${ARG_UNPARSED_ARGUMENTS}\""
+        )
+    endif()
+    if(ARG_TYPE)
+        set(_variable_types
+            "BOOL"
+            "STRING"
+        )
+        if(NOT ${ARG_TYPE} IN_LIST _variable_types)
+            message(FATAL_ERROR "ecm_installed_library_check_cmake_variable 
called with unknown type: ${ARG_TYPE}")
+        endif()
+    else()
+        set(ARG_TYPE "STRING")
+    endif()
+
+    # store code with library target
+    get_target_property(_code ${_target} 
ECM_INSTALLED_LIBRARY_CMAKE_VARIABLES_CHECK_CODE)
+    if(_code STREQUAL "_code-NOTFOUND")
+        set(_code "\nmessage(STATUS \"Checking CMake variables\")\n")
+    endif()
+
+    if(${ARG_TYPE} STREQUAL "BOOL")
+        if(${ARG_VALUE})
+            set(_value_condition_code "\${${ARG_NAME}}")
+            set(_value_error_report "is FALSE, expecting TRUE")
+        else()
+            set(_value_condition_code "NOT \${${ARG_NAME}}")
+            set(_value_error_report "is TRUE, expecting FALSE")
+        endif()
+    else() # STRING
+        set(_value_condition_code "\${${ARG_NAME}} STREQUAL \"${ARG_VALUE}\"")
+        set(_value_error_report "is '\${${ARG_NAME}}', expecting 
'${ARG_VALUE}'")
+    endif()
+
+    set(_var_check_code
+        "if(NOT DEFINED ${ARG_NAME})
+    message(SEND_ERROR \"${ARG_NAME}: not defined\")
+else()
+    if (${_value_condition_code})
+        message(STATUS \"${ARG_NAME}: passed\")
+    else()
+        message(SEND_ERROR \"${ARG_NAME}: ${_value_error_report}\")
+    endif()
+endif()
+"
+    )
+
+    string(APPEND _code "${_var_check_code}")
+
+    set_target_properties(
+        ${_target}
+        PROPERTIES
+            ECM_INSTALLED_LIBRARY_CMAKE_VARIABLES_CHECK_CODE
+                "${_code}"
+    )
+endfunction()
+
+function(
+    _ecm_installed_library_check_get_check_code
+    _target
+    _var_name
+    _property_name
+    _subject_name
+    _silent
+)
+    get_target_property(_check_code ${_target} ${_property_name})
+    if(_check_code STREQUAL "_check_code-NOTFOUND")
+        if(_silent)
+            set(_check_code "")
+        else()
+            set(_check_code "#pragma message(\\\"Checking 
${_subject_name}\\\")\n")
+        endif()
+        string(
+            APPEND _check_code
+            "#define _ECM_INSTALLED_LIBRARY_CHECK_VALUE_TO_STRING(x) #x
+#define _ECM_INSTALLED_LIBRARY_CHECK_VALUE(x) 
_ECM_INSTALLED_LIBRARY_CHECK_VALUE_TO_STRING(x)
+"
+        )
+    endif()
+    set(${_var_name} ${_check_code} PARENT_SCOPE)
+endfunction()
+
+function(_ecm_installed_library_check_macro_value_check_code _var_name _name 
_value _silent)
+    set(_check_code
+        "#if !defined(${_name})
+    #error(\\\"${_name}: not defined\\\")
+#else
+    #if ${_name} != ${_value}
+        #pragma message(\\\"${_name}: is '\\\" 
_ECM_INSTALLED_LIBRARY_CHECK_VALUE(${_name}) \\\"'\\\")
+        #error(\\\"${_name}: expecting '${_value}'\\\")
+"
+    )
+    if(NOT _silent)
+        string(
+            APPEND _check_code
+            "    #else
+       #pragma message(\\\"${_name}: passed\\\")
+"
+        )
+    endif()
+    string(
+        APPEND _check_code
+        "    #endif
+#endif
+"
+    )
+    set(${_var_name} ${_check_code} PARENT_SCOPE)
+endfunction()
+
+function(_ecm_installed_library_check_macro_defined_check_code _var_name _name 
_silent)
+    set(_check_code
+        "#if !defined(${_name})
+    #error(\\\"${_name}: is undefined, expecting defined\\\")
+"
+    )
+    if(NOT _silent)
+        string(
+            APPEND _check_code
+            "#else
+    #pragma message(\\\"${_name}: passed\\\")
+"
+        )
+    endif()
+    string(
+        APPEND _check_code
+        "#endif
+"
+    )
+
+    set(${_var_name} ${_check_code} PARENT_SCOPE)
+endfunction()
+
+function(_ecm_installed_library_check_macro_undefined_check_code _var_name 
_name _silent)
+    set(_check_code
+        "#if defined(${_name})
+    #error(\\\"${_name}: is defined, expecting undefined\\\")
+"
+    )
+    if(NOT _silent)
+        string(
+            APPEND _check_code
+            "#else
+    #pragma message(\\\"${_name}: passed\\\")
+"
+        )
+    endif()
+    string(
+        APPEND _check_code
+        "#endif
+"
+    )
+    set(${_var_name} ${_check_code} PARENT_SCOPE)
+endfunction()
+
+function(ecm_installed_library_check_compile_definition _target)
+    set(options UNDEFINED)
+    set(oneValueArgs NAME VALUE)
+    set(multiValueArgs)
+
+    cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" 
"${multiValueArgs}" ${ARGN})
+
+    # argument checks
+    if(ARG_UNPARSED_ARGUMENTS)
+        message(
+            FATAL_ERROR
+            "Unknown keywords given to 
ecm_installed_library_check_compile_definition(): \"${ARG_UNPARSED_ARGUMENTS}\""
+        )
+    endif()
+    if(NOT DEFINED ARG_NAME)
+        message(
+            FATAL_ERROR
+            "Missing NAME argument to 
ecm_installed_library_check_compile_definition(): \"${ARG_UNPARSED_ARGUMENTS}\""
+        )
+    endif()
+    if(ARG_VALUE AND ARG_UNDEFINED)
+        message(
+            FATAL_ERROR
+            "ecm_installed_library_check_compile_definition cannot be called 
with both VALUE and UNDEFINED args."
+        )
+    endif()
+
+    # store code with library target
+    _ecm_installed_library_check_get_check_code(${_target} _code
+        ECM_INSTALLED_LIBRARY_COMPILE_DEFINITIONS_CHECK_CODE "compile 
definitions" FALSE
+    )
+
+    if(DEFINED ARG_VALUE)
+        _ecm_installed_library_check_macro_value_check_code(_var_check_code 
${ARG_NAME} ${ARG_VALUE} FALSE)
+    elseif(ARG_UNDEFINED)
+        
_ecm_installed_library_check_macro_undefined_check_code(_var_check_code 
${ARG_NAME} FALSE)
+    else()
+        _ecm_installed_library_check_macro_defined_check_code(_var_check_code 
${ARG_NAME} FALSE)
+    endif()
+
+    string(APPEND _code "${_var_check_code}")
+
+    set_target_properties(
+        ${_target}
+        PROPERTIES
+            ECM_INSTALLED_LIBRARY_COMPILE_DEFINITIONS_CHECK_CODE
+                "${_code}"
+    )
+endfunction()
+
+function(ecm_installed_library_check_preprocessor_macro _target)
+    set(options
+        UNDEFINED
+        SILENT
+    )
+    set(oneValueArgs NAME VALUE)
+    set(multiValueArgs)
+
+    cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" 
"${multiValueArgs}" ${ARGN})
+
+    # argument checks
+    if(ARG_UNPARSED_ARGUMENTS)
+        message(
+            FATAL_ERROR
+            "Unknown keywords given to 
ecm_installed_library_check_preprocessor_macro(): \"${ARG_UNPARSED_ARGUMENTS}\""
+        )
+    endif()
+    if(NOT DEFINED ARG_NAME)
+        message(
+            FATAL_ERROR
+            "Missing NAME argument to 
ecm_installed_library_check_preprocessor_macro(): \"${ARG_UNPARSED_ARGUMENTS}\""
+        )
+    endif()
+    if(ARG_VALUE AND ARG_UNDEFINED)
+        message(
+            FATAL_ERROR
+            "ecm_installed_library_check_preprocessor_macro cannot be called 
with both VALUE and UNDEFINED args."
+        )
+    endif()
+
+    # store code with library target
+    _ecm_installed_library_check_get_check_code(${_target} _code
+        ECM_INSTALLED_LIBRARY_PREPROCESSOR_MACRO_CHECK_CODE "preprocessor 
macros" ${ARG_SILENT}
+    )
+
+    if(ARG_SILENT)
+        set(_silent TRUE)
+    else()
+        set(_silent FALSE)
+    endif()
+
+    if(DEFINED ARG_VALUE)
+        _ecm_installed_library_check_macro_value_check_code(_var_check_code 
${ARG_NAME} ${ARG_VALUE} ${_silent})
+    elseif(ARG_UNDEFINED)
+        
_ecm_installed_library_check_macro_undefined_check_code(_var_check_code 
${ARG_NAME} ${_silent})
+    else()
+        _ecm_installed_library_check_macro_defined_check_code(_var_check_code 
${ARG_NAME} ${_silent})
+    endif()
+
+    string(APPEND _code "${_var_check_code}")
+
+    set_target_properties(
+        ${_target}
+        PROPERTIES
+            ECM_INSTALLED_LIBRARY_PREPROCESSOR_MACRO_CHECK_CODE
+                "${_code}"
+    )
+endfunction()
+
+function(ecm_installed_library_check_version_preprocessor_macros _target)
+    set(options SILENT)
+    set(oneValueArgs
+        PREFIX
+        VERSION
+    )
+    set(multiValueArgs)
+
+    cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" 
"${multiValueArgs}" ${ARGN})
+
+    # argument checks
+    if(ARG_UNPARSED_ARGUMENTS)
+        message(
+            FATAL_ERROR
+            "Unknown keywords given to 
ecm_installed_library_check_version_preprocessor_macros(): 
\"${ARG_UNPARSED_ARGUMENTS}\""
+        )
+    endif()
+    if(NOT DEFINED ARG_PREFIX)
+        message(
+            FATAL_ERROR
+            "Missing NAME argument to 
ecm_installed_library_check_version_preprocessor_macros(): 
\"${ARG_UNPARSED_ARGUMENTS}\""
+        )
+    endif()
+
+    if(NOT DEFINED ARG_VERSION)
+        set(ARG_VERSION "${PROJECT_VERSION}")
+    endif()
+    if(ARG_SILENT)
+        set(_silent SILENT)
+    else()
+        set(_silent)
+    endif()
+
+    string(REGEX MATCH "^0*([0-9]+)\\.0*([0-9]+)\\.0*([0-9]+)$" _ 
${ARG_VERSION})
+    set(_version_major ${CMAKE_MATCH_1})
+    set(_version_minor ${CMAKE_MATCH_2})
+    set(_version_patch ${CMAKE_MATCH_3})
+
+    math(
+        EXPR
+        _hex_number
+        "${_version_major}*65536 + ${_version_minor}*256 + ${_version_patch}"
+        OUTPUT_FORMAT HEXADECIMAL
+    )
+
+    ecm_installed_library_check_preprocessor_macro(${_target}
+        NAME ${ARG_PREFIX}_VERSION
+        VALUE ${_hex_number}
+        ${_silent}
+    )
+    ecm_installed_library_check_preprocessor_macro(${_target}
+        NAME ${ARG_PREFIX}_VERSION_MAJOR
+        VALUE ${_version_major}
+        ${_silent}
+    )
+    ecm_installed_library_check_preprocessor_macro(${_target}
+        NAME ${ARG_PREFIX}_VERSION_MINOR
+        VALUE ${_version_minor}
+        ${_silent}
+    )
+    ecm_installed_library_check_preprocessor_macro(${_target}
+        NAME ${ARG_PREFIX}_VERSION_PATCH
+        VALUE ${_version_patch}
+        ${_silent}
+    )
+endfunction()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/po/ar/libkpimidentities6.po 
new/kidentitymanagement-26.08.0/po/ar/libkpimidentities6.po
--- old/kidentitymanagement-26.04.3/po/ar/libkpimidentities6.po 2026-06-28 
05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/po/ar/libkpimidentities6.po 2026-08-12 
06:08:18.000000000 +0200
@@ -313,7 +313,7 @@
 "يمكنك إضافة أمر اعتباطيّ هنا، إمّا مع أو دون المسار وذلك حسب كون الأمر في "
 "المسار من عدمه. سينفّذ «بريدك» لكلّ بريد جديد الأمر وسيستخدم ما يُخرجه (إلى "
 "الخرج القياسيّ) كتوقيع. الأوامر غالبة الاستخدام مع هذه الآليّة هي ”fortune“ 
أو "
-"”ksig -random“. (كن حذراً السكربت يحتاج إلى شابنج #! )"
+"”ksig -random“. (كن حذرًا السكربت يحتاج إلى شابنج #! )"
 
 #: widgets/signatureconfigurator.cpp:260
 #, kde-format
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/po/ca/libkpimidentities6.po 
new/kidentitymanagement-26.08.0/po/ca/libkpimidentities6.po
--- old/kidentitymanagement-26.04.3/po/ca/libkpimidentities6.po 2026-06-28 
05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/po/ca/libkpimidentities6.po 2026-08-12 
06:08:18.000000000 +0200
@@ -347,3 +347,18 @@
 #, kde-format
 msgid "&Use HTML (disabling removes formatting)"
 msgstr "&Usa HTML (la inhabilitació elimina el format)"
+
+#~ msgid "Add..."
+#~ msgstr "Afegeix..."
+
+#~ msgid "Modify..."
+#~ msgstr "Modifica..."
+
+#~ msgid "Rename"
+#~ msgstr "Reanomena"
+
+#~ msgid "Remove"
+#~ msgstr "Elimina"
+
+#~ msgid "Set as Default"
+#~ msgstr "Estableix com a predeterminada"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/po/de/libkpimidentities6.po 
new/kidentitymanagement-26.08.0/po/de/libkpimidentities6.po
--- old/kidentitymanagement-26.04.3/po/de/libkpimidentities6.po 2026-06-28 
05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/po/de/libkpimidentities6.po 2026-08-12 
06:08:18.000000000 +0200
@@ -1,8 +1,8 @@
-# SPDX-FileCopyrightText: 2024 Johannes Obermayr <[email protected]>
 # SPDX-FileCopyrightText: 2007 Stephan Johach <[email protected]>
-# SPDX-FileCopyrightText: 2008, 2010 Thomas Reitelbach <[email protected]>
 # SPDX-FileCopyrightText: 2008 Frederik Schwarzer <[email protected]>
-# SPDX-FileCopyrightText: 2008, 2014, 2018, 2019, 2021 Burkhard Lück 
<[email protected]>
+# SPDX-FileCopyrightText: 2008, 2010 Thomas Reitelbach <[email protected]>
+# SPDX-FileCopyrightText: 2008, 2014, 2018-2019, 2021 Burkhard Lück 
<[email protected]>
+# SPDX-FileCopyrightText: 2024 Johannes Obermayr <[email protected]>
 # SPDX-FileCopyrightText: 2026 Frank Steinmetzger <[email protected]>
 msgid ""
 msgstr ""
@@ -317,7 +317,7 @@
 "Hier können Sie einen beliebigen Befehl eingebe, mit oder ohne Pfadangabe "
 "(je nachdem, ob sich der Befehl über die PATH-Variable auffinden lässt). Für "
 "jede neue E-Mail wird dieser Befehl ausgeführt und seine Ausgabe als "
-"Signatur verwendet. Typische Befehle sind z. B. „fortune“ oder „ksig -"
+"Signatur verwendet. Typische Befehle sind z. B. „fortune“ oder „ksig -"
 "random“. Skripte müssen mit einer Shebang-Zeile (#!/bin/bash) beginnen."
 
 #: widgets/signatureconfigurator.cpp:260
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/po/nn/libkpimidentities6.po 
new/kidentitymanagement-26.08.0/po/nn/libkpimidentities6.po
--- old/kidentitymanagement-26.04.3/po/nn/libkpimidentities6.po 2026-06-28 
05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/po/nn/libkpimidentities6.po 2026-08-12 
06:08:18.000000000 +0200
@@ -1,19 +1,20 @@
 # Translation of libkpimidentities6 to Norwegian Nynorsk
 #
+# Karl Ove Hufthammer <[email protected]>, 2008, 2013, 2020, 2022, 2026.
 # Eirik U. Birkeland <[email protected]>, 2008, 2009.
 msgid ""
 msgstr ""
 "Project-Id-Version: libkpimidentities\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2026-01-28 00:45+0000\n"
-"PO-Revision-Date: 2026-06-23 18:14+0200\n"
+"PO-Revision-Date: 2026-07-05 11:21+0200\n"
 "Last-Translator: Karl Ove Hufthammer <[email protected]>\n"
 "Language-Team: Norwegian Nynorsk <[email protected]>\n"
 "Language: nn\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 26.07.70\n"
+"X-Generator: Lokalize 26.04.3\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Environment: kde\n"
 "X-Accelerator-Marker: &\n"
@@ -231,7 +232,7 @@
 #: widgets/signatureconfigurator.cpp:118
 #, kde-format
 msgid "Click on the widgets below to obtain help on the input methods."
-msgstr "Trykk på elementa under for å få hjelp om dei ulike inndatametodane."
+msgstr "Trykk på elementa under for å få hjelp om dei ulike skrivemetodane."
 
 #: widgets/signatureconfigurator.cpp:120
 #, kde-format
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/po/sk/libkpimidentities6.po 
new/kidentitymanagement-26.08.0/po/sk/libkpimidentities6.po
--- old/kidentitymanagement-26.04.3/po/sk/libkpimidentities6.po 2026-06-28 
05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/po/sk/libkpimidentities6.po 2026-08-12 
06:08:18.000000000 +0200
@@ -44,7 +44,7 @@
 #, kde-format
 msgctxt "Separator between identity name and email address"
 msgid " - "
-msgstr " – "
+msgstr " - "
 
 #: core/identitytreemodel.cpp:94
 #, kde-format
@@ -102,7 +102,7 @@
 #: quick/qml/BasicIdentityEditorCard.qml:118
 #, kde-format
 msgid "[email protected]"
-msgstr "[email protected]"
+msgstr "[email protected]"
 
 #: quick/qml/BasicIdentityEditorCard.qml:127
 #, kde-format
@@ -184,7 +184,7 @@
 #: quick/qml/IdentityEditorPage.qml:96 quick/qml/IdentityEditorPage.qml:125
 #, kde-format
 msgid "Delete"
-msgstr "Odstrániť"
+msgstr "Vymazať zoznam"
 
 #: quick/qml/IdentityEditorPage.qml:104
 #, kde-format
@@ -269,7 +269,7 @@
 #: widgets/signatureconfigurator.cpp:221
 #, kde-format
 msgid "Text File (*.txt)"
-msgstr "Veľkosť textového súboru"
+msgstr "Textový súbor (*.txt)"
 
 #: widgets/signatureconfigurator.cpp:223
 #, kde-format
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/po/sv/libkpimidentities6.po 
new/kidentitymanagement-26.08.0/po/sv/libkpimidentities6.po
--- old/kidentitymanagement-26.04.3/po/sv/libkpimidentities6.po 2026-06-28 
05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/po/sv/libkpimidentities6.po 2026-08-12 
06:08:18.000000000 +0200
@@ -2,20 +2,20 @@
 # Copyright (C) YEAR This_file_is_part_of_KDE
 # This file is distributed under the same license as the PACKAGE package.
 #
-# SPDX-FileCopyrightText: 2007, 2008, 2018, 2019, 2021, 2023, 2024 Stefan 
Asserhäll <[email protected]>
+# SPDX-FileCopyrightText: 2007-2008, 2018-2019, 2021, 2023-2024, 2026 Stefan 
Asserhäll <[email protected]>
 msgid ""
 msgstr ""
 "Project-Id-Version: libkpimidentities\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2026-01-28 00:45+0000\n"
-"PO-Revision-Date: 2024-07-30 06:59+0200\n"
+"PO-Revision-Date: 2026-07-05 16:27+0200\n"
 "Last-Translator: Stefan Asserhäll <[email protected]>\n"
 "Language-Team: Swedish <[email protected]>\n"
 "Language: sv\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 24.05.2\n"
+"X-Generator: Lokalize 26.04.2\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 
 #: core/identitymanager.cpp:161
@@ -162,8 +162,7 @@
 #: quick/qml/IdentityConfigurationForm.qml:38
 #: quick/qml/IdentityConfigurationForm.qml:43
 #: quick/qml/IdentityConfigurationForm.qml:45
-#, fuzzy, kde-format
-#| msgid "Add Identity"
+#, kde-format
 msgctxt "@title"
 msgid "Add Identity"
 msgstr "Lägg till identitet"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/po/ug/libkpimidentities6.po 
new/kidentitymanagement-26.08.0/po/ug/libkpimidentities6.po
--- old/kidentitymanagement-26.04.3/po/ug/libkpimidentities6.po 2026-06-28 
05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/po/ug/libkpimidentities6.po 2026-08-12 
06:08:18.000000000 +0200
@@ -8,14 +8,15 @@
 "Project-Id-Version: libkpimidentities\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2026-01-28 00:45+0000\n"
-"PO-Revision-Date: 2013-09-08 07:05+0900\n"
-"Last-Translator: Gheyret Kenji <[email protected]>\n"
+"PO-Revision-Date: 2026-05-31 18:36-0400\n"
+"Last-Translator: Abduqadir Abliz <[email protected]>\n"
 "Language-Team: Uyghur Computer Science Association <[email protected]>\n"
 "Language: ug\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Poedit 3.9\n"
 
 #: core/identitymanager.cpp:161
 #, kde-format
@@ -34,7 +35,7 @@
 msgctxt ""
 "%1: name; %2: number appended to it to make it unique among a list of names"
 msgid "%1 #%2"
-msgstr "%1 #%2"
+msgstr ""
 
 #: core/identitymanager.cpp:571
 #, kde-format
@@ -45,15 +46,13 @@
 #, kde-format
 msgctxt "Separator between identity name and email address"
 msgid " - "
-msgstr ""
+msgstr " - "
 
 #: core/identitytreemodel.cpp:94
-#, fuzzy, kde-format
-#| msgctxt "use default address from control center"
-#| msgid "Default"
+#, kde-format
 msgctxt "Default identity"
 msgid " (default)"
-msgstr "كۆڭۈلدىكى"
+msgstr " (كۆڭۈلدىكى)"
 
 #: core/identitytreemodel.cpp:131
 #, kde-format
@@ -63,7 +62,7 @@
 #: core/identitytreemodel.cpp:134
 #, kde-format
 msgid "Email Address"
-msgstr ""
+msgstr "ئېلخەت ئادرېسى"
 
 #: core/signature.cpp:170
 #, kde-format
@@ -73,7 +72,7 @@
 #: quick/qml/BasicIdentityEditorCard.qml:28
 #, kde-format
 msgid "Identity"
-msgstr ""
+msgstr "سالاھىيەت"
 
 #: quick/qml/BasicIdentityEditorCard.qml:37
 #, kde-format
@@ -89,7 +88,7 @@
 #: quick/qml/BasicIdentityEditorCard.qml:56
 #, kde-format
 msgid "Email address"
-msgstr ""
+msgstr "ئېلخەت ئادرېسى"
 
 #: quick/qml/BasicIdentityEditorCard.qml:64
 #, kde-format
@@ -157,7 +156,7 @@
 #, kde-format
 msgctxt "@title"
 msgid "Edit Identity"
-msgstr ""
+msgstr "كىملىك تەھرىرلەش"
 
 #: quick/qml/IdentityConfigurationForm.qml:38
 #: quick/qml/IdentityConfigurationForm.qml:43
@@ -175,7 +174,7 @@
 #: quick/qml/IdentityEditorPage.qml:46
 #, kde-format
 msgid "Edit Identity"
-msgstr ""
+msgstr "كىملىك تەھرىرلەش"
 
 #: quick/qml/IdentityEditorPage.qml:74
 #, kde-format
@@ -186,22 +185,22 @@
 #: quick/qml/IdentityEditorPage.qml:96 quick/qml/IdentityEditorPage.qml:125
 #, kde-format
 msgid "Delete"
-msgstr ""
+msgstr "ئۆچۈر"
 
 #: quick/qml/IdentityEditorPage.qml:104
 #, kde-format
 msgid "Save"
-msgstr ""
+msgstr "ساقلا"
 
 #: quick/qml/IdentityEditorPage.qml:104
 #, kde-format
 msgid "Add"
-msgstr ""
+msgstr "قوش"
 
 #: quick/qml/IdentityEditorPage.qml:119
 #, kde-format
 msgid "Delete %1"
-msgstr ""
+msgstr "%1 ئۆچۈر"
 
 #: quick/qml/IdentityEditorPage.qml:120
 #, kde-format
@@ -211,7 +210,7 @@
 #: quick/qml/IdentityEditorPage.qml:134
 #, kde-format
 msgid "Cancel"
-msgstr ""
+msgstr "ۋاز كەچ"
 
 #: widgets/signatureconfigurator.cpp:107
 #, kde-format
@@ -332,12 +331,10 @@
 msgid "&Use HTML (disabling removes formatting)"
 msgstr ""
 
-#, fuzzy
 #~| msgid "Unnamed"
 #~ msgid "Rename"
 #~ msgstr "ئاتسىز"
 
-#, fuzzy
 #~| msgctxt "use default address from control center"
 #~| msgid "Default"
 #~ msgid "Set as Default"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kidentitymanagement-26.04.3/src/core/CMakeLists.txt 
new/kidentitymanagement-26.08.0/src/core/CMakeLists.txt
--- old/kidentitymanagement-26.04.3/src/core/CMakeLists.txt     2026-06-28 
05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/src/core/CMakeLists.txt     2026-08-12 
06:08:18.000000000 +0200
@@ -167,3 +167,23 @@
     add_subdirectory(autotests)
 endif()
 ecm_generate_qdoc(KPim6IdentityManagementCore 
kidentitymanagement-core.qdocconf)
+
+ecm_add_installed_library_check(KPim6IdentityManagementCore
+    PACKAGE_NAME "KPim6IdentityManagementCore"
+    PACKAGE_VERSION ${KIDENTITYMANAGEMENTCORE_VERSION}
+    PACKAGE_TARGET_NAMESPACE "KPim6::"
+)
+
+ecm_installed_library_check_include_strings(KPim6IdentityManagementCore
+    HEADERS
+    ${KIdentityManagementCore_HEADERS}
+    PREFIX kidentitymanagementcore
+)
+
+ecm_installed_library_check_include_strings(KPim6IdentityManagementCore
+    HEADERS
+    ${KIdentityManagementCore_CamelCase_HEADERS}
+
+
+    PREFIX KIdentityManagementCore
+)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/src/core/KPimIdentityManagementCoreConfig.cmake.in
 
new/kidentitymanagement-26.08.0/src/core/KPimIdentityManagementCoreConfig.cmake.in
--- 
old/kidentitymanagement-26.04.3/src/core/KPimIdentityManagementCoreConfig.cmake.in
  2026-06-28 05:44:21.000000000 +0200
+++ 
new/kidentitymanagement-26.08.0/src/core/KPimIdentityManagementCoreConfig.cmake.in
  2026-08-12 06:08:18.000000000 +0200
@@ -7,4 +7,10 @@
     KF6CoreAddons
     "@KF_MIN_VERSION@"
 )
+
+find_dependency(
+    Qt6Gui
+    "@QT_REQUIRED_VERSION@"
+)
+
 include("${CMAKE_CURRENT_LIST_DIR}/KPim6IdentityManagementCoreTargets.cmake")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kidentitymanagement-26.04.3/src/core/identity.h 
new/kidentitymanagement-26.08.0/src/core/identity.h
--- old/kidentitymanagement-26.04.3/src/core/identity.h 2026-06-28 
05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/src/core/identity.h 2026-08-12 
06:08:18.000000000 +0200
@@ -14,7 +14,7 @@
 
 #include <QHash>
 #include <QList>
-#include <QString>
+
 #include <QStringList>
 #include <QVariant>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/src/core/identitymodel.cpp 
new/kidentitymanagement-26.08.0/src/core/identitymodel.cpp
--- old/kidentitymanagement-26.04.3/src/core/identitymodel.cpp  2026-06-28 
05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/src/core/identitymodel.cpp  2026-08-12 
06:08:18.000000000 +0200
@@ -34,7 +34,7 @@
 
 QVariant IdentityModel::data(const QModelIndex &index, int role) const
 {
-    if (!index.isValid()) {
+    if (!index.isValid() || index.row() >= m_identitiesUoid.count()) {
         return {};
     }
     const auto &identity = 
m_identityManager->modifyIdentityForUoid(m_identitiesUoid[index.row()]);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/src/core/identitytreemodel.cpp 
new/kidentitymanagement-26.08.0/src/core/identitytreemodel.cpp
--- old/kidentitymanagement-26.04.3/src/core/identitytreemodel.cpp      
2026-06-28 05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/src/core/identitytreemodel.cpp      
2026-08-12 06:08:18.000000000 +0200
@@ -168,9 +168,9 @@
     switch (static_cast<IdentityRoles>(modelIndex.column())) {
     case IdentityNameRole: {
         const QModelIndex newIndex = index(modelIndex.row(), IdentityNameRole);
-        Q_EMIT dataChanged(newIndex, newIndex);
         identity.setIdentityName(value.toString());
         mIdentityManager->saveIdentity(identity);
+        Q_EMIT dataChanged(newIndex, newIndex);
         return true;
     }
     case DefaultRole: {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/src/core/identitytreesortproxymodel.cpp 
new/kidentitymanagement-26.08.0/src/core/identitytreesortproxymodel.cpp
--- old/kidentitymanagement-26.04.3/src/core/identitytreesortproxymodel.cpp     
2026-06-28 05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/src/core/identitytreesortproxymodel.cpp     
2026-08-12 06:08:18.000000000 +0200
@@ -64,7 +64,9 @@
 #else
         invalidateFilter();
 #endif
-        connect(mIdentityActivitiesAbstract, 
&IdentityActivitiesAbstract::activitiesChanged, this, 
&IdentityTreeSortProxyModel::slotInvalidateFilter);
+        if (mIdentityActivitiesAbstract) {
+            connect(mIdentityActivitiesAbstract, 
&IdentityActivitiesAbstract::activitiesChanged, this, 
&IdentityTreeSortProxyModel::slotInvalidateFilter);
+        }
     }
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/src/widgets/CMakeLists.txt 
new/kidentitymanagement-26.08.0/src/widgets/CMakeLists.txt
--- old/kidentitymanagement-26.04.3/src/widgets/CMakeLists.txt  2026-06-28 
05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/src/widgets/CMakeLists.txt  2026-08-12 
06:08:18.000000000 +0200
@@ -144,3 +144,21 @@
     add_subdirectory(autotests)
 endif()
 ecm_generate_qdoc(KPim6IdentityManagementWidgets 
kidentitymanagement-widgets.qdocconf)
+
+ecm_add_installed_library_check(KPim6IdentityManagementWidgets
+    PACKAGE_NAME "KPim6IdentityManagementWidgets"
+    PACKAGE_VERSION ${KIDENTITYMANAGEMENTWIDGETS_VERSION}
+    PACKAGE_TARGET_NAMESPACE "KPim6::"
+)
+
+ecm_installed_library_check_include_strings(KPim6IdentityManagementWidgets
+    HEADERS
+    ${KIdentityManagementWidgets_HEADERS}
+    PREFIX kidentitymanagementwidgets
+)
+
+ecm_installed_library_check_include_strings(KPim6IdentityManagementWidgets
+    HEADERS
+    ${KIdentityManagementWidgets_CamelCase_HEADERS}
+    PREFIX KIdentityManagementWidgets
+)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/src/widgets/identitytreedelegate.cpp 
new/kidentitymanagement-26.08.0/src/widgets/identitytreedelegate.cpp
--- old/kidentitymanagement-26.04.3/src/widgets/identitytreedelegate.cpp        
2026-06-28 05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/src/widgets/identitytreedelegate.cpp        
2026-08-12 06:08:18.000000000 +0200
@@ -19,14 +19,13 @@
 {
     Q_UNUSED(index);
     Q_UNUSED(option);
-    auto *lineEdit = new QLineEdit(parent);
+    auto lineEdit = new QLineEdit(parent);
     KLineEditEventHandler::catchReturnKey(lineEdit);
     auto *that = const_cast<IdentityTreeDelegate *>(this);
-    connect(lineEdit, &QLineEdit::editingFinished, this, [this, that]() {
-        Q_EMIT that->commitData(mLineEdit);
-        Q_EMIT that->closeEditor(mLineEdit);
+    connect(lineEdit, &QLineEdit::editingFinished, this, [that, lineEdit]() {
+        Q_EMIT that->commitData(lineEdit);
+        Q_EMIT that->closeEditor(lineEdit);
     });
-    const_cast<IdentityTreeDelegate *>(this)->mLineEdit = lineEdit;
     return lineEdit;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kidentitymanagement-26.04.3/src/widgets/identitytreedelegate.h 
new/kidentitymanagement-26.08.0/src/widgets/identitytreedelegate.h
--- old/kidentitymanagement-26.04.3/src/widgets/identitytreedelegate.h  
2026-06-28 05:44:21.000000000 +0200
+++ new/kidentitymanagement-26.08.0/src/widgets/identitytreedelegate.h  
2026-08-12 06:08:18.000000000 +0200
@@ -7,7 +7,6 @@
 #pragma once
 
 #include <QStyledItemDelegate>
-class QLineEdit;
 namespace KIdentityManagementWidgets
 {
 class IdentityTreeDelegate : public QStyledItemDelegate
@@ -21,8 +20,5 @@
     void setEditorData(QWidget *editor, const QModelIndex &index) const 
override;
     void setModelData(QWidget *editor, QAbstractItemModel *model, const 
QModelIndex &index) const override;
     void updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem 
&option, const QModelIndex &) const override;
-
-private:
-    QLineEdit *mLineEdit = nullptr;
 };
 }

Reply via email to