* Use tabbed view for python console settings. Allow fonts larger that 15pt in console and python editor.
* Make the python console settings list look more like the C++ implemented settings dialogs.
* Use scroll areas in python console settings to prevent widget squashing
* Fix python console settings icons
* updating python console settings to be part of main QGIS settings
* Revert "updating python console settings to be part of main QGIS settings"
This reverts commit a811d7d7b184fece419f6610321a98f1acc9238f.
processing tests
Some algorithms will return results in different orders, e.g.
due to the use of dicts or other methods which do not guarantee
a fixed return order.
Using a primary key to do the feature match allows us to flexibly
handle these situations and provide tests for these algorithms.
Because starting 8 jobs on the main thread in a loop can lead to reduced
responsiveness.
The new approach is to start each job 10 ms after the scheduling the
last one.
CRS information is queried when setting up a new feature source. This
happens on the main thread (read: blocking). With this patch, at least
this only happens once per srid.
Do not show invisible layers in composer legend.
Useful for raster layers as QgsMapHitTest only take care of vector layers.
Related with #14194
Related with #11641
tests
Some algorithms are non-deterministic and the results may vary from
run to run. In this case we allow specifying multiple possible valid
results, and the test will pass if the result layer matches any of these.
Differences in gdal libraries mean the hash value may differ between
platforms. Allow multiple acceptable hashes to be listed for
expected test results
Improvements:
- Maintain Z/M values
- Keep original data type for group/order fields
- Group field is optional
- Added unit tests
- Don't export text files for features by default
Improvements:
- transparent reprojection to match hub/spoke CRS
- keep all attributes from matched hub/spoke features
- don't break after matching one hub point to spoke - instead
join ALL hub/spoke points with matching id values
keep the algorithm dialog open after execution
Otherwise it's hard to see the error - you have to know to check
the python log. Keeping the dialog open at the log makes the
error immediately visible to the user