Feed Advanced Search

Mar 10 2019

mwolff added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.

Rene, instead of thinking about what-ifs, maybe try it out first? Most notably, the tooltips only show up when you press ALT and keep it pressed. Otherwise, the tooltips don't show up - unless you hover code with your mouse cursor. Moving the keyboard edit cursor won't ever trigger tooltips. Or are you somehow moving your mouse cursor while typing?! Don't do that :)

Mar 10 2019, 6:56 PM · KDevelop

Mar 7 2019

davispuh added a comment to D19457: Resurrect kdev-java.

ehhh, damn arc land, I didn't knew it will squash commits, oh well...

Mar 7 2019, 9:43 PM · KDevelop
davispuh closed D19457: Resurrect kdev-java.
Mar 7 2019, 9:36 PM · KDevelop

Mar 6 2019

brauch added a comment to D19457: Resurrect kdev-java.

FWIW kdev-java was to my knowledge never really working. I think at some point a lot of the code started as effectively a fork of the old C++ plugin, which was then gradually (but not thoroughly) adapted to java ...

Mar 6 2019, 8:00 AM · KDevelop
brauch accepted D19457: Resurrect kdev-java.

Thanks, certainly better than bitrot. I can't really imagine it won't crash with any non-trivial project though :/

Mar 6 2019, 7:58 AM · KDevelop
kfunk accepted D19457: Resurrect kdev-java.

Only had a brief look, but this looks good to me! Well, better than letting it bit-rot.

Mar 6 2019, 7:52 AM · KDevelop

Mar 5 2019

tcanabrava updated subscribers of D19457: Resurrect kdev-java.

Em ter, 5 de mar de 2019 às 18:36, Dāvis Mosāns <noreply@phabricator.kde.org>
escreveu:

Mar 5 2019, 10:56 PM · KDevelop
davispuh added a comment to D19457: Resurrect kdev-java.

