CLion opens 2018.3 EAP: initial remote dev support, unit testing performance improvements, and new Search Everywhere and Run anything dialogs

Today we are starting the new CLion 2018.3 Early Access Program! There are big plans for this release, and we will do our best to achieve as much as possible. We welcome all of you to give the new features and enhancements a try, and share your feedback with us.
800x400_blog@2x
Find below a detailed description of the following new features and improvements:

Download CLion 2018.3 EAP

Continue reading

Posted in Announcement, Early Access Preview | Tagged , , , , , , , | 50 Comments

CLion 2018.3 EAP: profiling tools on Linux and macOS and multiline TODO

Hi,

The new CLion 2018.3 EAP (build 183.3647.14) is now available for download!

As usual, a patch-update will be available shortly for those using the previous EAP build, and you can also use Toolbox app or snap packages (in the case of Ubuntu) to get this build. No license is required and the build is free to use, but it will expire within 30 days of the build date.

Download CLion 2018.3 EAP

CPU Profiler

Starting from this EAP, CLion comes with the CPU Profiler integration on Linux and macOS. With Perf on Linux and DTrace on macOS you can now analyze the performance of your application (both, kernel and user’s code) right in the IDE.

To run the profiler use a new button in the navigation toolbar or a new action in the run menu, which appears when you click on a run icon in the left gutter:
run_profiler

The results of the profiling is shown in the CPU Profiler tool window (View | Tool Windows | CPU Profiler):
profiler_toolwindow

Continue reading

Posted in Announcement, Early Access Preview | Tagged , , , | 20 Comments

JetBrains C++ team at CppCon 2018: trip report

Our C++ team is on its way back home from Bellevue, Washington, where CppCon was held during the last week of September. While our memories are still fresh, we’d like to share our impressions of this year’s installment of CppCon.

cppconAs the biggest and most global C++ event, CppCon gathers attendees from all over the world and unites C++ developers of all levels of knowledge across many areas. Classes, sessions, panels, podcast recordings, lightning talks, open-content sessions, exhibition tables, posters – all these different formats help participants share their knowledge of all aspects of C++ development.

IMG_0072This year was unique for many reasons. First, the conference finally outgrew the maximum space available in Bellevue, and that’s why next year’s CppCon will move to a new place in Aurora, Colorado, a city near Denver. We all felt a little sad about leaving the Seattle area and spent the week trying to capture all the good memories of this place.

Second, several new formats entered the program including Lightning Challenges and Tools Time.

Third, the organizers opened the first floor to companies who’d like to communicate more closely with the C++ developers at the event.

There were many more points that made us think this CppCon was a huge success. Let’s talk about some.
Continue reading

Posted in Conference & Events | Tagged , , | 4 Comments

CLion 2018.3 EAP: new build and rebuild actions

Hi,

The new CLion 2018.3 EAP (build 183.3283.6) is now available for download!

As usual, a patch-update will be available shortly for those using the previous EAP build, and you can also use Toolbox app or snap packages (in the case of Ubuntu) to get this build. No license is required and the build is free to use, but it will expire within 30 days of the build date.

Download CLion 2018.3 EAP

New Build menu

In this build we’ve addresses a family of requests for various build/rebuild actions for particular targets or whole project by adding a new Build menu with new and updated options:
build_menu

These are the available options for CMake projects:

  • Build Project – a new action which builds CMake all targets from all CMake Profiles configured for the current project:
    build_project
  • Build All in <selected CMake Profile> – a new action which builds CMake all target from the selected CMake Profile
  • Build <selected configuration> (Ctrl+F9 on Linux/Windows, ⌘F9 on macOS) – an old action which builds the selected Run configuration
  • Recompile current file (Shift+Ctrl+F9 on Linux/Windows, ⇧⌘F9 on macOS) – recompiles currently opened file or a group of file, if selected in the Project View
  • Install – works as before, runs cmake install on your project
  • Rebuild Project – a new action which calls Clean and then Build Project
  • Rebuild All in <selected CMake Profile> – a new action which calls Clean and then Build All in <selected CMake Profile>
  • Rebuild <selected configuration> – a new action which calls Clean and then Build <selected configuration>
    rebuild_configuration
  • Clean – works as before, cleans the project

