Hello community,

here is the log from the commit of package baloo5 for openSUSE:Factory checked 
in at 2020-12-15 12:30:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/baloo5 (Old)
 and      /work/SRC/openSUSE:Factory/.baloo5.new.2328 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "baloo5"

Tue Dec 15 12:30:12 2020 rev:84 rq:855486 version:5.77.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/baloo5/baloo5.changes    2020-11-23 
10:22:08.056796716 +0100
+++ /work/SRC/openSUSE:Factory/.baloo5.new.2328/baloo5.changes  2020-12-15 
12:32:35.048106650 +0100
@@ -1,0 +2,15 @@
+Sat Dec 12 18:08:56 UTC 2020 - Stefan Brüns <[email protected]>
+
+- Fix a regression causing empty results (kde#430273):
+  0001-BasicIndexingJob-Strip-trailing-slash-from-folders.patch
+
+-------------------------------------------------------------------
+Sat Dec  5 18:56:07 UTC 2020 - Christophe Giboudeaux <[email protected]>
+
+- Update to 5.77.0
+  * New feature release
+  * For more details please see:
+  * https://kde.org/announcements/kde-frameworks-5.77.0
+- Too many changes to list here.
+
+-------------------------------------------------------------------

Old:
----
  baloo-5.76.0.tar.xz
  baloo-5.76.0.tar.xz.sig

New:
----
  0001-BasicIndexingJob-Strip-trailing-slash-from-folders.patch
  baloo-5.77.0.tar.xz
  baloo-5.77.0.tar.xz.sig

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

Other differences:
------------------
++++++ baloo5.spec ++++++
--- /var/tmp/diff_new_pack.KITnjh/_old  2020-12-15 12:32:35.684107163 +0100
+++ /var/tmp/diff_new_pack.KITnjh/_new  2020-12-15 12:32:35.688107166 +0100
@@ -16,14 +16,14 @@
 #
 
 
-%define _tar_path 5.76
+%define _tar_path 5.77
 # Full KF5 version (e.g. 5.33.0)
 %{!?_kf5_version: %global _kf5_version %{version}}
 # Last major and minor KF5 version (e.g. 5.33)
 %{!?_kf5_bugfix_version: %define _kf5_bugfix_version %(echo %{_kf5_version} | 
awk -F. '{print $1"."$2}')}
 %bcond_without lang
 Name:           baloo5
-Version:        5.76.0
+Version:        5.77.0
 Release:        0
 Summary:        Framework for searching and managing metadata
 License:        GPL-2.0-or-later AND LGPL-2.1-or-later AND LGPL-3.0-only
@@ -35,6 +35,8 @@
 Source2:        frameworks.keyring
 %endif
 Source99:       baselibs.conf
+# PATCH-FIX-UPSTREAM
+Patch0:         0001-BasicIndexingJob-Strip-trailing-slash-from-folders.patch
 BuildRequires:  extra-cmake-modules >= %{_kf5_bugfix_version}
 BuildRequires:  kf5-filesystem
 BuildRequires:  libattr-devel
@@ -48,13 +50,13 @@
 BuildRequires:  cmake(KF5IdleTime) >= %{_kf5_bugfix_version}
 BuildRequires:  cmake(KF5KIO) >= %{_kf5_bugfix_version}
 BuildRequires:  cmake(KF5Solid) >= %{_kf5_bugfix_version}
-BuildRequires:  cmake(Qt5Concurrent) >= 5.12.0
-BuildRequires:  cmake(Qt5Core) >= 5.12.0
-BuildRequires:  cmake(Qt5DBus) >= 5.12.0
-BuildRequires:  cmake(Qt5Qml) >= 5.12.0
-BuildRequires:  cmake(Qt5Quick) >= 5.12.0
-BuildRequires:  cmake(Qt5Test) >= 5.12.0
-BuildRequires:  cmake(Qt5Widgets) >= 5.12.0
+BuildRequires:  cmake(Qt5Concurrent) >= 5.13.0
+BuildRequires:  cmake(Qt5Core) >= 5.13.0
+BuildRequires:  cmake(Qt5DBus) >= 5.13.0
+BuildRequires:  cmake(Qt5Qml) >= 5.13.0
+BuildRequires:  cmake(Qt5Quick) >= 5.13.0
+BuildRequires:  cmake(Qt5Test) >= 5.13.0
+BuildRequires:  cmake(Qt5Widgets) >= 5.13.0
 
 %description
 Baloo is a framework for searching and managing metadata.
@@ -130,7 +132,7 @@
 Requires:       lmdb-devel
 Requires:       cmake(KF5CoreAddons) >= %{_kf5_bugfix_version}
 Requires:       cmake(KF5FileMetaData) >= %{_kf5_bugfix_version}
-Requires:       cmake(Qt5Core) >= 5.12.0
+Requires:       cmake(Qt5Core) >= 5.13.0
 # DBus interface file
 Conflicts:      baloo-devel
 
@@ -145,7 +147,7 @@
 %lang_package -n %{name}-imports
 
 %prep
-%setup -q -n baloo-%{version}
+%autosetup -p1 -n baloo-%{version}
 
 %build
   %cmake_kf5 -d build -- -DCMAKE_INSTALL_LOCALEDIR=%{_kf5_localedir}

++++++ 0001-BasicIndexingJob-Strip-trailing-slash-from-folders.patch ++++++
From 9b61371fdefbd538938f20cdc87eed03d170fa5b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <[email protected]>
Date: Sat, 12 Dec 2020 19:01:45 +0100
Subject: [PATCH] [BasicIndexingJob] Strip trailing slash from folders

If BasicIndexingJob is called with a path with a trailing slash, the
search for the last slash (separating name from parent path) goes wrong.

This was wrong already earlier, but with commit 47ebc15844f6b8a8
("[Document] Add parent document ID and populate it") this caused
document and parent id to be the same.

CCBUG: 430273
---
 src/file/basicindexingjob.cpp | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/file/basicindexingjob.cpp b/src/file/basicindexingjob.cpp
index e00c6a2b..c0f18ddd 100644
--- a/src/file/basicindexingjob.cpp
+++ b/src/file/basicindexingjob.cpp
@@ -23,6 +23,9 @@ BasicIndexingJob::BasicIndexingJob(const QString& filePath, 
const QString& mimet
     , m_mimetype(mimetype)
     , m_indexingLevel(level)
 {
+    if (m_filePath.endsWith(QChar('/'))) {
+       m_filePath.chop(1);
+    }
 }
 
 namespace {
-- 
2.29.2

++++++ baloo-5.76.0.tar.xz -> baloo-5.77.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/CMakeLists.txt 
new/baloo-5.77.0/CMakeLists.txt
--- old/baloo-5.76.0/CMakeLists.txt     2020-11-07 12:56:19.000000000 +0100
+++ new/baloo-5.77.0/CMakeLists.txt     2020-12-05 13:33:56.000000000 +0100
@@ -1,8 +1,8 @@
 # set minimum version requirements
 cmake_minimum_required(VERSION 3.5)
-set(REQUIRED_QT_VERSION 5.12.0)
-set(KF5_VERSION "5.76.0") # handled by release scripts
-set(KF5_DEP_VERSION "5.76.0") # handled by release scripts
+set(REQUIRED_QT_VERSION 5.13.0)
+set(KF5_VERSION "5.77.0") # handled by release scripts
+set(KF5_DEP_VERSION "5.77.0") # handled by release scripts
 
 # set up project
 project(Baloo VERSION ${KF5_VERSION})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/autotests/unit/file/kinotifytest.cpp 
new/baloo-5.77.0/autotests/unit/file/kinotifytest.cpp
--- old/baloo-5.76.0/autotests/unit/file/kinotifytest.cpp       2020-11-07 
12:56:19.000000000 +0100
+++ new/baloo-5.77.0/autotests/unit/file/kinotifytest.cpp       2020-12-05 
13:33:56.000000000 +0100
@@ -25,6 +25,7 @@
     void testDeleteFolder();
     void testCreateFolder();
     void testRenameFile();
+    void testRenameDeleteFile();
     void testMoveFile();
     void testRenameFolder();
     void testMoveFolder();
@@ -170,6 +171,42 @@
     QCOMPARE(args.at(1).toString(), f3);
 }
 
+void KInotifyTest::testRenameDeleteFile()
+{
+    // create some test files
+    QTemporaryDir dir;
+    const QString f1(QStringLiteral("%1/randomJunk1").arg(dir.path()));
+    touchFile(f1);
+
+    // start the inotify watcher
+    KInotify kn(nullptr /*no config*/);
+    kn.addWatch(dir.path(), KInotify::EventAll);
+
+    // listen to the desired signal
+    QSignalSpy spy(&kn, SIGNAL(moved(QString,QString)));
+
+    // actually move the file
+    const QString f2(QStringLiteral("%1/randomJunk2").arg(dir.path()));
+    QFile::rename(f1, f2);
+
+    // check the desired signal
+    QVERIFY(spy.wait());
+    QCOMPARE(spy.count(), 1);
+    QList<QVariant> args = spy.takeFirst();
+    QCOMPARE(args.at(0).toString(), f1);
+    QCOMPARE(args.at(1).toString(), f2);
+
+    // test a subsequent delete
+    QSignalSpy spy1(&kn, SIGNAL(deleted(QString,bool)));
+    QFile::remove(f2);
+
+    // check the desired signal
+    QVERIFY(spy1.wait());
+    QCOMPARE(spy1.count(), 1);
+    QCOMPARE(spy1.takeFirst().at(0).toString(), f2);
+
+    QVERIFY(spy.isEmpty());
+}
 
 void KInotifyTest::testMoveFile()
 {
@@ -210,7 +247,6 @@
     QCOMPARE(args.at(1).toString(), dest2);
 }
 
-
 void KInotifyTest::testRenameFolder()
 {
     // create some test files
@@ -272,7 +308,6 @@
     QCOMPARE(createdSpy.takeFirst().at(0).toString(), f4);
 }
 
-
 void KInotifyTest::testMoveFolder()
 {
     // create some test files
@@ -372,7 +407,6 @@
     QCOMPARE(spy1.count(), 4);
 }
 
-
 void KInotifyTest::testMoveRootFolder()
 {
     // create some test folders
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/baloo-5.76.0/autotests/unit/file/metadatamovertest.cpp 
new/baloo-5.77.0/autotests/unit/file/metadatamovertest.cpp
--- old/baloo-5.76.0/autotests/unit/file/metadatamovertest.cpp  2020-11-07 
12:56:19.000000000 +0100
+++ new/baloo-5.77.0/autotests/unit/file/metadatamovertest.cpp  2020-12-05 
13:33:56.000000000 +0100
@@ -35,6 +35,12 @@
     void testRenameFile();
     void testMoveFile();
     void testMoveFolder();
+    void testMoveTwiceSequential();
+    void testMoveTwiceCombined();
+    void testMoveDeleteFile();
+    void testMoveFileRenameParent();
+    void testRenameMoveFileRenameParent();
+    void testMoveFileMoveParent();
 
 private:
     quint64 insertUrl(const QString& url);
@@ -195,6 +201,277 @@
     }
 }
 
+// Rename a file twice in a row
+// Mimic Inotify/Filewatch behavior as if there was sufficient
+// time to process the first rename before the second happens
+void MetadataMoverTest::testMoveTwiceSequential()
+{
+    QTemporaryDir dir;
+    const quint64 did = insertUrl(dir.path());
+
+    const QString fileUrl = dir.path() + "/file";
+    touchFile(fileUrl);
+    const quint64 fid = insertUrl(fileUrl);
+
+    {
+        Transaction tr(m_db, Transaction::ReadOnly);
+        QVERIFY(tr.hasDocument(did));
+        QVERIFY(tr.hasDocument(fid));
+    }
+
+    // First rename
+    const QString fileUrl1 = dir.path() + "/file1";
+    QFile::rename(fileUrl, fileUrl1);
+
+    MetadataMover mover(m_db, this);
+    mover.moveFileMetadata(QFile::encodeName(fileUrl), 
QFile::encodeName(fileUrl1));
+
+    // Second rename
+    const QString fileUrl2 = dir.path() + "/file2";
+    QFile::rename(fileUrl1, fileUrl2);
+
+    mover.moveFileMetadata(QFile::encodeName(fileUrl1), 
QFile::encodeName(fileUrl2));
+
+    // Check result
+    {
+        Transaction tr(m_db, Transaction::ReadOnly);
+        QVERIFY(tr.hasDocument(did));
+        QVERIFY(tr.hasDocument(fid));
+        QCOMPARE(tr.documentUrl(did), QFile::encodeName(dir.path()));
+        QCOMPARE(tr.documentUrl(fid), QFile::encodeName(fileUrl2));
+    }
+}
+
+// Rename a file twice in a row
+// Similar to `testMoveTwiceSequential`, but this time the
+// second rename happens before the first one is processed
+void MetadataMoverTest::testMoveTwiceCombined()
+{
+    QTemporaryDir dir;
+    quint64 did = insertUrl(dir.path());
+
+    const QString fileUrl = dir.path() + "/file";
+    touchFile(fileUrl);
+    const quint64 fid = insertUrl(fileUrl);
+
+    {
+        Transaction tr(m_db, Transaction::ReadOnly);
+        QVERIFY(tr.hasDocument(did));
+        QVERIFY(tr.hasDocument(fid));
+    }
+
+    // First rename
+    const QString fileUrl1 = dir.path() + "/file1";
+    QFile::rename(fileUrl, fileUrl1);
+
+    // Second rename
+    const QString fileUrl2 = dir.path() + "/file2";
+    QFile::rename(fileUrl1, fileUrl2);
+
+    // "Flush" rename notificatons
+    MetadataMover mover(m_db, this);
+    mover.moveFileMetadata(QFile::encodeName(fileUrl), 
QFile::encodeName(fileUrl1));
+    mover.moveFileMetadata(QFile::encodeName(fileUrl1), 
QFile::encodeName(fileUrl2));
+
+    // Check result
+    {
+        Transaction tr(m_db, Transaction::ReadOnly);
+        QVERIFY(tr.hasDocument(did));
+        QVERIFY(tr.hasDocument(fid));
+        QCOMPARE(tr.documentUrl(did), QFile::encodeName(dir.path()));
+        QCOMPARE(tr.documentUrl(fid), QFile::encodeName(fileUrl2));
+    }
+}
+
+// Rename a file and then immediately delete it
+void MetadataMoverTest::testMoveDeleteFile()
+{
+    QTemporaryDir dir;
+    quint64 did = insertUrl(dir.path());
+
+    const QString fileUrl = dir.path() + "/file";
+    touchFile(fileUrl);
+    const quint64 fid = insertUrl(fileUrl);
+
+    {
+        Transaction tr(m_db, Transaction::ReadOnly);
+        QVERIFY(tr.hasDocument(did));
+        QVERIFY(tr.hasDocument(fid));
+    }
+
+    // First rename
+    const QString fileUrl1 = dir.path() + "/file1";
+    QFile::rename(fileUrl, fileUrl1);
+
+    QFile::remove(fileUrl1);
+
+    // "Flush" notificatons
+    MetadataMover mover(m_db, this);
+    mover.moveFileMetadata(QFile::encodeName(fileUrl), 
QFile::encodeName(fileUrl1));
+    mover.removeFileMetadata(QFile::encodeName(fileUrl1));
+
+    // Check result
+    {
+        Transaction tr(m_db, Transaction::ReadOnly);
+        QVERIFY(tr.hasDocument(did));
+        QCOMPARE(tr.documentUrl(did), QFile::encodeName(dir.path()));
+        QVERIFY(!tr.hasDocument(fid));
+    }
+}
+
+// Move a file to a different parent directory and rename the new parent
+void MetadataMoverTest::testMoveFileRenameParent()
+{
+    QTemporaryDir dir;
+    quint64 did = insertUrl(dir.path());
+
+    QDir().mkpath(dir.path() + "/a");
+    quint64 did_a = insertUrl(dir.path() + "/a");
+    QDir().mkpath(dir.path() + "/b");
+    quint64 did_b = insertUrl(dir.path() + "/b");
+
+    const QString fileUrl = dir.path() + "/a/file";
+    touchFile(fileUrl);
+    const quint64 fid = insertUrl(fileUrl);
+
+    {
+        Transaction tr(m_db, Transaction::ReadOnly);
+        QVERIFY(tr.hasDocument(did));
+        QVERIFY(tr.hasDocument(did_a));
+        QVERIFY(tr.hasDocument(did_b));
+        QVERIFY(tr.hasDocument(fid));
+    }
+
+    // Move to new parent
+    const QString fileUrl_b1 = dir.path() + "/b/file1";
+    QVERIFY(QFile::rename(fileUrl, fileUrl_b1));
+
+    // Rename parent dir (replacing old "a" dir)
+    QVERIFY(QDir::current().rmdir(dir.path() + "/a"));
+    QVERIFY(QFile::rename(dir.path() + "/b", dir.path() + "/a"));
+
+    QVERIFY(QFile::exists(dir.path() + "/a"));
+    QVERIFY(QFile::exists(dir.path() + "/a/file1"));
+    QVERIFY(!QFile::exists(dir.path() + "/b"));
+
+    // "Flush" notificatons
+    MetadataMover mover(m_db, this);
+    mover.moveFileMetadata(QFile::encodeName(fileUrl), 
QFile::encodeName(fileUrl_b1));
+    mover.removeFileMetadata(QFile::encodeName(dir.path() + "/a"));
+    mover.moveFileMetadata(QFile::encodeName(dir.path() + "/b"), 
QFile::encodeName(dir.path() + "/a"));
+
+    // Check result
+    {
+        Transaction tr(m_db, Transaction::ReadOnly);
+        QVERIFY(tr.hasDocument(did));
+        QCOMPARE(tr.documentUrl(did), QFile::encodeName(dir.path()));
+        QCOMPARE(tr.documentUrl(did_b), QFile::encodeName(dir.path() + "/a"));
+        QVERIFY(tr.hasDocument(fid));
+        QCOMPARE(tr.documentUrl(fid), QFile::encodeName(dir.path() + 
"/a/file1"));
+    }
+}
+
+// Rename a file, move to a different parent directory and rename the new 
parent
+void MetadataMoverTest::testRenameMoveFileRenameParent()
+{
+    QTemporaryDir dir;
+    quint64 did = insertUrl(dir.path());
+
+    QDir().mkpath(dir.path() + "/a");
+    quint64 did_a = insertUrl(dir.path() + "/a");
+    QDir().mkpath(dir.path() + "/b");
+    quint64 did_b = insertUrl(dir.path() + "/b");
+
+    const QString fileUrl = dir.path() + "/a/file";
+    touchFile(fileUrl);
+    const quint64 fid = insertUrl(fileUrl);
+
+    {
+        Transaction tr(m_db, Transaction::ReadOnly);
+        QVERIFY(tr.hasDocument(did));
+        QVERIFY(tr.hasDocument(did_a));
+        QVERIFY(tr.hasDocument(did_b));
+        QVERIFY(tr.hasDocument(fid));
+    }
+
+    // First rename
+    const QString fileUrl_a1 = dir.path() + "/a/file1";
+    QFile::rename(fileUrl, fileUrl_a1);
+
+    // Move to new parent
+    const QString fileUrl_b1 = dir.path() + "/b/file1";
+    QVERIFY(QFile::rename(fileUrl_a1, fileUrl_b1));
+
+    // Rename parent dir (replacing old "a" dir)
+    QVERIFY(QDir::current().rmdir(dir.path() + "/a"));
+    QVERIFY(QFile::rename(dir.path() + "/b", dir.path() + "/a"));
+
+    QVERIFY(QFile::exists(dir.path() + "/a"));
+    QVERIFY(QFile::exists(dir.path() + "/a/file1"));
+    QVERIFY(!QFile::exists(dir.path() + "/b"));
+
+    // "Flush" notificatons
+    MetadataMover mover(m_db, this);
+    mover.moveFileMetadata(QFile::encodeName(fileUrl), 
QFile::encodeName(fileUrl_a1));
+    mover.moveFileMetadata(QFile::encodeName(fileUrl_a1), 
QFile::encodeName(fileUrl_b1));
+    mover.removeFileMetadata(QFile::encodeName(dir.path() + "/a"));
+    mover.moveFileMetadata(QFile::encodeName(dir.path() + "/b"), 
QFile::encodeName(dir.path() + "/a"));
+
+    // Check result
+    {
+        Transaction tr(m_db, Transaction::ReadOnly);
+        QVERIFY(tr.hasDocument(did));
+        QCOMPARE(tr.documentUrl(did), QFile::encodeName(dir.path()));
+        QCOMPARE(tr.documentUrl(did_b), QFile::encodeName(dir.path() + "/a"));
+        QVERIFY(tr.hasDocument(fid));
+        QCOMPARE(tr.documentUrl(fid), QFile::encodeName(dir.path() + 
"/a/file1"));
+    }
+}
+
+// Rename a file and then immediately rename a parent directory
+void MetadataMoverTest::testMoveFileMoveParent()
+{
+    QTemporaryDir dir;
+    quint64 did = insertUrl(dir.path());
+
+    QDir().mkpath(dir.path() + "/a");
+    quint64 did_a = insertUrl(dir.path() + "/a");
+
+    const QString fileUrl = dir.path() + "/a/file";
+    touchFile(fileUrl);
+    const quint64 fid = insertUrl(fileUrl);
+
+    {
+        Transaction tr(m_db, Transaction::ReadOnly);
+        QVERIFY(tr.hasDocument(did));
+        QVERIFY(tr.hasDocument(did_a));
+        QVERIFY(tr.hasDocument(fid));
+    }
+
+    // First rename
+    const QString fileUrl1 = dir.path() + "/a/file1";
+    QFile::rename(fileUrl, fileUrl1);
+
+    // Rename parent dir
+    QFile::rename(dir.path() + "/a", dir.path() + "/b");
+
+    // "Flush" notificatons
+    MetadataMover mover(m_db, this);
+    mover.moveFileMetadata(QFile::encodeName(fileUrl), 
QFile::encodeName(fileUrl1));
+    mover.moveFileMetadata(QFile::encodeName(dir.path() + "/a"), 
QFile::encodeName(dir.path() + "/b"));
+
+    // Check result
+    {
+        Transaction tr(m_db, Transaction::ReadOnly);
+        QVERIFY(tr.hasDocument(did));
+        QVERIFY(tr.hasDocument(did_a));
+        QCOMPARE(tr.documentUrl(did), QFile::encodeName(dir.path()));
+        QCOMPARE(tr.documentUrl(did_a), QFile::encodeName(dir.path() + "/b"));
+        QVERIFY(tr.hasDocument(fid));
+        QCOMPARE(tr.documentUrl(fid), QFile::encodeName(dir.path() + 
"/b/file1"));
+    }
+}
+
 QTEST_GUILESS_MAIN(MetadataMoverTest)
 
 #include "metadatamovertest.moc"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/ast/balooctl5.po 
new/baloo-5.77.0/po/ast/balooctl5.po
--- old/baloo-5.76.0/po/ast/balooctl5.po        2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/ast/balooctl5.po        2020-12-05 13:33:56.000000000 
+0100
@@ -7,7 +7,7 @@
 "Project-Id-Version: baloo\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-09-06 02:08+0200\n"
-"PO-Revision-Date: 2020-11-05 14:31+0100\n"
+"PO-Revision-Date: 2020-11-10 18:53+0100\n"
 "Last-Translator: enolp <[email protected]>\n"
 "Language-Team: Asturian <[email protected]>\n"
 "Language: ast\n"
@@ -15,7 +15,7 @@
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Lokalize 20.08.1\n"
+"X-Generator: Lokalize 20.08.3\n"
 
 #, kde-format
 msgctxt "NAME OF TRANSLATORS"
@@ -178,7 +178,7 @@
 #: configcommand.cpp:90 configcommand.cpp:153 configcommand.cpp:244
 #, kde-format
 msgid "The list of mimetypes which are used to exclude files"
-msgstr "La llista de tribes MIME que s'usa pa escluyir ficheros"
+msgstr "La llista de tipos MIME que s'usa pa escluyir ficheros"
 
 #: configcommand.cpp:142 configcommand.cpp:233 configcommand.cpp:356
 #: configcommand.cpp:426
@@ -224,12 +224,12 @@
 #: configcommand.cpp:218 configcommand.cpp:340
 #, kde-format
 msgid "A mimetype must be provided\n"
-msgstr "Ha apurrise una triba MIME\n"
+msgstr "Ha apurrise un tipu MIME\n"
 
 #: configcommand.cpp:224
 #, kde-format
 msgid "%1 is not in list of exclude mimetypes"
-msgstr "%1 nun ta na llista de tribes MIME a escluyir"
+msgstr "%1 nun ta na llista de tipos MIME a escluyir"
 
 #: configcommand.cpp:258 configcommand.cpp:293
 #, kde-format
@@ -264,7 +264,7 @@
 #: configcommand.cpp:346
 #, kde-format
 msgid "Exclude mimetype is already in the list\n"
-msgstr "La triba MIME a escluyir yá ta na llista\n"
+msgstr "El tipu MIME a escluyir yá ta na llista\n"
 
 #: configcommand.cpp:374 configcommand.cpp:401
 #, kde-format
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/hu/baloo_file5.po 
new/baloo-5.77.0/po/hu/baloo_file5.po
--- old/baloo-5.76.0/po/hu/baloo_file5.po       2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/hu/baloo_file5.po       2020-12-05 13:33:56.000000000 
+0100
@@ -3,21 +3,21 @@
 #
 # Balázs Úr <[email protected]>, 2014.
 # Kristóf Kiszel <[email protected]>, 2014, 2015, 2019.
-# Kristof Kiszel <[email protected]>, 2018.
+# Kristof Kiszel <[email protected]>, 2018, 2020.
 msgid ""
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-08-07 02:06+0200\n"
-"PO-Revision-Date: 2019-11-12 19:29+0100\n"
-"Last-Translator: Kristóf Kiszel <[email protected]>\n"
+"PO-Revision-Date: 2020-11-29 20:40+0100\n"
+"Last-Translator: Kristóf Kiszel <[email protected]>\n"
 "Language-Team: Hungarian <[email protected]>\n"
 "Language: hu\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Lokalize 20.03.70\n"
+"X-Generator: Lokalize 21.03.70\n"
 
 #: indexerstate.h:32
 #, kde-format
@@ -77,9 +77,9 @@
 #: indexerstate.h:65
 #, kde-format
 msgid "Not Running"
-msgstr ""
+msgstr "Nem fut"
 
 #: indexerstate.h:68
 #, kde-format
 msgid "Starting"
-msgstr ""
+msgstr "Indulás"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/hu/balooctl5.po 
new/baloo-5.77.0/po/hu/balooctl5.po
--- old/baloo-5.76.0/po/hu/balooctl5.po 2020-11-07 12:56:19.000000000 +0100
+++ new/baloo-5.77.0/po/hu/balooctl5.po 2020-12-05 13:33:56.000000000 +0100
@@ -2,21 +2,21 @@
 # This file is distributed under the same license as the PACKAGE package.
 #
 # Kristóf Kiszel <[email protected]>, 2014, 2015, 2019.
-# Kiszel Kristóf <[email protected]>, 2017, 2018.
+# Kiszel Kristóf <[email protected]>, 2017, 2018, 2020.
 msgid ""
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-09-06 02:08+0200\n"
-"PO-Revision-Date: 2019-11-12 19:33+0100\n"
-"Last-Translator: Kristóf Kiszel <[email protected]>\n"
+"PO-Revision-Date: 2020-11-29 20:43+0100\n"
+"Last-Translator: Kristóf Kiszel <[email protected]>\n"
 "Language-Team: Hungarian <[email protected]>\n"
 "Language: hu\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Lokalize 20.03.70\n"
+"X-Generator: Lokalize 21.03.70\n"
 
 #, kde-format
 msgctxt "NAME OF TRANSLATORS"
@@ -26,7 +26,7 @@
 #, kde-format
 msgctxt "EMAIL OF TRANSLATORS"
 msgid "Your emails"
-msgstr "[email protected]"
+msgstr "[email protected]"
 
 #: ../../file/indexerstate.h:32
 #, kde-format
@@ -86,12 +86,12 @@
 #: ../../file/indexerstate.h:65
 #, kde-format
 msgid "Not Running"
-msgstr ""
+msgstr "Nem fut"
 
 #: ../../file/indexerstate.h:68
 #, kde-format
 msgid "Starting"
-msgstr ""
+msgstr "Indulás"
 
 #: configcommand.cpp:45
 #, kde-format
@@ -99,24 +99,23 @@
 msgstr "A Baloo beállításainak módosítása"
 
 #: configcommand.cpp:68
-#, fuzzy, kde-format
-#| msgid "The config command can be used to manipulate the Baloo Configuration"
+#, kde-format
 msgid "The config command can be used to manipulate the Baloo Configuration\n"
-msgstr "A config parancs használható a Baloo beállításainak módosítására"
+msgstr "A config parancs használható a Baloo beállításainak módosítására\n"
 
 #: configcommand.cpp:69
-#, fuzzy, kde-format
-#| msgid "Usage: balooctl config <command>"
+#, kde-format
 msgid ""
 "Usage: balooctl config <command>\n"
 "\n"
-msgstr "Használat: balooctl config <parancs>"
+msgstr ""
+"Használat: balooctl config <parancs>\n"
+"\n"
 
 #: configcommand.cpp:70
-#, fuzzy, kde-format
-#| msgid "Possible Commands:"
+#, kde-format
 msgid "Possible Commands:\n"
-msgstr "Lehetséges parancsok:"
+msgstr "Lehetséges parancsok:\n"
 
 #: configcommand.cpp:73
 #, kde-format
@@ -144,12 +143,13 @@
 msgstr "Ezen súgó megjelenítése"
 
 #: configcommand.cpp:83
-#, fuzzy, kde-format
-#| msgid "The following configuration options may be listed:"
+#, kde-format
 msgid ""
 "The following configuration options may be listed:\n"
 "\n"
-msgstr "Az alábbi konfigurációs beállítások kerülhetnek listázásra:"
+msgstr ""
+"Az alábbi konfigurációs beállítások kerülhetnek listázásra:\n"
+"\n"
 
 #: configcommand.cpp:85 configcommand.cpp:364
 #, kde-format
@@ -184,25 +184,24 @@
 
 #: configcommand.cpp:142 configcommand.cpp:233 configcommand.cpp:356
 #: configcommand.cpp:426
-#, fuzzy, kde-format
-#| msgid "Config parameter could not be found"
+#, kde-format
 msgid "Config parameter could not be found\n"
-msgstr "A konfigurációs paraméter nem található"
+msgstr "A konfigurációs paraméter nem található\n"
 
 #: configcommand.cpp:148 configcommand.cpp:239 configcommand.cpp:362
-#, fuzzy, kde-format
-#| msgid "The following configuration options may be modified:"
+#, kde-format
 msgid ""
 "The following configuration options may be modified:\n"
 "\n"
-msgstr "Az alábbi konfigurációs beállítások módosulhatnak:"
+msgstr ""
+"Az alábbi konfigurációs beállítások módosulhatnak:\n"
+"\n"
 
 #: configcommand.cpp:161 configcommand.cpp:181 configcommand.cpp:252
 #: configcommand.cpp:287
-#, fuzzy, kde-format
-#| msgid "A folder must be provided"
+#, kde-format
 msgid "A folder must be provided\n"
-msgstr "Mappát kell megadni"
+msgstr "Mappát kell megadni\n"
 
 #: configcommand.cpp:169
 #, kde-format
@@ -215,10 +214,9 @@
 msgstr "A(z) %1 nincs a kizáró mappák listájában"
 
 #: configcommand.cpp:201 configcommand.cpp:322
-#, fuzzy, kde-format
-#| msgid "A filter must be provided"
+#, kde-format
 msgid "A filter must be provided\n"
-msgstr "Szűrőt kell megadni"
+msgstr "Szűrőt kell megadni\n"
 
 #: configcommand.cpp:207
 #, kde-format
@@ -226,10 +224,9 @@
 msgstr "A(z) %1 nincs a kizáró szűrők listájában"
 
 #: configcommand.cpp:218 configcommand.cpp:340
-#, fuzzy, kde-format
-#| msgid "A mimetype must be provided"
+#, kde-format
 msgid "A mimetype must be provided\n"
-msgstr "MIME-típus megadása szükséges"
+msgstr "MIME-típus megadása szükséges\n"
 
 #: configcommand.cpp:224
 #, kde-format
@@ -237,16 +234,14 @@
 msgstr "A(z) %1 nincs a kizáró MIME-típusok listájában"
 
 #: configcommand.cpp:258 configcommand.cpp:293
-#, fuzzy, kde-format
-#| msgid "Path does not exist"
+#, kde-format
 msgid "Path does not exist\n"
-msgstr "Az elérési út nem létezik"
+msgstr "Az elérési út nem létezik\n"
 
 #: configcommand.cpp:263 configcommand.cpp:298
-#, fuzzy, kde-format
-#| msgid "Path is not a directory"
+#, kde-format
 msgid "Path is not a directory\n"
-msgstr "Az elérési út nem mappa"
+msgstr "Az elérési út nem mappa\n"
 
 #: configcommand.cpp:270
 #, kde-format
@@ -264,28 +259,24 @@
 msgstr "A(z) %1 már a kizáró mappák listájában van"
 
 #: configcommand.cpp:328
-#, fuzzy, kde-format
-#| msgid "Exclude filter is already in the list"
+#, kde-format
 msgid "Exclude filter is already in the list\n"
-msgstr "A kizáró szűrő már a listában van"
+msgstr "A kizáró szűrő már a listában van\n"
 
 #: configcommand.cpp:346
-#, fuzzy, kde-format
-#| msgid "Exclude mimetype is already in the list"
+#, kde-format
 msgid "Exclude mimetype is already in the list\n"
-msgstr "A kizáró MIME-típus már a listában van"
+msgstr "A kizáró MIME-típus már a listában van\n"
 
 #: configcommand.cpp:374 configcommand.cpp:401
-#, fuzzy, kde-format
-#| msgid "A value must be provided"
+#, kde-format
 msgid "A value must be provided\n"
-msgstr "Meg kell adni egy értéket"
+msgstr "Meg kell adni egy értéket\n"
 
 #: configcommand.cpp:395 configcommand.cpp:422
-#, fuzzy, kde-format
-#| msgid "Invalid value"
+#, kde-format
 msgid "Invalid value\n"
-msgstr "Érvénytelen érték"
+msgstr "Érvénytelen érték\n"
 
 #: main.cpp:51
 #, kde-format
@@ -392,28 +383,24 @@
 msgstr "formátum"
 
 #: monitorcommand.cpp:54
-#, fuzzy, kde-format
-#| msgid "Press ctrl+c to stop monitoring"
+#, kde-format
 msgid "Press ctrl+c to stop monitoring\n"
-msgstr "Nyomja meg a Ctrl+C-t a monitorozás felfüggesztésére"
+msgstr "Nyomja meg a Ctrl+C-t a monitorozás felfüggesztésére\n"
 
 #: monitorcommand.cpp:70
-#, fuzzy, kde-format
-#| msgid "Waiting for file indexer to start"
+#, kde-format
 msgid "Waiting for file indexer to start\n"
-msgstr "Várakozás a fájlindexelő indulására"
+msgstr "Várakozás a fájlindexelő indulására\n"
 
 #: monitorcommand.cpp:71
-#, fuzzy, kde-format
-#| msgid "Press ctrl+c to stop monitoring"
+#, kde-format
 msgid "Press Ctrl+C to stop monitoring\n"
-msgstr "Nyomja meg a Ctrl+C-t a monitorozás felfüggesztésére"
+msgstr "Nyomja meg a Ctrl+C-t a monitorozás felfüggesztésére\n"
 
 #: monitorcommand.cpp:78
-#, fuzzy, kde-format
-#| msgid "File indexer is running"
+#, kde-format
 msgid "File indexer is running\n"
-msgstr "A fájlindexelő fut"
+msgstr "A fájlindexelő fut\n"
 
 #: monitorcommand.cpp:94 statuscommand.cpp:308
 #, kde-format
@@ -422,15 +409,14 @@
 msgstr "Indexelés: %1"
 
 #: monitorcommand.cpp:103
-#, fuzzy, kde-format
-#| msgid ": Ok"
+#, kde-format
 msgid ": Ok\n"
-msgstr ": OK"
+msgstr ": OK\n"
 
 #: monitorcommand.h:32
 #, kde-format
 msgid "CLI interface for monitoring Baloo"
-msgstr ""
+msgstr "Parancssori felület a Baloo monitorozásához"
 
 #: statuscommand.cpp:33
 #, kde-format
@@ -489,34 +475,30 @@
 msgstr "Fájl: %1"
 
 #: statuscommand.cpp:263
-#, fuzzy, kde-format
-#| msgid "Output format \"%1\" is invalid"
+#, kde-format
 msgid "Output format \"%1\" is invalid, use one of:\n"
-msgstr "A(z) „%1” kimeneti formátum érvénytelen"
+msgstr "A(z) „%1” kimeneti formátum érvénytelen, használja helyette:\n"
 
 #: statuscommand.cpp:265
 #, kde-format
 msgctxt "bullet list item with output format"
 msgid "- %1\n"
-msgstr ""
+msgstr "- %1\n"
 
 #: statuscommand.cpp:272
-#, fuzzy, kde-format
-#| msgid "Baloo is currently disabled. To enable, please run %1"
+#, kde-format
 msgid "Baloo is currently disabled. To enable, please run %1\n"
-msgstr "A Baloo ki van kapcsolva. A bekapcsolásához futtassa a „%1 parancsot"
+msgstr "A Baloo ki van kapcsolva. A bekapcsolásához futtassa a „%1 parancsot\n"
 
 #: statuscommand.cpp:278
-#, fuzzy, kde-format
-#| msgid "Baloo Index could not be opened"
+#, kde-format
 msgid "Baloo Index could not be opened\n"
-msgstr "A Baloo nem nyitható meg"
+msgstr "A Baloo nem nyitható meg\n"
 
 #: statuscommand.cpp:305
-#, fuzzy, kde-format
-#| msgid "Baloo File Indexer is running"
+#, kde-format
 msgid "Baloo File Indexer is running\n"
-msgstr "A Baloo fut"
+msgstr "A Baloo fut\n"
 
 #: statuscommand.cpp:307 statuscommand.cpp:310
 #, kde-format
@@ -524,10 +506,9 @@
 msgstr "Indexelő állapota: %1"
 
 #: statuscommand.cpp:314
-#, fuzzy, kde-format
-#| msgid "Baloo File Indexer is not running"
+#, kde-format
 msgid "Baloo File Indexer is not running\n"
-msgstr "A Baloo nem fut"
+msgstr "A Baloo nem fut\n"
 
 #: statuscommand.cpp:321
 #, kde-format
@@ -550,7 +531,6 @@
 msgstr "Az index jelenlegi mérete %1"
 
 #: statuscommand.cpp:333
-#, fuzzy, kde-format
-#| msgid "Index does not exist yet"
+#, kde-format
 msgid "Index does not exist yet\n"
-msgstr "Az index még nem létezik"
+msgstr "Az index még nem létezik\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/hu/baloomonitorplugin.po 
new/baloo-5.77.0/po/hu/baloomonitorplugin.po
--- old/baloo-5.76.0/po/hu/baloomonitorplugin.po        2020-11-07 
12:56:19.000000000 +0100
+++ new/baloo-5.77.0/po/hu/baloomonitorplugin.po        2020-12-05 
13:33:56.000000000 +0100
@@ -2,21 +2,21 @@
 # This file is distributed under the same license as the baloo package.
 #
 # Kristof Kiszel <[email protected]>, 2018.
-# Kristóf Kiszel <[email protected]>, 2019.
+# Kristóf Kiszel <[email protected]>, 2019, 2020.
 msgid ""
 msgstr ""
 "Project-Id-Version: baloo\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-08-03 02:05+0200\n"
-"PO-Revision-Date: 2019-11-12 19:33+0100\n"
-"Last-Translator: Kristóf Kiszel <[email protected]>\n"
+"PO-Revision-Date: 2020-11-29 20:43+0100\n"
+"Last-Translator: Kristóf Kiszel <[email protected]>\n"
 "Language-Team: Hungarian <[email protected]>\n"
 "Language: hu\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Lokalize 20.03.70\n"
+"X-Generator: Lokalize 21.03.70\n"
 
 #: ../../file/indexerstate.h:32
 #, kde-format
@@ -76,9 +76,9 @@
 #: ../../file/indexerstate.h:65
 #, kde-format
 msgid "Not Running"
-msgstr ""
+msgstr "Nem fut"
 
 #: ../../file/indexerstate.h:68
 #, kde-format
 msgid "Starting"
-msgstr ""
+msgstr "Indulás"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/hu/baloosearch5.po 
new/baloo-5.77.0/po/hu/baloosearch5.po
--- old/baloo-5.76.0/po/hu/baloosearch5.po      2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/hu/baloosearch5.po      2020-12-05 13:33:56.000000000 
+0100
@@ -3,21 +3,21 @@
 #
 # Balázs Úr <[email protected]>, 2014.
 # Kristóf Kiszel <[email protected]>, 2015.
-# Kiszel Kristóf <[email protected]>, 2017, 2018.
+# Kiszel Kristóf <[email protected]>, 2017, 2018, 2020.
 msgid ""
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-08-03 02:05+0200\n"
-"PO-Revision-Date: 2018-09-25 19:25+0200\n"
-"Last-Translator: Kristof Kiszel <[email protected]>\n"
+"PO-Revision-Date: 2020-11-29 20:44+0100\n"
+"Last-Translator: Kristóf Kiszel <[email protected]>\n"
 "Language-Team: Hungarian <[email protected]>\n"
 "Language: hu\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Lokalize 2.0\n"
+"X-Generator: Lokalize 21.03.70\n"
 
 #, kde-format
 msgctxt "NAME OF TRANSLATORS"
@@ -102,7 +102,7 @@
 #: main.cpp:82
 #, kde-format
 msgid "%1 is not a valid directory"
-msgstr ""
+msgstr "A(z) %1 érvénytelen mappa"
 
 #: main.cpp:96
 #, kde-format
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/hu/kio5_timeline.po 
new/baloo-5.77.0/po/hu/kio5_timeline.po
--- old/baloo-5.76.0/po/hu/kio5_timeline.po     2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/hu/kio5_timeline.po     2020-12-05 13:33:56.000000000 
+0100
@@ -3,30 +3,24 @@
 #
 # Balázs Úr <[email protected]>, 2014.
 # Kristóf Kiszel <[email protected]>, 2015.
-# Kiszel Kristóf <[email protected]>, 2017.
+# Kiszel Kristóf <[email protected]>, 2017, 2020.
 msgid ""
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-10-24 02:11+0200\n"
-"PO-Revision-Date: 2017-02-17 15:26+0100\n"
-"Last-Translator: Kiszel Kristóf <[email protected]>\n"
+"PO-Revision-Date: 2020-11-29 20:44+0100\n"
+"Last-Translator: Kristóf Kiszel <[email protected]>\n"
 "Language-Team: Hungarian <[email protected]>\n"
 "Language: hu\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Lokalize 2.0\n"
+"X-Generator: Lokalize 21.03.70\n"
 
 #: kio_timeline.cpp:61
-#, fuzzy, kde-format
-#| msgctxt ""
-#| "Month and year used in a tree above the actual days. Have a look at "
-#| "http://doc.qt.io/qt-5/qdate.html#toString to see which variables you can "
-#| "use and ask [email protected] if you have problems understanding how "
-#| "to translate this"
-#| msgid "MMMM yyyy"
+#, kde-format
 msgctxt ""
 "Month and year used in a tree above the actual days. Have a look at https://";
 "doc.qt.io/qt-5/qdate.html#toString to see which variables you can use and "
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/ml/baloo_file5.po 
new/baloo-5.77.0/po/ml/baloo_file5.po
--- old/baloo-5.76.0/po/ml/baloo_file5.po       2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/ml/baloo_file5.po       2020-12-05 13:33:56.000000000 
+0100
@@ -17,7 +17,6 @@
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Weblate 3.9.1\n"
 
 #: indexerstate.h:32
 #, kde-format
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/ml/baloo_file_extractor5.po 
new/baloo-5.77.0/po/ml/baloo_file_extractor5.po
--- old/baloo-5.76.0/po/ml/baloo_file_extractor5.po     2020-11-07 
12:56:19.000000000 +0100
+++ new/baloo-5.77.0/po/ml/baloo_file_extractor5.po     2020-12-05 
13:33:56.000000000 +0100
@@ -17,7 +17,6 @@
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Weblate 3.9.1\n"
 
 #, kde-format
 msgctxt "NAME OF TRANSLATORS"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/ml/balooctl5.po 
new/baloo-5.77.0/po/ml/balooctl5.po
--- old/baloo-5.76.0/po/ml/balooctl5.po 2020-11-07 12:56:19.000000000 +0100
+++ new/baloo-5.77.0/po/ml/balooctl5.po 2020-12-05 13:33:56.000000000 +0100
@@ -17,7 +17,6 @@
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Weblate 3.9.1\n"
 
 #, kde-format
 msgctxt "NAME OF TRANSLATORS"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/ml/baloodb5.po 
new/baloo-5.77.0/po/ml/baloodb5.po
--- old/baloo-5.76.0/po/ml/baloodb5.po  2020-11-07 12:56:19.000000000 +0100
+++ new/baloo-5.77.0/po/ml/baloodb5.po  2020-12-05 13:33:56.000000000 +0100
@@ -17,7 +17,6 @@
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Weblate 3.9.1\n"
 
 #, kde-format
 msgctxt "NAME OF TRANSLATORS"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/ml/baloosearch5.po 
new/baloo-5.77.0/po/ml/baloosearch5.po
--- old/baloo-5.76.0/po/ml/baloosearch5.po      2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/ml/baloosearch5.po      2020-12-05 13:33:56.000000000 
+0100
@@ -17,7 +17,6 @@
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Weblate 3.9.1\n"
 
 #, kde-format
 msgctxt "NAME OF TRANSLATORS"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/ml/balooshow5.po 
new/baloo-5.77.0/po/ml/balooshow5.po
--- old/baloo-5.76.0/po/ml/balooshow5.po        2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/ml/balooshow5.po        2020-12-05 13:33:56.000000000 
+0100
@@ -17,7 +17,6 @@
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Weblate 3.9.1\n"
 
 #, kde-format
 msgctxt "NAME OF TRANSLATORS"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/ru/balooctl5.po 
new/baloo-5.77.0/po/ru/balooctl5.po
--- old/baloo-5.76.0/po/ru/balooctl5.po 2020-11-07 12:56:19.000000000 +0100
+++ new/baloo-5.77.0/po/ru/balooctl5.po 2020-12-05 13:33:56.000000000 +0100
@@ -9,7 +9,7 @@
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-09-06 02:08+0200\n"
-"PO-Revision-Date: 2020-03-17 21:11+0300\n"
+"PO-Revision-Date: 2020-11-08 22:41+0300\n"
 "Last-Translator: Alexander Yavorsky <[email protected]>\n"
 "Language-Team: Russian <[email protected]>\n"
 "Language: ru\n"
@@ -18,7 +18,7 @@
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : n"
 "%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
-"X-Generator: Lokalize 19.12.3\n"
+"X-Generator: Lokalize 20.08.3\n"
 
 #, kde-format
 msgctxt "NAME OF TRANSLATORS"
@@ -491,24 +491,22 @@
 msgstr "Файл: %1"
 
 #: statuscommand.cpp:263
-#, fuzzy, kde-format
-#| msgid "Output format \"%1\" is invalid"
+#, kde-format
 msgid "Output format \"%1\" is invalid, use one of:\n"
-msgstr "Некорректный формат вывода «%1»."
+msgstr "Формат вывода «%1» неверен, используйте один из следующих:\n"
 
 #: statuscommand.cpp:265
 #, kde-format
 msgctxt "bullet list item with output format"
 msgid "- %1\n"
-msgstr ""
+msgstr "- %1\n"
 
 #: statuscommand.cpp:272
-#, fuzzy, kde-format
-#| msgid "Baloo is currently disabled. To enable, please run %1"
+#, kde-format
 msgid "Baloo is currently disabled. To enable, please run %1\n"
 msgstr ""
 "Служба индексирования Baloo сейчас выключена. Чтобы её включить, запустите "
-"команду «%1»."
+"команду «%1».\n"
 
 #: statuscommand.cpp:278
 #, kde-format
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/zh_CN/baloo_file5.po 
new/baloo-5.77.0/po/zh_CN/baloo_file5.po
--- old/baloo-5.76.0/po/zh_CN/baloo_file5.po    2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/zh_CN/baloo_file5.po    2020-12-05 13:33:56.000000000 
+0100
@@ -8,7 +8,7 @@
 "Project-Id-Version: kdeorg\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-08-07 02:06+0200\n"
-"PO-Revision-Date: 2020-10-08 19:20\n"
+"PO-Revision-Date: 2020-11-10 15:00\n"
 "Last-Translator: \n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/zh_CN/baloo_file_extractor5.po 
new/baloo-5.77.0/po/zh_CN/baloo_file_extractor5.po
--- old/baloo-5.76.0/po/zh_CN/baloo_file_extractor5.po  2020-11-07 
12:56:19.000000000 +0100
+++ new/baloo-5.77.0/po/zh_CN/baloo_file_extractor5.po  2020-12-05 
13:33:56.000000000 +0100
@@ -7,7 +7,7 @@
 "Project-Id-Version: kdeorg\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-08-03 02:05+0200\n"
-"PO-Revision-Date: 2020-10-08 19:20\n"
+"PO-Revision-Date: 2020-11-10 15:00\n"
 "Last-Translator: \n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/zh_CN/balooctl5.po 
new/baloo-5.77.0/po/zh_CN/balooctl5.po
--- old/baloo-5.76.0/po/zh_CN/balooctl5.po      2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/zh_CN/balooctl5.po      2020-12-05 13:33:56.000000000 
+0100
@@ -10,7 +10,7 @@
 "Project-Id-Version: kdeorg\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-09-06 02:08+0200\n"
-"PO-Revision-Date: 2020-10-08 19:20\n"
+"PO-Revision-Date: 2020-11-10 15:00\n"
 "Last-Translator: \n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/zh_CN/baloodb5.po 
new/baloo-5.77.0/po/zh_CN/baloodb5.po
--- old/baloo-5.76.0/po/zh_CN/baloodb5.po       2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/zh_CN/baloodb5.po       2020-12-05 13:33:56.000000000 
+0100
@@ -8,7 +8,7 @@
 "Project-Id-Version: kdeorg\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-08-03 02:05+0200\n"
-"PO-Revision-Date: 2020-10-08 19:20\n"
+"PO-Revision-Date: 2020-11-10 15:00\n"
 "Last-Translator: \n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/zh_CN/balooengine5.po 
new/baloo-5.77.0/po/zh_CN/balooengine5.po
--- old/baloo-5.76.0/po/zh_CN/balooengine5.po   2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/zh_CN/balooengine5.po   2020-12-05 13:33:56.000000000 
+0100
@@ -8,7 +8,7 @@
 "Project-Id-Version: kdeorg\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-08-03 02:05+0200\n"
-"PO-Revision-Date: 2020-10-08 19:20\n"
+"PO-Revision-Date: 2020-11-10 15:00\n"
 "Last-Translator: \n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/zh_CN/baloomonitorplugin.po 
new/baloo-5.77.0/po/zh_CN/baloomonitorplugin.po
--- old/baloo-5.76.0/po/zh_CN/baloomonitorplugin.po     2020-11-07 
12:56:19.000000000 +0100
+++ new/baloo-5.77.0/po/zh_CN/baloomonitorplugin.po     2020-12-05 
13:33:56.000000000 +0100
@@ -7,7 +7,7 @@
 "Project-Id-Version: kdeorg\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-08-03 02:05+0200\n"
-"PO-Revision-Date: 2020-10-08 19:20\n"
+"PO-Revision-Date: 2020-11-10 15:00\n"
 "Last-Translator: \n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/zh_CN/baloosearch5.po 
new/baloo-5.77.0/po/zh_CN/baloosearch5.po
--- old/baloo-5.76.0/po/zh_CN/baloosearch5.po   2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/zh_CN/baloosearch5.po   2020-12-05 13:33:56.000000000 
+0100
@@ -8,7 +8,7 @@
 "Project-Id-Version: kdeorg\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-08-03 02:05+0200\n"
-"PO-Revision-Date: 2020-10-08 19:20\n"
+"PO-Revision-Date: 2020-11-10 15:00\n"
 "Last-Translator: \n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/zh_CN/balooshow5.po 
new/baloo-5.77.0/po/zh_CN/balooshow5.po
--- old/baloo-5.76.0/po/zh_CN/balooshow5.po     2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/zh_CN/balooshow5.po     2020-12-05 13:33:56.000000000 
+0100
@@ -8,7 +8,7 @@
 "Project-Id-Version: kdeorg\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-08-03 02:05+0200\n"
-"PO-Revision-Date: 2020-10-08 19:20\n"
+"PO-Revision-Date: 2020-11-10 15:00\n"
 "Last-Translator: \n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/zh_CN/kio5_baloosearch.po 
new/baloo-5.77.0/po/zh_CN/kio5_baloosearch.po
--- old/baloo-5.76.0/po/zh_CN/kio5_baloosearch.po       2020-11-07 
12:56:19.000000000 +0100
+++ new/baloo-5.77.0/po/zh_CN/kio5_baloosearch.po       2020-12-05 
13:33:56.000000000 +0100
@@ -8,7 +8,7 @@
 "Project-Id-Version: kdeorg\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-09-06 02:08+0200\n"
-"PO-Revision-Date: 2020-10-08 19:20\n"
+"PO-Revision-Date: 2020-11-10 15:00\n"
 "Last-Translator: \n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/zh_CN/kio5_tags.po 
new/baloo-5.77.0/po/zh_CN/kio5_tags.po
--- old/baloo-5.76.0/po/zh_CN/kio5_tags.po      2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/zh_CN/kio5_tags.po      2020-12-05 13:33:56.000000000 
+0100
@@ -7,7 +7,7 @@
 "Project-Id-Version: kdeorg\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-10-24 02:11+0200\n"
-"PO-Revision-Date: 2020-10-08 19:20\n"
+"PO-Revision-Date: 2020-11-10 15:00\n"
 "Last-Translator: \n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/po/zh_CN/kio5_timeline.po 
new/baloo-5.77.0/po/zh_CN/kio5_timeline.po
--- old/baloo-5.76.0/po/zh_CN/kio5_timeline.po  2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/po/zh_CN/kio5_timeline.po  2020-12-05 13:33:56.000000000 
+0100
@@ -8,7 +8,7 @@
 "Project-Id-Version: kdeorg\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-10-24 02:11+0200\n"
-"PO-Revision-Date: 2020-10-08 19:20\n"
+"PO-Revision-Date: 2020-11-10 15:00\n"
 "Last-Translator: \n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/src/engine/document.cpp 
new/baloo-5.77.0/src/engine/document.cpp
--- old/baloo-5.76.0/src/engine/document.cpp    2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/src/engine/document.cpp    2020-12-05 13:33:56.000000000 
+0100
@@ -9,18 +9,12 @@
 
 using namespace Baloo;
 
-Document::Document()
-    : m_id(0)
-    , m_contentIndexing(false)
-    , m_mTime(0)
-    , m_cTime(0)
-{
-}
+Document::Document() = default;
 
 void Document::addTerm(const QByteArray& term)
 {
     Q_ASSERT(!term.isEmpty());
-    // This adds "term" without data if it does not exist, otherwise it is a 
noop
+    // This adds "term" without position data if it does not exist, otherwise 
it is a noop
     m_terms[term];
 }
 
@@ -68,6 +62,17 @@
     m_id = id;
 }
 
