The release of QGIS 2.6 “Brighton” has been announced. This release contains many new features, bugfixes and improvements.
The detailed changelog can be found here. For normal users, it is better to use the visual changelog. The most important and interesting changes are listed below:
implemented support for expression (virtual) fields
actions can now have an associated icon
more expression functions and variables have been added, including $currentfeature and $atlasfeature to get the current feature in different contexts, attribute() and getFeature() to get the attribute value of a feature or a feature with matching attribute, respectively
layer tree overhaul: new API, visibility groups, legend filter and more
syntax highlighting in all code editors (Python, expressions, HTML and CSS)
added support for custom colour palettes
new colour picker dialogue with a wide range of features
Processing Modeler overhaul
online repository for Processing models and scrips
item panel in Print Composer for quick access to all composer items
many properties of various composer items have been made data-defined
support for multiple overview maps for a composer map element
and much more
The source code and binary packages for Windows, Debian, and Ubuntu are available for download. Packages for other distributions and operating systems will appear as they are prepared by the maintainers.
The 12th QGIS developers meeting, which took place in Essen (Germany), has ended.
In my previous posts (day 1, day 2, and day 3), I have already covered the main points, and now I will go into a little more detail about the most interesting results.
Certification
Four types of certificates are planned: QGIS User, QGIS Professional, QGIS Trainer, and QGIS Developer. Also, PSC will issue so-called “grandfather” certificates. The TAO online platform will be used for assessments.
New geometry class
A complete update of the QgsGeometry class, which is responsible for the spatial component of objects, is planned:
support for an extended set of geometric primitives
support for Z (altitude) and M (measurement) values
support for curves
new extensible architecture
an extensive set of unit-tests
The first batch of changes has already been implemented, and new functionality is expected to be included in the QGIS 2.7 code base. The work was supported by the Canton of Solothurn.
Other topics
In fact, there were many more interesting and active discussions, and some topics appeared on the agenda spontaneously (for example, support for SAGA and OTB in Processing on Debian builds). In addition to broad discussions, there were also “narrow” discussions where specialized problems were solved (such as downloading data from the Portuguese iGeo portal), and participants periodically organized into groups to solve problems together and/or find and fix bugs.
Also during the meeting:
we discussed changes to the release schedule: it is proposed to maintain the LTS release with a 1 year lifecycle
support for Python plugins for the QGIS Server was proposed and partially implemented. This way, one can significantly expand the functionality of the server without the need to make changes to its code
we discussed the prospects of fTools (vector data) and GDALTools (raster data) plug-ins and their possible replacement with Processing
PSC completed process of the trademark registration and developed guidelines for its use
we started work on integrating contextual help into the documentation
lots of bugs were fixed
documentation was updated
Many thanks to the organizers and LinuxHotel staff for their hospitality.
Today was a very busy day. A smaller number of commits from developers (20 today vs. 40 yesterday) was compensated by active discussions:
the future of the fTools plugin (GDALTools in trouble too)
new release preparation policy
adding plugins support to QGIS Server
updating QgsGeometry class (support for Z/M values and curves)
docker capabilities for QGIS developers and users
trademark registration and protection
Work on updating the documentation and the website also continued. We decided to skip the documentation update for QGIS 2.4 and focus on writing documentation for the upcoming QGIS 2.6 instead.
The second day of the QGIS hackfest is coming to an end.
The documentation team has continued to update the documentation and website, with over 30 commits today. The developers have not lagged behind — the number of commits is approaching 40. As always, Martin is a delight: thanks to his efforts, the rendering speed of a simple symbol renderer has increased significantly. Depending on the data, the speed increase ranges from 19 to 31%.
The first day of the 12th QGIS Developer Meeting in Essen has passed. Actually, it’s not really correct to consider it a full-featured day of the meeting, because most of the attendees were just arriving today. Moreover, today Linuxhotel was hosting an event and we were not able to fully use its infrastructure.
But all this did not prevent us from getting to know each other, communicating and even (there were such maniacs) doing something. For example, Otto, Richard, and Yves started documentation update. The day ended with a joint dinner at Haus Großjung.
I have finished translating the PyQGIS Developer Cookbook into Ukrainian. It will be available on the QGIS documentation portal soon.
Comments and constructive criticism are welcome. Or even better, create an account and edit directly in Transifex
(although I personally don’t like it much and translate locally: git + Qt Linguist are the best).
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
At last! QGIS has finally got support for multithreaded rendering, the corresponding changes were merged into master by Martin Dobias just an hour ago. This is basically a revival of the 2010 GSoC project “QGIS on steroids” (successfully completed, but never merged into master), taking into account the latest changes to the QGIS codebase.
By default, multithreaded rendering is disabled, one can enable it in the QGIS settings “Settings → Options → Rendering → Render layers in parallel using all available CPU cores”. It is also possible to set canvas refresh interval during rendering (0 means real-time updates).
The work was done with the financial support from Lutra Consulting and Swiss QGIS User group.
As previously announced, QGIS has moved to a fixed 4-month release cycle. And now the first release on the new schedule has taken place.
This release focuses on bug fixes and performance improvements. Much effort has been put into developing and improving the Print Composer, making it even easier to create printed maps.
The full changelog can be found here. A visual changelog is also available. The most interesting and important changes are listed below:
support for pasting WKT from the clipboard as a new feature in the existing vector layer or as a new memory layer
UI improvements in the expression builder widget. It is now possible to resize various areas, advanced users can hide operator buttons to free up some screen space
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