D14922: Assert if trying to use a KCatalog without a QCoreApplication

2018-08-19 Thread David Faure
dfaure accepted this revision.
dfaure added a comment.
This revision is now accepted and ready to land.


  Qt itself tends to write "QCoreApplication" in such warnings instead of 
Q*Application, but OK.

REPOSITORY
  R249 KI18n

BRANCH
  arcpatch-D14922

REVISION DETAIL
  https://phabricator.kde.org/D14922

To: aacid, dfaure
Cc: dfaure, ltoscano, ilic, kde-frameworks-devel, michaelh, ngraham, bruns


D14908: Bindings: Add support for scoped enums

2018-08-19 Thread Stefan Brüns
bruns added a comment.


  This raises the minimum requirement to LLVM 5.0:
  http://releases.llvm.org/5.0.0/tools/clang/docs/ReleaseNotes.html
  LLVM 5.0 was released 2017-09-07:
  http://lists.llvm.org/pipermail/llvm-announce/2017-September/75.html

REPOSITORY
  R240 Extra CMake Modules

REVISION DETAIL
  https://phabricator.kde.org/D14908

To: bruns, #frameworks
Cc: mpyne, kde-frameworks-devel, kde-buildsystem, michaelh, ngraham, bruns


D11470: SQL: various improvements and fix if/case/loop/end detection with SQL (Oracle)

2018-08-19 Thread jonathan poelen
This revision was automatically updated to reflect the committed changes.
Closed by commit R216:3ebb3c09e512: SQL: various improvements and fix 
if/case/loop/end detection with SQL (Oracle) (authored by jpoelen).

CHANGED PRIOR TO COMMIT
  https://phabricator.kde.org/D11470?vs=32861=40010#toc

REPOSITORY
  R216 Syntax Highlighting

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D11470?vs=32861=40010

REVISION DETAIL
  https://phabricator.kde.org/D11470

AFFECTED FILES
  autotests/folding/test.sql.fold
  autotests/folding/test.sql_oracle.fold
  autotests/html/test.sql.html
  autotests/html/test.sql_oracle.html
  autotests/input/test.sql
  autotests/input/test.sql_oracle
  autotests/reference/test.sql.ref
  autotests/reference/test.sql_oracle.ref
  data/syntax/sql-mysql.xml
  data/syntax/sql-oracle.xml
  data/syntax/sql-postgresql.xml
  data/syntax/sql.xml

To: jpoelen, #framework_syntax_highlighting, dhaumann, cullmann
Cc: kwrite-devel, kde-frameworks-devel, cullmann, rkflx, michaelh, kevinapavew, 
ngraham, bruns, demsking, sars, dhaumann


D14603: SCSS: update syntax. CSS: fix Operator and Selector Tag highlighting

2018-08-19 Thread jonathan poelen
jpoelen added a comment.


  Yes, my compilation folder was pointing to my fork on github  from which I 
make the patches (as I do not have the right version for ECM, I have a script 
that does among other things a new CMakeLists.txt in another folder and adds 
symbolic links for project files). If there was no more error it was because I 
saw them in the conflicts.
  
  Currently I put `find_package (ECM 5.31.0 ...` (instead of 5.49.0) and delete 
`include (ECMAddQch)` which I think should be in `if (BUILD_QCH)`.

REPOSITORY
  R216 Syntax Highlighting

REVISION DETAIL
  https://phabricator.kde.org/D14603

To: jpoelen, #framework_syntax_highlighting, dhaumann, vkrause, cullmann
Cc: cullmann, kwrite-devel, dhaumann, kde-frameworks-devel, 
#framework_syntax_highlighting, michaelh, kevinapavew, ngraham, bruns, 
demsking, sars


D14779: Fix 'kformattest fails with installed kcoreaddons language package'

2018-08-19 Thread Albert Astals Cid
aacid added a comment.


  Can you please replace your setLocale call in initTestCase for
  
  void initLocale()
  {
  
setenv("LC_ALL", "en_US.utf-8", 1);
  
  }
  Q_CONSTRUCTOR_FUNCTION(initLocale)
  
  This should make it work (or at least it does here)

REPOSITORY
  R244 KCoreAddons

REVISION DETAIL
  https://phabricator.kde.org/D14779

To: habacker, #frameworks
Cc: aacid, kde-frameworks-devel, michaelh, ngraham, bruns


Re: KDE CI: Frameworks kservice kf5-qt5 WindowsMSVCQt5.10 - Build # 41 - Still unstable!

