Skip to content
Browse files

[needs-docs][processing] Monkey patch stable external Processing API …

…into qgis.processing

Instead of encouraging use of the internal Processing modules
(e.g. from import run , import processing, ...)
instead expose all Python specific STABLE processing additions
to the qgis.processing module.

Instead, scripts and plugins should now use

from qgis.processing import run, algorithmHelp,...

This makes a clear distinction between internal Processing python
modules (i.e., everything else!) and the parts of Processing
which are stable and designed to be used by plugins and scripts.

TODO: QGIS 4.0 -- move the internal Processing plugin modules
to __processing, to clearer indicate that this is all internal
  • Loading branch information
nyalldawson committed Mar 27, 2019
1 parent 7340418 commit f003f3bf93c9de99f0afbbed0f405b72091d425c
Showing with 11 additions and 0 deletions.
  1. +11 −0 python/plugins/processing/
@@ -31,6 +31,17 @@
from import * # NOQA
from import * # NOQA

# monkey patch Python specific Processing API into stable qgis.processing module
import qgis.processing
qgis.processing.algorithmHelp = algorithmHelp = run
qgis.processing.runAndLoadResults = runAndLoadResults
qgis.processing.createAlgorithmDialog = createAlgorithmDialog
qgis.processing.execAlgorithmDialog = execAlgorithmDialog
qgis.processing.createContext = createContext
qgis.processing.isWindows = isWindows
qgis.processing.isMac = isMac

def classFactory(iface):
from processing.ProcessingPlugin import ProcessingPlugin

0 comments on commit f003f3b

Please sign in to comment.
You can’t perform that action at this time.