Version: [5187] Analisi DUSAF 7 Comune Lombardo 0.3.22

0.3.22 (2026-05-19)
- INPUT: la pillola sotto "Comune da analizzare" mostra ora
un messaggio diretto e attuabile ("E' possibile proseguire
direttamente con > Esegui analisi (con servizio REST)"); il
suggerimento per il mode offline e' nel tooltip al passaggio
del mouse.
- Changelog reso compatto da 0.3.12 fino a 0.1.0 (uno o due
bullet per release): da 36 KB a 9 KB, leggibile a colpo
d'occhio nel Plugin Manager.

0.3.21 (2026-05-19)
- Tooltip dei pulsanti con descrizione lunga (force REST, log,
apri cartella) ora wrappati con max-width 320px: niente piu'
tooltip che escono dal dialog.
- Changelog riscritto in stile sintetico (una riga per modifica)
per le ultime release.

0.3.20 (2026-05-19)
- PROCESSING DUSAF: nuovo terzo pulsante toggle "Forza uso REST
RL" (icona ArcGIS, stato persistente in QgsSettings) che fa
ignorare all'algoritmo il layer DUSAF7 di progetto.
- UX: i 4 banner di stato di INPUT e PROCESSING DUSAF diventano
pillole compatte con tooltip dettagliato all'hover, dialog
molto piu' pulito.

0.3.19 (2026-05-19)
- Bugfix critico QGIS 4.0 / Qt6: i popup info "i" crashavano
(QMessageBox.Information / .Ok rimossi dai flat alias);
aggiunti resolver lazy in compat.py.
- PROCESSING DUSAF: badge "Fonte attiva" distingue match strict
(DUSAF7 esatto) da loose (campi giusti ma nome diverso, es.
output di un run precedente) con warning arancione.
- Processing Toolbox: rimossi colori hardcoded da shortHelpString
(illeggibili sul tema scuro Win 11).

0.3.18 (2026-05-19)
- UX polish: claim arancione di INPUT piu' diretto, Area minima
slivers sempre visibile (rimosso QScrollArea).
- Bottoni con icone tema QGIS: globo per Geoportale RL, cartella
per caricamento locale, layer temporaneo per modalita' memoria.
- Nuovo helper _get_themed_icon con fallback su Qt QStyle.

0.3.17 (2026-05-18)
- Riorganizzazione 3 tab basata su feedback uso reale: Area
minima slivers spostata in INPUT, PROCESSING rinominato in
PROCESSING DUSAF, label dei bottoni di download/carica DUSAF
chiarite e disposte una per riga.
0.3.16 (2026-05-18)
- Dichiarata compatibilita' esplicita QGIS 4.x: aggiunto
qgisMaximumVersion=4.99 nel metadata (default portale era
3.99, nascondeva il plugin agli utenti QGIS 4.0).
- Release di aggregazione delle iterazioni interne 0.3.13-15
(solo committate su GitHub, mai caricate sul portale).

0.3.15 (2026-05-18)
- Icone aiuto ora cliccabili: cerchio azzurro "i" accanto a
ogni sezione apre un popup informativo (sostituisce il
tooltip-on-hover della 0.3.14).
- Modalita' di salvataggio: dropdown invece dei 3 radio button.
- Progress bar spostata SOPRA il log per leggibilita' immediata.
- Rimossi titolo e sottotitolo introduttivi: dialog parte
direttamente con le tab.

0.3.14 (2026-05-18)
- UX overhaul: dialog principale ora organizzato in 3 tab
(INPUT / PROCESSING / OUTPUT) con pannello ESECUZIONE sempre
visibile sotto e footer pulsanti sempre in fondo.
- Ogni intestazione di sezione ha icona "i" con tooltip
dettagliato per ridurre il testo prose nel dialog.
- Banner consigliato DUSAF passato da rosso ad arancione
attenuato (il servizio REST RL non e' piu' problematico,
il banner deve suggerire non allarmare).

0.3.13 (2026-05-18)
- Correzione terminologica nel log e messaggi d'errore Data
Audit QC-4: "superficie del perimetro" -> "superficie della
geometria" (perimetro e' una lunghezza, non un'area).
0.3.12 (2026-05-16)
- Code Quality scanner plugins.qgis.org: chiusi 14 finding
Flake8 (9 F401 unused imports + 5 W503 line break before
binary operator). Nessun cambio funzionale.

0.3.11 (2026-05-16)
- Fix: zoom automatico al Comune sbagliato in esecuzioni
sequenziali (es. Zibido -> Varese -> Cremona zoommava
sempre su Zibido). Match case-insensitive sul pattern
"Confine <X> fix", rimosso fallback al primo layer.

0.3.10 (2026-05-16)
- Fix banner DUSAF: il QLabel era variabile locale, non
self._dusaf_recommend; setVisible non veniva mai invocato.
Ora il banner sparisce davvero quando DUSAF7 e' caricato.

0.3.9 (2026-05-16)
- Banner DUSAF si aggiorna live ai segnali QgsProject
layersAdded/Removed (drag&drop dal Browser ora supportato).
- Stringhe italiane: "workflow" -> "flusso di lavoro" nei
messaggi utente. About inglese invariato.

0.3.8 (2026-05-16)
- Banner "Consigliato: caricare DUSAF7" scompare automaticamente
quando DUSAF7 e' gia' caricato come layer di progetto.
- Em-dash tipografico sostituito con trattino normale in tutti
i titoli del dialog.
- Nuovo slider trasparenza layer clip QC (0-100%) persistito
in QSettings.

0.3.7 (2026-05-16)
- UX polish per orientare l'utente nel flusso INPUT ->
PROCESSING -> OUTPUT: titoli delle sezioni prefissati con
il loro ruolo, subtitle a 3 passi numerati, banner rosso
consigliato caricamento DUSAF7 come layer, pulsante Esegui
rinforzato (bold, padding, icona).
- Zoom automatico al Comune appena processato (margine 10%).

0.3.6 (2026-05-16)
- REVERT del troncamento di COD_TOT a 4 cifre (0.3.0): rompeva
la categorizzazione LIV5 dei QML shipped. COD_TOT conserva
ora la lunghezza variabile.
- Logging clip neutro: il calo di feature dal clip e' filtraggio,
non warning anomalo.

0.3.5 (2026-05-16)
- Fix correttezza CRITICO: il pre-filtro DUSAF al bbox del
Comune scartava le feature con geometria invalida (visibile
come buchi nel clip QC nelle aree urbane dense). Sostituito
GeometrySkipInvalid con GeometryNoCheck.
- Logging diagnostico per ogni step pesante: "[STEP] <nome>:
<in> -> <out>" + warning automatico su perdite > 0.5%.

0.3.4 (2026-05-15)
- "Carica DUSAF nel progetto..." ora accetta direttamente lo
ZIP del Geoportale RL: estrae DUSAF7.shp + sidecar in
<nome_zip>_estratto/ e carica lo shapefile. Re-eseguendo
sullo stesso ZIP riusa l'estrazione esistente.

0.3.3 (2026-05-15)
- REVERT del sys.modules purge della 0.3.2: lasciava il package
parent rimosso ma il submodulo .py in cache (ImportError al
successivo classFactory). unload() torna alla versione stabile.

0.3.2 (2026-05-15)
- Tentativo (fallito) di rendere Plugin Reloader davvero
funzionante via sys.modules purge. Vedi 0.3.3 per il REVERT.

0.3.1 (2026-05-15)
- UX: "Stato dati" splittato in due sottosezioni distinte
(Confini ISTAT / DUSAF 7.0).
- Nuovo pulsante "Carica DUSAF7.shp nel progetto..." (file
picker) che evita il passaggio manuale Layer > Aggiungi.

0.3.0 (2026-05-15)
- Semplificazione architetturale: rimossa la cache DUSAF
locale (introdotta in 0.2.14) che generava due percorsi
paralleli con tabelle output diverse. Modello unificato a
2 sorgenti: layer di progetto o REST.
- COD_TOT troncato a LIV4 (poi revertato in 0.3.6).

0.2.16 (2026-05-15)
- UI trim radicale (feedback utente): rimossi banner duplicati,
pulsante "Info REST" (testo nel tooltip), radio "Fonte DUSAF"
quando non c'e' cache locale, elenco verboso "Cosa ottieni".

0.2.15 (2026-05-15)
- Polish setup dialog ISTAT + setup DUSAF: link cliccabili al
posto delle URL lunghe, fix TypeError validazione ZIP, badge
DUSAF a 4 stati.
- Nuova radio "Fonte DUSAF" (auto / forza REST).

0.2.14 (2026-05-15)
- Nuova feature: cache DUSAF 7.0 locale opzionale (rimossa
poi in 0.3.0). Setup dialog ispirato a ISTAT, ordine sorgenti:
project layer -> cache locale -> REST.

0.2.13 (2026-05-15)
- Fix: "Aggiorna cache lista Comuni" bypassava la cache ISTAT
anche quando il badge la indicava attiva. force_refresh
invalida ora solo la cache JSON leggera, non lo shapefile ISTAT.

0.2.12 (2026-05-15)
- "Aggiorna cache lista Comuni" da' ora feedback visibile a
schermo (messaggio in cima + processEvents prima del REST).
- Qt6 strict QGIS 4.0 round 2: compat alias per
QgsFeatureRequest, QgsVectorFileWriter,
QgsProcessingParameterNumber.

0.2.11 (2026-05-15)
- Fix leggibilita' tema scuro QGIS 4.0: "Cosa ottieni" forza
color:#1a1a1a su background chiaro; subtitle/intro rimuovono
il color hardcoded per ereditare dal tema.

0.2.10 (2026-05-15)
- Supporto schermi low-res (1366x768): entrambi i dialog
wrappati in QScrollArea, ridotti i minimumSize.

0.2.9 (2026-05-15)
- Qt6 strict QGIS 4.0 round 2: enum scoped su QCompleter /
QFont / QSizePolicy / QMessageBox / QTextCursor risolti via
_class_enum compat helper.

0.2.8 (2026-05-15)
- Fix critico QGIS 4.0 / Qt6 strict: "Qt has no attribute
RichText". Le flat alias non esistono piu' su Qt6 strict;
aggiunto compat helper _qt_enum lazy.

0.2.7 (2026-05-17)
- Chiusi 9 finding W504 + W391 (scanner Flake8 plugins.qgis.org
attiva sia W503 che W504, mutually exclusive).

0.2.6 (2026-05-17)
- Attribuzione dati esplicita CC BY 4.0 in README, metadata e
log (DUSAF / Ambiti Amministrativi RL; ISTAT 2026).
- Chiusi 14 finding Flake8 (W292/W293/W503/F541/E305/F841).

0.2.5 (2026-05-17)
- Rimosse cartelle dev-only flaggate dallo scanner "Suspicious
Files": help/ (Sphinx), scripts/ (translation helpers).

0.2.4 (2026-05-17)
- Bandit fix 4 issue: validazione esplicita schema URL
(http/https) prima di ogni urlopen() nei client REST;
rimosso plugin_upload.py (xmlrpc.client) dal pacchetto.

0.2.3 (2026-05-12)
- Aggiunto file LICENSE (senza estensione) richiesto dal
validator del repository QGIS.

0.2.2 (2026-05-12)
- Metadata bilingue (English + Italian) per la checklist di
review del repository QGIS. Tags estesi con varianti EN.

0.2.1 (2026-05-12)
- Polish metadata per submission plugins.qgis.org: changelog
multi-versione, rimosso qgisMaximumVersion.

0.2.0 (2026-05-12)
- Workflow REST-driven: scarica al volo DUSAF 7 e confini
comunali dai servizi RL ufficiali, senza pre-caricamento
manuale di layer.
- Nuovo dialog: autocomplete Comune, log live con progress bar,
3 modalita' output (memoria / progetto / cartella custom).
- Setup ISTAT 2026 opzionale per confini autoritativi.
- Cache lista Comuni con TTL 30 giorni.
- Compatibilita' QGIS 3.34 -> 4.99, Qt5 e Qt6.
- Robustezza REST: retry adattivo, bbox tiling, deferred retry
per Comuni grandi.
- Back-compat: usa DUSAF7/Com01012026_WGS84 se gia' nel progetto.
- 97 test pure-python; nuova icona Lombardia (43 KB).

0.1.0 (2026-05-09)
- Versione iniziale (Plugin Builder skeleton + workflow base
con pre-caricamento manuale di layer).

yes

marcols-126

2026-05-19T16:29:31.200510+00:00

3.34.0

4.99.0

None

no

Version management

Plugin details

QGIS sustaining members

Flagship membership


Flagship membership


Flagship membership


Large membership


Large membership


Large membership


Large membership


Large membership


Large membership


Large membership


Large membership


Large membership