2018-08-19 Thread Ben Cooksley
On Sun, Aug 19, 2018 at 10:29 PM David Faure  wrote:
>
> On lundi 13 août 2018 11:08:24 CEST Ben Cooksley wrote:
> > Hi David,
> >
> > Unfortunately it doesn't look like the fix we put in place on Saturday did
> > the trick.
> >
> > I have a feeling that QStandardPaths on Windows at least will also consider
> > the Qt install prefix in addition to the local to the executable paths when
> > searching for mime information. That would explain why the other tests are
> > working and why making that change didn't fix it.
>
> Damn, by now I forgot which change we made for that particular test ;-)
>
> The thing is, Qt has its own builtin copy of freedesktop.org.xml so
> QMimeDatabase just works. (So it's not even about the Qt install prefix, Qt
> doesn't install any of this, it's a qrc built into QtCore).
>
> > Any ideas why this still fails?
>
> This test is trying to actually find the mimetype xml files on disk in order
> to build the sycoca database (mime->apps mapping). For this, the XML embedded
> into QtCore is completely useless, we need the actual shared-mime-info
> installed somewhere  where we can find it with QStandardPaths.
>
> How is this usually solved on Windows?
>
> Ah, now I think I remember the change we made: copying the mime stuff to
> data/mime. Well, given the above, it still sounds like the right fix, but I
> wonder what we're actually copying. Is there a data/mime/text/plain.xml
> for instance?
>
> Hmm, actually this fails finding the dir in the first place.
> QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, "mime",
> QStandardPaths::LocateDirectory);
> should really find \data\mime on Windows, there's no doubt
> about that, so I'm wondering if the copying of data\mime happens correctly and
> ends up in the right place?

The copying is currently grabbing it from the system install provided
by Craft (at C:\Craft\CI\windows-msvc2017_64-cl-debug\bin\data) and
copying it to the local application install directory (at
$WORKSPACE\install-prefix\bin\data). The copy is done for the whole of
bin\data\ so it should grab everything.

My guess is that instead of copying it to the install prefix it needs
to go to $WORKSPACE\build\bin\data\?
(I thought the ECM stuff handled this though)

>
> --
> David Faure, fa...@kde.org, http://www.davidfaure.fr
> Working on KDE Frameworks 5
>
>
>

Cheers,
Ben


KDE CI: Frameworks syntax-highlighting kf5-qt5 SUSEQt5.9 - Build # 108 - Fixed!

2018-08-19 Thread CI System
BUILD SUCCESS
 Build URL
https://build.kde.org/job/Frameworks%20syntax-highlighting%20kf5-qt5%20SUSEQt5.9/108/
 Project:
Frameworks syntax-highlighting kf5-qt5 SUSEQt5.9
 Date of build:
Sun, 19 Aug 2018 16:07:36 +
 Build duration:
1 min 49 sec and counting
   JUnit Tests
  Name: (root) Failed: 0 test(s), Passed: 9 test(s), Skipped: 0 test(s), Total: 9 test(s)
   Cobertura Report
  
   Project Coverage Summary
  
   Name
  PackagesFilesClassesLinesConditionalsCobertura Coverage Report60%
(3/5)85%
(34/40)85%
(34/40)80%
(2485/3099)68%
(1732/2555)Coverage Breakdown by Package
Name
   FilesClassesLinesConditionalsautotests100%
(8/8)100%
(8/8)98%
(599/613)61%
(344/560)examples0%
(0/2)0%
(0/2)0%
(0/193)0%
(0/98)src.cli0%
(0/1)0%
(0/1)0%
(0/67)0%
(0/30)src.indexer100%
(1/1)100%
(1/1)76%
(179/236)76%
(153/202)src.lib89%
(25/28)89%
(25/28)86%
(1707/1990)74%
(1235/1665)

KDE CI: Frameworks syntax-highlighting kf5-qt5 SUSEQt5.10 - Build # 164 - Fixed!

2018-08-19 Thread CI System
BUILD SUCCESS
 Build URL
https://build.kde.org/job/Frameworks%20syntax-highlighting%20kf5-qt5%20SUSEQt5.10/164/
 Project:
Frameworks syntax-highlighting kf5-qt5 SUSEQt5.10
 Date of build:
Sun, 19 Aug 2018 16:07:36 +
 Build duration:
1 min 45 sec and counting
   JUnit Tests
  Name: (root) Failed: 0 test(s), Passed: 9 test(s), Skipped: 0 test(s), Total: 9 test(s)
   Cobertura Report
  
   Project Coverage Summary
  
   Name
  PackagesFilesClassesLinesConditionalsCobertura Coverage Report60%
(3/5)85%
(34/40)85%
(34/40)80%
(2485/3099)68%
(1732/2555)Coverage Breakdown by Package
Name
   FilesClassesLinesConditionalsautotests100%
