< KDevelop
Revision as of 22:36, 9 December 2012 by Milian (talk | contribs)

Kate/KDevelop October Sprint: What's new in KDevelop

This is the second part of the article on the joint Kate/KDevelop development sprint that took place in Vienna from the 23rd to 29th of October this year.

If you are interested in some background and what has happened in Kate-land during the sprint, make sure to read the first part of this article [1]. This issue will give an overview over the interesting changes in KDevelop.

Many thanks here once more to the KDE e.V. and the sponsors and donors [2] for funding the development sprint. Special thanks go to Joseph Wenninger [3] for not only organizing the sprint but also funding parts of it. And finally thanks again to Vivid Planet [4] for inviting us to a great dinner.

[1]: http://dot.kde.org/2012/11/24/katekdevelop-october-sprint-whats-new-kate [2] http://ev.kde.org/getinvolved/supporting-members.php [3] http://www.jowenn.net/ [4] http://www.vivid-planet.com/

What's new in KDevelop

   git log --since=22.10.2012 --until=29.10.2012 --oneline --no-merges | grep -v SILENT | wc -l

The attending KDevelop hackers have been very busy and productive during the sprint. About 550 commits have been made in just one week. They address performance issues, fix bugs, polish our user interface or integrate new features.

  • kdevplatform: 271 commits
  • kdevelop: 144 commits
  • kdev-php: 10 commits
  • kdev-ruby: 82
  • kdev-python: 15
  • kdev-xdebug: 21
  • kdev-sql: 5

total: ~550

Unit Test

During the sprint we sat together and did a final review of the work done by Miha to integrate unit test support with KDevelop. Make sure to read his report [5] on the new testing framework.

While most of this work has been done by Miha before the sprint, Niko and Aleix where busy polishing its implementation during the sprint. Thanks to that it is now possible to easily possible to run and debug tests in KDevelop. Currently we have support for CTest/QTestLib and PHPUnit. As usual this framework is easily extensible through plugins for other frameworks.

[image: testing.png title:Unit Test Integration]

[5]: http://noughmad.com/2012/04/24/becoming-a-kdeveloper/

File/Project Templates

Unit test support was something that Miha worked on in his spare time. This year he was also a GSOC student [6] for KDevelop: He worked hard on an improved project templates support and - more importantly - wrote a new Grantlee based "file template" feature. This allows you to create snippets for new files and replaces and extends the existing "Create new Class" wizard we had in KDevelop up until now. Make sure to read his final GSOC report on the matter [7].

All this work was also finally merged into master during the sprint in Vienna. Aleix and Milian polished the implementation, while Alexander and Miquel created proper Ruby file templates. The good thing is that you can create your own templates [8] and share them with your colleagues or other KDevelop users. If you wrote a good general purpose template, you could also sent it to us and we'll include it with the rest of the existing examples.

[image: filetemplates.png title:File Templates]

[6]: http://www.google-melange.com/gsoc/proposal/review/google/gsoc2012/noughmad/37002 [7]: http://noughmad.com/2012/08/19/gsoc-templates-in-kdevelop-final-report/ [8]: http://techbase.kde.org/Projects/KDevelop4/File_template_specification


- python: polishing for first release: memory consumption, crashes, bugfixes http://scummos.blogspot.de/2012/10/vienna-kdevkate-sprint-first-kdev.html http://scummos.blogspot.de/2012/10/vienna-kdevkate-sprint-kdevelop.html afterwards: http://scummos.blogspot.de/2012/11/kdev-python-beta-2-released.html http://scummos.blogspot.de/2012/11/kdev-python-14-stable-released.html

- beautifying kdevelop configuration, launch config http://scummos.blogspot.de/2012/10/vienna-kdevkate-sprint-kdevelop.html


- bug fixing & helping out wherever required - optimizing quick open - reviewing & merging: review requests, tests integration, file templates,

 aleix's thesis

- improved Open With plugin - uses always in toolview - review file if class is renamed (with aleix) - QMLJS plugin, improving framework to share more code


- reviewing / merging / improving tests integration, file templates,

 thesis work

- improved project dashboard, welcome page - beautifying kdevelop configuration - improved output model - improved 'pick session' dialog - launch configuration improvements (with sven) - import/creation of QMLJS plugin using copy of QtCreator sources - various CMake support bug fixes, improvements - plasmoid launcher


- ruby? class template, testing with miquel, bug fixing, performance http://adymo.blogspot.de/2012/10/katekdevelop-sprint-new-ruby-language.html http://adymo.blogspot.de/2012/10/katekdevelop-sprint-more-progress-with.html - sublime bugfixes and cleanup, including investigation of moving working sets

 into a plugin

- duchainify improvements


- c++ bug fixes - template support: drastically improved template specialization support - moving cache to .cache/kdevduchain, $XDG_CACHE_HOME or $KDEV_DUCHAIN_DIR - work on lookahead code completion


- bug fixes in generic manager - test integration - various debugger bug fixes - git support bug fixes, performance improvements - quanta plugins to playground/extragear (upload, sql, xdebug, ...) http://nikosams.blogspot.de/2012/11/quanta-update.html http://nikosams.blogspot.de/2012/10/execute-sql-kdevelop-plugin.html http://nikosams.blogspot.de/2012/10/kdevelop-xdebug-php-debugger-beta.html http://nikosams.blogspot.de/2012/11/kdevelop-upload-plugin-like-quanta- had.html - improved file system toolview (multiple, bookmarks) - drag'n'drop in project view -> context menu http://nikosams.blogspot.de/2012/10/kdevelop-project-and-filesystem-view.html


- ruby: many bug fixes and optimizations. Added more integration with Rails projects.

Content is available under Creative Commons License SA 4.0 unless otherwise noted.