Only three months after the last feature release, the KDevelop hackers are proud and happy to announce the release of KDevelop 4.2. As usual, we also make available updated versions of the KDevelop PHP plugins.

You should find that KDevelop 4.2 is significantly more stable and polished than 4.1, with some important changes under the hood; we suggest that everyone updates to this version, if possible.

Please note that this version is required for users of KDE Platform 4.6 or higher. It will also work with KDE Platform 4.5 but Platform 4.4 or older are not supported.

Here are some statistics to show you how active the last months were for us:

Package Commits since 4.1 Diffstat KDevplatform 603 452 files changed, 14540 insertions(+), 10584 deletions(-) KDevelop 317 230 files changed, 7666 insertions(+), 2794 deletions(-) KDev-PHP 57 61 files changed, 733 insertions(+), 727 deletions(-) KDev-PHP-Docs 26 5 files changed, 39 insertions(+), 56 deletions(-)

New Features and other Notable Changes

KTextEditor::MovingInterface

David Nolden almost single handedly ported the KDevelop code to a new Kate architecture. This should hopefully make KDevelop more stable and better suited for future development.

Find and Replace in Files



Find and replace Find and replace

KDevelop 4 came with a "Find in Files" plugin from the start, but many users missed having "search and replace" functionality in it. A group of French students (Silvere Lestang, Julien Desgats, Benjamin Port) working on KDevelop as a university project, finally tackled this and added this feature.

More Embedded Documentation



Embedded documentation Embedded documentation

The same group of students worked on other parts of KDevelop as well. Benjamin Port took care of the QtHelp plugin, which now supports adding arbitrary `.qch` files.

Yannik Motta and Benjamin Port also wrote a completely new documentation plugin, that integrates Man pages into KDevelop.

Improved Problems Toolview



Problems toolview Problems toolview

Thanks to Dmitry Risenberg, the toolview that shows problems in your projects is largely improved: It is now capable of tracking TODO and FIXME comments, with which you can easily locate outstanding issues in your code. And for a better overview, the reported problems may now be filtered by severity (error/warning/hint) and the scope can be restricted to e.g. only the files of the current project. Optionally, the toolview also shows errors in imported/included files.

Improved C++ Support

KDevelop 4.2 comes with much improved C++ support, thanks to the contributions of Ciprian Ciubotariu, who added Argument-Dependent-Lookup functionality, and Dmitry Risenberg, who made the preprocessor implementation more standards compliant. This results in better support for many projects, most notably those using Boost (e.g. Boost::Test) and others.

Rename Assistant



Rename assistant Rename assistant

Olivier Jean de Gaalon contributed a new C++ code assistant: Whenever you rename the declaration of a local variable, it offers you to rename all uses of that declaration as well. He also improved the design of the assistants, making them more visually pleasing.

Better Handling of Locked Sessions



Locked session handling Locked session handling

When you try to open an already opened session in KDevelop, it will now raise the appropriate window. When it cannot find such a window, e.g. due to a crash, a dialog will be shown that enables you to remove the lockfile and continue the startup process.

Other notable changes

There were also some other important improvements and additions in this release:

Improvements to file and folder handling by Olivier Jean de Gaalon, in particular for CMake support

Milian Wolff fixed the PHP support to now highlight variables in the global context in different colors, as was done before in functions and methods (screenshot).

Eugene Agafonov added a filter to the Projects toolview to help you find files in it (screenshot).

Milian also made KDevelop optionally remember the choice to open given types of files in external applications, which is e.g. useful to always open .ui files in QtDesigner.

files in QtDesigner. Internal code for WorkingSets got refactored and cleaned up, which should result in better performance and more stability.

Thanks to all contributors, especially to the numerous new names in this list. Lets look forward to a great KDevelop 4.3 release later this year.