+quint64 Document::parentId() const
+{
+    return m_parentId;
+}
+
+void Document::setParentId(quint64 id)
+{
+    Q_ASSERT(id);
+    m_parentId = id;
+}
+
 void Document::setUrl(const QByteArray& url)
 {
     Q_ASSERT(!url.isEmpty());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/src/engine/document.h 
new/baloo-5.77.0/src/engine/document.h
--- old/baloo-5.76.0/src/engine/document.h      2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/src/engine/document.h      2020-12-05 13:33:56.000000000 
+0100
@@ -43,6 +43,8 @@
 
     quint64 id() const;
     void setId(quint64 id);
+    quint64 parentId() const;
+    void setParentId(quint64 id);
 
     QByteArray url() const;
     void setUrl(const QByteArray& url);
@@ -60,7 +62,8 @@
     void setData(const QByteArray& data);
 
 private:
-    quint64 m_id;
+    quint64 m_id = 0;
+    quint64 m_parentId = 0;
 
     struct TermData {
         QVector<uint> positions;
@@ -70,10 +73,10 @@
     QMap<QByteArray, TermData> m_fileNameTerms;
 
     QByteArray m_url;
-    bool m_contentIndexing;
+    bool m_contentIndexing = false;
 
-    quint32 m_mTime;
-    quint32 m_cTime;
+    quint32 m_mTime = 0; //< modification time, seconds since Epoch
+    quint32 m_cTime = 0; //< inode change time, seconds since Epoch
     QByteArray m_data;
 
     friend class WriteTransaction;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/src/engine/documenturldb.cpp 
new/baloo-5.77.0/src/engine/documenturldb.cpp
--- old/baloo-5.76.0/src/engine/documenturldb.cpp       2020-11-07 
12:56:19.000000000 +0100
+++ new/baloo-5.77.0/src/engine/documenturldb.cpp       2020-12-05 
13:33:56.000000000 +0100
@@ -102,6 +102,40 @@
     return true;
 }
 
+void DocumentUrlDB::updateUrl(quint64 id, quint64 parentId, const QByteArray& 
url)
+{
+    IdFilenameDB idFilenameDb(m_idFilenameDbi, m_txn);
+    IdTreeDB idTreeDb(m_idTreeDbi, m_txn);
+
+    auto lastSlash = url.lastIndexOf('/');
+    auto newname = url.mid(lastSlash + 1);
+
+    // Sanity checks
+    auto path = idFilenameDb.get(id);
+    if (path.parentId != parentId) {
+        // Remove from old parent
+        QVector<quint64> subDocs = idTreeDb.get(path.parentId);
+        if (subDocs.removeOne(id)) {
+            if (subDocs.isEmpty()) {
+                idTreeDb.del(path.parentId);
+            } else {
+                idTreeDb.put(path.parentId, subDocs);
+            }
+        }
+        // Add to new parent
+        subDocs = idTreeDb.get(parentId);
+        sortedIdInsert(subDocs, id);
+        idTreeDb.put(parentId, subDocs);
+    }
+
+    if ((newname != path.name) || (parentId != path.parentId)) {
+        qDebug() << id << url << "renaming" << path.name << "to" << newname;
+        path.parentId = parentId;
+        path.name = newname;
+        idFilenameDb.put(id, path);
+    }
+}
+
 void DocumentUrlDB::add(quint64 id, quint64 parentId, const QByteArray& name)
 {
     if (!id || name.isEmpty()) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/src/engine/documenturldb.h 
new/baloo-5.77.0/src/engine/documenturldb.h
--- old/baloo-5.76.0/src/engine/documenturldb.h 2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/src/engine/documenturldb.h 2020-12-05 13:33:56.000000000 
+0100
@@ -36,6 +36,10 @@
     QVector<quint64> getChildren(quint64 docId) const;
 
     /**
+     */
+    void updateUrl(quint64 id, quint64 parentId, const QByteArray& url);
+
+    /**
      * Deletes a document from the DB, and conditionally also removes its
      * parent folders.
      *
@@ -155,23 +159,21 @@
 
     if (url.isEmpty()) {
         const auto subDocs = idTreeDb.get(docId);
-        if (!subDocs.isEmpty()) {
+        for (auto const& docId : subDocs) {
             // Check if subdocs actually exist or is it a corruption
-            for (auto const& docId : subDocs) {
-                auto filePath = idFilenameDb.get(docId);
-                auto fileName = QFile::decodeName(filePath.name);
-                if (QFile::exists(fileName)) {
-                    if (!idTreeDb.get(docId).isEmpty()) {
-                        qWarning() << "DocumentUrlDB::del"
-                                   << "This folder still has sub-files in its 
cache. It cannot be deleted";
-                    }
-                } else {
-                    /*
-                     * FIXME: this is not an ideal solution we need to figure 
out how such corruptions are
-                     * creeping in or at least if we detect some figure out a 
proper cleaning mechanism
-                     */
-                    qWarning() << "Database has corrupted entries baloo may 
misbehave, please recreate the DB by running $ balooctl disable && balooctl 
enable";
+            auto filePath = idFilenameDb.get(docId);
+            auto fileName = QFile::decodeName(filePath.name);
+            if (QFile::exists(fileName)) {
+                if (!idTreeDb.get(docId).isEmpty()) {
+                    qWarning() << "DocumentUrlDB::del"
+                               << "This folder still has sub-files in its 
cache. It cannot be deleted";
                 }
+            } else {
+                /*
+                 * FIXME: this is not an ideal solution we need to figure out 
how such corruptions are
+                 * creeping in or at least if we detect some figure out a 
proper cleaning mechanism
+                 */
+                qWarning() << "Database has corrupted entries baloo may 
misbehave, please recreate the DB by running $ balooctl disable && balooctl 
enable";
             }
         }
         return;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/src/engine/writetransaction.cpp 
new/baloo-5.77.0/src/engine/writetransaction.cpp
--- old/baloo-5.76.0/src/engine/writetransaction.cpp    2020-11-07 
12:56:19.000000000 +0100
+++ new/baloo-5.77.0/src/engine/writetransaction.cpp    2020-12-05 
13:33:56.000000000 +0100
@@ -245,9 +245,7 @@
     }
 
     if (operations & DocumentUrl) {
-        docUrlDB.replace(id, doc.url(), [&docTimeDB](quint64 id) {
-            return !docTimeDB.contains(id);
-        });;
+        docUrlDB.updateUrl(doc.id(), doc.parentId(), doc.url());
     }
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/src/file/basicindexingjob.cpp 
new/baloo-5.77.0/src/file/basicindexingjob.cpp
--- old/baloo-5.76.0/src/file/basicindexingjob.cpp      2020-11-07 
12:56:19.000000000 +0100
+++ new/baloo-5.77.0/src/file/basicindexingjob.cpp      2020-12-05 
13:33:56.000000000 +0100
@@ -101,6 +101,8 @@
         // - application/vnd.oasis.opendocument.presentation
         // Office 2007
         
