The GML format often requires extra 'hand holding' in order to
get QGIS to detect it's CRS (e.g. GML files created directly
in GDAL will not have an autodetected CRS when pulled into
QGIS). This needs fixing, but as a workaround to allow
processing algorithm porting to continue we can now skip
the crs check for these layers.
because using this more consistently throughout the codebase makes it
easier to maintain code.
We also do not want to call the copy constructor on them, using pointers
just makes this more obvious. Further, casting is also something
that's commonly done on pointers and not references.
And if you want a value or a reference, just use QgsGeometry, it's meant
to be handled like this.
These classes are unused in the master QGIS code, and are
unmaintained and with no unit tests or other QA, and
have inflexible API (e.g. always requiring writing outputs
to shapefiles)
They all have equivalent algorithms available via Processing
(where the algorithms are unit tested and maintained). We should
be pushing all QGIS api users to use the Processing algorithms
instead.
* use AUTORCC to avoid locked qrc_images.cpp during build of gui tests
* bump minimum version of cmake to 3.0.0 for AUTORCC
* suppress some warnings in sip bindings
* suppress unreachable warnings and some more
* split sip files in more parts to suppress warning BK4504
* also remove old WITH_INTERNAL_YAML from travis
1. endless loop when a sqlite-based layer is opened, and
wal+shm files are created. This triggers a loop because
the directoryChanged signal is emitted again and again ...
This was the real blocker.
2. when a new files appears in a directory
the directoryChanged is emitted and OGR/GDAL may fail
to open the file because the file copy was not yet
finished.
This commit fixes 1 but the fix for 2 is only a best effort using
a 100 ms timer: I could not find a definitive solution to this issue,
a file could be legitimately opened in streaming mode and it will
always triggers an error, there is apparently no way to get
the QFileSystemWatcher emit a signal when new files are closed
flusehd and not when they are just created.