Hello community, here is the log from the commit of package kio for openSUSE:Factory checked in at 2017-08-24 18:11:13 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kio (Old) and /work/SRC/openSUSE:Factory/.kio.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kio" Thu Aug 24 18:11:13 2017 rev:51 rq:518456 version:5.37.0 Changes: -------- --- /work/SRC/openSUSE:Factory/kio/kio.changes 2017-07-17 10:24:10.174791116 +0200 +++ /work/SRC/openSUSE:Factory/.kio.new/kio.changes 2017-08-24 18:11:22.180135032 +0200 @@ -1,0 +2,40 @@ +Tue Aug 22 14:53:37 UTC 2017 - [email protected] + +- Add Really-rate-limit-INF_PROCESSED_SIZE-messages.patch to not + cause high CPU load during file copies (kde#383843, boo#1016920, + boo#1051349) +- Add KDesktopPropsPlugin-create-destination-dir.patch to fix + modifying applications' .desktop files in the "Edit File Type" + dialog if the corresponding directory doesn't exist in + ~/.local/share/ (boo#1000946) + +------------------------------------------------------------------- +Tue Aug 15 12:49:25 UTC 2017 - [email protected] + +- Add fix-applying-special-file-attributes.patch to fix modifying + advanced permissions in the file/folder properties dialog + (boo#978935, kde#365795) + +------------------------------------------------------------------- +Sat Aug 12 09:23:30 UTC 2017 - [email protected] + +- Update to 5.37.0 + * New feature release + * For more details please see: + * https://www.kde.org/announcements/kde-frameworks-5.37.0.php +- Changes since 5.36.0 : + * Fix assert in UrlUtil::firstChildUrl() + * Add new method urlSelectionRequested to KUrlNavigator + * Revert "Emit a "." UDSEntry when not present, even on empty directories." + * KUrlNavigator: expose the KUrlNavigatorButton that received a drop event + * Fix build on musl libc by exposing setgroups(2). + * Emit a "." UDSEntry when not present, even on empty directories. (kde#382046) + * Fix test not found when setting CMAKE_RUNTIME_OUTPUT_DIRECTORY, for some reason. + * Stash without asking the user with a Copy/Cancel popup. + * Ensure KDirLister updates items whose target URL has changed. (kde#382341) + * Fix kdirwatch warning + * API dox: use official name "D-Bus" consistently + * Make advanced options of "open with" dialog collabsible and hidden by default + * Minor: Fix a couple of deprecation warnings + +------------------------------------------------------------------- Old: ---- kio-5.36.0.tar.xz New: ---- KDesktopPropsPlugin-create-destination-dir.patch Really-rate-limit-INF_PROCESSED_SIZE-messages.patch fix-applying-special-file-attributes.patch kio-5.37.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kio.spec ++++++ --- /var/tmp/diff_new_pack.Fk8dc9/_old 2017-08-24 18:11:23.743914855 +0200 +++ /var/tmp/diff_new_pack.Fk8dc9/_new 2017-08-24 18:11:23.747914291 +0200 @@ -17,9 +17,9 @@ %bcond_without lang -%define _tar_path 5.36 +%define _tar_path 5.37 Name: kio -Version: 5.36.0 +Version: 5.37.0 Release: 0 %define kf5_version %{version} BuildRequires: cmake >= 3.0 @@ -75,6 +75,12 @@ Source1: baselibs.conf # PATCH-FIX-OPENSUSE kio_help-fallback-to-kde4-docs.patch -- allow kio_help to see into kde4 documentation, needed especially for khelpcenter5 Patch0: kio_help-fallback-to-kde4-docs.patch +# PATCH-FIX-UPSTREAM +Patch1: fix-applying-special-file-attributes.patch +# PATCH-FIX-UPSTREAM +Patch2: KDesktopPropsPlugin-create-destination-dir.patch +# PATCH-FIX-UPSTREAM +Patch3: Really-rate-limit-INF_PROCESSED_SIZE-messages.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -121,6 +127,9 @@ %prep %setup -q %patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 %build %cmake_kf5 -d build ++++++ KDesktopPropsPlugin-create-destination-dir.patch ++++++ >From a0fc624d50bbd7942834913ece52d26849ba7243 Mon Sep 17 00:00:00 2001 From: Wolfgang Bauer <[email protected]> Date: Thu, 17 Aug 2017 12:51:53 +0200 Subject: [KDesktopPropsPlugin] Create destination directory if it doesn't exist If the directory doesn't exist, applying the changes will fail with "Could not save properties. You do not have sufficient access to write to xxx". --- src/widgets/kpropertiesdialog.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/widgets/kpropertiesdialog.cpp b/src/widgets/kpropertiesdialog.cpp index 860ad0e..0abcc9c 100644 --- a/src/widgets/kpropertiesdialog.cpp +++ b/src/widgets/kpropertiesdialog.cpp @@ -3674,6 +3674,8 @@ void KDesktopPropsPlugin::applyChanges() const QString path(url.toLocalFile()); + // make sure the directory exists + QDir().mkpath(QFileInfo(path).absolutePath()); QFile f(path); if (!f.open(QIODevice::ReadWrite)) { KMessageBox::sorry(nullptr, i18n("<qt>Could not save properties. You do not have " -- cgit v0.11.2 ++++++ Really-rate-limit-INF_PROCESSED_SIZE-messages.patch ++++++ >From 801f58e7e76acd4bcb23d6e8092825cdda203a81 Mon Sep 17 00:00:00 2001 From: Kevin Funk <[email protected]> Date: Tue, 22 Aug 2017 14:11:03 +0200 Subject: Really rate-limit INF_PROCESSED_SIZE messages Summary: Fixing an ancient porting bug which popped up when porting from Qt4 to Qt5. FIXED-IN: 5.38 BUG: 383843 Reviewers: dfaure Reviewed By: dfaure Subscribers: dfaure, #frameworks Tags: #frameworks Differential Revision: https://phabricator.kde.org/D7463 --- src/core/slavebase.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/slavebase.cpp b/src/core/slavebase.cpp index 3778df8..149564b 100644 --- a/src/core/slavebase.cpp +++ b/src/core/slavebase.cpp @@ -535,7 +535,7 @@ void SlaveBase::processedSize(KIO::filesize_t _bytes) emitSignal = true; } else { if (d->lastTimeout.isValid()) { - emitSignal = d->lastTimeout.msecsTo(now); // emit size 10 times a second + emitSignal = d->lastTimeout.msecsTo(now) >= 100; // emit size 10 times a second } else { emitSignal = true; } -- cgit v0.11.2 ++++++ fix-applying-special-file-attributes.patch ++++++ >From 9ac7832b859bfcbc88448c4ae0f6dc14b2d54a06 Mon Sep 17 00:00:00 2001 From: Kai Uwe Broulik <[email protected]> Date: Tue, 15 Aug 2017 14:41:36 +0200 Subject: [File KIO slave] Fix applying special file attributes QFile does not support special attributes like sticky. This would cause us to always discard them. BUG: 365795 Differential Revision: https://phabricator.kde.org/D7326 --- autotests/jobtest.cpp | 20 ++++++++++++++++++++ autotests/jobtest.h | 3 +++ src/ioslaves/file/file.cpp | 5 +++++ 3 files changed, 28 insertions(+) diff --git a/autotests/jobtest.cpp b/autotests/jobtest.cpp index 80a8921..557d1b5 100644 --- a/autotests/jobtest.cpp +++ b/autotests/jobtest.cpp @@ -1473,6 +1473,26 @@ void JobTest::chmodFile() QFile::remove(filePath); } +#ifdef Q_OS_UNIX +void JobTest::chmodSticky() +{ + const QString filePath = homeTmpDir() + "fileForChmodSticky"; + createTestFile(filePath); + KFileItem item(QUrl::fromLocalFile(filePath)); + const mode_t origPerm = item.permissions(); + mode_t newPerm = origPerm ^ S_ISVTX; + QVERIFY(newPerm != origPerm); + KFileItemList items({item}); + KIO::Job *job = KIO::chmod(items, newPerm, S_ISVTX, QString(), QString(), false, KIO::HideProgressInfo); + job->setUiDelegate(nullptr); + QVERIFY(job->exec()); + + KFileItem newItem(QUrl::fromLocalFile(filePath)); + QCOMPARE(QString::number(newItem.permissions(), 8), QString::number(newPerm, 8)); + QFile::remove(filePath); +} +#endif + void JobTest::chmodFileError() { // chown(root) should fail diff --git a/autotests/jobtest.h b/autotests/jobtest.h index 96b4264..e3d800a 100644 --- a/autotests/jobtest.h +++ b/autotests/jobtest.h @@ -84,6 +84,9 @@ private Q_SLOTS: #endif void mostLocalUrl(); void chmodFile(); +#ifdef Q_OS_UNIX + void chmodSticky(); +#endif void chmodFileError(); void mimeType(); void mimeTypeError(); diff --git a/src/ioslaves/file/file.cpp b/src/ioslaves/file/file.cpp index 47fb0a5..a7f1a47 100644 --- a/src/ioslaves/file/file.cpp +++ b/src/ioslaves/file/file.cpp @@ -225,7 +225,12 @@ void FileProtocol::chmod(const QUrl &url, int permissions) const QString path(url.toLocalFile()); const QByteArray _path(QFile::encodeName(path)); /* FIXME: Should be atomic */ +#ifdef Q_OS_UNIX + // QFile::Permissions does not support special attributes like sticky + if (::chmod(QFile::encodeName(path).constData(), permissions) == -1 || +#else if (!QFile::setPermissions(path, modeToQFilePermissions(permissions)) || +#endif (setACL(_path.data(), permissions, false) == -1) || /* if not a directory, cannot set default ACLs */ (setACL(_path.data(), permissions, true) == -1 && errno != ENOTDIR)) { -- cgit v0.11.2 ++++++ kio-5.36.0.tar.xz -> kio-5.37.0.tar.xz ++++++ ++++ 20947 lines of diff (skipped)
