Google's Summer of Code and students working on numerous KDE projects during has a long and successful tradition for KDE. KDE, being a big organization with a community it and many projects different facets provides a lot of opportunities for students to participate in this program and to contribute to an open-source project that they are interested in.
o surprise this year many students decided to bepart of the KDE.
e prepared for a long post about many interesting projects and great results achieved during GSoC.
1. Porting activities
Many KDE projects are still in the process of porting the code to the new frameworks Qt5/QtQuick and KDE Frameworks 5 (KF5) - the next generation of KDE libraries, modularized and optimized for easy integration in other applications. This year several students helped to make this transition .
Aroonav Mishra portedAmarok to Qt5/KF5. R. Harish did this for Kopete.
The educational entertainment software GCompris welcomes any help to finish this move.
Mohamed Anwer digiKam. In digiKam, the communication with the database was done in KIO-slaves, running in separate process. To increase the portability of the application and to reduce the serialization of data between different processes, the decision was made to change the architecture and to move to Qt5's threads. The new thread-based implementation done during this smmer resulted in a much better performance. Also, other the source code a wrapper for all KIO-related stuff was provided. The implementation behind this wrapper, which optionally doesn't use KIO anymore, compildigiKam as a pure Qt-application without any dependency on KIO
Vyacheslav Matyushin ported KSystemLogutility showing different system protocols to KF5. While porting the code, he also fixed many bugs and memory leaks. In addition to that, many new features were added like the support for local and remote journal, filtering of the log entries by priority, improved configuration dialog.
Main window showing log entires colored according to their priority. By default, all priorities are displayed. User can select priorities to be displayed
Journald mode configuration widget allows to add remote journals
A porting project of a different kind was taken by Gábor Péterffy who ported Marble to Android. Marble Maps is available now in Google Play and provides navigation and routing functionality using OpenStreetMap's content. Distance measurements, interactive route planning are available in the first version of Marble on Android.
KDevelop got a new "checker framework" contributed bydfighter. The idea behind this project was to provide a general framework for different static code analysis tools and profilers that can be used in KDevelop. This framework aims to unify and simplify the code infrastructure and to provide a consistent and user-friendly GUI for using such tools in KDevelop. Somexisting plugins for cppcheck, Valgrind and Krazy were ported to this framework. The support for code analysers clang-check and pylint was added. The final report contains a lot of detailed information on this as well as a video demo of this useful functionality.
uring GSoC2014 clang was integrated into KDevelop in order to use for source code indexing, syntax checking and highligting instead of KDevelop's own complex implementations for th tasks. Despite the g progress a last year, there was and is still a lot to do in the area of kdev-clang plugin for KDevelop - bug fixing, adding features, stabilizing the code. This year Sergey Kalinichev worked on the project "Further Clang integration in KDevelop" and extended the feature-set of this plugin with regard to code parsing, syntax highligting, code completion and refactoring. See his final report with couple of examples on this https://sklin0.wordpress.com/2015/08/23/gsoc-2015-final-status-report/.
his plugin for all KDevelop users!
Gurjot Singh extend the animation capabilities of Kdenlive to allow smoother animations keyframes technology. Before this, Kdenlive had support for keyframes . With the support for animation properties in the open-source multimedia framework MLT, which is used by denlive, and with the integration work done during this GSoC by Grjot, animat in Kdenlive. Gurjot added configuration widgets for different interpolation types used for animations - discrete, linear, smooth spline or a mix of them. https://kdenlive.org/node/9443
Krita got new tangent normal brush engine. Wolthera van Hövell tot Westerflierhttp://wolthera.info/?p=770 who Krita. Wolthera adressed Krita's widget for picking a colourspace (http://wolthera.info/?p=783).
KStars, the outstanding open-source astronomy software, is now able to display artistic drawings for all modern constellations (https://en.wikipedia.org/wiki/88_modern_constellations_by_area) - thanks to the work done by M.S. Adity during this summer. One of the main parts of the project was to understand how to map the image onto the sky map. The screenshot below shows art images for all 88 modern constellations that can be optionally switched on and off.
Daniel Leu contributed a job scheduler to KStars that will help automate astrophotography sessions. A job is specified the information provided by the user object altitude, angular distance to the moon and the execution starting and finishing times job triggered by the scheduler communicates with the telesop via the Ekos interface (http://api.kde.org/4.x-api/kdeedu-apidocs/kstars/html/namespaceEkos.html) and performes slewing of the teleskop, loading the sequence and its execution. To simplify the selection of the object to be observed, the user can now provide a FITS image and the object coordinates are determined out of the information stored in the FITS file.
David Kolozsvari joined the Marble team this summer and implemented couple of nice features. improved rendering of labels (stree names, building names etc.) that are drawn along the curved street paths. Before this, the labels were just shown "somewhere" on the map. :
Besides some smaller improvements and bug fixes Marble's support . Check out his (http://koldavidgsoc.blogspot.de/2015/08/gsoc-2015-summer-with-marble.html).
The second Marble-related GSoC-project was about the handling of OpenStreetMap (OSM) files. Marius Stanciu added support for opening OSM-files, viewing, editing and exporting them. The main part of the project was to provide aOSM editor for Marble. Plenty of features can be implemented in such an editorMarius implemented for tags and relations. Tags allow the placemarks to provide information on them coordinates. With the help of logical relationships between different points on the map can be modeled. Take a look at Marius' blogs for more screenshots and exampleshttp://mariusoc.blogspot.de/2015/08/wrapping-things-up.html
LabPlothe data plotting and analysis tool for KDE
Minh Ngo added visualization of 3D-data to LabPlot by utilizing the very powerful library VTK. Different data source sources are supported - external files with 3D-data, LabPlot's spreadsheets with column-based organisation of data and LabPlot's matrices with matrix-like data structure. The data can be visualized as points in 3D-space, curves and surfaces. A lot of options for the 3D-plots are availble and can be adjusted by the user in a user-friendly GUI. Furthermore, several zooming functions were implemented that allow a comfortable navigation through the data. Because of the huge complexity of this topic, not everything could be implemented in such a short period of time. Minh is eager to contribute further to the projects and continues working on 3D-part of LabPlot with the aim to push LabPlot's 3D-functionality to much higher level.
Ankit Wagarde added a very useful tool to LabPlot that allows to extract data f