Only I had to disable tests, because they depend on kdevplatform/tests/*.h which doesn't get installed with KDevelop

These headers should normally be installed.

Some distro packages of KDevelop omit them, because of explicitly setting -DBUILD_TESTING=OFF during the build process.

You should be able to copy them manually, or add the source dir as an extra include path.

Mar 5 2019, 9:35 PM · KDevelop
davispuh added a comment to D19457: Resurrect kdev-java.
In D19457#424138, @apol wrote:

Are you planning to maintain it?

Mar 5 2019, 9:27 PM · KDevelop
davispuh updated the diff for D19457: Resurrect kdev-java.

Make tests buildable

Mar 5 2019, 9:26 PM · KDevelop
gennad added a watcher for KDevelop: gennad.
Mar 5 2019, 3:26 PM

Mar 4 2019

flherne added a comment to D19457: Resurrect kdev-java.

Nice work!

Mar 4 2019, 3:03 AM · KDevelop
apol added a comment to D19457: Resurrect kdev-java.

Are you planning to maintain it?

Mar 4 2019, 1:53 AM · KDevelop

Mar 2 2019

davispuh added a comment to D19457: Resurrect kdev-java.

Only I had to disable tests, because they depend on kdevplatform/tests/*.h which doesn't get installed with KDevelop

Mar 2 2019, 4:05 AM · KDevelop
davispuh requested review of D19457: Resurrect kdev-java.
Mar 2 2019, 3:55 AM · KDevelop

Feb 25 2019

rjvbb added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.

Even in your screenshot it looks fine to me.

Feb 25 2019, 2:24 PM · KDevelop
thomassc added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.

Personally, I don't think that I share the concerns about large tooltips. Even in your screenshot it looks fine to me. Since as written before, it can be very easily hidden if desired (e.g. just by clicking in the editor text area). I'd much rather have as much relevant information at once instead of having to click another "expand" button each time to see more. But that's just my personal opinion. Maybe others can comment too.

Feb 25 2019, 12:17 PM · KDevelop
rjvbb added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.

Here's a very good example of an overly large problem report:

Feb 25 2019, 8:41 AM · KDevelop

Feb 24 2019

thomassc updated the diff for D18224: Clang Plugin: Report some problems from included files.

Address comments. Now, problems are created for each "requested here" child diagnostic that refers to the current document. This may be more than just the last child diagnostic, since there may be multiple ones referring to the current document.

Feb 24 2019, 7:35 PM · KDevelop
rjvbb added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.

About the combined popups: could you downsize the 2 components so they always have the same (reasonable) size which could be coupled to screen height?

Feb 24 2019, 8:44 AM · KDevelop
rjvbb added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.
Omitting the problem tooltip if it's large makes it a bit unpredictable to the user. He/she then won't know in advance whether hovering over a location that might show a combined tooltip will actually show it or not.
Feb 24 2019, 8:33 AM · KDevelop

Feb 23 2019

thomassc updated the diff for D18567: Make testActiveDocumentsGetBestPriority() clean up after itself.

Thanks for pointing me to the right places.

Feb 23 2019, 8:53 PM · KDevelop
thomassc added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.

Interesting, I didn't know about the mode which highlights problematic lines. Thanks a lot for pointing it out. I had to look for it, and it turned out that this setting is at: Settings dialog -> Language Support -> Semantic Code Highlighting block -> Highlight problematic lines. I can't remember deactivating this, so it's probably off by default? It seems potentially very useful though, given that the underlines are sometimes easy to overlook, and the red line highlighting also shows up in the scrollbar minimap as you write. When this setting is active, the region where the problem tooltip shows up indeed makes more sense to me. It still doesn't match up though, for example if there are some whitespace lines before the line with the error, then the tooltip will also show when hovering somewhere over these whitespace lines.

Feb 23 2019, 5:37 PM · KDevelop
rjvbb added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.

For me it is exactly the opposite. I hover the range that is underlined red

Feb 23 2019, 4:44 PM · KDevelop
thomassc added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.

There can be scrollbars in problem reports, see the attached screenshot:

Feb 23 2019, 3:36 PM · KDevelop
domson added a watcher for KDevelop: domson.
Feb 23 2019, 1:33 AM

Feb 22 2019

rjvbb added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.

This seems like a big productivity progress (can't test it yet because using the 5.3 branch) but I have a concern that it is only a sufficient solution for those of us with (very) big screens. Esp. problem reports can be long, and I've never seen a scrollbar in them, AFAICR. Another concern is that the combined popup might be so big it's going to obscure parts of the code you'd want to keep visible for context.

Feb 22 2019, 11:12 AM · KDevelop

Feb 21 2019

dakon closed D18857: optimize CMakeBuildDirChooser::buildDirSettings().
Feb 21 2019, 9:06 PM · KDevelop
alexeymin created P329 kdevelop (clang) crash in the S1 KDE Community space.
Feb 21 2019, 1:39 PM · KDevelop
alexeymin archived P312 kdevelop crash.
Feb 21 2019, 1:35 PM · KDevelop
mwolff accepted D18857: optimize CMakeBuildDirChooser::buildDirSettings().
Feb 21 2019, 8:37 AM · KDevelop

Feb 20 2019

gennad removed a member for KDevelop: gennad.
Feb 20 2019, 8:53 AM
gennad removed a watcher for KDevelop: gennad.
Feb 20 2019, 8:52 AM

Feb 19 2019

dakon updated the diff for D18857: optimize CMakeBuildDirChooser::buildDirSettings().

use lambda as suggested by Milian

Feb 19 2019, 4:33 PM · KDevelop
kfunk closed D19159: [Sessions Runner] Use icon name.
Feb 19 2019, 3:42 PM · KDevelop
broulik added a comment to D19159: [Sessions Runner] Use icon name.

Feel free to push, I can't.

Feb 19 2019, 3:40 PM · KDevelop
kfunk accepted D19159: [Sessions Runner] Use icon name.
Feb 19 2019, 3:22 PM · KDevelop
rjvbb added a project to D9006: KDevelop project file manager: watch directories exclusively, avoid concurrent reloads and represent jobs in the RunController (PoC): KDevelop.
Feb 19 2019, 3:01 PM · KDevelop
broulik requested review of D19159: [Sessions Runner] Use icon name.
Feb 19 2019, 2:28 PM · KDevelop

Feb 17 2019

kossebau added a comment to D11934: KDevelop : "Reparse Entire Project" action in the project manager context menu.

"Hi Friedirch, thanks for your pointer and the question. Though your quick post-commit read missed the fact that the new implementation of openProjectConfig(), while looking shorter, now reuses the new code introduced for the actual purpose of the commit. I am sorry that I missed to properly document this in the commit message that I not only added a new action, but also rewrote as side effect some existing otherwise unrelated code for the purpose of code reuse. I also understand that reasons for code changes should not be buried in long discussions on review boards, but be with the final code result, as no future code reader has time to find and rescan complete review discussions."

Feb 17 2019, 11:01 PM · KDevelop
rjvbb added a comment to D11934: KDevelop : "Reparse Entire Project" action in the project manager context menu.

This patch also changed the logic of openProjectConfig().

Feb 17 2019, 10:16 PM · KDevelop
kossebau added inline comments to D11934: KDevelop : "Reparse Entire Project" action in the project manager context menu.
Feb 17 2019, 5:26 PM · KDevelop

Feb 16 2019

rjvbb closed D11934: KDevelop : "Reparse Entire Project" action in the project manager context menu.
Feb 16 2019, 9:26 AM · KDevelop

Feb 15 2019

mwolff added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.

Done, keyboard navigation should work now - at least it does according to my testing! Please test this as well and report back if you spot any issues.

Feb 15 2019, 11:35 PM · KDevelop
mwolff added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.

I'm looking into the keyboard navigation now

Feb 15 2019, 7:39 PM · KDevelop
mwolff added a comment to D18567: Make testActiveDocumentsGetBestPriority() clean up after itself.

Regarding waiting for the background parser on TestFile destruction, I didn't find a way to query whether a parse job is running or to wait for it, if it was started externally, using existing code (but I'm also not familiar with the codebase). As an alternative, one can do Q_ASSERT(ICore::self()->languageController()->backgroundParser()->isIdle()); in the test cleanup function to ensure that the tests don't leave the background parser running. This might also be a good idea to ensure that the tests don't influence each other in that way.

Feb 15 2019, 12:14 PM · KDevelop
mwolff added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.

Yeah, the keyboard navigation needs some work anyways - it's buggy even without combined tooltips :) Something for the future to work on!

Feb 15 2019, 9:54 AM · KDevelop
mwolff added a comment to D11934: KDevelop : "Reparse Entire Project" action in the project manager context menu.

auto* action = new QAction(tr("Reparse the Entire Project"), this);

Last minute check: tr instead of i18n, really?

Feb 15 2019, 9:52 AM · KDevelop
mwolff requested changes to D18857: optimize CMakeBuildDirChooser::buildDirSettings().

using byte arrays is OK imo, but please cleanup the code overall by using a lambda instead of repeating the same thing over and over again

Feb 15 2019, 9:51 AM · KDevelop
mwolff added a comment to D18551: clang: Create preamble only on second parse.

Currently we don't reparse (always?) when an included file changes. That's probably way more annoying than the first code completion having some delay.

Feb 15 2019, 9:38 AM · KDevelop
mwolff added a comment to D18551: clang: Create preamble only on second parse.

When we didn't create the preamble, we will have to reparse the file completely. And this can easily take 1-2s per file, which is *really* annoying.

It only happens on the very first edit though, and will only be noticeable if code completion is required immediately after starting to edit the file. All following parses and code completions can use the precompiled preamble then. I don't think that's too bad. It's also not unusual, many applications have something like a "warmup phase" where not everything is loaded yet.

Feb 15 2019, 9:35 AM · KDevelop
rjvbb added a comment to D18551: clang: Create preamble only on second parse.
Sometimes it works, sometimes it doesn't. Often I have to mock-edit a file to force reparsing when some header has changed.
Feb 15 2019, 8:47 AM · KDevelop

Feb 14 2019

aaronpuchert added a comment to D18551: clang: Create preamble only on second parse.

Indeed, and in that light clang's solution is maybe not that smart, at least not for use as a parser for an entire project. From what I understand that preamble is just a precompiled header file, which in my experience can be tricky to set up (typically require some sort of central header that imports everything that'll be needed everywhere). Having one such preamble per file cannot but duplicate lots of data.

You're right, it's a precompiled header file. I think it works very well for the intended purpose: quick reparsing on most user edits. The additional option that we use here was added in https://reviews.llvm.org/D15490 for pure code completion workloads. I don't think it's meant for us, even though we do completion as well: we also build an index, and have possibly many more files open.

Feb 14 2019, 11:49 PM · KDevelop
rjvbb added a comment to D18551: clang: Create preamble only on second parse.
To some extent this resembles the classic latency/throughput discussion.
Feb 14 2019, 9:24 AM · KDevelop
thomassc added a comment to D18229: Contextbrowser: Ability to show combined problems and decl tooltip.

Regarding keyboard navigation, it does not work for combined tooltips unfortunately. However, I wasn't aware of the existence of that feature at all before you asked about it ...

Feb 14 2019, 1:00 AM · KDevelop
thomassc updated the diff for D18567: Make testActiveDocumentsGetBestPriority() clean up after itself.

Regarding waiting for the background parser on TestFile destruction, I didn't find a way to query whether a parse job is running or to wait for it, if it was started externally, using existing code (but I'm also not familiar with the codebase). As an alternative, one can do Q_ASSERT(ICore::self()->languageController()->backgroundParser()->isIdle()); in the test cleanup function to ensure that the tests don't leave the background parser running. This might also be a good idea to ensure that the tests don't influence each other in that way.

Feb 14 2019, 12:55 AM · KDevelop
aaronpuchert added a comment to D18551: clang: Create preamble only on second parse.

Well, if among developers you cannot find a solution that covers all use cases a configurable setting (applying only to setting the preamble-on-first parse flag or not) could well be the only compromise.

I wouldn't want to give up on a consensus just yet. I think the Clang developers have actually chosen a pretty smart default, and this additional flag incurs costs that are hard to control for hardly any benefit.

Feb 14 2019, 12:40 AM · KDevelop

Feb 13 2019

rjvbb added a comment to D18551: clang: Create preamble only on second parse.

Well, if among developers you cannot find a solution that covers all use cases a configurable setting (applying only to setting the preamble-on-first parse flag or not) could well be the only compromise. And this one doesn't have to be hard to understand, which doesn't mean it has to (probably means that it should not) indicate exactly what it does.

Feb 13 2019, 8:49 AM · KDevelop
brauch added a comment to D18551: clang: Create preamble only on second parse.

This is not something that should be configurable. The follow-up to hard-to-understand options shouldn't be to add more of them.

Feb 13 2019, 12:12 AM · KDevelop
aaronpuchert added a comment to D18551: clang: Create preamble only on second parse.

Or, you add a flag to one of the relevant settings panels. There are already a number of options that aren't exactly easy to understand for everyone, this one could be something like "Make code-completion results available faster (can require significant resources)".

Feb 13 2019, 12:04 AM · KDevelop

Feb 12 2019

rjvbb added a comment to D18551: clang: Create preamble only on second parse.

Or, you add a flag to one of the relevant settings panels. There are already a number of options that aren't exactly easy to understand for everyone, this one could be something like "Make code-completion results available faster (can require significant resources)".

Feb 12 2019, 9:20 AM · KDevelop

Feb 11 2019

aaronpuchert added a comment to D18551: clang: Create preamble only on second parse.

When we didn't create the preamble, we will have to reparse the file completely. And this can easily take 1-2s per file, which is *really* annoying.

It only happens on the very first edit though, and will only be noticeable if code completion is required immediately after starting to edit the file. All following parses and code completions can use the precompiled preamble then. I don't think that's too bad. It's also not unusual, many applications have something like a "warmup phase" where not everything is loaded yet.

Feb 11 2019, 10:48 PM · KDevelop
kossebau added inline comments to D11934: KDevelop : "Reparse Entire Project" action in the project manager context menu.
Feb 11 2019, 7:48 PM · KDevelop
rjvbb added a comment to D11934: KDevelop : "Reparse Entire Project" action in the project manager context menu.

auto* action = new QAction(tr("Reparse the Entire Project"), this);

Feb 11 2019, 7:37 PM · KDevelop
mwolff accepted D11934: KDevelop : "Reparse Entire Project" action in the project manager context menu.

could you fixup the two minor nits please? then you can push directly

Feb 11 2019, 6:12 PM · KDevelop
rjvbb added a project to D11934: KDevelop : "Reparse Entire Project" action in the project manager context menu: KDevelop.
Feb 11 2019, 2:53 PM · KDevelop
alexeymin edited P312 kdevelop crash.
Feb 11 2019, 9:49 AM · KDevelop
alexeymin created P312 kdevelop crash in the S1 KDE Community space.
Feb 11 2019, 7:50 AM · KDevelop
alexeymin added a watcher for KDevelop: alexeymin.
Feb 11 2019, 7:08 AM

Feb 10 2019

mwolff closed D18325: Debugger plugin fixes.
Feb 10 2019, 9:33 PM · KDevelop
mwolff closed D17915: Clang CodeCompletion: No auto-completion for numbers.
Feb 10 2019, 9:32 PM · KDevelop
mwolff closed D17908: kdevelop-msvc.bat finds VS-2017 based on a registry key on Windows..
Feb 10 2019, 9:32 PM · KDevelop
mwolff closed D17618: Fix override function signature of createCompletionContext().
Feb 10 2019, 9:31 PM · KDevelop
mwolff added a comment to D18551: clang: Create preamble only on second parse.

I'm fine with that, but would prefer never having it. Not all files that are opened will be edited, and the delay caused by creating the preamble after the first edit is probably negligible over the lifetime of a session. It would also allow us to just drop affected preambles when a header is edited — otherwise we might have to recreate all preambles that include the header.

Feb 10 2019, 9:18 PM · KDevelop
mwolff added a comment to D18567: Make testActiveDocumentsGetBestPriority() clean up after itself.

ping?

Feb 10 2019, 8:51 PM · KDevelop
mwolff added a comment to D18224: Clang Plugin: Report some problems from included files.

ping? I'd really like to see this getting integrated, could you please fix the small issues pointed out by pino and me and resubmit?

Feb 10 2019, 8:50 PM · KDevelop
mwolff added a comment to D18758: Make Project::open() method use async KIO methods..

The problem with nested event loops are that they introduce execution flows that are very hard to reason about and can easily cause issues like the one you see here. Quite often, you can run into issues where an object spawns a nested eventloop, which then somehow handles a deleteLater event for the object itself, thereby destroying the object. When the nested eventloop exits, this was destroyed and anything can happen. I believe something like that happens here too.

Feb 10 2019, 7:46 PM · KDevelop
mwolff added a comment to D18758: Make Project::open() method use async KIO methods..

the proper way would be to have Project::open return void, and instead report failure via a new 'failedToOpen' signal. And then internally handle the async code without a nested event loop. We'll probably need this in more places, and I wonder what the current best-practice is for that. Eventually async/await can be used, but we want to have something that works with the compilers we support today. Hm. I'd like to prevent us from trying to handle async code in an adhoc fashion. Rather, we should try to adopt a proper framework like e.g. KAsync? QtPromise? Something similar?

Feb 10 2019, 7:40 PM · KDevelop
arrowd added a comment to D18758: Make Project::open() method use async KIO methods..

I have little Qt experience, why nested event loops are bad? What are options to avoid them?

Feb 10 2019, 7:39 PM · KDevelop
mwolff requested changes to D18758: Make Project::open() method use async KIO methods..

I'm afraid to say that this is just a workaround, not a proper fix... I ran into this issue recently too - the real problem - imo - is that we synchronously execute the stat jobs in KDevelop::ProjectPrivate::initProjectFiles... if you look at the ASAN report you'll see that TestCore::shutdown isn't referenced there at all!

Feb 10 2019, 7:04 PM · KDevelop
dakon added a comment to D18857: optimize CMakeBuildDirChooser::buildDirSettings().

No, I was just looking at it. I could remove the QByteArray change and reduce it to online the x.remove() and "else if" parts.

Feb 10 2019, 4:30 PM · KDevelop
apol added a comment to D18857: optimize CMakeBuildDirChooser::buildDirSettings().

in exchange of much harder to read code.
Was it ever a bottleneck for you?

Feb 10 2019, 1:48 PM · KDevelop
dakon closed D18856: CMakeBuildDirChooser: avoid calling deprecated KUrlRequester::setPath().
Feb 10 2019, 12:55 PM · KDevelop
dakon added a comment to D18857: optimize CMakeBuildDirChooser::buildDirSettings().

The QByteArray was already created the same way, now the intermediate object is just cached. But even if that did not change anything it reduces the number of utf8 conversion as only those lines that actually match anything will be converted.

Feb 10 2019, 12:28 PM · KDevelop
apol added a comment to D18857: optimize CMakeBuildDirChooser::buildDirSettings().

I wonder if that's actually faster. Here we are creating intermediary copies of the QByteArray only to convert to QString.

Feb 10 2019, 12:21 PM · KDevelop
apol accepted D18856: CMakeBuildDirChooser: avoid calling deprecated KUrlRequester::setPath().
Feb 10 2019, 12:18 PM · KDevelop

Feb 9 2019

gennad added a member for KDevelop: gennad.
Feb 9 2019, 6:55 AM
gennad added a watcher for KDevelop: gennad.
Feb 9 2019, 6:54 AM

Feb 8 2019

dakon requested review of D18857: optimize CMakeBuildDirChooser::buildDirSettings().
Feb 8 2019, 4:58 PM · KDevelop
dakon requested review of D18856: CMakeBuildDirChooser: avoid calling deprecated KUrlRequester::setPath().
Feb 8 2019, 4:55 PM · KDevelop
arrowd added a reviewer for D18758: Make Project::open() method use async KIO methods.: KDevelop.
Feb 8 2019, 1:28 PM · KDevelop

Feb 7 2019

rjvbb added a comment to D7930: Kdevelop CMake plugin : use canonical paths to build.dir.

Question to @apol: from what I can grasp CMakeTargetItem::m_builtUrl is cmake-internal cuisine so there shouldn't be any need to store it in canonical fashion but rather reason(s) to store it exactly as cmake knows it?

Feb 7 2019, 9:38 AM · KDevelop
hase removed a watcher for KDevelop: hase.
Feb 7 2019, 4:13 AM

Feb 6 2019

aaronpuchert added a comment to D18551: clang: Create preamble only on second parse.

I can't say that it happens systematically but neither that it does NOT happen systematically, and I mean that in general: re-opening a file you just closed.

Isn't this unavoidable BTW, given that we don't end up with preambles of all files?

Feb 6 2019, 12:35 AM · KDevelop

Feb 5 2019

arrowd requested review of D18758: Make Project::open() method use async KIO methods..
Feb 5 2019, 12:43 PM · KDevelop
arrowd closed D18463: Workaround the bug found by ASan, which can be seen on FreeBSD CI..
Feb 5 2019, 9:37 AM · KDevelop
kfunk added a comment to D18463: Workaround the bug found by ASan, which can be seen on FreeBSD CI..

Commit message ideally. Truncate the report where applicable.

Feb 5 2019, 9:29 AM · KDevelop
rjvbb added a comment to D18551: clang: Create preamble only on second parse.
Is the parser triggered again if the entire project has been parsed already?
Feb 5 2019, 9:12 AM · KDevelop
arrowd added a comment to D18463: Workaround the bug found by ASan, which can be seen on FreeBSD CI..

Oh, sorry, I forgot to press "Submit" on Phab and thought I posted ASan log here.

Feb 5 2019, 8:57 AM · KDevelop
mwolff requested changes to D15530: kdev-clang : somewhat more complete ObjC(++) support.
Feb 5 2019, 7:32 AM · KDevelop