KDevelop 5.0.2 released for Windows and Linux

Four weeks after the release of KDevelop 5.0.1, we are happy to announce the availability of KDevelop 5.0.2, a second stabilization release in the 5.0 series. We highly recommend to update to version 5.0.2 if you are currently using version 5.0.1 or 5.0.0.

Along with the source code, we release an updated 64-bit AppImage for Linux as well as updated installers for Microsoft Windows. We've got the pleasure to announce a 32-bit version of KDevelop for Windows now, too!

You can find all the downloads on our download page.

KDevelop with two editors open in a split view

Notable issues fixed in 5.0.2 are:

  • Fix a locking issue in the background parser, causing frequent crashes on Windows (3c395340d)
  • Fix broken search in the documentation view (0602281c)
  • Fix various issues with the breakpoints view (cba54572)
  • Fix a possible crash when activating a clang FixIt (BR: 369176)
  • Fix a crash when performing various actions with the Make plugin disabled (BR: 369326)
  • Fix text files being parsed as CMake under some circumstances, leading to bad performance and crashes
  • Use correct font in documentation view (BR: 285162)
  • Fix a crash when clicking "Rename declaration" without an editor being open (22bdccb1)
  • Fix "Download more ..." feature not working on some systems (4c4500bf)
  • Fix "Select next/previous toolview" behaving incorrectly in some cases (24d3e3bb)
  • Fix "Hide/Restore docks" behaving incorrectly in some cases (daeed5f1)
  • Fix "Install as root" action not working (30a66c3f)
  • Fix CMake build plugin sometimes rebuilding everything when it should not (17b6499e)
  • Various UI improvements.

Fixes in the Windows installers:

  • Update Sonnet in the Windows installer which led to crashes when turning on Automatic Spell Checking [BR: 370470]
  • Fix heap corruption after start / immediately after opening folder [BR: 370495]

The source code can be downloaded from http://download.kde.org/stable/kdevelop/5.0.2/src/.

You can find the binaries for Windows and Linux on our download page.

The source code archives and their sha-256 checksums are

24ec89b4edc854808ce11a8e8b0aeb853f11926b26029bc46c80f901da00aec7  kdev-php-5.0.2.tar.xz
5d160951933e2f6742a443e19d24e0c93a82567244500e4bb6a3124e5e4e11ff  kdev-python-5.0.2.tar.xz
9b017901167723230dee8b565cdc7b0e61762415ffcc0a32708f04f7ab668666  kdevelop-5.0.2.tar.xz
a7f311198bb72f5fee064d99055e8df39ecf4e9066fe5c0ff901ee8c24d960ec  kdevplatform-5.0.2.tar.xz

For verifying integrity and authenticity of the files, the preferred method is to use the provided GPG signature files (.sig).
All downloads are signed with the GPG key of Sven Brauch, fingerprint 329F D02C 5AA4 8FCC 77A4  BBF0 AC44 AC6D B297 79E6.

Comments

Good show! I've updated the FreeBSD packaging of KDevelop 5.0 to this latest release (although it'll still be a while before that hits the official package servers). Thanks for creating KDevelop.

Great, hope it can solve my problem of "Unable to resolve symbol of KDE_PLUGIN_VERSION" of 5.0.1.

Btw, with 5.0.1 I can only have templates for KDE4, but no templates of KDE5, I think this may caused by the issue I mentioned above, will try the new one.

I'm a bit confused about how the Windows version of 5.0 works. My understanding was that your using clang as the backend for all syntax highlighting and understanding of the code in version 5.0 of KDevelop. How does this work when on the Windows setup docs you say you can only use GCC (via MinGW) or Visual Studio? Does this mean that you are using Visual Studio for the Syntax highlighting and error messages, etc? Does that mean that your using the old parser that wasn't great? If this is the case is there any real reason to use KDevelop over other IDEs on Windows? Really hoping I am just missing something as KDevelop 5 on Linux is amazing and I would love to replace Visual Studio with it there as well.

