What Would Make CLion a Better C and C++ IDE? The CLion 2023.3 Roadmap | The CLion Blog (2024)

NewsRoadmap

What Would Make CLion a Better C and C++ IDE? The CLion 2023.3 Roadmap | The CLion Blog (1)

Anastasia Kazakova

CLion 2023.2 has just been released with the following major enhancements:

  1. The Beta version of AI Assistant is now available as a plugin with limited access.
  2. Streamlined integration with PlatformIO, an open-source platform for embedded developers.
  3. Enhanced integration for vcpkg, one of the most widely adopted package managers in C++.
  4. Major debugger updates, including attach to remote and WSL processes and register value views.

Check out the key updates on our website and give the new version a try.

DOWNLOAD CLION 2023.2

Roadmap

It’s now time to move forward and start preparing for the next major release. We’d like to share our plans, as well as the ideas and areas we’ll be working on over the next few months.

The following is a preliminary plan and not a promise or commitment. Tasks might be changed or rescheduled for various reasons. We can’t guarantee that all of the issues listed below will be addressed in CLion 2023.3.

There is ongoing work on the IntelliJ platform to polish the new UI and eliminate UI freezes. CLion will benefit from both of these improvements, even though the changes apply to all IntelliJ-based IDEs and are not CLion-specific. Regarding CLion-specific improvements, here is our roadmap for 2023.3 and beyond:

  • 💪 Performance and quality
  • 🚀 LLM-based improvements
  • 🏘️ Project models: Meson and Bazel
  • 🛠️ Inspect assembly without a debug session
  • 🤖 Embedded development: DeviceTree support and PlatformIO enhancements

What Would Make CLion a Better C and C++ IDE? The CLion 2023.3 Roadmap | The CLion Blog (2)

Performance and overall quality of the IDE

For over a year, we’ve been working on an internal project to phase out CLion’s "legacy" Java- and Kotlin-based C++ language engine. This C++ language engine coexists with our newer code engine, which is based on Clangd. Clangd has many advantages, but it isn’t very helpful when it comes to project-wide refactorings and other actions that affect the whole project. For this reason, we also have another engine in the pipeline! We’re working with a closed group of private previewers to validate our experiments in real-world projects. We hope to open this early preview to the general public in this cycle – just as soon as we ensure it meets expectations in terms of quality, performance, and UX. In the new and experimental solution, we’re focused on the responsiveness, accuracy, and performance of the IDE. Stay tuned!

While you wait, we recommend checking out our performance tuning tips for the vanilla CLion. Also, try an experimental Clangd-based indexer for Find Usages – it has been proven to help many of our users already.

Data flow analysis (DFA) tracks the flow of data in your code and detects potential issues based on that analysis. We’re currently working to make it more accurate and also incremental. This new approach will enable you to avoid analyzing the same function multiple times, noticeably overcoming time and memory consumption on larger projects. Initial performance measurements look optimistic, so we’re targeting the 2023.3 release for this change.

LLM-based improvements

AI Assistant is a major new feature in the 2023.2 version of JetBrains IDEs, offering integration of large language models into the IDE development workflow. See what it brings to CLion for C and C++ developers.

AI-based functionality is available via a separate plugin with limited access and is currently still in the Beta stage. One of the primary reasons for a plugin approach was to enable us to release new AI-powered features outside of our regular IDE release cycle. That means you can expect more AI-powered functionality even before the arrival of the 2023.3 release via regular plugin updates within CLion 2023.2. If you are interested in the recent improvements, check out this blog post.

Project models: Meson and Bazel

According to the latest Developer Ecosystem survey, 57% of C++ developers used CMake in 2022. However, there are other project models and build systems that are also popular in the C++ ecosystem, including Meson and Bazel.

The request for Meson received a large number of votes and comments in our issue tracker. This year, we took a look at the Meson API for IDE developers and implemented some prototypes based on it. We aim to have the initial implementation ready in CLion 2023.3.

As for Bazel, we listened to feedback from our users who are migrating their projects to Bazel and using Google’s Bazel plugin for CLion. As a consequence, we’re now contributing several gradual quality improvements to the plugin. If you’re interested in using Bazel in CLion or your project plans to migrate to Bazel in coming months, let us know in the comments.

Another direction for improvement is to provide the ability to “just” open some folders with C/C++ sources and ensure CLion works reasonably well in such a setup. While a visible and clear path to a “proper” project model is suggested by the IDE, users should still be able to perform basic navigation and code editing tasks. This idea is highly experimental at present, and we can’t promise a public release in 2023.3.

Inspect assembly without a debug session

When debugging C or C++ code in CLion, you can explore the underlying assembly code. Now, we would like to allow users to inspect the assembly without a debug session. This is especially important for bare-metal embedded development, or for high-performance applications. The idea is similar to Compiler Explorer (Thanks, Matt!) and the Compiler Explorer plugin, however this capability will be integrated natively into developers’ workflows in CLion.

Embedded development: DeviceTree support and PlatformIO enhancements

The DeviceTree (.dts, .dtsi) format is used to describe hardware components. In CLion 2023.3, we plan to provide coding assistance support for it. This will include:

  • Syntax highlighting
  • Code formatting
  • Code inspections
  • Typing assist that inserts matching braces, quotation marks, and missing semicolons

