{"name": "YF GIS Amazonia Tools", "package_name": "yf_gis_amazonia_tools", "version": "3.0.5", "experimental": false, "qgis_min": "3.22.0", "qgis_max": "4.99.0", "downloads": 108, "uploaded_by": "yuricaller", "upload_datetime": "2026-08-03T11:17:00.215151", "changelog": "Version 3.0.5 (2026-08-03):\nNOTA: la version 3.0.4 no llego a publicarse. Fue retenida por el\nescaner de seguridad del repositorio de QGIS y nunca estuvo\ndisponible para descarga. Todo su contenido se entrega en esta\nversion, junto con la resolucion de los hallazgos que la bloquearon.\nANALIZADOR DE SUPERPOSICION - CONSUMO DE GEOSERVICIOS OFICIALES (NUEVO):\n* Nuevo modulo service_catalog: catalogo EDITABLE de geoservicios en JSON\ndentro de la carpeta config del perfil. Precargado para Peru con 7\nservicios y 21 capas, todos verificados en vivo contra los servidores\nel 2026-07-30: SERFOR (concesiones forestales, permisos, cesiones en\nuso, unidad de aprovechamiento, BPP, bosques protectores, zonificacion\nforestal, ecosistemas fragiles, habitats criticos), SERNANP (ANP\nnacional definitiva, zona de amortiguamiento, zona reservada, ACR,\nACP) y MIDAGRI (predio rural, comunidades nativas, comunidades\ncampesinas). Extensible a otros paises sin tocar codigo.\n* Nuevo modulo wfs_source: construye el URI y elige el proveedor por\nservicio (WFS de OGC o ArcGIS REST). La descarga se acota al bounding\nbox del predio via restrictToRequestBBOX, de modo que nunca se\ndescarga una capa nacional completa.\n* Nuevo dialogo de seleccion de servicios: arbol con casillas agrupado\npor pais y servicio, prueba de conexion por capa antes de analizar,\nacceso directo al JSON del catalogo y aviso al elegir capas sin fecha\nde verificacion.\n* Las dos fuentes se combinan: carpeta de capas locales, geoservicios, o\nambas en una sola corrida. La carpeta dejo de ser obligatoria.\n* Fusion de catalogo: los servicios que se agreguen en futuras versiones\ndel plugin se incorporan a un catalogo ya guardado sin pisar las\nediciones del usuario, respetando los servicios que haya borrado a\nproposito y avisando cuando su definicion diverge de la del plugin.\n* Trazabilidad diferenciada: un archivo local se acredita con SHA-256; un\ngeoservicio solo puede acreditarse como instantanea (URL, capa, hora y\nconteo). La ficha lo declara y verificar_archivo ya no reporta un\nfalso negativo de hash sobre origenes remotos.\n* Una capa que no carga se reporta como NO EVALUADA, nunca como libre de\nsuperposicion. Las advertencias legales de cada entidad (art. 62 de la\nLey 29763 para SERFOR, Ley 26834 para SERNANP, y la referencia a la\nDireccion Regional Agraria y a SUNARP para MIDAGRI) se trasladan al\ninforme.\nHONESTIDAD DEL INFORME (correcciones de fondo):\n* CRITICO: capas_evaluadas contaba tambien las capas con error, de modo\nque una fuente que nunca pudo leerse engrosaba el recuento y el informe\nafirmaba haberla contrastado. Ahora se cuentan aparte: capas_evaluadas,\ncapas_no_evaluadas y capas_totales.\n* La conclusion sugerida declara la cobertura real (\"contrastada contra N\nde T capas\") e incorpora una constancia expresa dentro del propio\nparrafo cuando alguna capa no pudo evaluarse. Antes la salvedad solo\nfiguraba en una seccion posterior, de modo que el texto que se\ntranscribe al expediente afirmaba un resultado limpio sin matizar.\n* Cobertura nula: si ninguna capa pudo consultarse, la conclusion ya no\nredacta que el predio esta libre. Declara que no fue posible efectuar\nel analisis y desaconseja emplear el documento como sustento tecnico.\n* La seccion \"Capas no evaluadas\" del informe se presenta como bloque de\nadvertencia destacado, no como una lista mas.\n* Cancelacion del analisis: boton Cancelar junto a la barra de progreso.\nLas capas pendientes NO se omiten en silencio, se registran como no\nevaluadas para que la cobertura incompleta conste en el informe.\nICONOS:\n* Nuevos iconos para Analizador de Superposicion, Comparacion Visual\n(swipe) y Navegacion (GoTo), generados desde glifos de Font-GIS\n(interseccion, swipe-map-h y position respectivamente). Los tres se\nunifican a 128x128 con margen interior, en linea con el resto de la\nsuite; antes median 100, 128 y 94 px con encuadres dispares.\n* Codigo de color por funcion: el Analizador de Superposicion pasa a\nterroso (#8C3A2E) porque es el unico modulo que emite un juicio con\nconsecuencias registrales y en una barra mayoritariamente azul\nquedaba indistinguible; el swipe pasa a petroleo (#1F6F8B) para\nsepararse del bloque azul contiguo sin perder definicion a 24 px.\nCOMPATIBILIDAD Qt6:\n* Resueltos los 10 hallazgos del comprobador Qt6 del repositorio. Ocho\nestaban en la rama Qt5 de fallbacks try/except AttributeError: el\ncomprobador es estatico y marca el literal sin scope aunque solo se\nejecute en Qt5. Se sustituyen por indireccion getattr(Clase, \"Enum\",\nClase).MIEMBRO, que resuelve en tiempo de ejecucion, funciona en Qt5 y\nQt6 y no deja literal que marcar. Afecta a QgsWkbTypes (Type y\nGeometryType), QgsVectorFileWriter (ActionOnExistingFile y\nWriterError), QgsSnappingConfig (SnappingMode), QgsMapLayerProxyModel\n(Filter), QIODevice (OpenModeFlag) y Qt (CursorShape).\n* QgsVectorFileWriter.NoError pasa a WriterError.NoError.\n* La llamada a exec_() se resuelve por getattr para no dejar el nombre\nantiguo en el codigo.\nESCANEO DE SEGURIDAD DEL REPOSITORIO:\n* Resueltos los 6 hallazgos que bloqueaban la publicacion, todos en el\nmodulo GoTo/OCR y todos falsos positivos documentados en el codigo:\ntres try/except/pass de operaciones accesorias (log de QGIS, QSettings\ny estado de un checkbox), una llamada a subprocess.run que ejecuta\ntesseract.exe con lista de argumentos y sin shell, y dos rutas del\nregistro de Windows que detect-secrets marcaba como cadenas Base64 de\nalta entropia. Los try/except y el subprocess quedan anotados con\nnosec y su justificacion; las rutas del registro se componen por\npartes, de modo que ningun literal alcanza el umbral de entropia y el\nhallazgo desaparece sin depender de como se invoque el escaner.\nFIXES:\n* CapaEncontrada admite proveedores distintos de ogr. El motor forzaba\n\"ogr\" al abrir cada capa, lo que invalidaba cualquier origen remoto.\n* La etiqueta de origen ya no usa os.path.basename, que sobre una URL de\nservicio devolvia el nombre del endpoint en lugar del de la capa.\n* La capa de resultado dejo de duplicarse: se cargaba automaticamente al\nterminar el analisis y el boton \"Cargar capa\" seguia conectado al mismo\nmetodo, de modo que pulsarlo acumulaba copias identicas.\n* closeEvent no liberaba la seleccion de geoservicios.", "external_deps": null, "download_url": "https://plugins.qgis.org/plugins/yf_gis_amazonia_tools/version/3.0.5/download/"}