{"application/vnd.openxmlformats-officedocument.presentationml.presentation", 
Type::Presentation},
+        
{"application/vnd.openxmlformats-officedocument.presentationml.slideshow", 
Type::Presentation},
+        
{"application/vnd.openxmlformats-officedocument.presentationml.template", 
Type::Presentation},
         {"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", 
Type::Spreadsheet},
         // Open Document Formats - 
https://en.wikipedia.org/wiki/OpenDocument_technical_specification
         {"application/vnd.oasis.opendocument.presentation", 
Type::Presentation},
@@ -171,20 +173,27 @@
 bool BasicIndexingJob::index()
 {
     const QByteArray url = QFile::encodeName(m_filePath);
+    auto lastSlash = url.lastIndexOf('/');
+
+    const QByteArray fileName = url.mid(lastSlash + 1);
+    const QByteArray filePath = url.left(lastSlash);
 
     QT_STATBUF statBuf;
-    if (filePathToStat(url, statBuf) != 0) {
+    if (filePathToStat(filePath, statBuf) != 0) {
         return false;
     }
 
     Document doc;
+    doc.setParentId(statBufToId(statBuf));
+
+    if (filePathToStat(url, statBuf) != 0) {
+        return false;
+    }
     doc.setId(statBufToId(statBuf));
     doc.setUrl(url);
 
-    QString fileName = url.mid(url.lastIndexOf('/') + 1);
-
     TermGenerator tg(doc);
-    tg.indexFileNameText(fileName);
+    tg.indexFileNameText(QFile::decodeName(fileName));
     tg.indexText(m_mimetype, QByteArray("M"));
 
     // (Content) Modification time, Metadata (e.g. XAttr) change time
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/src/file/extractor/app.cpp 
new/baloo-5.77.0/src/file/extractor/app.cpp
--- old/baloo-5.76.0/src/file/extractor/app.cpp 2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/src/file/extractor/app.cpp 2020-12-05 13:33:56.000000000 
+0100
@@ -193,7 +193,7 @@
 
     Baloo::Document doc = basicIndexer.document();
 
-    Result result(url, mimetype, 
KFileMetaData::ExtractionResult::ExtractEverything);
+    Result result(url, mimetype, 
KFileMetaData::ExtractionResult::ExtractMetaData | 
KFileMetaData::ExtractionResult::ExtractPlainText);
     result.setDocument(doc);
 
     const QList<KFileMetaData::Extractor*> exList = 
m_extractorCollection.fetchExtractors(mimetype);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/src/file/extractor/result.h 
new/baloo-5.77.0/src/file/extractor/result.h
--- old/baloo-5.76.0/src/file/extractor/result.h        2020-11-07 
12:56:19.000000000 +0100
+++ new/baloo-5.77.0/src/file/extractor/result.h        2020-12-05 
13:33:56.000000000 +0100
@@ -27,7 +27,7 @@
 {
 public:
     Result();
-    Result(const QString& url, const QString& mimetype, const Flags& flags = 
ExtractEverything);
+    Result(const QString& url, const QString& mimetype, const Flags& flags = 
ExtractMetaData | ExtractPlainText);
 
     void add(KFileMetaData::Property::Property property, const QVariant& 
value) override;
     void append(const QString& text) override;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/src/file/filewatch.cpp 
new/baloo-5.77.0/src/file/filewatch.cpp
--- old/baloo-5.76.0/src/file/filewatch.cpp     2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/src/file/filewatch.cpp     2020-12-05 13:33:56.000000000 
+0100
@@ -20,8 +20,6 @@
 #include <QFileInfo>
 #include <QDir>
 
-#include <syslog.h>
-
 using namespace Baloo;
 
 FileWatch::FileWatch(Database* db, FileIndexerConfig* config, QObject* parent)
@@ -159,9 +157,9 @@
 // inotify_add_watch fails with ENOSPC.
 void FileWatch::slotInotifyWatchUserLimitReached(const QString&)
 {
-    //If we got here, we hit the limit and couldn't authenticate to raise it,
-    // so put something in the syslog so someone notices.
-    syslog(LOG_USER | LOG_WARNING, "KDE Baloo File Indexer has reached the 
inotify folder watch limit. File changes will be ignored.");
+    // If we got here, we hit the limit and are not allowed to raise it,
+    // so put something in the log.
+    qCWarning(BALOO) << "KDE Baloo File Indexer has reached the inotify folder 
watch limit. File changes will be ignored.";
     // we do it the brutal way for now hoping with new kernels and defaults 
this will never happen
     // Delete the KInotify
     // FIXME: Maybe we should be aborting?
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/src/file/metadatamover.cpp 
new/baloo-5.77.0/src/file/metadatamover.cpp
--- old/baloo-5.76.0/src/file/metadatamover.cpp 2020-11-07 12:56:19.000000000 
+0100
+++ new/baloo-5.77.0/src/file/metadatamover.cpp 2020-12-05 13:33:56.000000000 
+0100
@@ -9,8 +9,6 @@
 #include "metadatamover.h"
 #include "database.h"
 #include "transaction.h"
-#include "basicindexingjob.h"
-#include "idutils.h"
 #include "baloodebug.h"
 
 #include <QFile>
@@ -23,12 +21,10 @@
 {
 }
 
-
 MetadataMover::~MetadataMover()
 {
 }
 
-
 void MetadataMover::moveFileMetadata(const QString& from, const QString& to)
 {
 //    qCDebug(BALOO) << from << to;
@@ -83,26 +79,30 @@
     Q_ASSERT(from[from.size()-1] != QLatin1Char('/'));
     Q_ASSERT(to[to.size()-1] != QLatin1Char('/'));
 
-    QByteArray toPath = QFile::encodeName(to);
-    quint64 id = filePathToId(toPath);
+    const QByteArray fromPath = QFile::encodeName(from);
+    quint64 id = tr->documentId(fromPath);
     if (!id) {
-        qWarning() << "File moved to path which now no longer exists -" << to;
+        qDebug() << "Document not (yet) known, signaling newFile" << to;
+        Q_EMIT movedWithoutData(to);
         return;
     }
 
-    if (!tr->hasDocument(id)) {
-        //
-        // If we have no metadata yet we need to tell the file indexer so it 
can
-        // create the metadata in case the target folder is configured to be 
indexed.
-        //
-        qCDebug(BALOO) << "Moved without data";
-        Q_EMIT movedWithoutData(to);
+    QByteArray toPath = QFile::encodeName(to);
+    auto lastSlash = toPath.lastIndexOf('/');
+    QByteArray parentPath = toPath.left(lastSlash + 1);
+
+    quint64 parentId = tr->documentId(parentPath);
+    if (!parentId) {
+        qDebug() << "Parent directory not (yet) known, signaling newFile" << 
to;
+        Q_EMIT movedWithoutData(parentPath);
         return;
     }
 
-    BasicIndexingJob job(toPath, QString(), BasicIndexingJob::NoLevel);
-    job.index();
-    tr->replaceDocument(job.document(), DocumentUrl | FileNameTerms);
+    Document doc;
+    doc.setId(id);
+    doc.setParentId(parentId);
+    doc.setUrl(toPath);
+    tr->replaceDocument(doc, DocumentUrl | FileNameTerms);
 
     // Possible scenarios
     // 1. file moves to the same device - id is preserved
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/baloo-5.76.0/src/tools/balooctl/indexer.cpp 
new/baloo-5.77.0/src/tools/balooctl/indexer.cpp
--- old/baloo-5.76.0/src/tools/balooctl/indexer.cpp     2020-11-07 
12:56:19.000000000 +0100
+++ new/baloo-5.77.0/src/tools/balooctl/indexer.cpp     2020-12-05 
13:33:56.000000000 +0100
@@ -28,7 +28,7 @@
     basicIJ.index();
     Baloo::Document doc = basicIJ.document();
 
-    Result result(m_url, mimetype, 
KFileMetaData::ExtractionResult::ExtractEverything);
+    Result result(m_url, mimetype, 
KFileMetaData::ExtractionResult::ExtractMetaData | 
KFileMetaData::ExtractionResult::ExtractPlainText);
     result.setDocument(doc);
 
     const QList<KFileMetaData::Extractor*> exList = 
m_extractorCollection.fetchExtractors(mimetype);
_______________________________________________
openSUSE Commits mailing list -- [email protected]
To unsubscribe, email [email protected]
List Netiquette: https://en.opensuse.org/openSUSE:Mailing_list_netiquette
List Archives: 
https://lists.opensuse.org/archives/list/[email protected]

Reply via email to