(8/8)100%
(8/8)98%
(599/613)61%
(344/560)examples0%
(0/2)0%
(0/2)0%
(0/193)0%
(0/98)src.cli0%
(0/1)0%
(0/1)0%
(0/67)0%
(0/30)src.indexer100%
(1/1)100%
(1/1)76%
(179/236)76%
(153/202)src.lib89%
(25/28)89%
(25/28)86%
(1707/1990)74%
(1235/1665)

D14603: SCSS: update syntax. CSS: fix Operator and Selector Tag highlighting

2018-08-19 Thread Christoph Cullmann
This revision was automatically updated to reflect the committed changes.
Closed by commit R216:ee8969a8437f: fix reference files empty lines have 
different attributes after the fixes to… (authored by cullmann).

CHANGED PRIOR TO COMMIT
  https://phabricator.kde.org/D14603?vs=40004=40006#toc

REPOSITORY
  R216 Syntax Highlighting

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14603?vs=40004=40006

REVISION DETAIL
  https://phabricator.kde.org/D14603

AFFECTED FILES
  autotests/reference/highlight.css.ref
  autotests/reference/highlight.scss.ref
  autotests/reference/review128925-1.css.ref
  autotests/reference/review128925-2.css.ref
  autotests/reference/test.css.ref

To: jpoelen, #framework_syntax_highlighting, dhaumann, vkrause, cullmann
Cc: cullmann, kwrite-devel, dhaumann, kde-frameworks-devel, 
#framework_syntax_highlighting, michaelh, kevinapavew, ngraham, bruns, 
demsking, sars


D14603: SCSS: update syntax. CSS: fix Operator and Selector Tag highlighting

2018-08-19 Thread Christoph Cullmann
cullmann reopened this revision.
cullmann added a comment.
This revision is now accepted and ready to land.


  The unit tests fail du to errors like:
  
  -
  -
  +
  +
  
  Could it be your local version wasn't up to date?
  I will regen the references, I see only empty lines change their attributes.

REPOSITORY
  R216 Syntax Highlighting

REVISION DETAIL
  https://phabricator.kde.org/D14603

To: jpoelen, #framework_syntax_highlighting, dhaumann, vkrause, cullmann
Cc: cullmann, kwrite-devel, dhaumann, kde-frameworks-devel, 
#framework_syntax_highlighting, michaelh, kevinapavew, ngraham, bruns, 
demsking, sars


D14922: Assert if trying to use a KCatalog without a QCoreApplication

2018-08-19 Thread Albert Astals Cid
aacid updated this revision to Diff 40005.
aacid added a comment.


  Use Q_ASSERT_X

REPOSITORY
  R249 KI18n

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14922?vs=39980=40005

BRANCH
  arcpatch-D14922

REVISION DETAIL
  https://phabricator.kde.org/D14922

AFFECTED FILES
  src/kcatalog.cpp

To: aacid
Cc: dfaure, ltoscano, ilic, kde-frameworks-devel, michaelh, ngraham, bruns


KDE CI: Frameworks syntax-highlighting kf5-qt5 SUSEQt5.9 - Build # 107 - Unstable!

2018-08-19 Thread CI System
BUILD UNSTABLE
 Build URL
https://build.kde.org/job/Frameworks%20syntax-highlighting%20kf5-qt5%20SUSEQt5.9/107/
 Project:
Frameworks syntax-highlighting kf5-qt5 SUSEQt5.9
 Date of build:
Sun, 19 Aug 2018 15:50:51 +
 Build duration:
5 min 18 sec and counting
   JUnit Tests
  Name: (root) Failed: 1 test(s), Passed: 8 test(s), Skipped: 0 test(s), Total: 9 test(s)Failed: TestSuite.testhighlighter_test
   Cobertura Report
  
   Project Coverage Summary
  
   Name
  PackagesFilesClassesLinesConditionalsCobertura Coverage Report60%
(3/5)85%
(34/40)85%
(34/40)80%
(2485/3099)68%
(1733/2555)Coverage Breakdown by Package
Name
   FilesClassesLinesConditionalsautotests100%
(8/8)100%
(8/8)98%
(599/613)62%
(345/560)examples0%
(0/2)0%
(0/2)0%
(0/193)0%
(0/98)src.cli0%
(0/1)0%
(0/1)0%
(0/67)0%
(0/30)src.indexer100%
(1/1)100%
(1/1)76%
(179/236)76%
(153/202)src.lib89%
(25/28)89%
(25/28)86%
(1707/1990)74%
(1235/1665)

KDE CI: Frameworks syntax-highlighting kf5-qt5 SUSEQt5.10 - Build # 163 - Unstable!

2018-08-19 Thread CI System
BUILD UNSTABLE
 Build URL
https://build.kde.org/job/Frameworks%20syntax-highlighting%20kf5-qt5%20SUSEQt5.10/163/
 Project:
Frameworks syntax-highlighting kf5-qt5 SUSEQt5.10
 Date of build:
