CLion 2019.1 Hits Beta

CLion 2019.1 goes Beta! To install CLion 2019.1 Beta (build 191.6183.6), download it from the website, update from our Toolbox App, or through a snap package (if you are using Ubuntu), or use a patch update.


The Beta builds are sufficiently stable compared to the EAP builds, but some issues may still occur. If they do for you, please report them to our issue tracker. No license is required to use this build.


This build brings the following fixes:

  • For Embedded Development:
    • Show detailed error when OpenOCD executable isn’t correct (CPP-15466)
    • When opening an .ioc file, suggest opening as a project (CPP-15532)
  • For custom targets: when a custom target is renamed, the corresponding custom run/debug configuration is updated accordingly (instead of invalidation)
  • A few fixes for Refactorings (CPP-13822, CPP-3811)

The full release notes are available here.

Once again, here are the key improvements to look forward to in v2019.1, which is just around the corner:

  • For Embedded Development: OpenOCD debugger support and integration with STM32CubeMX (read more)
  • ClangFormat support (more)
  • C/C++ naming conventions (more)
  • More responsive editor thanks to code highlighting with Clangd (more)
  • Build-system-independent Build Targets and Run/Debug Configurations (more)
  • Memory View in Debugger (more)


Your CLion Team
The Drive to Develop

This entry was posted in Announcement, Early Access Preview and tagged , , . Bookmark the permalink.

20 Responses to CLion 2019.1 Hits Beta

  1. Helge Penne says:

    You’re now in beta and this regression is still not fixed:

    I keep sending in replies to questions for more info, then hear nothing for several days, followed by more questions, and so on. This really should be fixed. Perhaps the developer responsible for this could be allowed to make it his top priority?

    I’m sure that you are all busy fixing things in the EAP phase, but I have gotten the impression in the past that you are putting too much emphasis on adding new features and not enough on fixing bugs and improving performance. That will eventually destroy a good product. Your revenue is probably mostly from subscriptions. This revenue is dependent on good quality and good performance more than anything else. This means that improving quality is more important than new features, not less. Which in turn means that development needs to be allowed to polish the product, and new things should sometimes be postponed. Your performance up till now makes me doubt if you have really realize this, and that makes me fear for the future of CLion.

    • Anastasia Kazakova says:

      We are looking at it, but that’s not obvious what happens for you there and we investigate every piece of information you send to us. However, it requires time. And unfortunately, it’s still not clear. Please check the latest question in comments.

      • Helge Penne says:

        Thanks for following up. I see that there was a new question today. I came too late for me to handle it today, but I will look at this first thing in the morning.

        • Anastasia Kazakova says:

          We are waiting for your reply to continue the investigation. Thank you

          • Helge Penne says:

            All questions answered as far as I can tell, but still no progress. I don’t think “waiting for reply” is the correct state for this bug, I’m not the one slowing this down.

          • Anastasia Kazakova says:

            Waiting for reply is set when we expect an answer from you. This is convenient for developers to understand what’s the state of their communication with users.

            As for this particular case, we are investigating it. But w/o a stable case when we can reproduce or at least some clear diagnostics, we can’t, unfortunately, understand what goes wrong for you there. And since you can’t provide log files as is due to security reason, we have to move slowly step by step, trying to guess the reason. We are sorry it takes your time, but not sure in this situation we can do it differently. I can only assure you that we do our best to figure our the reason. Please stay tuned in the ticket.

  2. Abel says:

    Hi, I write a script to auto genereate custom targets from a Makefile by adding stuff to .idea/ directory, it didn’t work at all. But this isn’t the issue here, adding them manually is a pain accross multiple projects, toolchains, .., and there is several way to automate this process depending of the build system.
    Is there a plan for this ? If no, another way would be let the user specify (or not) at the project root something like a targets.{json,yaml,toml,…} which contains custom target defintions. Then it will be a lot easier for an user to automate the generation of this file (even by and).
    Thanks for all, love u JetBrains team

  3. Helge Penne says:

    clang-format for generated code is still not working. This bug is marked as fixed, but that is not correct:

    I add a function to a class in the header file, choose to to make CLion generate the source in the cpp file, and the function is added to the cpp file incorrectly formatted and I have run the reformat command to make the formatting correct.

    Please fix (again) before releasing.

    • Anastasia Kazakova says:

      Could you please provide a sample in the issue?

      • Helge Penne says:

        I’ve already spent a lot of time supporting the other bug, with no result yet. There is a limit to how much I can QA work I can do for you, especially considering that a lot of the bugs never get fixed.

        This is really simple. Please reopen the bug, try the description above and contact me if you really cannot reproduce this.

  4. Helge Penne says:

    Rename of function parameters with Shift-F6 is broken in this build. Rename of local variables work, but if I put the cursor at at a parameter in a function parameter list (in the function declaration or definition) and press Shift-F6 then nothing happens.

    That’s a pretty serious regression.

    If I put the cursor at the parameter name somewhere in the function where the parameter is used, then it works.

    You can probably tell that I’m getting increasingly frustrated with your quality control and ability to fix bugs instead of adding new features with new bugs. It seems to me that you may need to rethink your priorities and your development process and product management process before your product deteriorates further. What you customers need is a product that has fewer bugs and better performance. I don’t need any new features until that is achieved. None at all. Sure, there are features that I wish for, but that is not important in comparison to quality.

    The Facebook slogan of “move fast and break things” is not suitable for this kind of product.

    • Anastasia Kazakova says:

      I understand your disappointment, but for example, in this case I can’t reproduce an issue on my side. So that means there is some specific on your side. And that’s why we are running the EAP program. We have hundreds of automatic tests (including regression tests) + manual QA functional testing. However, there always exist cases and configurations which are very specific and can’t be covered. Luckily, our users report them, we investigate and fix. But in these cases we need to understand every single detail to get the reason of the issue.

      • Helge Penne says:

        You’ll need more than “hundreds of tests”. For a product of this complexity I would expect to see at least several thousand tests. If there are hundreds then your developers are not writing enough tests.

        I had a look in the log for any internal errors in regards to the Shift-F6. No trace of anything, so this code fails silently. Your developers should never be permitted write code that fails silently. There should at least be some error message in the log in cases like this to help debug things.

        I’m not sure how to help you further with this one, but you need to fix it.

        • Anastasia Kazakova says:

          Hundreds – was just a word I use, I can’t provide the number right now, but there are quite many of them. Let’s stop here with counting them.

          A sample to reproduce would help us a lot.

    • Anastasia Kazakova says:

      BTW, here we also failed to reproduce: We’ve tried several different samples, but no luck. Can you provide an example, please?

      • Helge Penne says:

        Try with a long parameter list (long enough to not fit on one line with the max line length specified in your clang-tidy parameters). The parameter list in the generated code in the cpp should be broken over several lines. This does not happen.

  5. Roman says:

    Are there any parsing speedups expected in near term?
    On my project Clion “Updating indices” is slower then clean build. And a difference is considerable, Clion needs needs about 5-10 minutes more then a debug build. This becomes really annoying when you need to switch repo branches often.
    Do you parse a project in a single thread? Or it configurable and I can specify number of threads to use somewhere?

Leave a Reply

Your email address will not be published. Required fields are marked *