The 11th QGIS developers meeting, held in Vienna (Austria), has finished. This time, the hackfest took place under the umbrella of a larger developer meeting — OSGeo Code Sprint 2014.
The activity of the participants was at a traditionally high level, and there is no sense or possibility to describe everything. Among the most notable things from an end-user prospective are:
bug hunting in Processing (Anita Graser and myself)
updated plugins repository (Alessandro Pasotti)
Paolo Cavallini was busy with checking and approving piles of submitted plugins
updated user manual (Larissa Junek and Otto Dassau)
There were also discussions about:
procedures for creating regional QGIS user groups
another stage of refactoring (this time it was about the layer tree or ToC, Table of Contents)
user interface improvements
translation process for documentation and user interface (Transifex vs. Qt Linguist/GitHub)
integration of the MetaSearch plugin into the core
The 10th QGIS developer meeting in Brighton (UK) has come to an end. This meeting was the most attended ever. This can be explained by the growing popularity of QGIS and the fact that the hackfest was held just before the FOSS4G conference.
The first day was almost unremarkable, with participants gradually arriving at the University of Sussex, newcomers getting to know each other — in short, an ordinary day before the hackfest itself. Among the notable changes to the code during the day:
copy/paste support for rendering rules
ELSE branch support in rule-based renderer
improvements in the print composer menus
Meanwhile, at Gatwick Airport, Victor Olaya is starting a complete refactoring of the Processing framework…
The QGIS developers are not superstitious people, and Friday the 13th did not affect their work in any way. The list of commits is impressive:
the Plugin Manager got the ability to optionally hide deprecated plugins, as well as highlight them in the plugin list
implemented visualisation of topological information in GRASS layers
Processing framework got a new, more convenient, configuration dialogue
10 new algorithms were added to Processing
and others improvements and bug fixes
There were also several discussions, starting with Richard talking about the new website. This was followed by discussions about refactoring the vector API, support for attribute domains, the possibility of using QML (especially in QGIS Android), the architecture and further development of the Processing framework.
On Saturday, Victor pushed to master the first set of refactoring commits
It’s starting to get fun… now nothing works :-)
Despite the refactoring, the framework continues to grow in functionality: 5 new algorithms have been added, and a few old ones have been improved. The Python console gets support for custom colour schemes (aesthetes will be pleased). There were also several discussions: a unified configuration dialogue, 3D support (Globe plugin, PostGIS, etc.), plugin manager and repository, further development of the WMS client, QGIS Server, QGIS WebClient.
Sunday, the penultimate full day of the hackfest. Another series of discussions, this time on documentation, the abstraction layer for databases, and attribute/geometry indexing. Quite a few commits were also made:
new script editor for Processing
reduced number of data conversions when running SAGA algorithms in QGIS
obsolete settings and related code were removed from Processing
added the ability to save models created in the Graphical Modeler as an image
expressions support in “Graduated” and “Unique values” symbology
The 9th QGIS developer meeting in Valmiera (Latvia) has come to an end.
Since the QGIS code is already frozen (with some caveats), almost all of the commits were aimed at fixing bugs, improving stability, and shaping the new API.
It’s a thankless task to list everyone by name, there are no idlers at hackfests. I’ll just go through the things that interest me personally (and that affect me to a greater or lesser extent):
Radim continued to improve the raster subsystem (in particular, he fixed a number of problems with the handling of NODATA values)
Jürgen, as always, fixed bug after bug, and also worked on support for different encodings (yes, yes, Frank’s commit to GDAL will have long-lasting consequences)
Borys worked on the new plugin installer
Victor and I worked on SEXTANTE: fixing bugs, writing new tests, updating documentation and help files
Werner, Paolo, Otto, Larissa, Raymond worked on the user manual, cleaning up the wiki and migrating the website
In addition, all hackfest participants were very active in discussing a range of issues:
implementation of GRASS raster algorithms
the documentation creation and translation process
SEXTANTE’s new features and architecture
PSC structure and role
new plugin installer
new website
and other issues
The next developer meeting is scheduled for September (earlier than usual) and will be held in Brighton, UK.
The 8th QGIS developer meeting, also known as the hackfest, has come to an end.
This time there were no presentations, which had been a feature of the previous two meetings, and this had a positive impact on the results: more than 120 commits were made, and about 60 bug reports were closed. Among the most notable changes:
support for geometryless tables in WFS data provider
ability to open layer properties from the Identify Results window
Atlas plugin integration (tests and documentation included)
automatic detection of the transparency band for raster layers
and much more
On top of that:
system update has been performed on the qgis.org server
changes to the documentation structure have been agreed upon, and the process of integrating and restructuring the repository has begun
updated plugin metadata requirements and fixed a number of bugs in the plugins.qgis.org application
a rating system for plugins has been implemented
According to the participants, this meeting was one of the most productive, which was greatly facilitated by the venue — Villa Vogelsang.
The 7th QGIS developers meeting held in Lyon (France) has ended.
The first day was rather uneventful - the host university had problems with the electricity, and besides, almost everyone arrived in Lyon in the afternoon. The following days were more intense: presentations, discussions on various aspects of the project, and, of course, coding.
finances. If we leave out all the figures and details, the picture is as follows: costs are rising, but the balance is still positive
release model. The idea of multiple release branches has been abandoned, and all new releases will be made from the main tree. Release branches will only be used as “markers”, and to fix critical bugs (like the epic extent bug) after a release. Non-critical bugfixes will not be backported. There will be a freeze period (both for code and strings) before a release on the master branch.
migrating documentation from LaTeX to RST and setting up an online platform for translators. Actually, the migration has already started with the QGIS User Manual. The plan is to convert all project documentation to RST format
improving the testing infrastructure. New tests for different parts of the code have been added, and a testing server has been setup
Among the topics discussed were also the upcoming GSoC, integration of some 3rd-party plugins into the core (DB Manager was already integrated at the time of writing), API changes, and so on.
The 6th Quantum GIS developer meeting in Zurich (Switzerland) ended on Monday. Below are my impressions, supplemented with information from Tim’s blog.
This meeting was more “quiet” than the previous ones: the presentations were only held on the first day (but the picture and sound were very good), there were no announcements of the presentations on IRC, so it wasn’t always clear who was speaking and what the topic was.Some topics were discussed on IRC and the mailing lists, if you wanted to, you could contribute with your comments, suggestions or topics. Subjectively, there were not that many commits, partly due to the use of GIT, but still not that many changes compared to previous hackfests.
One of the main discussions was on issues related to topology support. This was facilitated by the presence of Sandro Santilli, one of the developers of GEOS and PostGIS. Topological editing has been discussed almost since the introduction of digitising support in QGIS. At the meeting, we discussed the possibility and prospects of creating a common mechanism for topological editing of different data, but in the end, we decided to keep all three existing systems (simple features, the GRASS topological model, and the PostGIS topological model). This decision was made because of the large differences in the underlying models. Of course, if someone proposes a worthy implementation of the universal mechanism, it will be gladly considered.
As QGIS has expanded from the desktop market to the web, discussions about QGIS Server and, more recently, QGIS Web Client have become an integral part of meetings. Some of the results of these discussions can be found on a dedicated wiki page.
Finally, the move to GitHub is complete: all the documentation was moved there during the hackfest. The migration was accompanied by a change in directory structure, and a description of the new workflow for translators will be published soon. There are also plans to abandon LaTeX in favour of RST (ReStructured Text), which should lower the barrier to entry for both authors and translators.
Since the preparation of new QGIS releases is quite complex and time consuming task, Tim has taken Werner on as his assistant. Tim will prepare the main releases, and Werner will do the point releases. By the way, the upcoming release 1.7.2 is his first work at this position.
As preparing new QGIS releases is a complex and time-consuming task, Tim took on Werner as his assistant. Tim will prepare the major releases and Werner will prepare the point releases. The upcoming 1.7.2 release is his first work in this position.
Strangely enough, although everyone has been talking about revising and updating the API for a long time, nothing has been broken yet (I was hoping this process would at least start at haskfest). At the same time, so much new functionality has been added that it was decided to make 1.7.2 the last release of the 1.7 series and then release 1.8.
In addition to the topics already mentioned, the following issues were also discussed to a greater or lesser extent:
QGIS on Android
performance testing and identification of bottlenecks in vector data handling
new infrastructure (wiki migration, bugtracker improvements, new plugins repository, styles repository)
revival of unit testing and the launch of the project’s Dart server
user interface optimisation and redesign for version 2.0 (1, 2)
overhaul of the QgsGeometry class (adding support for curves, splines, collections)
As for me, I was not in the mood to fix bugs, nor did I have any special plans. So I was mainly busy adding new bugs :-) by adding new tools to fTools and GdalTools.
The 5th QGIS developer meeting, which according to the QGIS Wiki gathered 28 people in Lisbon (Portugal), is coming to an end. It is time to summarise the results and share impressions.
Unfortunately, I was not able to attend in person and had to participate virtually again.
As the code and strings are currently frozen, people have mainly been fixing bugs and cleaning up the bug tracker. No new functionality (at least visible to normal users) has been added.
Most of the first day was spent getting things up and running, with more or less active work only starting on Friday evening. Saturday, however, was a real blast: in addition to closing tickets and fixing bugs, several presentations were given:
Martin Dobias demonstrated the QGIS FileBrowser data management application. It is similar to ArcCatalog in some ways, but all such applications look pretty much the same
Radim Blazek presented the QGIS Customisation project, which allows you to flexibly customise the QGIS interface and save those changes to a file for use on other machines
Jean-Roc Morreale spoke about the French version of the QGIS User Guide, which is available in printed form via the Print-On-Demand (PoD) service. It is expected that all translations of the User Guide and other documentation will be distributed using this technology in the future
Vincent Picavet showed the Rumbler plugin, which allows you to add new layers to QGIS directly from PgAdmin
there was a small demo of the DTClassifier plugin I’m currently working on. This plugin is being developed for a forestry monitoring project and provides image classification and change detection functionality
Julien Malik spoke for more than an hour about OrfeoToolbox and the prospects of its integration with QGIS
We also discussed many other topics, including migrating to Git, starting a new plugins repository, further development of QGIS, and redesigning the user interface.
Some numbers. At the time of writing: 64 issues closed, 59 commits made, 26 new issues opened. By the way, the bug #7 has been fixed, and the place of the oldest issue now belongs to #40.
In my opinion, this hackfest was a bit sluggish and not as lively as the previous ones. I hope that the feature freeze is to blame and that the next meeting (in autumn in Switzerland) will be more active.
Based on the report published on the Linfiity Geo Blog and my own impressions.
The 4th QGIS hackfest, held from 11 to 15 November in Wrocław, Poland, attracted 29 participants (28 people and one dog). All participants did their best to make QGIS even better. A lot was accomplished in four days: hundreds of commits, demonstrations of new features, and many productive discussions. The meeting was organised by Paweł Netzel with the help of Milena Nowotarska, Robert Szczepanek, Maciej Sieczka and Borys Jurgiel and took place at the Department of Climatology and Atmospheric Protection of the University of Wroclaw.
My contribution — numerous improvements to the fTools plugin. When using the “Merge shapefiles to one” tool, it is now possible to select not only a folder, but also individual files. The “Simplify geometry” tool has been redesigned: I added a customisable simplification threshold and the ability to simplify the whole layer or only selected features; simplification can be done “in place” or by creating a new shapefile; “in place” simplification supports undo/redo; at the end of the simplification plugin shows a report about the total number of vertices in a layer before and after simplification.
Below, you will find an overview of the most important topics that were discussed during the hackfest as well as most notable changes.
I didn’t get an Italian visa and won’t be able to attend the QGIS hackfest — bummer!
Participating via IRC is also a bit problematic: I was not allowed to go on vacation, and there is no internet at the office. I’ll try to find an hour or two after work.