Sun, 19 Aug 2018 15:50:51 +
 Build duration:
5 min 40 sec and counting
   JUnit Tests
  Name: (root) Failed: 1 test(s), Passed: 8 test(s), Skipped: 0 test(s), Total: 9 test(s)Failed: TestSuite.testhighlighter_test
   Cobertura Report
  
   Project Coverage Summary
  
   Name
  PackagesFilesClassesLinesConditionalsCobertura Coverage Report60%
(3/5)85%
(34/40)85%
(34/40)80%
(2485/3099)68%
(1733/2555)Coverage Breakdown by Package
Name
   FilesClassesLinesConditionalsautotests100%
(8/8)100%
(8/8)98%
(599/613)62%
(345/560)examples0%
(0/2)0%
(0/2)0%
(0/193)0%
(0/98)src.cli0%
(0/1)0%
(0/1)0%
(0/67)0%
(0/30)src.indexer100%
(1/1)100%
(1/1)76%
(179/236)76%
(153/202)src.lib89%
(25/28)89%
(25/28)86%
(1707/1990)74%
(1235/1665)

D14603: SCSS: update syntax. CSS: fix Operator and Selector Tag highlighting

2018-08-19 Thread jonathan poelen
This revision was automatically updated to reflect the committed changes.
Closed by commit R216:113ebe28645a: SCSS: update syntax. CSS: fix Operator and 
Selector Tag highlighting (authored by jpoelen).

CHANGED PRIOR TO COMMIT
  https://phabricator.kde.org/D14603?vs=39067=40004#toc

REPOSITORY
  R216 Syntax Highlighting

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14603?vs=39067=40004

REVISION DETAIL
  https://phabricator.kde.org/D14603

AFFECTED FILES
  autotests/folding/highlight.scss.fold
  autotests/html/highlight.css.html
  autotests/html/highlight.scss.html
  autotests/html/review128925-1.scss.html
  autotests/html/review128925-2.scss.html
  autotests/input/highlight.scss
  autotests/reference/highlight.css.ref
  autotests/reference/highlight.scss.ref
  autotests/reference/review128925-1.scss.ref
  autotests/reference/review128925-2.css.ref
  autotests/reference/review128925-2.scss.ref
  autotests/reference/test.css.ref
  data/syntax/css.xml
  data/syntax/scss.xml

To: jpoelen, #framework_syntax_highlighting, dhaumann, vkrause, cullmann
Cc: cullmann, kwrite-devel, dhaumann, kde-frameworks-devel, 
#framework_syntax_highlighting, michaelh, kevinapavew, ngraham, bruns, 
demsking, sars


D11604: kdirlistertest doesn't fail at random

2018-08-19 Thread Jaime Torres Amate
This revision was automatically updated to reflect the committed changes.
Closed by commit R241:0c8cd4076b7d: kdirlistertest doesnt fail at random 
(authored by jtamate).

REPOSITORY
  R241 KIO

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D11604?vs=39991=3

REVISION DETAIL
  https://phabricator.kde.org/D11604

AFFECTED FILES
  autotests/kdirlistertest.cpp
  autotests/kdirlistertest.h

To: jtamate, #frameworks, dfaure
Cc: kde-frameworks-devel, apol, michaelh, ngraham, bruns


Re: purpose unittests on Windows

2018-08-19 Thread Ben Cooksley
On Sun, 19 Aug 2018, 12:19 David Faure,  wrote:

