Release date: 2021-02-19
Following on from the feature-filled releases of QGIS 3.14 and QGIS 3.16, QGIS 3.18 introduces a host of enhancements and new features, along with a long-awaited feature - Native Point Cloud support in QGIS! Thanks to the efforts of Lutra, North Road, and Hobu, QGIS is now able to import and render point cloud data in various formats by leveraging the Open Source PDAL library. This functionality has been introduced due to the success of a crowd-funding campaign and would not have been possible without the support of the QGIS community and contributors. Thank you to all those involved in realizing this incredible milestone!
As QGIS Desktop 3.18 bids farewell to the DB2 database provider, it introduces support for users of the SAP HANA database system.
The QGIS ecosystem has also seen some exciting changes in the form of the QGIS HUB which is an extension of the plugin site which now supports the distribution of community developed styles, projects, and even processing models.
We would also like to extend a big thank you to the developers, documenters, testers, and all the many folks out there who volunteer their time and effort (or fund people to do so) to make these releases possible. From the QGIS community, we hope you enjoy this release! If you wish to donate time, money, or otherwise get involved in making QGIS more awesome, please wander along to QGIS.ORG and lend a hand!
QGIS is supported by donors and sustaining members. A current list of donors who have made financial contributions large and small to the project can be seen on our donors list. If you would like to become an official project sustaining member, please visit our sustaining member page for details. Sponsoring QGIS helps us to fund our regular developer meetings, maintain project infrastructure, and fund bug fixing efforts. A complete list of current sponsors is provided below - our very great thank you to all of our sponsors!
QGIS is Free software and you are under no obligation to pay anything to use it - in fact, we want to encourage people far and wide to use it regardless of what your financial or social status is - we believe empowering people with spatial decision-making tools will result in a better society for all of humanity.
Previously, the QGIS Desktop Identify utility would expose a large number of derived attributes, such as geometry information. Although incredibly valuable, for many use cases this information is verbose. Users will now have the option to toggle the display of derived attributes to create a more concise view of the Identify results.
This feature was developed by Richard Duivenvoorde
The QgsMessageLogViewer now includes an “Empty tab and close others” to the log viewer panel context menu, supporting a quicker action to a clean interface when debugging.
This feature was developed by Olivier Dalang
An API has been added in the provider GUI to allow a provider to create a custom widget, which exposes options to customize and change the layer’s source. For example, a file-based layer provider could expose a widget for selecting a new file path, or an online provider could expose widgets for changing the host or authentication information.
Two implementations have been added for this:
A file picker widget for GDAL file-based layers.
A widget for customizing XYZ layer properties.
This feature was developed by Nyall Dawson
QGIS now supports dynamic standard vector graphic elements, as outlined in QEP #199. This allows QGIS to dynamically replace attributes or node values in the XML of the SVG and apply data-driven values to SVG elements. QGIS Desktop has additionally added a GUI editor to ensure that users are able to properly leverage this new functionality.
This feature was developed by Denis Rouzaud
The “Zoom to Layer” function available from the context menu, the View menu and the Map Navigation toolbar can now zoom to the extent of all the selected layers in the layer tree.
This feature was developed by Patrice Pineault
The “Zoom to Selection” and “Pan Map to Selection” functions available from the context menu, the View menu or the Map Navigation toolbox now offer the ability to navigate to the extent of the selection from the selected layers in the layer tree.
This feature was developed by Patrice Pineault
Users can now zoom in and out from the Map Overview panel using the mouse scroll.
This feature was developed by Mathieu Pellerin
This modifies the previous support for grayscale and LMS-based simulation for protanopia and deuteranopia, bringing it in line with the methodology currently used in Chromium and Firefox. QGIS now uses updated grayscale luminance calculations (renamed to achromatopsia), a precomputed protanopia matrix (renamed from protanope), a precomputed deuteranopia matrix (renamed from deuteranope), and an additional mode for tritanopia using a similarly precomputed matrix.
This feature was developed by Will Cohen
The georeferencer canvas can now be rotated in order to facilitate the placement of reference points. This is especially useful for scanned images which may not have uniform orientations.
This feature was developed by uclaros
While it was previously possible to set the opacity for individual symbol layer colors via data defined expressions, it is now possible to set a data defined expression to control the overall symbol opacity.
This feature was developed by Nyall Dawson
The Style Manager interface now includes a button to open the styles gallery from the QGIS HUB.
This feature was developed by Nyall Dawson
New export options have been added for mesh layers. These allow the following options when exporting a mesh to a vector layer:
Export faces
Export edges (1D mesh)
Export as grid
This feature was funded by Lutra Consulting
This feature was developed by Lutra Consulting (Vincent Cloarec)
Previous versions of QGIS required the utilization of the crayfish plugin, however, this functionality has now been incorporated into QGIS core and allows users to export mesh layers to vectors and add the dataset value as an attribute.
This feature was funded by Lutra Consulting
This feature was developed by Lutra Consulting (Vincent Cloarec)
Mesh data can now be simplified by defining a level of detail for 3D rendering. This helps performance for complex datasets and ensures a smoother experience when 3D navigation is required.
This feature was developed by Vincent Cloarec
A number of new processing algorithms have been ported from the crayfish plugin, including:
Rasterize mesh layer
Export contour to vector layers
Export cross section to text file (csv)
Export time series to text file (csv)
This feature was funded by Lutra Consulting
This feature was developed by Lutra Consulting (Vincent Cloarec)
A new rendering option allows area and line features to be “dissolved” into a single object prior to rendering to ensure that complex symbols or overlapping features are represented by a uniform and contiguous cartographic symbol.
This feature was developed by Nyall Dawson
Previously, map redraws would attempt to redraw all elements in the frame. The map rendering has been significantly improved and now the existing map frame elements are used during the redraw process. This work was completed as a part of QEP #181 and was funded by the QGIS Grant program for 2020.
The following display outlines the redraw behavior before enhancement:
This feature was funded by QGIS grant 2020
This feature was developed by Lutra Consulting (Peter Petrik)
Eyedome lighting (EDL) is a post-processing effect which compares the depth of each pixel (distance from the camera) with the neighboring pixel depths and highlights edges according to the calculated differences.
An EDL configuration element has been added to the advanced settings tab of the 3D view configuration dialog. EDL strength has the effect of increasing the contrast, allowing for better depth perception (which may need to be adjusted when zooming in). EDL distance is the distance of the used pixels from the center pixel and it has the effect of making edges thicker.
The eye dome lighting is, by principle, an image-based rendering solution similar to SSAO (screen space ambient occlusion), and therefore works on the whole scene and doesn’t differ between point clouds or regular 3D objects.
This feature was funded by Lutra Consulting
This feature was developed by Lutra Consulting (Nedjima Belgacem)
3D material colors may now be data defined, allowing feature colors to be determined using the value of an attribute or expression.
Rendering of polygons may be currently done with multiple material types, each having distinct appearance and configuration of colors:
Realistic (Phong) material - calculated using 3 colors (diffuse, ambient, specular), which utilizes the 3D view lighting configuration
CAD (Gooch) material - calculated using 4 colors (diffuse, warm, cool, specular), which ignores the 3D view lighting configuration
Textured materials are unsupported at this time.
This feature was funded by Kristianstad
This feature was developed by Lutra Consulting (Vincent Cloarec)
QGIS now offers orthographic projection support for 3D scenes, a feature often desired in the context of architecture, archeology, and more.
This feature was developed by Mathieu Pellerin
Following the successful crowdfunding campaign for point cloud support in QGIS, the engineers at Lutra, North Road, and Hobu have been able to introduce the ability for QGIS to import and render point cloud data.
This includes the ability to add point cloud layers to QGIS projects, with support for the EPT format, and render them in 2D and 3D contexts.
This feature was funded by Point Cloud data support in QGIS
This feature was developed by Lutra Consulting (Peter Petrik)
The QGIS Browser and data source management interface now support the basic structure of PDAL supported point cloud layers.
This feature was funded by Point Cloud data support in QGIS crowd funding campaign
This feature was developed by Lutra Consulting (Peter Petrik)
Ability to generate EPT index for (smaller) laz files directly in QGIS via the untwine library
This feature was funded by Point Cloud data support in QGIS crowd funding campaign
This feature was developed by Lutra Consulting (Peter Petrik)
A new QgsColorRampLegendNode class was added which allows for the creation of color ramp-based legend nodes. It’s now used for raster layers when using a pseudocolor renderer with the linear interpolation type or for the single-band gray renderer, as well as for point clouds using a ramp based renderer.
In a layout legend, the ramp item inherits the default legend symbol width and height, but it is possible to optionally override this behavior.
There are labels included for the minimum and maximum ramp value, which are rendered using the same font settings as other legend item text:
Label alignment will follow the legend settings:
And naturally, the items will work nicely with multi-column legends:
This feature was funded by Hans van der Kwast
This feature was developed by Nyall Dawson
Color ramp legend items now support the following configurable options:
A prefix and suffix for the ramp text
Numerical formatting
Ramp direction
Customization of text formatting
The ability to create horizontal bars.
Users can also choose to refine these settings for a particular layout legend item. This functionality is available for all ramp items, including raster, point cloud, or mesh layers.
This feature was funded by Hans van der Kwast
This feature was developed by Nyall Dawson
The new Add Item -> Dynamic Text menu contains preset dynamic text expressions that users can use to insert a label automatically containing the corresponding expression.
For example, using the dynamic text element Layout Name will insert a label containing the expression [% @layout_name %]. This improves the feature awareness, discoverability, and provides an easy method for users to access dynamic attributes.
This feature was developed by Nyall Dawson
There is now a string format parameter available for the uuid()
function in QGIS expressions. Users now have various options that they can use to stipulate the format of the returned UUID value, including the following options:
uuid()
: {0bd2f60f-f157-4a6d-96af-d4ba4cb366a1}
uuid('WithoutBraces')
: 0bd2f60f-f157-4a6d-96af-d4ba4cb366a1
uuid('Id128')
: 0bd2f60ff1574a6d96afd4ba4cb366a1
This feature was developed by signedav
QGIS expressions now support a layer_crs variable which will return the AuthID for a particular layer’s coordinate reference system. This allows expressions to identify the layer CRS dynamically and perform transformations without needing to manually specify the CRS.
This feature was developed by Alex
QGIS expressions now include aggregate functions for arrays, which allow the easy retrieval of specific values from an array that may be used in QGIS elements such as symbologies. The following functions have been introduced:
array_min
array_max
array_majority
array_sum
array_mean
array_median
This feature was developed by uclaros
The function array_get now supports the use of negative index positions.
This feature was developed by Alex
A map_credits function was added that collates a list of all the layer metadata attribution strings for the layers shown inside a specified map item.
For example:
array_to_string( map_credits( 'Main Map' ) )
Returns a comma-separated list of layer credits for layers shown in the ‘Main Map’ layout item, e.g ‘CC-BY-NC, CC-BY-SA’
There’s an optional include_layer_names argument you can use to include layer names before their attribution:
array_to_string( map_credits( 'Main Map',
include_layer_names := true,
layer_name_separator := ': ' ) )
This would return a comma-separated list of layer names and their credits for layers shown in the ‘Main Map’ layout item, e.g. ‘Railway lines: CC-BY-NC, Basemap: CC-BY-SA’
This feature was funded by SLYR
This feature was developed by Nyall Dawson
Existing curve tracing settings were introduced previously and have now been exposed in the user interface to enable users to incrementally modify settings to optimize their results when capturing curve data.
This feature was developed by Olivier Dalang
A new digitizing tool allows for selected features to be scaled when in editing mode. This implementation was based on the work of @roya0045 with #40650.
This feature was developed by Nyall Dawson
Users may export a selection of vector layers as sheets in a new spreadsheet or append them as additional sheets to an existing spreadsheet
This feature was developed by Nyall Dawson
The georeferencer now reprojects data points in a desired output projection, rather than using the map canvas CRS for determining data point positions. This allows users more flexibility and control when capturing control points.
This feature was developed by Alex
A new GUI is available to manage polymorphic relations, implemented as a part of the dynamic relations described in QEP #79.
The “Add relation” button in the relation manager screen now has additional options for adding and editing polymorphic relations:
The “Add polymorphic relation” and “Edit polymorphic relation” open the same dialog, although in the latter case it will automatically be populated with existing values.
Once saved, the list of relations appear as a tree widget, where the generated relation objects for a polymorphic relation appear as children. The names of the generated relations cannot be changed.
Polymorphic relations are stored within a project and currently cannot be exported.
This feature was developed by Ivan Ivanov
Historically, required fields would prevent a form from being saved entirely. Using soft constraints allow forms to notify users that expected information has been omitted, without preventing the form submission. Hard constraints, by contrast, function identically to the previous “required fields” functionality and will prevent form submissions unless data is correctly captured for the field.
This feature was funded by Lutra Consulting
This feature was developed by Lutra Consulting (Viktor Sklencar)
Although not exposed through the locator or as an algorithm, QGIS now includes a Nominatim API geocoder class. The geocoder class’ implementation insures that it respects the OpenStreetMap Foundation Terms of Use by caching results and throttling requests by default.
This feature was developed by Mathieu Pellerin
$id
may be used as an expression for a csv with ordered values, and the ORDER_EXPRESSION
parameter has been added to the PointsToPath algorithm.
This feature was developed by Matthias Kuhn
In some instances, the Clip raster by extent algorithm may output features without a CRS specified, which can now be modified by explicitly enforcing the output to inherit it’s CRS from the input layer.
This feature was developed by rldhont
Allows users to select a list of fields to keep, and all other fields will be dropped from the layer. Helps with making flexible models where input datasets may have a range of different fields and only a certain subset of them need to be retained. This work was inspired by #39114
This feature was developed by Nyall Dawson
Processing tools field parameters may support processing a common field for multiple vector layers, in an implementation inspired by the behavior of some processing algorithms in Orfeo ToolBox.
This feature was developed by Julien Cabieces
The “Import geotagged photos” tool has been updated so that the exif_orientation parameter value is extracted to the output table. This ensures that maptips and other HTML widgets can be configured to correctly transform the photos to be correctly displayed based on the orientation value.
This feature was developed by Pelle Rosenbeck Gøeg
A new algorithm in the processing toolbox called export layers information has been added to support the creation of a polygon layer corresponding to extent of user-defined layer(s) with additional layer details which are attached as attributes to each polygon feature. The information collected currently supports the following elements:
CRS
Provider name
File path
Layer name
Subset filter
Abstract
Attribution
This feature was developed by Mathieu Pellerin
The characteristics of the Cell Statistics processing tool have been replicated and modified to allow for three new processing algorithms, which allow QGIS to calculate cell statistics in a similar manner to common percentage functions used in spreadsheet programs. The new processing algorithms are:
Cell stack percentile
Cell stack percentrank from value
Cell stack percentrank from raster layer
While the percentile algorithm only offers the possibility of calculating percentiles based on an input fraction value (ranging between 0 and 1), a percentrank raster can also be calculated based on an input value raster. This gives the user the opportunity to calculate per-cell percentranks based on dataset driven value input (eg. sample layers).
All algorithms provide different methods for calculating percentiles and percentranks:
Percentile: - Nearest Rank - Inclusive linear interpolation (see LibreOffice’s and Microsoft Excel’s PERCENTILE.INC function) - Exclusive linear interpolation (see LibreOffice’s and Microsoft Excel’s PERCENTILE.EXC function)
Percentrank: - Inclusive linear interpolation (see LibreOffice’s and Microsoft Excel’s PERCENTRANK.INC function) - Exclusive linear interpolation (see LibreOffice’s and Microsoft Excel’s PERCENTRANK.EXC function)
This feature was developed by Clemens Raffler
A native processing algorithm has been added in c++ that creates line layers from point layers, similar to the existing python Points to path but with extended functionality:
Added support for natural sorting ( ‘10’ > ‘9’ )
Avoid creating invalid lines with a single vertex
Avoid creating closed lines with two vertices
This feature was developed by uclaros
A new “View Settings” tab has been added to the project properties, with the option to manually defined the full extent of a project. The extent defined here will be the extent used when zooming to the full map extent, instead of the calculated or maximum extent of all layers. This is useful for defining a particular area of interest for a project and does not limit user’s ability to “zoom out” further than the defined extent.
This feature was developed by Nyall Dawson
A checkbox in the network logger panel now allows users to temporarily disable the network cache, which is useful when debugging QGIS network activity, or when using QGIS to test server-side changes.
This is a transient setting by design and is forgotten as soon as QGIS is closed.
This feature was developed by Nyall Dawson
The separate “ArcGis Feature Service” and “ArcGIS Map Service” browser connections have been replaced with a single, unified, “ArcGIS Rest Servers” connection and browser node, which shows a definitive view of the server and exposes both service types.
This feature was developed by Nyall Dawson
ArcGIS Feature Service connections which have their corresponding Portal endpoint URLS set can be explored by content groups in the browser panel.
If a connection has the Portal endpoints set, then expanding out the connection in the browser will show a “Groups” and “Services” folder, instead of the full list of services usually shown. Expanding out the groups folder will show a list of all content groups that the user is a member of, each of which can be expanded to show the service items belonging to that group.
This feature was funded by SRK Consulting
This feature was developed by Nyall Dawson
Allows exporting individual or multiple layers into a single DXF file. For each input layer, users can select which attribute to use for splitting a single layer into multiple output layers.
Implements a native DXF export algorithm using QgsDxfExport
functionality, which is also used by Project -> Import/Export -> Export Project to DXF
.
This feature was developed by Alexander Bruy
Some available geometry types from the GDAL ogr2ogr operation used for exporting data to PostGIS databases have been added to the tool interface. This functionality also includes the option to specify vector dimensions for exported data and resolves issue 39003.
This feature was developed by mazano
A QgsCPLHTTPFetchOverrider utility class was added and used in the OGR provider which redirects GDAL’s CPL HTTP calls through QgsBlockingNetworkRequest. This ensures that GDAL can use the QGIS network provider rather than redirecting requests through cURL. Additional head(), put() and deleteResource() methods were added to QgsBlockingNetworkRequest.
This feature was developed by Even Rouault
An API method has been added to ensure that readonly generated columns are not exposed in editors.
This feature was developed by Julien Cabieces
To reduce layer loading times, the map layer extent can be precomputed, and primary keys can be specified, removing the need for QGIS to calculate these characteristics and improving performance.
This is done by extending dbo.geometry_columns tables and adding the following extra columns, which may be populated accordingly by database administrators:
Extent : qgis_xmin, qgis_xmax, qgis_ymin, qgis_ymax
Primary key : qgis_pkey
In the database connection configuration widget, there are now two extra checkboxes which make use of these parameters:
Use layer extent from the extra columns
Use the primary key from the extra column
This feature was funded by ms.GIS
This feature was developed by Lutra Consulting (Vincent Cloarec)
Users may now filter the available schemas for MS SQL connections. The database connection widget now contains options for filtering available schemas, so that only the expected schemas are available from the QGIS browser.
This feature was funded by ms.GIS
This feature was developed by Lutra Consulting (Vincent Cloarec)
QGIS now supports SAP HANA databases. SAP HANA is an in-memory database with an OGC-compliant spatial engine with a free express edition available from www.sap.com
This feature was developed by Maxim Rylov
The DB2 data provider has been marked as deprecated, and is hidden from the QGIS UI by default.
QGIS has adopted a gentle approach to removing unmaintained core providers, and users of deprecated providers may enable support for them by setting the hidden “providers/showDeprecated” settings key to true.
This feature was developed by Nyall Dawson
The QGIS API now includes QgsAbstractDatabaseProviderConnection for the Oracle provider.
This feature was funded by Metropole de Lille
This feature was developed by Julien Cabieces
New functionality has been introduced which allows advanced parameters to be specified when importing layers using the GDAL data provider, opening a vast range of new possibilities, especially when working around expected dataset issues and shortcomings.
This feature was developed by Mathieu Pellerin
The QGIS Server WMS GetLegendGraphics request now supports the inclusion of min/max scale denominators to json symbol exports
This feature was developed by Alessandro Pasotti
With the drag and drop editor form, it is possible to reorder the attributes and add groups or subgroups from within the edit form. This functionality has been extended so that the WMS GetFeatureInfo response may be modified to include groups and subgroups, as well as allow the response content to be modified and reordered using the editor form, with support for drag and drop functionality.
This feature was developed by mhugent
The QGIS Python Console now supports the execution of multiple selected commands from the history dialog by adding a new Paste button.
This feature was developed by Salvatore Larosa
The qgis_process command line tool has had new commands added which allow users to enable or disable plugins using the commands as outlined below:
qgis_process plugins enable plugin_name
: enables the named plugin
qgis_process plugins disable plugin_name
: disables the named plugin
This improves the automation capabilities of QGIS and allows the use of plugins on headless environments with the qgis_process tool.
This feature was developed by Nyall Dawson
Bug Title |
URL issues.qgis.org (if reported) |
URL Commit (Github) |
3.16 backport commit (GitHub) |
---|---|---|---|
Crash with VRT layers using Python pixel functions |
Works for me |
||
Cannot enter attributes and save edits on PostGIS table when user has only the INSERT privilige |
no |
||
GeoPackage layer name truncated when filename contains more that one dot |
no |
||
Unable to right click GeoPackage table from browser |
Works for me |
||
Empty Temporary scratch layer made permanent is not editable |
no |
||
Update MXE build, several issues |
multiple issues |
yes (CI) |
|
can’t change value in vertex editor if “locale” settings use commas as decimal separator |
|||
Empty String ‘’ is shown as NULL with a spatialite layer using OGR provider |
|||
Wrong WFS 2.0.0 request returns duplicate features |
no |
||
Server WMS GetFeatureInfo feature ID inconsitencies |
|||
WMS throws LayerNotDefined when layer name contains plus sign (+) |
|||
QGIS Server WFS 1.1: issue with axis order |
|||
raster export (save as…) not working if QGIS locale uses commas as decimal separator |
|||
QGISserver WFS returns invalid GML in case of cascading WFS |
|||
Better handling of duplicated FIDs in GPKGs |
Works for me |
||
Cannot Create New Tables in a Geopackage (browser) |
|||
QGIS crashes when cancelling add child form |
N/A |
||
Group has no name when importing sublayers from browser panel |
|||
Identifty tool does not work anymore on arcgis map services layers |
|||
Signal committedAttributeValuesChanges not emitted when project in auto transaction mode |
risky |
||
The project file does not store variables with formatted text |
Upstream bug in QT |
||
New spatial table in a geopackage with index always throw a warning |
|||
Empty “Exclude layers” selection list in Server settings dialog when using projects saved in GPKG files or PGSQL databases |
This feature was funded by QGIS.ORG (through donations and sustaining memberships)
This feature was developed by Alessandro Pasotti
Bug Title |
URL issues.qgis.org (if reported) |
URL Commit (Github) |
3.16 backport commit (GitHub) |
---|---|---|---|
Skipping unknown layer type circle in vector tiles |
todo |
||
Passwords cannot be saved into keychain on macOS with QGIS 3.16 |
automatic |
||
Symbol not found: _curl_mime_addpart with GDAL merge |
automatic |
||
initGUI() results in Segmentation fault on macOS in standalone PyQgis |
answered with the fix to the script |
||
QgsCompoundColorWidget instance crash when QgsApplication::colorSchemeRegistry() is empty \ |
invalid |
||
Include missing fonts in build |
not needed? |
||
Mishandling Grib Data Values |
unable to replicate in qgis 3.16 macos |
||
Error opening .2dm and .xmdf mesh data |
automatic |
||
r.watershed error on macOS |
|||
OpenCL Acceleration not found on macOS |
|||
Proj.db not found for SAGA tools on QGIS 3.17 Mac nightly |
automatic |
||
[mesh][ui] Changing settings for 2D Contour color ramp shader shows confusing widgets |
not needed? |
||
QGIS crashes when “open directory” is selected from the recent projects contextual menu |
todo |
||
Data-defined setting in html frame does not work |
investigation done |
This feature was funded by QGIS.ORG (through donations and sustaining memberships)
This feature was developed by Peter Petrik
Bug Title |
URL issues.qgis.org (if reported) |
URL Commit (Github) |
3.16 backport commit (GitHub) |
---|---|---|---|
PostgreSQL provider doesn’t support special characters for authentication on Windows |
|||
WMS/WFS connections XML import fails silently if there are two connections with the same name |
|||
QgsAttributeWidgetRelationEditWidget::setRelationEditorConfiguration(): avoid crash on corrupted relation |
|||
[Processing] Rescale Raster gives bad results |
|||
QGIS not using PostGIS spatial index on geography column |
|||
Geopackage with DateTime field (temporal selection) behave different for painting and attributetable |
Analysis of the issue |
||
Crash with VRT layers using Python pixel functions |
|||
Empty layer names adding Raster layer from GDAL / OGCAPI driver |
not appropriate |
||
Imported GeoTIFF not using data extent to select CRS - NAD83 vs NAD83(CSRS) |
invalid |
||
Georeferencer: fix crash on .points files generated by older QGIS versions |
not reported |
N/A |
|
Crash trying to load ArcGis community map vector tiles |
This feature was funded by QGIS.ORG (through donations and sustaining memberships)
This feature was developed by Even Rouault
Bug Title |
URL issues.qgis.org (if reported) |
URL Commit (Github) |
3.16 backport commit (GitHub) |
---|---|---|---|
Record count regression on views |
Won’t fix |
||
Integer overflow errors creating and saving virtual layers |
|||
Vertex Tool uses old cached data resulting in corrupted data in db |
|||
WMS layer metadata - count for available CRS is not correct |
|||
Layer variables missing from Field Calculator algorithm on QGIS 3.16.1 |
|||
Filter is not applied in duplicated layers |
Feedback |
||
Unable to save results to PostgreSQL database when iterating features in processing algorithms |
|||
Closed Python call to –processing.run(‘qgis:fieldcalculator’– fails to catch divide by zero |
Already Fixed |
||
Expression widget does not list fields when Selected features only is checked |
This feature was funded by QGIS.ORG (through donations and sustaining memberships)
This feature was developed by Julien Cabieces
Bug Title |
URL issues.qgis.org (if reported) |
URL Commit (Github) |
3.16 backport commit (GitHub) |
---|---|---|---|
Fix text edit widget wrapper incorrectly shows “NULL” string for indeterminate state |
not reported |
||
[layouts] Expose the correct expression context for attribute and manual table text format widgets |
not reported |
||
Fix incorrect error when saving attribute modifications to layers with joins |
not reported |
||
Fix misleading JSON error message when an attribute form fails to save changes |
not reported |
||
Fix project “avoid tile artifacts” setting has no effect on server |
Not appropriate |
||
Don’t crash when a relation is created where the field names defined in the relation differ in case from the layer’s field names |
not reported |
||
Fix add/remove buttons have no icons in create relationship dialogs |
not reported |
N/A |
|
Fix restoring previous GDAL alg raster creation options when running an algorithm from processing history |
not reported |
||
Fix setting the current GDAL profile options temporarily overwrites the definition of one of the stored GDAL profiles |
|||
Fix crash when running model from file through qgis_process with the –json switch |
not reported |
||
When labelling job takes a long time to render, don’t clear the map canvas between the finished layer render state and final state |
not reported |
N/A |
|
Don’t loop through all selected features multiple times (once per field) when the attribute form is opened |
|||
Fix incorrect feature request filter expression generated when rule based renderer uses a NOT IN rule |
not reported |
||
Ask users for existing destination fields for Sum Line Length and Count Points In Polygons result fields when running in in-place mode |
Not appropriate |
||
Fix crash when no layers exist in project |
not reported |
N/A |
|
[processing] Fix exception in algorithm locator filter if an algorithm has no group set |
not reported |
||
Expose additional GDAL supported resampling methods as options for “early” raster resampling |
Not appropriate |
||
[processing] Add commands to qgis_process tool to enable or disable plugins from the command line |
|||
Fix transparency for ImageServer layers added via browser |
Not appropriate |
||
[server] Just skip any broken projects on the landing page, instead of blocking the whole landing pag |
not reported |
Not appropriate |
|
Automatically update map canvas and layouts if set to a user crs and the user changes that crs definition |
not reported |
Not appropriate |
|
Don’t show duplicate “source”/”path” rows for local files |
not reported |
N/A |
|
Fix retrieval of sql results from geopackages |
|||
Don’t default to input field for optional expression parameters |
|||
[layouts] Always update label after text changes |
|||
Fix fill symbol only related properties (like ring filters) show for line symbols in some contexts. |
Not appropriate |
||
Ensure layer style dock is updated when toggling legend items through layer tree menu |
|||
Fix rendering of Vector Field marker symbol layer when map is rotated |
|||
Fix marker line symbol layer renders vertices for segmentized versions of curved geometries instead of the actual vertices |
|||
Fix scalebar decoration uses incorrect map extent when restoring a project |
|||
Fix missing identify results right click menu items for non vector layer types |
not reported |
Not appropriate |
This feature was funded by QGIS.ORG (through donations and sustaining memberships)
This feature was developed by Nyall Dawson