CLion 2019.2 goes Beta! To install CLion 2019.2 Beta (build 192.5728.28), download it from the website, update from our Toolbox App, get it through a snap package (if you are using Ubuntu), or use a patch update.
Beta builds are much more stable than EAP builds, but some issues may still occur. If you find any issues, please report them to our issue tracker. You don’t need a license to use this build.
The main highlights:
- The updated ‘Unused includes’ check no longer hangs in a batch mode (run via run inspection by name)
- A fix for the issue with the freezing rename refactoring when invoked from the context menu (CPP-16768)
- A fix for the code highlighting disappearing after a file was saved when the parameter name hints were enabled (CPP-16741)
The full release notes are available here.
Your CLion Team,
JetBrains
The Drive to Develop
Do you plan to fix CPP-7361 anytime soon, more than 3 years passed…
Thanks for pinging, we’ll check it back again.
This is the place where VisualAssisst beats Clion to dust. In VisualAssist generate definition always works. In Clion it almost never works.
When I push Alt+Enter on function declaration in Clion usually there are 3 outcomes:
1) nothing happens
2) generate dialog pop up, but when I select generate definition nothing happens
3) code is generated, but is out-of-sync with declaration (has wrong parameter numbers)
In VisualAssist: dialog always pop up immediately. Code is always generated after 2-3 seconds wait (“Please wait while VisualAssist updates intellisense”).
Have you reported the samples for all three cases to our tracker? Can you then maybe point me to the particular issues? I’ll double-check. Thanks
It does not require any specific code sample, can be reproduced by typing fast on any large project. I believe (2),(3) are CPP-7361. (1) is simple a consequence of clion parser slowness, if you wait 3-4 seconds when method will be highlighted (action is available), then dialog pop up.
Indeed, you are right about the ticket. That’s it.
We plan to discuss it carefully during the planning next week. Seems the problem is clear but for now we don’t see a good solution. We need to investigate deeper. Thanks for pinging.
Any news on JBR-565? It’s been 5 years…thanks
We plan to investigate it, but there are some issues which have higher priority for the JBR team for now. We’ll check the state again and see if we can cover it soon.
I wonder if you (JetBrains team) can work even 1 month having your IDE without “minimize” button. Then try it for 5 years.:-)
You’ve made me realize that I can’t remember when was the last time I used “minimize” button of the IDE 😉
Unused includes in batch mode worked great now. Thanks for the fix!
I personally dislike seeing all of the “but what about my bug?!” complaints on every release post. That’s just bad etiquette.
Glad to know it works for you! Thanks
>That’s just bad etiquette.
Why? What else did you expect to see in comments for tool releases? I always thought that this is just N1 topic for such comments: sharing the pain.
There is no MY bug, there is OUR frustrating bug, voted by a lot of people , 4-5 years old, which must be fixed.
What’s the etiquette? To just pay for a product and shut up?
The history showed me that the JBR team reallyhears our pain and tries to help us all.
The bad etiquette would be to use mean words.We are developers too, we try to understand each others, but some annoying bugs really must be fixed, although we perfectly understand the limited resources.
I am still waiting for the “Update” button in Help-About, not just “Download” one
Not sure what do you mean. Can you please specify?
Sorry, my mistake, I was trying to “Update and Restart” from 2018 (instead of 2019 EAP), I always keep 2 versions on.
Ok, I see.
Unfortunately this will be another release without major performance or large-project improvements. And clangd support introduced even more slowness.
So sad that there is still no such simple things like switch header/source that actually works. Ninja is still not supported.
It’s pretty hard to edit GTest code due to IDE performance. Such simple thing like popup menu usually takes around 2-3 seconds to open.
There are lots of performance improvements landed in 2019.2. And also more are in development (as they require more work).
Switch header/source is in development as well, however, due to limited resources, we didn’t manage to put it in 2019.2. Ninja will be coming as well, however in this area, there are a few tasks with higher priority and the resources are busy with them.
Do you mean some particular issue with GTest? I mean have you reported the CPU snapshots for the investigation? Thanks in advance.
Sorry. I don’t see any performance improvements at all. The only thing that improved it for me (after major regression) was disabling of ‘Use navigation via clangd’, because IDE is completely unusable with this option enabled here.
I’ve submitted these issues multiple times. Here are just from my ‘starred’ issues:
https://youtrack.jetbrains.com/issue/CPP-14785
https://youtrack.jetbrains.com/issue/CPP-14396#comment=27-3509760
https://youtrack.jetbrains.com/issue/CPP-16335#focus=streamItem-27-3503070.0-0
https://youtrack.jetbrains.com/issue/CPP-16617
https://youtrack.jetbrains.com/issue/CPP-16457
https://youtrack.jetbrains.com/issue/CPP-16414
I don’t see any reason to submit more.. Because usually every report is just duplicate of known issue.
I already use vim for most of coding stuff due to CLion performance.
There are several different issues mentioned here. Some are the part of longer rework which is planned for performance improvement and is now in progress (naturally not coming to 2019.2, but we hope some results be available in 2019.3).
Regarding some others:
https://youtrack.jetbrains.com/issue/CPP-14396 – it’s reported that the original problem is fixed in 2019.1. If that’s not the case for you, please reopen the issue or submit a new one, as it might be another problem.
These two:
https://youtrack.jetbrains.com/issue/CPP-16414
https://youtrack.jetbrains.com/issue/CPP-16335
– covers the first Google Tests indexation that need to be finished before the GT configuration run. The next runs should be faster and shouldn’t freeze. is it the case? If not, please provide more details in the tickets.
I’ve replied to mentioned bugs with fresh dumps.
As about google tests: The whole feature is unusable here..
I’m providing lists of tests to be executed manually.
Just because this initial indexation takes absolutely insane amount of time here (more than 20-30 mins if IDE is idle).
And the most annoying thing is that it’s not actually background. Every change to any file (including unrelated non-unit tests files) causes indexation to be restarted.. So basically I can’t use IDE at all while it updates certain indexes.
And even worse.. There is no way to cancel this test indexation job if it was started except restarting IDE…
In general, the indexing is started if start running some tests to provide an ability to navigate from test results to the actual tests in code. This requires some extra parsing. But seems something is going wrong in your case. Let’s investigate deeper. We’ll contact you via email if you don’t mind to learn more details and speed up the investigation process if you are fine with that.
For me, update fails with the error message:
FileAlreadyExistsException: …../backup.tmp.0
Am I the only one .. and is there a solution?
Haven’t seen this before. Can you please download a full build from our site and check?
Thanks for your efforts, great IDE!
Thank you for your support!
>>> Seems the problem is clear but for now we don’t see a good solution. We need to investigate deeper.
No, your main problem is that you don’t make parsing in separate thread and it entails a lot of performance problems. Separate thread(s) would be a nice solution for ‘more or less’ normal work with IDE.
I guess you don’t know how the whole architecture of the platform and CLion looks like, so these assumptions are not correct.
I know that it will cause a lot of problems with your current architecture, but you should have considered multithread parsing initially. Like in QtCreator – I can write code in QtCreator while parsing always. In Clion there a lot of situations where I can’t.