KDevelop 4.3.0 Final Released With Basic C++11 Support

After about nine months of extensive development, the KDevelop team is happy to announce the immediate availability of KDevelop 4.3. As usual, this feature release comes packed with new features, bug fixes and improved performance.

Here are some statistics about the 4.3 release to entice you to upgrade as soon as possible - of course something we recommend everyone should do!

Package
Commits since 4.2.3
Diffstat
kdevplatform
766
615 files changed, 22194 insertions(+), 8377 deletions(-)
kdevelop
542
376 files changed, 29167 insertions(+), 15793 deletions(-)
kdev-php
39
33 files changed, 565 insertions(+), 381 deletions(-)

New Features and Other Notable Changes

This new release has seen lots of work from various contributors. A few noteworthy items are highlighted in the following but this list is far from complete. Try out the new release and see for yourself!

Basic C++11 Support

The new C++ standard, which was released last year, is now partially suppported in KDevelop. At least the parser should not trip over new language features such as initializer lists, lambdas, range-based for loops or variadic templates. Similarily, explicitly defaulted or deleted methods, auto, rvalue-references and many more features are supported. Many of the new stdlib classes can be used as well. Keep in mind though that the new C++ standard contains lots of new features, and we are still lacking support for quite a few things. But we will continue to improve this in the next releases, and provide you with a rock-solid C++11 coding environment.

Editor Restoration

With KDevelop 4.3 we finally catch up with Kate when it comes to closing and reopening files: folded code regions, bookmarks etc. are now properly restored for the last 20 opened files.

Enhanced VCS Integration

Some work went into improving the Version Control System (VCS) integration too, mostly on two fronts—creating a VCS Changes tool view and improving the Review Mode.

VCS Changes show you what files have changed in your project since the last commit. It is useful to keep track of what you are working on and to decide if there should be a commit.

We improved the Review mode by making it more responsive to the user by updating the view while the user is working on the changes.

KDE Projects Integration

The KDE Projects infrastructure was adapted to support projects.kde.org. This provides you with a list of all KDE projects together with the ability to retrieve them in order to start contributing to KDE as fast as possible.

Improved Konsole Integration

The embedded Konsole in KDevelop has seen some improvements—when you use Bash, it is now possible to control the surrounding KDevelop session, i.e. to open files, create new ones, search through files and more. Type help! to find out what you can do there now.

Source Formatting

Integrated source formatting got a bit better—you can now let it override the indentation settings of the embedded editor. Furthermore the "Custom Script Formatter", formerly known to support Gnu Indent, was extended to make it even easier to support custom formatting scripts. One example is the new kdev_format_source.sh script, shipped with KDevelop, which allows fine-grained formatting rules by placing format_sources meta-files into the project's file system. Especially paired with the powerful uncrustify formatter, this enables you to work seamlessly on big, heterogeneously formatted projects.

Various Bugfixes

We fixed over 170 bugs since KDevelop 4.2.3. Among others, SVN 1.7 is now properly supported, various pieces of C++ code got improved, the GDB plugin got better and lots of crashes and other issues were resolved.

Optimizations

Besides adding new features and improving stability, this release also comes with some noteworthy performance improvements—opening large projects with tons of files should be considerably faster now. Similarily, Quickopen is now even faster, and searching with it is more fluid when dealing with large projects.

Forum

Our new forum is the place to go if you need KDevelop support. Our mailing lists as well as the #kdevelop IRC channel on freenode are also available, and we are happy to take your questions.

Download

Your distribution should provide you with updated binary packages. If you want to have a look at changelogs though or really want to compile it on your own, then head over to the KDE mirrors:

http://download.kde.org/download.php?url=stable/kdevelop/4.3.0/src/

Hashes

To verify the correctness of your downloaded packages, you can use the following SHA1 and MD5 hashes:

MD5 sums:

24915ac7c0340d6848abd3ba6a355df6  kdevelop-4.3.0.tar.bz2
d8c10d9d42ae412b8a968b7ab1fbffd9  kdevelop-php-1.3.0.tar.bz2
866e597b1f843ed48edbd48331a1d6cf  kdevelop-php-docs-1.3.0.tar.bz2
0db26d2927abac015ae960d67a144c95  kdevplatform-1.3.0.tar.bz2

SHA1 sums:

06a91f9ae0fc15bcec12a92bd9c30a7517b3b8e0  kdevelop-4.3.0.tar.bz2
8ae280cf5085c473b6b95b3683629b49d19dfe12  kdevelop-php-1.3.0.tar.bz2
398001b7d192af4c71bddb246dfd59d61db02618  kdevelop-php-docs-1.3.0.tar.bz2
990ec335418445ae11b8ee11aa9a25729994de59  kdevplatform-1.3.0.tar.bz2

Wrapup

A big thank you to all the contributors who made this release possible. Many thanks to our users as well, for reporting bugs and making it such a fun and rewarding task to work on KDevelop!

Configure -std=c++0x

What I must do to enable c++11?
I could not find any documentation for -std=c++0x
What I need to change to build/compile range based loop?

How to enable C++11 mode?

error: range-based-for loops are not allowed in C++98 mode

Enable C++11 in CMake

In CMake you mean?

I use something like

add_definitions("-std=c++11")

or c++0x for older GCC versions.

In KDevelops editor language integration, the C++11 mode is always enabled

Excellent! Thanks a lot!

This is awesome. I'm working on a project where we massively use C++11 features, and the experience is so much better now!

Had trouble installing it on my Debian testing, but it was worth it. Thanks a lot, guys!

Reply to comment | KDevelop

It even came complete with a cheap gig bag for epiphone dot cable and a pair
of alleged armed robbers by using a kitchen pot. Four years later, he's still rocking the tune. So this thin solder served me well during the job. Really any sort of guarantee for your purchase. You can only play it legally in California, Colorado and a few names you suggest.

Here is my blog post: guitarkick.com

When you pan to support python?

Where is python support and how it is going? Is it gone?

It's Coming!

Sven Brauch is busily working on python support and it's coming along nicely. See: http://quickgit.kde.org/?p=kdev-python.git&a=summary

Thanks a million

KDevelop rocks and now even more!

Thanks a million for such a masterpiece!!

Many thanks

Thank you very much for the good work. Your program is really a joy to use every day for various programming languages.

Thanks!

Thanks for development of this software! I really appreciate the "KDE Projects Integration" feature. I'm eager to try it out soon and hopefully start contributing as well. Cheers!

The quality of being awesome

That's awesomeness, that's kdevelop!

Many thanks...

---------
@ichrammm

Thanks !

I'm a Kate user, mainly for PHP code. I tried KDevelop for the first time a few days ago but it crashed when parsing a brand new Symfony2 (www.symfony.com) project.I will try again when Kubuntu packages are available and do a bug report (if anybody is interested to import a new symfony project with the new released version and write a feedback here, I'll be very glad :) )

Anyway, I'm looking forward to use it everyday very soon :)

Don't works

Same anonymous here, I tried with the newly released Kubuntu packages and Kdevelop still crashes. I will take the time to do a bug report.

Great job!

As always: great job and thank you for the best C++ IDE accross all platforms!

great news

hello there,
nice to hear that KDevelop 4.3 is finally available. Would be great if you're going to use clang's analyzer someday that you do not have to consider code analysing yourself anymore. Furthermore, I hope you will concentrate on valgrind and Java support (which would increase the number of users massively I guess).
You've done a great job, really, I thank all of you for being able to use this IDE :)

valgrind

Valgrind support is actually cooking already thanks to some people working on it: https://projects.kde.org/kdev-valgrind

Regarding Java support: this requires someone to step up and work on it. Since I do not use Java I won't work on adding support for it - something that is probably true for all the current KDevelop hackers. If you are interested in working on it, please step up and contact us!

PS: Personally, I think it's better to have a small userbase but give them a really good experience, instead of trying to give a little bit for everyone but just in mediocre quality.

Cheers