Version 0.4.0 - Technical Release Notes Highlights: This update focuses on cross-version compatibility between QGIS 3.x (Qt5) and the upcoming QGIS 4.x (Qt6/Master), ensuring a stable transition and fixing critical API mismatches. Changes & Fixes: Qt6/QGIS 4 Compatibility: Migrated all core UI imports to use the qgis.PyQt wrapper, ensuring the plugin dynamically selects between Qt5 and Qt6. Updated Enums and Constants namespaces to comply with Qt6 strict typing (e.g., moved Window flags to Qt.WindowType, Ok buttons to StandardButton, and ActionRole to ButtonRole). Fixed ModuleNotFoundError by implementing a universal import strategy for the sip module across different Python environments. API Enhancements & Bugfixes: QgsLayoutItemMap: Removed calls to the non-existent setLayerSourceByExpression method, replacing it with the official setLayers and setSubsetString logic for feature filtering. QgsLayoutItemLabel: Implemented a compatibility bridge for ContentMode (ModeHtml), ensuring consistent HTML rendering in both QGIS 3.40 and 3.99+. Memory & Stability: Implemented safer object destruction in the unload() method using sip.isdeleted() checks to prevent "C++ object already deleted" crashes. Replaced the deprecated QDesktopWidget with QApplication.primaryScreen() for modern multi-monitor support and high-DPI scaling compatibility. Build System: Updated resources.py and UI loading logic to prevent hardcoded PyQt5 dependencies.
yes
mathdurso
2026-03-07T01:37:51.300764+00:00
3.0.0
4.99.0
None
no
Plugin Tags