Google just announced the official and final list of accepted students for the SoC program. KDE got more accepted students this year than past, so its a big success for us all. This will hopefully again be a successful SoC season for KDE, bringing new contributors and implementing lots of cool ideas.
The KDevelop team got its share too, 2 students will work on the codebase. Aleix Pol is going to improve the community integration in KDevelop, targeting things such as easily finding the communication channels, easily getting the source and contributing patches back to the community. The other is improving the Quanta codebase (that is based on KDevPlatform like KDevelop) to bring it closer to a first release, this will be done by Milian Wolff. This is a very important SoC project for all of KDE as it’ll revive a very successful KDE3 app and the voting clearly showed that there are many people missing it badly.
I’m looking forward to the coding period and the results and hope that I’ll enjoy this SoC as mentor just like the past ones.
I’m Mentor again this year in Google’s Summer of Code. I’m again mentoring a KDevelop4 project, the title is: xUnit test harness for KDevelop4.
Manuel Breugelmans was chosen do to the project, he’s a student at the university of Antwerp in Belgium. He’s a new developer in the Qt/KDE/KDevelop world, but has already quite good C++ skills. Apparently he also has quite some knowledge about unit testing as he’s writing a tool to analyze xUnit code and visualize it.
The project itself aims to provide some infrastructure to ease the creation and execution of tests within KDevelop4, the most important deliverables are stub test template creation, report and coverage framework and a graphical test runner. The current plan includes supporting QtTest, CppUnit, Check and PyUnit.
I’m confident this will be a success as Manuel has already dived into possible solutions for some things, including contacting authors of existing test-runner tools to talk about collaboration.
So coding for SoC ended 2 days ago and the KDevelop Python support suceeded🙂
Piyush didn’t finish everything as was originally planned due to some difficulties he had while diving into the kdevelop language support. Still we have code highlighting on top of what kate already does, which highlights functions, classes and arguments. Interested people can find a screenshot on his blog.
For me it was a quite interesting experience, I probably spent too much time mentoring (although Piyush probably thinks different🙂 but the outcome is quite good. I would never have had the energy to work that much on the python support all on my own and Piyush will continue to work on it, which is really great and shows the success as well – thats what GSoC is about after all, acquiring new people for open source projects.
A short update on the progress of my student Piyush Verma, who’s hard working on the python parser. We finally managed to fix all bugs in the parser we could encounter. That is we both ran the parser on real world projects we had lying around and it didn’t fail parsing any of the files. That means pretty much all of the Python 2.4 language can be parsed (I guess somebody can find corner cases if he wants to). Additional support for Python 2.5 (I don’t think Python 2.3 is worth the effort) will be added after SoC (hopefully😉.
Also during the last week we started to use acunote.com for managing the work in SoC and it has proved itself helpful to communicate tasks (in this case mostly the bugs) and patches this way. More about acunote.com can be found in my recent KDevelop blog. The parser also is now usable as a shared library making it possible to write unit tests for it with the Qt Test framework and use it later on in the KDevelop4 language support.
The upcoming tasks for Piyush include creating a suitable AST by annotating the kdevelop-pg grammar and then starting to look into duchain and integration with KDevelop4. So the progress he’s making is quite good, although the harder parts are comming now. I’m pretty confident that he’ll succeed bringing Python support into KDevelop4🙂