CLion 2019.2 EAP: Performance Improvements, Platform Changes, and More
Hi,
Last week we launched the Early Access Program (EAP) for CLion 2019.2. We thank everyone who already gave that EAP build a try and checked new things like parameter name hints, code assistance for .clang-format config files, go to address in memory view, and other enhancements and shared their feedback with us!
Today a new EAP build (192.4488.4) is available to download. As usual, you can download build 192.4488.x from our site, or use the Toolbox App, or use a snap package if you are using Ubuntu. A patch-update for those using the previous EAP build will be available shortly.
C++ related improvements
Performance
While our major effort to improve performance is still ongoing, there are a few changes already available in the EAP build. First of all, we’ve removed lags in several cases of in-place Rename refactoring (CPP-16098). This has made the editor much more responsive.
Second, we’ve reduced the number of I/O operations when CLion collects compiler info in the full remote mode (when you run CLion locally and work with your project remotely). This has improved the performance of the Loading CMake step in remote cases.
Naming convention settings
In the first 2019.2 EAP build, we introduced reworked and more flexible naming convention settings. This time we’re polishing the UI/UX to make it possible to work with the settings table without using the mouse:
- Use -> / <- to navigate between the columns in the selected entry.
- Use Space to open the dropdown menu, and use Esc to close it.
- Use Tab to navigate between the options in the checkboxes, and use Space to select/deselect them.
And more
A few other C++ related fixes include:
- Move refactoring got further improvements, including a fix for the refactoring failing on global variables (CPP-16337).
- CLion shouldn’t add headers that are already included when refactoring or applying quick-fixes (when the Clangd-based engine is used) – CPP-15972.
- A fix for a regression with “OpenOCD Download & Run” configuration that stopped working.
Platform improvements
A new Plugin settings page
We’ve continued improving the Settings/Preferences | Plugins page:
- Plugin description is now located right next to the list of plugins:
- You can enable/disable all the downloaded plugins – simply click the gear button and select the corresponding action.
- Updates and Installed tabs are now merged, so you can find the update button right next to the plugin name on the Installed tab.
New look for the inspection tooltip
Have you noticed that the inspection tooltip was updated to make quick-fixes more discoverable? Now, it not only shows the problem description, but also provides you with the first available fix when possible (to apply, use Alt+Shift+Enter):
New default keymap on macOS
The default keymap on macOS has been changed to be the macOS 10.5+ keymap by default, instead of Mac OS X. We’ve changed the naming of the macOS keymaps accordingly:
- Mac OS X 10.5+ to the default, and
- Mac OS X to IntelliJ IDEA Classic.
There are also a few improvements in VCS support. Read about them here.
The full release notes are available here.
Your CLion Team
JetBrains
The Drive to Develop
Kira Backes says:
May 29, 2019Is it possible that leading upper snake case https://youtrack.jetbrains.com/issue/CPP-16191 will make it in time for the final CLion 2019.2 build?
rgds, Kira
Anastasia Kazakova says:
May 29, 2019yes, thanks, we plan to cover it, we’ll do our best.
Kira Backes says:
May 29, 2019This is so awesome to hear, thank you! We’ll test it then and give you feedback 🙂
Tano says:
May 30, 2019It will be great to have all the time the “Update” button, instead of “Download” when especially when updating from an EAP to another EAP.
Anastasia Kazakova says:
May 30, 2019This update comes with a patch, so you should see the update button if you were using previous EAP, isn’t it the case?
In general, sometimes patches are not possible, then you have the Download button. But that was not the case with this EAP.
Tano says:
May 30, 2019Sorry, there was no “Update” button, I had to update.
Also I want to ask you about some small annoying bugs/feature that does not seem very hard to implement, examples:
PY-32404
IDEA-195289
IDEA-186064
I know that they are not CLion related but still..
And many others, I even don’t want to talk about the minimize button dissapearing on XFCE, at least 2-3 years old and very very annoying
Thanks
Tano says:
May 30, 2019*I had to download, not update, sorry 🙂
Anastasia Kazakova says:
May 30, 2019Hm, you are right, sorry, we’ve found out the cause of the issue. The patch is published but the update dialog fails to get it. It will be fixed in a couple of hours. Sorry for the inconvenience.
Kira Backes says:
May 30, 2019FYI: Updating via Toolbox worked flawlessly and automatically yesterday
Anastasia Kazakova says:
May 30, 2019It was updated using the full build download still( You just didn’t notice that thanks to toolbox.
Anastasia Kazakova says:
May 30, 2019PY issue is indeed some unpleasant regression and I hope the team will find some time to fix it, but mind they have other things that are also important. I asked them to update the estimation in the ticket.
IDEA-195289 – is a nice thing to have, but it’s not a top priority for now, so postponed for a while.
IDEA-186064 – do you still have it in 2019.2?
Anastasia Kazakova says:
May 30, 2019> And many others, I even don’t want to talk about the minimize button dissapearing on XFCE
Could you please remind an issue number for that one?
Anton says:
May 31, 2019Please, fix the performance issues. Typing is near to impossible. I get constant lags and even if I just move the caret with arrow keys. I get freezes after every source modification. It looks like CLion starts to analyze the source as soon as I type. It’s almost impossible to work with projects bigger than a “Hello world” project. I pointed it out a few years ago and since then the situation only got worse and worse. I can capture more CPU snapshots and try to do other things if you need it. Just please, fix this or I won’t be able to use CLion at all.
https://youtrack.jetbrains.com/issue/CPP-988
https://youtrack.jetbrains.com/issue/CPP-16341
Anastasia Kazakova says:
May 31, 2019First of all, we work on performance constantly and currently, there is a huge rework in progress, which we hope will help with CPP-988.
Regarding the CPP-16341 we keep investigating, please continue in the ticket. For now, we can’t find anything suspicious / taking unusual time in the snapshot. So we’ll proceed after a small thought.