If for some reason Processing configuration gets stored into configuration file,
previous code saved default menu paths in configuration. If GUI language changes,
custom values stored in the configuration take precedence over default ones
(= default translated ones are not used). This fix removes menu keys from config
for default value and thus allows to fall back to default menu items on language
switch.
Fixes#52449 (and related issues)
provider loading until after ALL plugins have been loaded
This avoids the model provider from refreshing all the model
algorithms multiple times, once for each non-default plugin installed
which implements a processing provider.
After running algorithm, the processing plugin take the layer from result to provide map layer instead of string.
In the case of QgsProcessingOutputMultipleLayers, the instance check is not done on the layer but on an array.
This provider has not been maintained and does not work with
newer SAGA versions. Users are encouraged to use the 3rd-party
"Processing Saga NextGen" plugin instead.
No user visible changes, but we gain the flexibility for better
history storage, including the ability to store the outputs
calculated by the algorithm execution...!
to Processing. These are useful for 3rd party tools as outputs can be
automatically loaded on algorithm completion.
It is an API change not visible for users.
when a script calls Processing.initialize() if they are not
already loaded
This means the following ugly code can be avoided:
Processing.initialize()
QgsApplication.processingRegistry().addProvider(QgsNativeAlgorithms(QgsApplication.processingRegistry()))
QgsApplication.processingRegistry().addProvider(Qgs3DAlgorithms(QgsApplication.processingRegistry()))
and instead the call to Processing.initialize() is sufficient to load
ALL providers
Fixes#41310
don't raise a generic "something went wrong" exception but instead
ensure that the original exception with the proper error message
is raised for catching in Python instead
- Make the new Temp Folder setting optional, default to an empty
string, and note that empty = use default
- Move responsibility for cleanup of temporary folders to c++ (if
Processing Python part crashes, or doesn't exist, then we still
want these cleaned up correctly)
always avoid using temporary file names, and then set this option as
enabled by default.
Also change the setting key so that existing users will also get the new
default value.
Fixes#32591