Berlin, probably one of the most frequented KDE hacking locations in the world, saw another hack sprint from 13th to 21st of February. This time four of the KDevelop and five of the Kate developers shared a week of very productive programming. Additionally team members from Okteta and KDE on Windows joined the meeting.

Attendees

Many of the attendees found time for a quick group photo:



Group photo in front of the Brandenburger Tor Group photo in front of the Brandenburger Tor

In the group photo are, from left to right: Alexander Dymo (KDevelop), Joseph Wenninger (Kate), Aleix Pol (KDevelop), Niko Sams (KDevelop), Bernhard Beschow (Kate), Milian Wolff (Kate & KDevelop), Christoph Cullmann (Kate), Friedrich Kossebau (Okteta), Dominik Haumann (Kate). Erlend Hamberg (Kate) and Patrick Spendrin (KDE on Windows) also attended.

As usual the meeting was great fun and additionally quite some important work on the projects could get done. As also mentioned in

this blog developer meetings are really beneficial in several ways:

Social aspect: You get to know the other developers involved in the project in real life, which is a great motivation factor. This also happens at KDE's annual conference Akademy, although there are a lot more people.

Productivity: Since you are sitting next to each other, discussions about how to do what are very focused. It's amazing how quickly a project can evolve this way.

Knowledge Transfer: Since participants are experts in different areas, discussions lead to knowledge transfer. This is essential, as sometimes developers have very few free time to contributes to a project. Spreading the knowledge helps a lot to keep the project alive.

Steady Contributions: We are always open for new contributors. Just send a patch, get commit access and join development. Experience shows that participants of a developer meeting usually contribute for years to come.

Kate

With eight days this sprint was the longest the Kate developers ever did. A huge amount of time was spent on bug triaging (checking) and fixing. A total of 150 bugs got triaged, especially by Dominik and Christoph, who also set a new record by fixing a bug in only 56 seconds. Granted, he'd be even faster if Milian would have told him the bug number earlier ;-)

But not only were bugs triaged, they also got closed. Together with the new features a total of 159 commits got done during the sprint: many memory leaks and crashes got fixed. Moreover, besides many specific speed improvements, the overall performance was increased. JavaScript support and indenters got new features and became more stable. Internals were refactored (esp. the search by Bernhard) and the Snippet plugin got some polish by Joseph. Erlend continued work on the VI mode. By cooperating with Bernhard, the search integration should be better in the future. Immediate results are that the "search for next/previous occurrence of word under cursor" commands now work. An effort to support vim's visual block mode was also begun.

All in all one can say that the sprint results in a faster, more stable and more mature Kate. The good thing of course is that many of the speed and stability improvements were backported and hence users can take advantage of them starting with Kate 3.4.1, part of the recently released KDE Software Compilation 4.4.1.

On a technical note, Kate development moved to gitorious. This move is motivated by the fact that building only KTextEditor, Kate Part, KWrite and Kate is much faster and especially easier compared to building the KDE modules kdesupport, kdelibs, kdepimlibs, kdebase and kdesdk. This lowers the barrier for new developers interested in Kate development. For Kate in KDE nothing changes, though: all changes on gitorious will be merged back to the main KDE development line and vice versa. Moving upstream development to git also brought new, fresh air into the discussion about all of KDE development moving to git. So stay tuned!

KDevelop





KDevelop With Ruby On Rails Project KDevelop With Ruby On Rails Project

Even though the numbers are not so spectacular for KDevelop, the developers did not stand idly by: since a first stable release of KDevelop 4 is on the horizon, the developers concentrated on stability and polishing. Especially with the help of the Kate developers on the spot some of the more evasive bugs could be solved in the Kate Part. Overall a total of 15 Bugs got closed during the sprint.

Alexander Dymo managed to decrease the memory consumption of the C++-language plugin for certain cases. He also reviewed parts of the UI together with Niko and created a list of things that will hopefully get sorted out before the launch of KDevelop 4. Finally he also put some work into the experimental Ruby language plugin, finally making it useful for himself and hopefully others who are Ruby on Rails developers.

Niko Sams put some more work into the debugger integration, which now makes it possible to open any arbitrary binary inside the embedded debugger in KDevelop. Furthermore he released the first beta version of the XDebug plugin, which makes it possible to debug PHP applications in KDevelop. Additionally, his experimental CSS support plugin saw more work. And last but not least managed Niko to greatly increase the performance of auto completion in the PHP plugin, resulting in a much nicer experience.

VCS integration got some love by Aleix Pol. Especially the still experimental Git plugin was improved and can hopefully be made stable in time for the move of KDE development to Git.





Quick Open Rails Views Quick Open Rails Views

Milian Wolff continued to improve the Snippet plugin for KDevelop, integrating the GHNS framework and making it generally more usable. Together with Niko he also continued to polish and improve the PHP plugin for KDevelop.

Friedrich Kossebau, while attending the sprint to work on the integration of Okteta in KDevelop, also used the occasion to get first-hand support for the initial work on a plugin for the management of strings written for the UI. These will be shown in a separate browser toolview as well as being additionally used for the auto completion, along with help on semantic markup and context tags. This plugin had a blazing start and will hopefully see more work in the upcoming months.

KDevelop 4 now in stabilization phase

In related KDevelop news, Andreas Pakulat has announced that the last Beta release of KDevelop 4.0 is now available. This release marks the end of all feature development and the beginning of the stabilization phase. Finally KDevelop 4.0 is on the last meters towards its first Platform 4 stable release. More details on the exact dates please are available in the release

schedule.

In addition to new features coming from the developer meeting, the majority of changes are bugfixes, this ranges from supporting git-type diffs in the patch-review, over improvements for the launch-configurations to various crash fixes related to parsing.

You can find the source packages on the KDE mirrors and there are instructions for compiling. You can also check out a comparison of KDevelop 3 and 4.

Okteta





Okteta plug in for KDevelop Okteta plug in for KDevelop

With the attendance of Okteta author Friedrich Kossebau, the complete team of everybody's favorite KDE hex editor was present. He managed to properly integrate Okteta into KDevelop, by creating a dedicated new KDevelop plug in. This will make it possible to view and edit the raw data of any file from inside KDevelop. The only show-stopper left is missing support for opening files in the hex-editor mode. The basic work was completed in just three days and proved the strong and flexible architecture of KDevelop as well as the possibilities enabled by the modular construction of Okteta. Despite this work Okteta will also continue to be available as a stand-alone program. Besides this exciting feature, Friedrich worked on a variety of other things and improvements, including the earlier mentioned string management plugin.

Conclusion

As usual, putting smart minds together at a KDE developer meeting turned out to be a tremendous success and the attendees unanimously concurred that this experience should be repeated. Especially sharing knowledge between the KDevelop and Kate developers turned out to be very beneficial and made it possible to quickly sort out quite a few issues and discuss fundamental design plans.