We might also consider code navigation and code completion in DeviceTree files.

PlatformIO integration was overhauled in CLion 2023.2. We’ve started receiving feedback from our users and would like to address all major requests and important suggestions. Share them with us in the issue tracker or in the comments.

To wrap up

That’s everything for now! Are you excited about the upcoming CLion 2023.3? The free Early Access Program will start in approximately a month. If you find any issue with the current v2023.2, make sure to report it to us, as we’re still working on v2023.2 and plan to have several 2023.2.x bug-fix updates in the coming months.

Your CLion team
JetBrains
The Drive to Develop

2023.3 AI Assistant bazel embedded Meson Roadmap

  • Share
  • Facebook
  • Twitter
  • Linkedin

Prev post CLion 2023.2 Released With Better PlatformIO Integration, Updated Debugger, and Brand-New AI AssistantCLion 2023.2.1 Bug-Fix Update Next post

Subscribe to CLion Blog updates

What Would Make CLion a Better C and C++ IDE? The CLion 2023.3 Roadmap | The CLion Blog (3)

What Would Make CLion a Better C and C++ IDE? The CLion 2023.3 Roadmap | The CLion Blog (2024)

FAQs

Is CLion a good C++ IDE? ›

Its cross-platform capabilities make it an ideal choice for developers working on different operating systems, and its integration with Git and GitHub simplifies version control. As a result, CLion is recommended by programmers of all experience levels as a must-have tool for C++ development.

Why is CLion better than VSCode? ›

Integrated Tools and Features: CLion comes with integrated tools specifically tailored for C and C++ development. It includes a powerful debugger, code profiler, unit testing framework, and version control integration. CLion also offers advanced code completion, code navigation, and error detection capabilities.

What is CLion used for? ›

CLion is a fully Integrated Development Environment for coding in C and C++ on Windows, Linux, and macOS.

What is the difference between CLion and CLion Nova? ›

CLion Nova CLion Nova is an improved version of CLion, which uses the ReSharper C++ / Rider C++ language engine instead of the CLion legacy engine.

What are the cons of CLion? ›

The worst thing I hate about this software is that it is very expensive. CLion can be difficult to get started with for new programmers. Software may crash sometimes and needs restart. It may lags when working on big project.

What is the benefit of IDE in C++? ›

Enhanced Productivity and Efficiency

One of the primary benefits of using an IDE is the boost in productivity and efficiency it provides. IDEs are equipped with a host of features, such as code completion, syntax highlighting, and error detection, that can speed up the coding process.

Is CLion an IDE or text editor? ›

The CLion editor is the main part of the IDE that you use to create, read, and modify code.

Can I write C++ in CLion? ›

In CLion, you can use GCC-based compilers, Clang, Clang-cl, Visual Studio C++ compiler, as well as IAR compiler and custom-defined compiler. For more information, refer to Compilers. CLion supports debugging with GDB (either bundled or custom) on all platforms and with the bundled LLDB on macOS and Linux.

Is C++ hard to learn? ›

C++ is somewhat difficult to learn, especially if you have never programmed before or you have never used a low-level programming language before. If you are a beginner with no programming experience, you should expect it to take at least three months to learn the basics.

Does CLion work without internet? ›

Tasks and issue trackers

If the issue tracker server is not in your local network, and there is no internet access, CLion will not be able to sync your issues. In this case, you will be able to work only with local tasks that you create yourself. For more information, refer to Tasks and contexts.

Do I need a compiler for CLion? ›

CLion needs to be provided with C and C++ compilers. These tools may be pre-installed on your system: check it in Settings | Build, Execution, Deployment | Toolchains - the compiler and make detection should perform successfully.

How much RAM does CLion use? ›

CLion uses ~1+ GB of memory for a simple Hello World project. Haven't even tested a complex program yet. CLion is slightly sluggish. Clicking tends to not be the usual snappiness one expects from other IDEs (CodeLite, QtCreator, even VS).

Is CLion better than Codeblocks? ›

CLion vs Code::Blocks

Reviewers felt that CLion meets the needs of their business better than Code::Blocks. When comparing quality of ongoing product support, reviewers felt that Code::Blocks is the preferred option. For feature updates and roadmaps, our reviewers preferred the direction of CLion over Code::Blocks.

Which is better CLion or Xcode? ›

Third-Party Plugin Ecosystem: CLion has a thriving ecosystem of third-party plugins and extensions developed by the community, allowing users to extend its functionality according to their specific needs. Xcode, on the other hand, has a more limited plugin ecosystem focused primarily on Apple and iOS development.

Top Articles
Latest Posts
Article information

Author: Maia Crooks Jr

Last Updated:

Views: 6376

Rating: 4.2 / 5 (63 voted)

Reviews: 86% of readers found this page helpful

Author information

Name: Maia Crooks Jr

Birthday: 1997-09-21

Address: 93119 Joseph Street, Peggyfurt, NC 11582

Phone: +2983088926881

Job: Principal Design Liaison

Hobby: Web surfing, Skiing, role-playing games, Sketching, Polo, Sewing, Genealogy

Introduction: My name is Maia Crooks Jr, I am a homely, joyous, shiny, successful, hilarious, thoughtful, joyous person who loves writing and wants to share my knowledge and understanding with you.