> On lundi 13 août 2018 11:06:12 CEST Ben Cooksley wrote:
> > On Mon, Aug 13, 2018 at 1:16 AM David Faure  wrote:
> > > On samedi 11 août 2018 07:02:18 CEST Ben Cooksley wrote:
> > > > On Fri, Aug 10, 2018 at 7:28 PM David Faure  wrote:
> > > > > Any idea why purpose can't find the KIO http and file protocols --
> on
> > > > > Windows?
> > > > >
> > > > >
> https://build.kde.org/view/Frameworks/job/Frameworks%20purpose%20kf5-q
> > > > > t5%2
> > > > >
> 0WindowsMSVCQt5.10/76/testReport/junit/(root)/TestSuite/alternativesmo
> > > > > delt
> > > > > est/
> > > > >
> > > > > That's very odd, because the dependency from purpose on kio is
> there
> > > > > in
> > > > > kde-build-metadata (it wouldn't build otherwise), and using
> kio_file
> > > > > from
> > > > > other frameworks surely works (e.g. in KParts).
> > > > >
> > > > > The lookup for protocols looks for "kf5/kio" under all Qt plugin
> > > > > directories, i.e. $QT_PLUGIN_PATH.
> > > > >
> > > > > The CI log says
> > > > > QT_PLUGIN_PATH= 'C:\CI\workspace\Frameworks purpose
> > > > > kf5-qt5
> > > > >
> WindowsMSVCQt5.10\install-prefix\lib\plugins;C:\Craft\CI\windows-msvc2
> > > > > 017
> > > > > _64-cl-debug\lib\qca-qt5'
> > > > >
> > > > > => is there a kf5\kio subdir in C:\CI\workspace\Frameworks purpose
> > > > > kf5-qt5
> > > > > WindowsMSVCQt5.10\install-prefix\lib\plugins ?
> > > >
> > > > I've checked and the following seem to be present in that directory,
> > > > which looks correct to me:
> > > >
> > > > ModeLastWriteTime Length Name
> > > > - -- 
> > > > -a8/10/2018   8:39 PM 274944 file.dll
> > > > -a8/10/2018   8:40 PM 352256 ftp.dll
> > > > -a8/10/2018   8:40 PM 185856 ghelp.dll
> > > > -a8/10/2018   8:39 PM 185856 help.dll
> > > > -a8/10/2018   8:45 PM 946688 http.dll
> > > > -a8/10/2018   8:40 PM 189440 remote.dll
> > > > -a8/10/2018   8:40 PM 122880 trash.dll
> > > >
> > > > Is there any debug output we can enable to see how it is searching
> for
> > > > the plugins?
> > >
> > > I have now added debug output to kcoreaddons and kio, and the result
> is:
> > > Checking for plugins in ("C:/CI/workspace/Frameworks purpose
> kf5-qt5
> > > WindowsMSVCQt5.10/build/bin/kf5/kio",
> > > "C:/Craft/CI/windows-msvc2017_64-cl-debug/plugins/kf5/kio")>
> > > This list doesn't include the above directory,
> C:\CI\workspace\Frameworks
> > > purpose kf5-qt5 WindowsMSVCQt5.10\install-prefix\lib\plugins.
> > >
> > > Yet, ECMAddTests.cmake adds to QT_PLUGIN_PATH, it doesn't overwrite
> it...
> > > I wonder if set(PATHSEP "\\;") is correct though (why double
> backslash?)
> > > QCoreApplication::libraryPaths reads that env var and splits it using
> > > QDir::listSeparator() which is ';' on Windows. Kevin, any reason for
> the
> > > backslash?
> > > Do you see any other reason for this to fail, otherwise?
> >
> > Hi all,
> >
> > I've done some investigation work on this on the CI system this
> > morning and it seems that it isn't even necessary to set
> > QT_PLUGIN_PATH within ECMAddTests (at least on Windows anyway)
>
> I'm confused. Do you mean that *NOT* setting QT_PLUGIN_PATH actually fixes
> the
> finding of kio_file, while setting that env var (as in the CI) breaks
> finding
> it?
> I can't make sense of that, because QCoreApplication::libraryPaths only
> *adds*
> the contents of QT_PLUGIN_PATH into the list of dirs, it doesn't replace
> or
> remove anything...
>


Sorry - not setting QT_PLUGIN_PATH in the CMake code makes it work.

The CI Tooling sets it when it runs so leaving that undisturbed seems to
make it happy.


> > QDEBUG : AlternativesModelTest::bigBufferTest() org.kde.kcoreaddons:
> > Checking for plugins in ("C:/CI/workspace/Frameworks purpose kf5-qt5
> > WindowsMSVCQt5.10/install-prefix/lib/plugins/kf5/kio",
> > "C:/Craft/CI/windows-msvc2017_64-cl-debug/lib/qca-qt5/kf5/kio",
> > "C:/Craft/CI/windows-msvc2017_64-cl-debug/plugins/kf5/kio",
> > "C:/CI/workspace/Frameworks purpose kf5-qt5
> > WindowsMSVCQt5.10/build/bin/kf5/kio")
>
> That's definitely more search paths than what CI currently shows:
>
> Checking for plugins in ("C:/CI/workspace/Frameworks purpose kf5-qt5
> WindowsMSVCQt5.10/build/bin/kf5/kio", "C:/Craft/CI/windows-msvc2017_64-cl-
> debug/plugins/kf5/kio")
>

Yep. That is the additional ones the CI sets.


> > QDEBUG : AlternativesModelTest::bigBufferTest() kf5.kio.core:
> > "C:/CI/workspace/Frameworks purpose kf5-qt5
> > WindowsMSVCQt5.10/install-prefix/lib/plugins/kf5/kio/file.dll"
> > supports protocols ("file")
>
> That's success indeed.
>
> > Unfortunately doing this doesn't fix the test as it's unable to find
> > kioslave.exe, even though it exists in $workspace/install-prefix/bin/
> > so not sure what's happening there:
> > " Can not find 

D14893: [recentdocuments:/] Filter out files that can't be browsed with a file manager

2018-08-19 Thread Mark Gaiser
markg added a comment.


  It "looks" oke to me, but i don't know this code one bit.

INLINE COMMENTS

> recentdocuments.cpp:82-83
> +if (urlInside.scheme() == "recentdocuments"
> +// Filter out things that can't be viewed in a file 
> manager because they don't
> +// meet the user definition of a file for the purpose of 
> "recently accessed files"
> +|| !KProtocolManager::supportsListing(urlInside)

Comments inside a multi-line if statement! Unheard of!
Please move that to a more appropriate place.

REPOSITORY
  R320 KIO Extras

REVISION DETAIL
  https://phabricator.kde.org/D14893

To: ngraham, broulik, #dolphin, #frameworks
Cc: markg


D14927: KConfig: handle directory symlinks correctly.

2018-08-19 Thread David Faure
dfaure created this revision.
dfaure added reviewers: adridg, arichardson.
Herald added a project: Frameworks.
Herald edited subscribers, added: kde-frameworks-devel; removed: Frameworks.
dfaure requested review of this revision.

REVISION SUMMARY
  When /home is a symlink, for instance (as is often the case on FreeBSD),
  group deletion would fail because KConfig was comparing non-canonical
  paths with canonical-paths:
  
  QDEBUG : KConfigTest::testDelete() Comparing "/home/adridg/.qttest/config/
  kconfigtest_subdir/kconfigtest" and "/usr/home/adridg/.qttest/config/
  kconfigtest_subdir/kconfigtest"

TEST PLAN
  mkdir /tmp/derp; ln -s /tmp/derp /tmp/drop
  HOME=/tmp/derp bin/kconfigtest testDelete  # Success
  HOME=/tmp/drop bin/kconfigtest testDelete  # Fail

REPOSITORY
  R237 KConfig

BRANCH
  master

REVISION DETAIL
  https://phabricator.kde.org/D14927

AFFECTED FILES
  src/core/kconfig.cpp

To: dfaure, adridg, arichardson
Cc: kde-frameworks-devel, michaelh, ngraham, bruns


Re: KDE CI: Frameworks kservice kf5-qt5 WindowsMSVCQt5.10 - Build # 41 - Still unstable!

2018-08-19 Thread David Faure
On lundi 13 août 2018 11:08:24 CEST Ben Cooksley wrote:
> Hi David,
> 
> Unfortunately it doesn't look like the fix we put in place on Saturday did
> the trick.
> 
> I have a feeling that QStandardPaths on Windows at least will also consider
> the Qt install prefix in addition to the local to the executable paths when
> searching for mime information. That would explain why the other tests are
> working and why making that change didn't fix it.

Damn, by now I forgot which change we made for that particular test ;-)

The thing is, Qt has its own builtin copy of freedesktop.org.xml so 
QMimeDatabase just works. (So it's not even about the Qt install prefix, Qt 
doesn't install any of this, it's a qrc built into QtCore).
 
> Any ideas why this still fails?

This test is trying to actually find the mimetype xml files on disk in order 
to build the sycoca database (mime->apps mapping). For this, the XML embedded 
into QtCore is completely useless, we need the actual shared-mime-info 
installed somewhere  where we can find it with QStandardPaths.

How is this usually solved on Windows?

Ah, now I think I remember the change we made: copying the mime stuff to 
data/mime. Well, given the above, it still sounds like the right fix, but I 
wonder what we're actually copying. Is there a data/mime/text/plain.xml
for instance?

Hmm, actually this fails finding the dir in the first place.
QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, "mime", 
QStandardPaths::LocateDirectory);
should really find \data\mime on Windows, there's no doubt 
about that, so I'm wondering if the copying of data\mime happens correctly and 
ends up in the right place?

-- 
David Faure, fa...@kde.org, http://www.davidfaure.fr
Working on KDE Frameworks 5





Re: purpose unittests on Windows

2018-08-19 Thread David Faure
On lundi 13 août 2018 11:06:12 CEST Ben Cooksley wrote:
> On Mon, Aug 13, 2018 at 1:16 AM David Faure  wrote:
> > On samedi 11 août 2018 07:02:18 CEST Ben Cooksley wrote:
> > > On Fri, Aug 10, 2018 at 7:28 PM David Faure  wrote:
> > > > Any idea why purpose can't find the KIO http and file protocols -- on
> > > > Windows?
> > > > 
> > > > https://build.kde.org/view/Frameworks/job/Frameworks%20purpose%20kf5-q
> > > > t5%2
> > > > 0WindowsMSVCQt5.10/76/testReport/junit/(root)/TestSuite/alternativesmo
> > > > delt
> > > > est/
> > > > 
> > > > That's very odd, because the dependency from purpose on kio is there
> > > > in
> > > > kde-build-metadata (it wouldn't build otherwise), and using kio_file
> > > > from
> > > > other frameworks surely works (e.g. in KParts).
> > > > 
> > > > The lookup for protocols looks for "kf5/kio" under all Qt plugin
> > > > directories, i.e. $QT_PLUGIN_PATH.
> > > > 
> > > > The CI log says
> > > > QT_PLUGIN_PATH= 'C:\CI\workspace\Frameworks purpose
> > > > kf5-qt5
> > > > WindowsMSVCQt5.10\install-prefix\lib\plugins;C:\Craft\CI\windows-msvc2
> > > > 017
> > > > _64-cl-debug\lib\qca-qt5'
> > > > 
> > > > => is there a kf5\kio subdir in C:\CI\workspace\Frameworks purpose
> > > > kf5-qt5
> > > > WindowsMSVCQt5.10\install-prefix\lib\plugins ?
> > > 
> > > I've checked and the following seem to be present in that directory,
> > > which looks correct to me:
> > > 
> > > ModeLastWriteTime Length Name
> > > - -- 
> > > -a8/10/2018   8:39 PM 274944 file.dll
> > > -a8/10/2018   8:40 PM 352256 ftp.dll
> > > -a8/10/2018   8:40 PM 185856 ghelp.dll
> > > -a8/10/2018   8:39 PM 185856 help.dll
> > > -a8/10/2018   8:45 PM 946688 http.dll
> > > -a8/10/2018   8:40 PM 189440 remote.dll
> > > -a8/10/2018   8:40 PM 122880 trash.dll
> > > 
> > > Is there any debug output we can enable to see how it is searching for
> > > the plugins?
> > 
> > I have now added debug output to kcoreaddons and kio, and the result is:
> > Checking for plugins in ("C:/CI/workspace/Frameworks purpose kf5-qt5
> > WindowsMSVCQt5.10/build/bin/kf5/kio",
> > "C:/Craft/CI/windows-msvc2017_64-cl-debug/plugins/kf5/kio")> 
> > This list doesn't include the above directory, C:\CI\workspace\Frameworks
> > purpose kf5-qt5 WindowsMSVCQt5.10\install-prefix\lib\plugins.
> > 
> > Yet, ECMAddTests.cmake adds to QT_PLUGIN_PATH, it doesn't overwrite it...
> > I wonder if set(PATHSEP "\\;") is correct though (why double backslash?)
> > QCoreApplication::libraryPaths reads that env var and splits it using
> > QDir::listSeparator() which is ';' on Windows. Kevin, any reason for the
> > backslash?
> > Do you see any other reason for this to fail, otherwise?
> 
> Hi all,
> 
> I've done some investigation work on this on the CI system this
> morning and it seems that it isn't even necessary to set
> QT_PLUGIN_PATH within ECMAddTests (at least on Windows anyway)

I'm confused. Do you mean that *NOT* setting QT_PLUGIN_PATH actually fixes the 
finding of kio_file, while setting that env var (as in the CI) breaks finding 
it?
I can't make sense of that, because QCoreApplication::libraryPaths only *adds* 
the contents of QT_PLUGIN_PATH into the list of dirs, it doesn't replace or 
remove anything...
 
> QDEBUG : AlternativesModelTest::bigBufferTest() org.kde.kcoreaddons:
> Checking for plugins in ("C:/CI/workspace/Frameworks purpose kf5-qt5
> WindowsMSVCQt5.10/install-prefix/lib/plugins/kf5/kio",
> "C:/Craft/CI/windows-msvc2017_64-cl-debug/lib/qca-qt5/kf5/kio",
> "C:/Craft/CI/windows-msvc2017_64-cl-debug/plugins/kf5/kio",
> "C:/CI/workspace/Frameworks purpose kf5-qt5
> WindowsMSVCQt5.10/build/bin/kf5/kio")

That's definitely more search paths than what CI currently shows:

Checking for plugins in ("C:/CI/workspace/Frameworks purpose kf5-qt5 
WindowsMSVCQt5.10/build/bin/kf5/kio", "C:/Craft/CI/windows-msvc2017_64-cl-
debug/plugins/kf5/kio")

> QDEBUG : AlternativesModelTest::bigBufferTest() kf5.kio.core:
> "C:/CI/workspace/Frameworks purpose kf5-qt5
> WindowsMSVCQt5.10/install-prefix/lib/plugins/kf5/kio/file.dll"
> supports protocols ("file")

That's success indeed.
 
> Unfortunately doing this doesn't fix the test as it's unable to find
> kioslave.exe, even though it exists in $workspace/install-prefix/bin/
> so not sure what's happening there:
> " Can not find 'kioslave' executable at 'C:/CI/workspace/Frameworks purpose
> kf5-qt5 WindowsMSVCQt5.10/build/bin,
> C:/Craft/CI/windows-msvc2017_64-cl-debug/bin,
> C:/CI/workspace/Frameworks kio kf5-qt5
> WindowsMSVCQt5.10/install-prefix/bin'"

According to the last entry in this path, it's looking into the install prefix 
for *KIO*, which is indeed where I would expect kioslave.exe to be.
But you're saying below that somehow kioslave.exe ends up in the install 
prefix for 

D11604: kdirlistertest doesn't fail at random

2018-08-19 Thread David Faure
dfaure accepted this revision.
dfaure added a comment.
This revision is now accepted and ready to land.


  Those comments were all for a single line of code ;)
  But yes, your last change is exactly what I meant. "wait for nothing" is when 
waiting for a spy to get to 0.
  The line above that waits for it to get to 1, so TRY_ makes sense there.
  
  Thanks!

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D11604

To: jtamate, #frameworks, dfaure
Cc: kde-frameworks-devel, apol, michaelh, ngraham, bruns


D11604: kdirlistertest doesn't fail at random

2018-08-19 Thread Jaime Torres Amate
jtamate updated this revision to Diff 39991.
jtamate marked an inline comment as done.
jtamate added a comment.


  I'm never sure at how many lines the comments affects, but the last one 
should be:
  
QTRY_COMPARE(m_dirLister.spyClear.count(), 1);
QCOMPARE(m_dirLister.spyClearQUrl.count(), 0);
  
  Otherwise the test fails for me.

REPOSITORY
  R241 KIO

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D11604?vs=39990=39991

REVISION DETAIL
  https://phabricator.kde.org/D11604

AFFECTED FILES
  autotests/kdirlistertest.cpp
  autotests/kdirlistertest.h

To: jtamate, #frameworks, dfaure
Cc: kde-frameworks-devel, apol, michaelh, ngraham, bruns


D11604: kdirlistertest doesn't fail at random

2018-08-19 Thread David Faure
dfaure requested changes to this revision.
dfaure added a comment.
This revision now requires changes to proceed.


  Thanks. Almost there :-)

INLINE COMMENTS

> kdirlistertest.cpp:658
> +QTRY_COMPARE(dirLister2.spyStarted.count(), 1);
>  QCOMPARE(dirLister2.spyCompleted.count(), 1);
>  QCOMPARE(dirLister2.spyCompletedQUrl.count(), 1);

*That* one should probably be a QTRY_COMPARE, since dirLister2 will first emit 
started, and then completed later.

> kdirlistertest.cpp:1121
> +QTRY_VERIFY(m_dirLister.isFinished());
> +QTRY_VERIFY(m_items.isEmpty());
>  

No TRY_ here.

> kdirlistertest.cpp:1197
> +QTRY_VERIFY(m_dirLister.isFinished());
> +QTRY_COMPARE(m_items.count(), 0);
> +QTRY_COMPARE(m_dirLister.spyItemsDeleted.count(), 1);

No TRY_ here

> kdirlistertest.cpp:1292
> +QTRY_COMPARE(m_dirLister.spyClear.count(), 1);
> +QTRY_COMPARE(m_dirLister.spyClearQUrl.count(), 0);
>  QList deletedUrls;

No TRY_ here, we can't "wait for nothing to happen" ;)

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D11604

To: jtamate, #frameworks, dfaure
Cc: kde-frameworks-devel, apol, michaelh, ngraham, bruns


D11604: kdirlistertest doesn't fail at random

2018-08-19 Thread Jaime Torres Amate
jtamate updated this revision to Diff 39990.
jtamate marked 11 inline comments as done.
jtamate added a comment.


  Fixed the inline comments.

REPOSITORY
  R241 KIO

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D11604?vs=39836=39990

REVISION DETAIL
  https://phabricator.kde.org/D11604

AFFECTED FILES
  autotests/kdirlistertest.cpp
  autotests/kdirlistertest.h

To: jtamate, #frameworks, dfaure
Cc: kde-frameworks-devel, apol, michaelh, ngraham, bruns


D14922: Assert if trying to use a KCatalog without a QCoreApplication

2018-08-19 Thread David Faure
dfaure added inline comments.

INLINE COMMENTS

> kcatalog.cpp:188
>  if (language != currentLanguage || !bindDone) {
> +Q_ASSERT(QCoreApplication::instance() && "You need to instantiate a 
> Q*Application before using KCatalog");
> +if (!QCoreApplication::instance()) {

Q_ASSERT_X exists for this purpose

REPOSITORY
  R249 KI18n

REVISION DETAIL
  https://phabricator.kde.org/D14922

To: aacid
Cc: dfaure, ltoscano, ilic, kde-frameworks-devel, michaelh, ngraham, bruns