As a side effect of these changes Build All run configuration is not created for the new projects anymore (previously CLion was automatically creating it). Build Project action serves as the most global build action as it doesn’t require any CMake Profile or Run configuration to be selected in advance.

Finally, we’d like to remind you that CMake Profiles can be configured in Settings/Preferences | Build, Execution, Deployment | CMake. And you can switch between them later in the Run/Debug configuration switcher:
configuration_switcher

Find the full release notes by the link.

CLion 2018.2.5 EAP

A preview build for CLion 2018.2.5 bug-fix update is also available. Download build 182.4892.4 from our confluence page or wait for a patch-update. Please, note that this EAP build requires an active subscription (or you can start a 30-day evaluation period).

This EAP build brings the following fixes:

  • Creation of the GitHub token fails in some cases when the name already exists (IDEA-198120)
  • Deleting with Backspace merges lines by mistake (CPP-13177)

Full release notes are linked here.

Your CLion Team
JetBrains
The Drive to Develop

Posted in Announcement, Early Access Preview | Tagged , , , , , | 12 Comments

CLion 2018.3 EAP: fixes for remote dev and more

Hi,

Please welcome a new CLion 2018.3 EAP (build 183.2940.13)!

As usual, a patch-update will be available shortly for those using the previous EAP build, and you can also use Toolbox app or snap packages (in the case of Ubuntu) to get this build. No license is required and the build is free to use, but it will expire within 30 days of the build date.

Download CLion 2018.3 EAP

Last week CLion 2018.3 Early Access Program started with the Initial Remote Development support. This week a new build is available and it addresses an issue with the symlinks used in header search paths (CPP-14211).

Talking about the header search paths, we’ve also fixed an issue with searching through the user and libraries header search paths:

  • #include <..> now looks for the header files in the libraries only.
  • #include ".." first looks in the user’s search path, then in the libraries

This fix actually means that the user header file shouldn’t hide a library header by mistake.

There are also several UI fixes across the whole IntelliJ platform, like for example drawing characters in Monospaced font was fixed (JRE-847).

Full release notes are available by the link.

Your CLion Team
JetBrains
The Drive to Develop

Posted in Announcement, Early Access Preview | Tagged , , | 6 Comments

Stay local, let your IDE do remote work for you!

CLion’s issue tracker has dozens of important and interesting feature suggestions to implement. With limited resources, we are always having to prioritize the features we include with the direction we have in mind for the product’s evolution. 3-digit issues with over 800 supportive votes – these are the kinds of requests we can’t leave out! Can you guess the one we’re working on for v2018.3? It is all about remote projects support!

Initial remote projects support – what’s that?

We’ve started with a particular set-up, though we do plan to cover and come to up with more cases in the future. So we are calling the current support state – initial. What exactly was implemented then?

  • Local client machine: Unix-like (macOS, Linux)
  • Remote host: Linux
  • Sources location: originally on the local host, CLion will synchronize to the remote machine for you.
  • Project model: only CMake projects
  • rsync is required to be installed on a remote host

We know there are many other cases for remote development and we are planning to extend our support for it in the future. Just sit tight and stay tuned!
Continue reading

Posted in Announcement, Tips'n'Tricks | Tagged , , | 58 Comments

CLion 2018.2.4 bug-fix update

Hi,

CLion 2018.2.4 bug-fix update, build 182.4505.18, is now available for download!

You can download it from our website, use Toolbox app or snap packages (in the case of Ubuntu) to update. A patch-update will be available shortly for those using CLion 2018.2.3.

Download CLion

This build addresses the following issues:

  • Incorrect braces were added to the if clause, when autocompleting the if clause before that one (CPP-12049).
  • A few issues with the diff dialog (CPP-12881, CPP-13350).

Besides, CLion now bundles CMake 3.12.2.

Full release notes are available by the link.

Your CLion Team

JetBrains
The Drive to Develop

Posted in Announcement | Tagged , | 7 Comments

Meet JetBrains C++ team at CppCon 2018

cppcon
We are happy to announce that this year the JetBrains C++ team will be back to CppCon in Bellevue, WA, USA – the biggest yearly event in the C++ development world – as exhibitors, participants and speakers! We greatly enjoyed it last year and are super-excited to join again!

