QGIS API Documentation  2.14.0-Essen
Backwards Incompatible Changes

Table of Contents

The API of QGIS libraries is allowed to be changed just between major versions of QGIS. For example, there are various planned backwards incompatible changes between QGIS 1.8 and 2.0 because the version 2.0 is a new major version. After a release of a major version of QGIS (e.g. 2.0) the developer team is committed to maintain stable API for all subsequent minor releases (2.2, 2.4, ...). That roughly means we do not rename classes and methods, remove them nor change their semantics. Existing code should keep working when the user updates QGIS to another minor version (e.g. from 2.0 to 2.2), so all extensions of existing classes should be done in a manner that third party developers do not need to adjust their code to work properly with newer QGIS releases.

Sometimes, however, we may need to break the API as a result of some code changes. These cases should be only exceptions and they should happen only after consideration and agreement of the development team. Backwards incompatible changes with too big impact should be deferred to a major version release.

This page tries to maintain a list with incompatible changes that happened in previous releases.

QGIS 2.4

Multi-threaded Rendering

QGIS 2.6

Legend Refactoring