Releases: TerraLabAI/QGIS_AI-Segmentation
Releases · TerraLabAI/QGIS_AI-Segmentation
v1.1.0
v1.0.9
v1.0.8
- Footer redesigned with ⚙ Settings and ? Help icons, matching the TerraLab plugin look
- Terms and Privacy links now reachable from Account Settings
- Install screen now shows progress during the model-download and model-load phases (no more silent freeze on "Dependencies ready")
- Windows 7 is refused upfront with a clear "upgrade required" message
- Better classification of SSL, DNS, and PDF/PROJ install errors
- Restored the native QGIS checkbox for the Terms of Service consent
v1.0.7
v1.0.6
v1.0.4
v1.0.1
v0.9.3 — Code cleanup & modularization
What's changed
Major codebase cleanup and modularization to establish this plugin as a clean reference architecture for future TerraLab QGIS plugins.
Dead code removal
- Removed 15 unused functions, 2 unused files, 3 unused imports (detected with ruff + vulture)
- Removed unused
SuggestFeatureDialog,prepare_for_uninstall,remove_venv, and other dead code
Module extraction (7 new reusable modules)
logging_utils.py— shared QGIS logging (was duplicated 3x)archive_utils.py— safe tar/zip extraction (was duplicated 2x)pip_diagnostics.py— pip error detection & help messages (extracted from venv_manager)prompt_manager.py— point annotation with undo historybackground_workers.py— QThread workers for install/download/verifylayer_tree_combobox.py— QGIS layer tree combo widgetshortcut_filter.py— global keyboard shortcut handler
Python conventions modernization
- All 908 ruff issues fixed → 0 remaining
- Migrated to f-strings, PEP 585/604 type hints (
list[x],x | None) - Added
from __future__ import annotationsfor Python 3.9 compatibility - Proper
ruff.tomlconfig with curated rules
Big file reduction
| File | Before | After |
|---|---|---|
ai_segmentation_plugin.py |
3,207 | 2,960 |
venv_manager.py |
2,955 | 2,609 |
ai_segmentation_dockwidget.py |
1,761 | 1,514 |
No functional changes — same behavior, cleaner code.
v0.9.2
v0.9.1
Fix: network retry logic for unstable connections (#194)
- Add retry with exponential backoff (3 attempts) for Python standalone download
- Add retry with exponential backoff (3 attempts) for uv package installer download
- Increase pip retries to 10 and timeout to 30s for package installs
- Increase flake8 max-line-length to 120 in CI