Learn with us

JetBrains team is planning to present a selection of topics in the main program:

Monday, September 24, 14:00 – 15:00
Modern C++ Testing with Catch2, a talk by Phil Nash

Monday, September 24, 16:45 – 17:45
Debug C++ Without Running, a talk by Anastasiia Kazakova

Tuesday, September 25, 14:00 – 15:00
What Could Possibly Go Wrong?: A Tale of Expectations and Exceptions, a talk by Simon Brand and Phil Nash

Wednesday, September 26, 16:45 – 17:45
Parsing C++, a talk by Timur Doumler and Dmitry Kozhevnikov

Friday, September 28, 09:00 – 10:00
Class template argument deduction in C++17, a talk by Timur Doumler

Saturday, September 29, 09:00 – 17:00
Accelerated TDD: For More Productive C++, a class by Phil Nash

Share feedback and watch product demos

On Monday, September 24, JetBrains will have a big booth on the first floor of the Meydenbauer center. Then on Wednesday, September 26, and Thursday, September 27, we’ll be available with a table in the regular exhibition area on the upper floors. Drop by and ask any questions you may have about CLion, AppCode or ReSharper C++, learn a couple of useful tips, find out our future plans, watch demos, or just chat about C++ with the team. We’ll also have nice presents to give out so don’t miss it!

Participate in our license raffle and win a free 1-year subscription! Even if you don’t win, we’ll send you a guaranteed discount towards a personal 1-year subscription to any JetBrains C++ product of your choice.

Tuesday, September 25th, from 20:30
Tool Time will be running at CppCon for the first time ever, which is another great opportunity for attendees to come and chat directly with people who maintain software tools. Both CLion and ReSharper C++ teams will join the event.

See you soon!
The JetBrains C++ Team

Posted in Conference & Events | Tagged , , | Leave a comment

CLion 2018.2.3: better compilation database integration

Hi,

CLion 2018.2.3 update (build 182.4323.58) is now available!

You can download it from our website, use Toolbox app or snap packages (in the case of Ubuntu) to update. A patch-update will be available shortly for those using CLion 2018.2.2.

Download CLion

CLion 2018.2 added a support for compilation database project format. This bug-fix update improves the integration.

Automatically reload compilation database

If you make changes in compile_command.json file, you can now force CLion to automatically detect them and reload the project. This is especially useful when working with Makefiles in CLion through the compilation database: file watchers monitor changes in Makefiles, regenerate the compilation database and CLion reloads it automatically. See the example described step by step in our webhelp.
To enable the Auto-import go to Settings/Preferences | Build, Execution, Deployment | Compilation Database:
compdb_autoimport

Besides, we’ve also fixed a bug that caused Cannot get compiler information errors for files with relative paths in case of compilation database (CPP-14083). By the way, the issue was caught on Ruby sources. So now you can open it in CLion successfully!

Other improvements

CLion 2018.2 comes with Google Sanitizers integration. To let Sanitizers convert addresses into source code locations and make stack-traces easy to understand, one have to ensure that the PATH or *SAN_SYMBOLIZER_PATH environment variable contains the location of llvm-symbolizer. In case of using Clang compiler, you will get a notification from CLion if none of the PATH or *SAN_SYMBOLIZER_PATH variables points to llvm-symbolizer:
cl_sanitizer_symbolizerwarning

Besides, bundled CMake version was updated to 3.12.1.

Full release notes are available by the link.

Download CLion

Your CLion Team

JetBrains
The Drive to Develop

Posted in Announcement | Tagged , , | 3 Comments

IntelliJ Rust features. Entry one: Macros

In this series of short blog posts, we are going to take a closer look at the key Rust-related features available in JetBrains IDEs through our corresponding plugin.

However, before we do that, let me briefly remind you about the current state of the Rust plugin:

  • It is available in all our IntelliJ-based IDEs.
  • It relies on the Cargo build system, and CLion is no exception here.
  • The debugging feature for Rust code is currently only available in CLion.

While macros are essential for Rustaceans, they can be finicky from time to time. Fortunately, there are tools around to help ease your burden.

Continue reading

Posted in Tips'n'Tricks | Tagged , | 3 Comments