Permalink

In reply to by James (not verified)

Hey. For 5.0 we use the Clang backend on all platforms, that is Linux, OS X and Windows. All our C/C++ language support from 5.0 onwards is based on libclang (cf. http://clang.llvm.org/doxygen/group__CINDEX.html).

We don't use VS nor do we use our "old parser". You can also use KDevelop with any compiler on Windows, be it MinGW, Visual Studio or even Clang on Windows; we don't actually care.

What about just downloading the Windows version and giving it a spin? Would love to hear your feedback!

Permalink

In reply to by kfunk

I also was confused by this. The instructions you link to on the download page say:
"Note that we don't ship a C/C++ compiler. Instructions on how to set up a compiler and build system for C++ development can be found here."

Those instructions linked there say that you need MinGW and Visual Studio and cmake.

Regardless, I did try installing clang binaries and cmake. When I launch I get an error
"Could not load project management plugin KDevCMakeManager."

Also I am unable to compile or execute anything.

Permalink

In reply to by Jim (not verified)

Yeah, please make sure cmake.exe is in system-wide PATH. We definitely need to communicate that better to the end user.

Also, you need either MinGW orVisual Studio. Just one of these. Whatever the project you want to compile requires.

Now I'm really confused. In you previous comment you stated:
"For 5.0 we use the Clang backend on all platforms, that is Linux, OS X and Windows. All our C/C++ language support from 5.0 onwards is based on libclang (cf. http://clang.llvm.org/doxygen/group__CINDEX.html).

We don't use VS nor do we use our "old parser". You can also use KDevelop with any compiler on Windows, be it MinGW, Visual Studio or even Clang on Windows; we don't actually care."

But now you mentioned "Also, you need either MinGW or Visual Studio. Just one of these. Whatever the project you want to compile requires."

Thanks for your replies but I'm really confused. Do you use clang or not on windows? If you have to use MinGW or the Visual Studio compiler why use Kdevelop 5.0 versus any other IDE on windows? What is parsing code on the windows version of KDevelop 5.0 Clang, MinGW or VS compiler?

Permalink

In reply to by Jim (not verified)

For semantic highlighting of the C/C++ code we use libclang. On all platforms, even on Windows. The KDevelop installer we provide ships a libclang binary.

For just browsing through code using KDevelop for Windows, you don't need anything, it's all there. Only if you intend to build your project on Windows, you need either MinGW, VC++.

Hope that makes it clear now :)

Permalink

In reply to by Jim (not verified)

There are two entirely separate things which many C++ IDEs historically mix, unfortunately.

On the one hand, there's your toolchain, which you use to compile your code. What we _suggest_ to use is CMake as the build system and Microsoft's compiler, but anything else is possible as well -- KDevelop just invokes those tools as external programs and doesn't care much.

On the other hand, and completely invisible to you normally, is the tooling the IDE uses internally to get information from your code. For this, we use libclang. This is for internal use by the IDE only though, it is not possible to use what we ship for compiling C++ code.

We use clang everywhere. You still need your own compiler, be it clang, VS or gcc, to compile your code.

Just tried out the linux AppImage on our Debian 7 (KDE 4.8) workplace platform. I wasn't able to run the image directly (missing fuse), but after renaming the image with an .iso extension, extracting the contents in ark, and launching AppRun, I am happy to see it running well! As we will be on Debian 7 for a little while longer, it's great to see that we will be able to run the latest KDevelop on an "old" system. Kudos!

One item that wasn't working out of the box is spellcheck: Settings > Configure KDevelop > Editor > Editing > Spellcheck would display "No backend found for spell checking". After grabbing the debian sonnet-plugins package and extracting aspell.so, hspell.so, and hunspell.so to usr/lib/qt5/plugins/kf5/sonnet/ (in the tree extracted from the AppImage), spellchecking is back in business. Perhaps you can include these libs in future AppImage distributions.

