D8064: Correct installation of start_kdeinit when DESTDIR and libcap are used together
awilcox created this revision. Restricted Application added a project: Frameworks. Restricted Application added a subscriber: Frameworks. REVISION SUMMARY While packaging kinit 5.38.0 for Adélie, I ran in to the following error: -- Installing: /usr/src/packages/user/kinit/pkg/kinit/usr/lib/libexec/kf5/start_kdeinit Failed to set capabilities on file `/usr/lib/libexec/kf5/start_kdeinit' (No such file or directory) usage: setcap [-q] [-v] (-r|-|) [ ... (-r|-|) ] Note must be a regular (non-symlink) file. This was caused by a missing escape in the CMake instruction to run setcap. I have verified that this patch also applies cleanly to master. TEST PLAN - Build with and without libcap, with and without `DESTDIR` set. REPOSITORY R303 KInit REVISION DETAIL https://phabricator.kde.org/D8064 AFFECTED FILES kinit-5.38.0/src/start_kdeinit/CMakeLists.txt To: awilcox Cc: #frameworks
KDE CI: Frameworks kirigami kf5-qt5 XenialQt5.7 - Build # 93 - Still Unstable!
BUILD UNSTABLE Build URL https://build.kde.org/job/Frameworks%20kirigami%20kf5-qt5%20XenialQt5.7/93/ Project: Frameworks kirigami kf5-qt5 XenialQt5.7 Date of build: Sat, 30 Sep 2017 03:09:49 + Build duration: 1 min 42 sec and counting JUnit Tests Name: (root) Failed: 1 test(s), Passed: 1 test(s), Skipped: 0 test(s), Total: 2 test(s)Failed: TestSuite.qmltests Cobertura Report Project Coverage Summary Name Cobertura Coverage Report
KDE CI: Frameworks kirigami kf5-qt5 FreeBSDQt5.7 - Build # 88 - Still Unstable!
BUILD UNSTABLE Build URL https://build.kde.org/job/Frameworks%20kirigami%20kf5-qt5%20FreeBSDQt5.7/88/ Project: Frameworks kirigami kf5-qt5 FreeBSDQt5.7 Date of build: Sat, 30 Sep 2017 03:09:49 + Build duration: 1 min 12 sec and counting JUnit Tests Name: (root) Failed: 1 test(s), Passed: 0 test(s), Skipped: 0 test(s), Total: 1 test(s)Failed: TestSuite.qmltests
D8060: allow to set a custom palette instead of colorSets
cfeck added a comment. BUG: 385175 REPOSITORY R302 KIconThemes REVISION DETAIL https://phabricator.kde.org/D8060 To: mart, dfaure, #frameworks, rikmills Cc: cfeck, #frameworks
D8060: allow to set a custom palette instead of colorSets
cfeck added a comment. Uh, forget what I wrote. You wanted to pass only the colorSet enum, not the complete color scheme. +1 to this. REPOSITORY R302 KIconThemes REVISION DETAIL https://phabricator.kde.org/D8060 To: mart, dfaure, #frameworks, rikmills Cc: cfeck, #frameworks
D8060: allow to set a custom palette instead of colorSets
cfeck added a comment. > remove the public dependency to KConfigWidgets as this is breaking existing apps Does it work if you use a forward declaration instead of an include? As far as I know, both "Type f()" and "void f(Type *p)" do not need the actual function declaration, because both are passed as pointers. REPOSITORY R302 KIconThemes REVISION DETAIL https://phabricator.kde.org/D8060 To: mart, dfaure, #frameworks, rikmills Cc: cfeck, #frameworks
D8007: popplerextractor: don't try to guess the title if there isn't one.
aacid resigned from this revision. aacid added a comment. I'm not the one that wrote this code, i have zero input on whether this is a good idea or not or if it should be removed or not All i can do is offer the 1688 pdf files i have lying around to test the difference before and after running some code. REPOSITORY R286 KFileMetaData REVISION DETAIL https://phabricator.kde.org/D8007 To: flameeyes, #frameworks, aacid Cc: ngraham, #frameworks
D8000: Properly create KPixmapSequence
This revision was automatically updated to reflect the committed changes. Closed by commit R304:d967bd9e9345: Properly create KPixmapSequence (authored by elvisangelaccio). REPOSITORY R304 KNewStuff CHANGES SINCE LAST UPDATE https://phabricator.kde.org/D8000?vs=19959&id=20118 REVISION DETAIL https://phabricator.kde.org/D8000 AFFECTED FILES src/uploaddialog.cpp To: elvisangelaccio, #frameworks, aacid
KDE CI: Frameworks kwidgetsaddons kf5-qt5 FreeBSDQt5.7 - Build # 45 - Fixed!
BUILD SUCCESS Build URL https://build.kde.org/job/Frameworks%20kwidgetsaddons%20kf5-qt5%20FreeBSDQt5.7/45/ Project: Frameworks kwidgetsaddons kf5-qt5 FreeBSDQt5.7 Date of build: Fri, 29 Sep 2017 18:42:56 + Build duration: 8 min 3 sec and counting JUnit Tests Name: (root) Failed: 0 test(s), Passed: 18 test(s), Skipped: 0 test(s), Total: 18 test(s)
KDE CI: Frameworks kwidgetsaddons kf5-qt5 XenialQt5.7 - Build # 45 - Fixed!
BUILD SUCCESS Build URL https://build.kde.org/job/Frameworks%20kwidgetsaddons%20kf5-qt5%20XenialQt5.7/45/ Project: Frameworks kwidgetsaddons kf5-qt5 XenialQt5.7 Date of build: Fri, 29 Sep 2017 18:42:56 + Build duration: 7 min 18 sec and counting JUnit Tests Name: (root) Failed: 0 test(s), Passed: 19 test(s), Skipped: 0 test(s), Total: 19 test(s) Cobertura Report Project Coverage Summary Name PackagesFilesClassesLinesConditionalsCobertura Coverage Report100% (2/2)56% (82/147)56% (82/147)30% (4311/14331)22% (1707/7785)Coverage Breakdown by Package Name FilesClassesLinesConditionalsautotests100% (33/33)100% (33/33)99% (1561/1576)52% (819/1582)src43% (49/114)43% (49/114)22% (2750/12755)14% (888/6203)
D7977: KSqueezedTextLabel: Squeeze text when changing indent or margin
This revision was automatically updated to reflect the committed changes. Closed by commit R236:d82aec496412: KSqueezedTextLabel: Squeeze text when changing indent or margin (authored by rkflx). REPOSITORY R236 KWidgetsAddons CHANGES SINCE LAST UPDATE https://phabricator.kde.org/D7977?vs=19879&id=20114 REVISION DETAIL https://phabricator.kde.org/D7977 AFFECTED FILES autotests/ksqueezedtextlabelautotest.cpp src/ksqueezedtextlabel.cpp src/ksqueezedtextlabel.h To: rkflx, #frameworks, dhaumann, cfeck
D8056: Improve usability of "Open With" dialog by adding option to filter the application tree
ngraham added reviewers: Frameworks, VDG. REPOSITORY R241 KIO REVISION DETAIL https://phabricator.kde.org/D8056 To: simgunz, dfaure, #frameworks, #vdg Cc: alexeymin, #frameworks
D8060: allow to set a custom palette instead of colorSets
mart added reviewers: Frameworks, rikmills. REPOSITORY R302 KIconThemes REVISION DETAIL https://phabricator.kde.org/D8060 To: mart, dfaure, #frameworks, rikmills Cc: #frameworks
D8060: allow to set a custom palette instead of colorSets
mart created this revision. mart added a reviewer: dfaure. Restricted Application added a project: Frameworks. Restricted Application added a subscriber: Frameworks. REVISION SUMMARY remove the public dependency to KConfigWidgets as this is breaking existing apps, but instead let applications set their own QPalette, so doesn't add dependencies and is slightly more flexible TEST PLAN old clients work, no new dependencies, the kirigami custom palette icons is adaped and works REPOSITORY R302 KIconThemes BRANCH custompalette REVISION DETAIL https://phabricator.kde.org/D8060 AFFECTED FILES src/CMakeLists.txt src/kiconloader.cpp src/kiconloader.h To: mart, dfaure Cc: #frameworks
D7891: expose the colorset for the stylesheet
mart added a comment. https://phabricator.kde.org/D8060 solves the same problem without new dependencies REPOSITORY R302 KIconThemes REVISION DETAIL https://phabricator.kde.org/D7891 To: mart, #frameworks, #plasma, hein, dfaure Cc: rikmills, plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D8050: Expose wl_display_set_global_filter as a virtual method
davidedmundson added a comment. It doesn't explicitly say anything, but I don't see how we can. I do have an approach where we would be able to show a polkit dialog described in https://phabricator.kde.org/T4437. REPOSITORY R127 KWayland BRANCH filter2 REVISION DETAIL https://phabricator.kde.org/D8050 To: davidedmundson, #plasma, graesslin Cc: graesslin, plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D8050: Expose wl_display_set_global_filter as a virtual method
graesslin accepted this revision. graesslin added a comment. This revision is now accepted and ready to land. Due you know whether we are allowed to block? E.g. to show a polkit dialog? My assumption would be we are not allowed to block here. REPOSITORY R127 KWayland BRANCH filter2 REVISION DETAIL https://phabricator.kde.org/D8050 To: davidedmundson, #plasma, graesslin Cc: graesslin, plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D8042: Fix invalid itemData references of 57 highlighting files
vkrause accepted this revision. This revision is now accepted and ready to land. REPOSITORY R216 Syntax Highlighting BRANCH fix-attributes REVISION DETAIL https://phabricator.kde.org/D8042 To: dhaumann, vkrause, cullmann Cc: #frameworks
D7699: Add support for custom search paths for application-specific syntax and theme definitions
This revision was automatically updated to reflect the committed changes. Closed by commit R216:b8d4bb51c5db: Add support for custom search paths for application-specific syntax and theme… (authored by zrax, committed by vkrause). REPOSITORY R216 Syntax Highlighting CHANGES SINCE LAST UPDATE https://phabricator.kde.org/D7699?vs=19256&id=20104 REVISION DETAIL https://phabricator.kde.org/D7699 AFFECTED FILES autotests/input/syntax/testlang.xml autotests/input/themes/customtheme.theme autotests/syntaxrepository_test.cpp src/lib/repository.cpp src/lib/repository.h src/lib/repository_p.h To: zrax, #kate, #framework_syntax_highlighting, dhaumann, vkrause Cc: dhaumann, vkrause, cullmann, #framework_syntax_highlighting, #frameworks
D8050: Expose wl_display_set_global_filter as a virtual method
davidedmundson updated this revision to Diff 20101. davidedmundson added a comment. Restricted Application edited projects, added Plasma; removed Plasma on Wayland. updates REPOSITORY R127 KWayland CHANGES SINCE LAST UPDATE https://phabricator.kde.org/D8050?vs=20069&id=20101 BRANCH filter2 REVISION DETAIL https://phabricator.kde.org/D8050 AFFECTED FILES CMakeLists.txt autotests/client/CMakeLists.txt autotests/client/test_wayland_filter.cpp src/server/CMakeLists.txt src/server/filtered_display.cpp src/server/filtered_display.h To: davidedmundson, #plasma Cc: graesslin, plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D8050: Expose wl_display_set_global_filter as a virtual method
graesslin added inline comments. INLINE COMMENTS > davidedmundson wrote in filtered_display.cpp:41 > I tried. > > modding getConnection means modding modding ClientConnection constructor, > modding that means modding the Private ctor > > that gets into > > wl_client_add_destroy_listener(c, &listener); > > c is now const, that fails. > > > > We have 3 options: > > - a const_cast somewhere > - Change Display to create ClientConnections when they come in, not on > demand, then we can make getconnection const everywhere. (IMHO, maybe worth > it, as our current clientConnected signal is rather misleading) > - return PID in the API here instead of the client. ouch, then const_cast is clearly better. REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D8050 To: davidedmundson, #plasma Cc: graesslin, plasma-devel, #frameworks, leezu, ZrenBot, alexeymin, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, eliasp, sebas, apol, mart, hein
D8050: Expose wl_display_set_global_filter as a virtual method
graesslin added a comment. Btw. today is a great day: I finally can clean up my whiteboard. I had drafted an idea how to do what this change does more than a year ago and it's still waiting for the future me to implement it. But with this change I can finally clean it without having a bad conscience as this is so much cooler and better than my API design! REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D8050 To: davidedmundson, #plasma Cc: graesslin, plasma-devel, #frameworks, leezu, ZrenBot, alexeymin, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, eliasp, sebas, apol, mart, hein
D8050: Expose wl_display_set_global_filter as a virtual method
davidedmundson added inline comments. INLINE COMMENTS > graesslin wrote in filtered_display.cpp:41 > Why a const cast? Or other said: could we overload the getConnection to > accept a const wl_client*? I tried. modding getConnection means modding modding ClientConnection constructor, modding that means modding the Private ctor that gets into wl_client_add_destroy_listener(c, &listener); c is now const, that fails. We have 3 options: - a const_cast somewhere - Change Display to create ClientConnections when they come in, not on demand, then we can make getconnection const everywhere. (IMHO, maybe worth it, as our current clientConnected signal is rather misleading) - return PID in the API here instead of the client. REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D8050 To: davidedmundson, #plasma Cc: graesslin, plasma-devel, #frameworks, leezu, ZrenBot, alexeymin, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, eliasp, sebas, apol, mart, hein
D8050: Expose wl_display_set_global_filter as a virtual method
graesslin added inline comments. INLINE COMMENTS > davidedmundson wrote in filtered_display.cpp:62 > Somewhat. > This is new in 1.13, we depend on 1.7. > > Debian is currently on 1.12. > (my general rule is: "is Debian has it, everyone else must do") > > Should we #ifdefs and then no-op (with a qwarning) on older libwayland? Debian testing is already at 1.14. My general rule is: "if Debian testing has it, everyone else must do". Given that ifdef is always a mess I would say: go for increase! REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D8050 To: davidedmundson, #plasma Cc: graesslin, plasma-devel, #frameworks, leezu, ZrenBot, alexeymin, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, eliasp, sebas, apol, mart, hein
D8050: Expose wl_display_set_global_filter as a virtual method
graesslin added inline comments. INLINE COMMENTS > filtered_display.cpp:41 > +auto t = static_cast(data); > +auto clientConnection = > t->q->getConnection(const_cast(client)); > +auto interface = wl_global_get_interface(global); Why a const cast? Or other said: could we overload the getConnection to accept a const wl_client*? > filtered_display.cpp:45 > +return t->q->allowInterface(clientConnection, name); > +return false; > +}; that looks like dead code. REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D8050 To: davidedmundson, #plasma Cc: graesslin, plasma-devel, #frameworks, leezu, ZrenBot, alexeymin, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, eliasp, sebas, apol, mart, hein
D8058: don't redefine output dirs on android
apol added a comment. Before disabling it altogether on Android, I'd prefer to look into why it's not working. Give me a week, please? If you still want it in, maybe a solution would be to have instead something like: option(CENTRALIZED_BINARIES "puts all binaries on bindir/lib and bindir/bin" ON) REPOSITORY R240 Extra CMake Modules REVISION DETAIL https://phabricator.kde.org/D8058 To: mart, apol, dfaure, #frameworks Cc: #frameworks, #build_system
D7891: expose the colorset for the stylesheet
mart added inline comments. INLINE COMMENTS > dfaure wrote in kiconloader.h:465 > I guess this is OK as is, so remove the comment (it's not we can change this > later) apparently this is giving problems indeed, polkit is now failing to build since it wasn't explicitly linking to KConfigWidgets, so may be necessary to duplicate the enum REPOSITORY R302 KIconThemes REVISION DETAIL https://phabricator.kde.org/D7891 To: mart, #frameworks, #plasma, hein, dfaure Cc: plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D8050: Expose wl_display_set_global_filter as a virtual method
davidedmundson added inline comments. INLINE COMMENTS > graesslin wrote in filtered_display.cpp:62 > I didn't know such API exists! This is great ;-) > > But I think you need to increase the minimum Wayland version. Somewhat. This is new in 1.13, we depend on 1.7. Debian is currently on 1.12. (my general rule is: "is Debian has it, everyone else must do") Should we #ifdefs and then no-op (with a qwarning) on older libwayland? REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D8050 To: davidedmundson, #plasma Cc: graesslin, plasma-devel, #frameworks, leezu, ZrenBot, alexeymin, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, eliasp, sebas, apol, mart, hein
D7891: expose the colorset for the stylesheet
rikmills added a comment. Since this change, polkit-kde-agent-1 fails to build from source with the error: > In file included from /usr/include/KF5/KIconThemes/KIconLoader:1:0, > from /<>/polkit-kde-agent-1-5.10.95+p17.10+git20170929.1419/AuthDialog.cpp:37: > /usr/include/KF5/KIconThemes/kiconloader.h:31:10: fatal error: kcolorscheme.h: No such file or directory > #include > ^~~~ > compilation terminated. REPOSITORY R302 KIconThemes REVISION DETAIL https://phabricator.kde.org/D7891 To: mart, #frameworks, #plasma, hein, dfaure Cc: rikmills, plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D8050: Expose wl_display_set_global_filter as a virtual method
graesslin added inline comments. INLINE COMMENTS > filtered_display.cpp:62 > +} > +wl_display_set_global_filter(*this, Private::globalFilterCallback, > d.data()); > +}); I didn't know such API exists! This is great ;-) But I think you need to increase the minimum Wayland version. REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D8050 To: davidedmundson, #plasma Cc: graesslin, plasma-devel, #frameworks, leezu, ZrenBot, alexeymin, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, eliasp, sebas, apol, mart, hein
D7829: Fix kglobalaccel regression on Alt+Shift+arrowkey.
graesslin added a comment. My main concern remains: how do we know that it doesn't introduce further regressions? Did you test that Alt+tab and alt+shift+tab still works? Also when changing keyboard layout? For this frameworks release I think it's too late: the regression potential is just too high. REPOSITORY R278 KWindowSystem REVISION DETAIL https://phabricator.kde.org/D7829 To: dfaure, graesslin, jriddell, martinkostolny, broulik Cc: #frameworks
D8058: don't redefine output dirs on android
mart added a reviewer: Frameworks. REPOSITORY R240 Extra CMake Modules REVISION DETAIL https://phabricator.kde.org/D8058 To: mart, apol, dfaure, #frameworks Cc: #frameworks, #build_system
D8058: don't redefine output dirs on android
mart created this revision. mart added reviewers: apol, dfaure. Restricted Application added projects: Frameworks, Build System. Restricted Application added subscribers: Build System, Frameworks. REVISION SUMMARY on Android the output directories need to stay default or it breaks packaging with make create-apk-target TEST PLAN now apps apk get generated again REPOSITORY R240 Extra CMake Modules BRANCH androidbin REVISION DETAIL https://phabricator.kde.org/D8058 AFFECTED FILES kde-modules/KDECMakeSettings.cmake To: mart, apol, dfaure Cc: #frameworks, #build_system
D8014: Don't animate IconItem in software mode
davidedmundson abandoned this revision. REPOSITORY R242 Plasma Framework (Library) REVISION DETAIL https://phabricator.kde.org/D8014 To: davidedmundson, #plasma, broulik, bcooksley Cc: mart, bcooksley, plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol
D8056: Improve usability of "Open With" dialog by adding option to filter the application tree
simgunz edited the test plan for this revision. simgunz added a reviewer: dfaure. REPOSITORY R241 KIO REVISION DETAIL https://phabricator.kde.org/D8056 To: simgunz, dfaure Cc: #frameworks
D8056: Improve usability of "Open With" dialog by adding option to filter the application tree
simgunz created this revision. Restricted Application added a project: Frameworks. Restricted Application added a subscriber: Frameworks. REVISION SUMMARY The current "open with" dialog implementation does not follow the KDE principle "Simple by default, powerful when needed" for the following reasons: - The current primary goal of the lineedit is to type in a command. Indeed when start typing a drop-down list with command auto-completion appears. Usability problems: - The mentioned drop-down list covers the application tree - It's not possible to search in the application tree, so to find a software it is necessary to guess the category every time My patch changes the behavior as follow: Simple by default: - The primary goal of the lineedit is to be a search box that allows to filter the applications in the tree - The command auto-completion is disabled by default Powerful when needed - The command autocompletion can be turned on by advanced users by selecting the preferred autocompletion mode in the right click context menu of the lineedit (this behavior is quite hidden, and I guess most of the normal users don't even know it's possible (I didn't know it until I dig into the code)) Implementation details: - The application tree filtering is achieved using a subclass of QSortFilterProxyModel - When 3 characters are typed in the search box all the tree is expanded (there should be few matching entries at this point) - When the 3rd character is deleted all the tree is collapsed - In order to be able to filter, it's necessary to fetch all the tree nodes when the model is created, and not on demand as it was before. This is achieved by adding a fetchAll method. Maybe there is a more elegant way. I've tested the implementation, but I'm pretty sure I haven't covered all the possible cases, so a careful testing is necessary. Relevant discussions: https://bugs.kde.org/show_bug.cgi?id=359233 https://forum.kde.org/viewtopic.php?f=285&t=131014 REPOSITORY R241 KIO BRANCH openwithdialog-filter-app-tree REVISION DETAIL https://phabricator.kde.org/D8056 AFFECTED FILES src/widgets/kopenwithdialog.cpp src/widgets/kopenwithdialog_p.h To: simgunz Cc: #frameworks
D8013: Fix FrameSVGItem with the software renderer
davidedmundson abandoned this revision. REPOSITORY R242 Plasma Framework (Library) REVISION DETAIL https://phabricator.kde.org/D8013 To: davidedmundson, #plasma, broulik, bcooksley Cc: bcooksley, plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
KDE CI: Frameworks kirigami kf5-qt5 XenialQt5.7 - Build # 92 - Still Unstable!
BUILD UNSTABLE Build URL https://build.kde.org/job/Frameworks%20kirigami%20kf5-qt5%20XenialQt5.7/92/ Project: Frameworks kirigami kf5-qt5 XenialQt5.7 Date of build: Fri, 29 Sep 2017 09:40:19 + Build duration: 1 min 39 sec and counting JUnit Tests Name: (root) Failed: 1 test(s), Passed: 1 test(s), Skipped: 0 test(s), Total: 2 test(s)Failed: TestSuite.qmltests Cobertura Report Project Coverage Summary Name Cobertura Coverage Report
KDE CI: Frameworks kirigami kf5-qt5 XenialQt5.7 - Build # 91 - Still Unstable!
BUILD UNSTABLE Build URL https://build.kde.org/job/Frameworks%20kirigami%20kf5-qt5%20XenialQt5.7/91/ Project: Frameworks kirigami kf5-qt5 XenialQt5.7 Date of build: Fri, 29 Sep 2017 09:37:39 + Build duration: 2 min 24 sec and counting JUnit Tests Name: (root) Failed: 1 test(s), Passed: 1 test(s), Skipped: 0 test(s), Total: 2 test(s)Failed: TestSuite.qmltests Cobertura Report Project Coverage Summary Name Cobertura Coverage Report
KDE CI: Frameworks kirigami kf5-qt5 FreeBSDQt5.7 - Build # 87 - Still Unstable!
BUILD UNSTABLE Build URL https://build.kde.org/job/Frameworks%20kirigami%20kf5-qt5%20FreeBSDQt5.7/87/ Project: Frameworks kirigami kf5-qt5 FreeBSDQt5.7 Date of build: Fri, 29 Sep 2017 09:37:40 + Build duration: 1 min 5 sec and counting JUnit Tests Name: (root) Failed: 1 test(s), Passed: 0 test(s), Skipped: 0 test(s), Total: 1 test(s)Failed: TestSuite.qmltests
D8014: Don't animate IconItem in software mode
davidedmundson added a comment. @mart Kai did it already. REPOSITORY R242 Plasma Framework (Library) REVISION DETAIL https://phabricator.kde.org/D8014 To: davidedmundson, #plasma, broulik, bcooksley Cc: mart, bcooksley, plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol
D8014: Don't animate IconItem in software mode
mart added inline comments. INLINE COMMENTS > iconitem.cpp:624 > + > +if (QQuickWindow::sceneGraphBackend() == QLatin1String("software")) { > +animated = false; enclose this part with #ifdef on Qt version? REPOSITORY R242 Plasma Framework (Library) REVISION DETAIL https://phabricator.kde.org/D8014 To: davidedmundson, #plasma, broulik, bcooksley Cc: mart, bcooksley, plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol
D8043: KDirWatch : make methods virtual
rjvbb added a comment. OK, my bad, `fsWatcher` is a `KDirWatchPrivate` member, not a global and not a static member either. Apologies for that - but it doesn't change the symptoms I'm seeing. REPOSITORY R244 KCoreAddons REVISION DETAIL https://phabricator.kde.org/D8043 To: rjvbb, #frameworks, mwolff, dfaure Cc: dhaumann, cfeck, dfaure, mwolff, kde-frameworks-devel
KDE CI: Frameworks extra-cmake-modules kf5-qt5 XenialQt5.7 - Build # 48 - Fixed!
BUILD SUCCESS Build URL https://build.kde.org/job/Frameworks%20extra-cmake-modules%20kf5-qt5%20XenialQt5.7/48/ Project: Frameworks extra-cmake-modules kf5-qt5 XenialQt5.7 Date of build: Fri, 29 Sep 2017 08:56:46 + Build duration: 3 min 37 sec and counting Cobertura Report Project Coverage Summary Name Cobertura Coverage Report
KDE CI: Frameworks plasma-framework kf5-qt5 FreeBSDQt5.7 - Build # 124 - Still unstable!
BUILD UNSTABLE Build URL https://build.kde.org/job/Frameworks%20plasma-framework%20kf5-qt5%20FreeBSDQt5.7/124/ Project: Frameworks plasma-framework kf5-qt5 FreeBSDQt5.7 Date of build: Fri, 29 Sep 2017 08:49:12 + Build duration: 10 min and counting JUnit Tests Name: (root) Failed: 1 test(s), Passed: 13 test(s), Skipped: 0 test(s), Total: 14 test(s)Failed: TestSuite.plasma-packagestructuretest
KDE CI: Frameworks plasma-framework kf5-qt5 XenialQt5.7 - Build # 120 - Still Unstable!
BUILD UNSTABLE Build URL https://build.kde.org/job/Frameworks%20plasma-framework%20kf5-qt5%20XenialQt5.7/120/ Project: Frameworks plasma-framework kf5-qt5 XenialQt5.7 Date of build: Fri, 29 Sep 2017 08:49:12 + Build duration: 5 min 6 sec and counting JUnit Tests Name: (root) Failed: 7 test(s), Passed: 8 test(s), Skipped: 0 test(s), Total: 15 test(s)Failed: TestSuite.dialognativetestFailed: TestSuite.plasma-configmodeltestFailed: TestSuite.plasma-dialogqmltestFailed: TestSuite.plasma-fallbackpackagetestFailed: TestSuite.plasma-iconitemtestFailed: TestSuite.plasma-packagestructuretestFailed: TestSuite.plasma-storagetest Cobertura Report Project Coverage Summary Name PackagesFilesClassesLinesConditionalsCobertura Coverage Report86% (6/7)62% (57/92)62% (57/92)38% (3493/9222)26% (1859/7152)Coverage Breakdown by Package Name FilesClassesLinesConditionalsautotests100% (22/22)100% (22/22)76% (607/795)38% (390/1028)src.declarativeimports.core57% (4/7)57% (4/7)28% (246/883)14% (86/620)src.plasma62% (13/21)62% (13/21)40% (1412/3573)29% (773/2697)src.plasma.private46% (11/24)46% (11/24)39% (649/1649)28% (303/1080)src.plasma.scripting0% (0/3)0% (0/3)0% (0/190)0% (0/126)src.plasmaquick50% (6/12)50% (6/12)27% (548/2019)19% (301/1579)src.plasmaquick.private33% (1/3)33% (1/3)27% (31/113)27% (6/22)
D8013: Fix FrameSVGItem with the software renderer
bcooksley reopened this revision. bcooksley added a comment. This revision is now accepted and ready to land. Reopening - This breaks the build with Qt 5.7 based systems, which is the minimum requirement for Frameworks. REPOSITORY R242 Plasma Framework (Library) REVISION DETAIL https://phabricator.kde.org/D8013 To: davidedmundson, #plasma, broulik Cc: bcooksley, plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D8014: Don't animate IconItem in software mode
bcooksley requested changes to this revision. This revision now requires changes to proceed. REPOSITORY R242 Plasma Framework (Library) REVISION DETAIL https://phabricator.kde.org/D8014 To: davidedmundson, #plasma, broulik, bcooksley Cc: bcooksley, plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D8043: KDirWatch : make methods virtual
rjvbb added a comment. Hmmm, I'll double-check. I didn't really go beyond the thought that it seemed to make sense to use a single watcher instance if most of the time you'll be watching items that live on a single disk. > Could it be that QFSW itself uses a single static object internally? In that case it's QSFW that needs to be made threadsafe. That is certainly a possibility, but "needs"? Not everything in Qt is thread-safe that could be. And even if that is done, wouldn't we want to keep KDW working with Qt versions that will never get the patch? QFSW doesn't have an API to add a directory recursively, does it? That's the KDW aspect that got me into this can of worms: doing that with even a not-so-big source tree as KDevelop takes a noticeable amount of time, for the GCC source tree it takes around 80 seconds (on a 2.7Ghz i7 Mac). And during that call the calling thread is kept busy, so in KDevelop this simply locks up the UI - for each project to be opened in turn. The safest and cheapest way I see to avoid this is to add single directories in the thread that also does other things with those directories (building up a project representation, i.e. outside of KDW). The issues I'm seeing without mutex range from lock-ups to import durations that are increased by varying amounts on Mac; the lock-ups occur in the QFSW FSEvents backend. I haven't yet understood that code (or the FSEvents API) enough, but it's quite possible that there's a single instance of something at that level. On Linux I'm getting occasional double-free crashes. The former happens only when I'm adding lots of items in rapid succession (>=2 threads each importing source trees with hundreds of near-empty directories). I've seen the latter happen for more common source trees. > And now that you mention it, I indeed made KDirWatch threadsafe already, at least as far as I could test it on Linux. E.g. KDirWatch::self() is thread-local. Ah, so that's not a single KDW instance, but one for each thread. That still doesn't mean that you can hand off the instance to a different thread that will add a lot of entries to it. My initial idea was also that only the QFSW watcher needed mutex protection but as Milian pointed out, there are other things going on when adding an entry that are probably not thread-safe. REPOSITORY R244 KCoreAddons REVISION DETAIL https://phabricator.kde.org/D8043 To: rjvbb, #frameworks, mwolff, dfaure Cc: dhaumann, cfeck, dfaure, mwolff, kde-frameworks-devel
D8013: Fix FrameSVGItem with the software renderer
bcooksley requested changes to this revision. This revision now requires changes to proceed. REPOSITORY R242 Plasma Framework (Library) REVISION DETAIL https://phabricator.kde.org/D8013 To: davidedmundson, #plasma, broulik, bcooksley Cc: bcooksley, plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D8014: Don't animate IconItem in software mode
bcooksley reopened this revision. bcooksley added a comment. This revision is now accepted and ready to land. Reopening - This breaks the build with Qt 5.7 based systems, which is the minimum requirement for Frameworks. REPOSITORY R242 Plasma Framework (Library) REVISION DETAIL https://phabricator.kde.org/D8014 To: davidedmundson, #plasma, broulik Cc: bcooksley, plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D8043: KDirWatch : make methods virtual
rjvbb added a comment. I did see some symptoms that could only be explained by a memory layout change (and apparently caused by this patch). Shame I didn't notice that before posting (I only tested with recompiled code). Would it be possible to change the name of this virtualised class and use that to make a derived KDirWatch class that just reexports the methods as non-virtual (say with `using`) - would that change the memory layout too (possibly in even more subtle ways)? Anyway, pity. Making the class thread-safe internally will probably come with more overhead because it cannot use knowledge about how it's being used. It does look like KDW could do with an internal overhaul (but maybe what I perceive as an overly complex mess is a result of well-tested optimisation? ;)) Is there a reason a single QFSW instance is shared among all KDirWatch instances, for instance? REPOSITORY R244 KCoreAddons REVISION DETAIL https://phabricator.kde.org/D8043 To: rjvbb, #frameworks, mwolff, dfaure Cc: dhaumann, cfeck, dfaure, mwolff, kde-frameworks-devel
D8043: KDirWatch : make methods virtual
dfaure added a comment. > Using a KDirWatch per thread would still mean that they can be accessing the shared QFSW instance concurrently. Are you sure it's shared? d->fsWatcher isn't static. Could it be that QFSW itself uses a single static object internally? In that case it's QSFW that needs to be made threadsafe. And now that you mention it, I indeed made KDirWatch threadsafe already, at least as far as I could test it on Linux. E.g. KDirWatch::self() is thread-local. REPOSITORY R244 KCoreAddons REVISION DETAIL https://phabricator.kde.org/D8043 To: rjvbb, #frameworks, mwolff, dfaure Cc: dhaumann, cfeck, dfaure, mwolff, kde-frameworks-devel