On kdevelop 4.7.2 we rely heavily on the kdevperforce and kdevcppcheck plugins. Any chance the kdevelop 5 libs for these plugins can be distributed as well, or made available in a separate package? Unfortunately I have no straightforward means of building them...

Permalink

In reply to by Martin (not verified)

One item that wasn't working out of the box is spellcheck

For this I've created https://phabricator.kde.org/T4100 -- you'll probably get that in another AppImage update.

On kdevelop 4.7.2 we rely heavily on the kdevperforce and kdevcppcheck plugins

kdev-perforce will be part of 5.1. You'll get that in the 5.1 AppImage.

kdev-cppcheck unfortunately isn't released yet. We'd like to only ship released & tested modules in the AppImage. Let's see how far we get with cppcheck, maybe we can integrate it into KDevelop proper -- contributions welcome!

Thanks Kevin, really appreciate your efforts! Great to hear about the upcoming kdev-perforce inclusion into the main branch. Maybe the kdev-cppcheck situation will give me the boost to look into the code at home. That said, I'm looking forward to seeing the semantic analyzer in action in the current 5.0.2 build.

Fantastic IDE! Just a few things i have noticed though. I used to have a a script for generating getters and setters for selected class variables that was available for my debian package installed kdevelop 4 but is no longer available in the AppImage i downloaded for this version. It also freezes on me if I move into source a method definition where the corrosponding source file has incomplete declarations in it.

Permalink

In reply to by Bwana (not verified)

Can you please report a bug about the crash? That sounds like something we should fix.

What kind of script was that, a kate script ...? This kind of thing should still work, you probably need to move it to a different place though (~/.local/share/applications is a good bet).

Permalink

In reply to by sbrauch

Yes it is a Kate script. I will try putting it in a different location. As for the crash, i will submit it as a bug. I replicated it as follows. Create a source and header file, say foo.h and foo.cpp

In the foo.h i have this:


#ifndef FOO_H
#define FOO_H


namespace A {
 namespace B {

class Foo
{
public:
    Foo(){}
    
};
 }   
}
#endif // FOO_H

in the foo.cpp i have no namespace declarations at all.. so just:


#include "foo.h"

If i now try move into code the body of the constructor (ctrl+alt+s) kdevelop hangs.

I seem to have recently lost spell checking. In the config setting I see a message that tells me no backend was found for spell checking. I know spell check has worked for me in the past, so I'm not sure what's going on. Is this a bug and, if so, what might be the best way to work around it? Thanks.

Thanks for a great product!

When I read about your decisions in your very early announcements on KDev 5 to use the clang modules for the C++ parsing and throw out your own implementation as well as to use the cmake's own meta data for cmake analysis, I was very impressed. For two reasons. Firstly, of course, from a technically point of view it was, in my opinion, a very good decision, but also because such a decision has an emotional and personal aspect: You have invested a lot of effort in your own parser, but then you decide to throw it all away, for a better, external solution. Following something like that through is what separates the men from the boys. Congratulations!

I have been using KDev 5 since Kevin's blog post on how to build KDev 5 (in the meantime I have switched to the app image you provide. BTW using AppImage is another good decision.). It is probably the only IDE I have used lately that never errs on the semantic analysis. The only thing I would wish for is less latency in the analysis.

Anyway, thanks again for this excellent software.

Hello, does this new version fix regression appearing when moving from kdevelop 4.7.x to kdevelop 5.0.x ? Mainly those about non cmake projects (header directory not recognized anymore, when compiling and clicking on a file where an error/warning occurs, a new file is created instead of opening the good file, completion became hazardous...). Thanks in advance.

Overall i find KDevelop a great IDE with maybe a tolerable bug here and there but the biggest issue is the background parser. i.e. your clang parser. For a biggish session consisting of about 5 or 6 medium sized project it chokes And when this happens the editor freezed while the autocomplete is looking for info on the item being typed... Once this is sorted it will be a fantastic IDE.