# This file contains metadata for your plugin.

# This file should be included when you package your plugin.# Mandatory items:

[general]
name=Sec Interp
qgisMinimumVersion=3.0
description=Data extraction for geological interpretation
version=2.2.0
author=Juan M Bernales
email=juanbernales@gmail.com

about=Data extraction from DEM, geological outcrops and structural points, for geological interpretation

tracker=https://github.com/geociencio/sec_interp/issues
repository=https://github.com/geociencio/sec_interp
# End of mandatory metadata

# Recommended items:

hasProcessingProvider=no
changelog=
    2.2.0 (2025-12-22)
    * Major Refactoring & Architecture:
      - Moved main SecInterp class to plugin root (sec_interp_plugin.py).
      - Modularized validation into core/validation/ package.
      - Fragmented SecInterpDialog into specialized managers.
    * Documentation & Optimization:
      - Translated 100%% of documentation (ARCHITECTURE.md) to English.
      - Optimized Help System (removed source code views/redundant raw sources).
      - Slimmed ZIP package by 70%% uncompressed through advanced exclusions.
    * Features & UX:
      - Restored visual workflow images to User Guide.
      - Fixed toolbar icon loading and Axis/Grid alignment.
    
    2.1.0 (2025-12-17)
    * Major Feature: Snap-Enabled Measurement Tool
      - Iterative vertex snapping using QgsPointLocator (Avoids project pollution)
      - Performance optimized with locator caching
    * AI Workflow & Reliability:
      - Unicode normalization (NFD) for robust keyword matching (accents support)
      - Direct integration of AI_CONTEXT and Project Brain in prompts
    * Fixes:
      - Resolved QgsSnappingConfig AttributeError (QgsTolerance.Pixels)
      - Eliminated scratch layer warnings

    2.0 (2025-12-14)
    * Major Feature: Drillhole Data Handling
      - 3D Projection of drillhole traces onto 2D profile sections
      - Auto-calculation of total depths and handling of vertical holes without survey
      - Visualization of geological intervals along drillhole traces
    * Drillhole Data Export:
      - Export drillhole traces to Shapefile (drillhole_traces.shp)
      - Export interval data with attributes to Shapefile (drillhole_intervals.shp)
    * Major UI Refactoring & Enhancements:
      - New specialized Drillhole Input Page
      - Enhanced Preview System with dedicated persistent rendering for all data types
      - Fixed critical rendering bugs (zoom persistence, async updates)
    * Architecture:
      - Implemented DrillholeService for encapsulated logic
      - Refactored ProfileController to orchestrate multiple data services
      - Unified export logic with extensible Exporter pattern

    1.1 (2025-12-12)
    * Performance & Optimization:
      - Implemented asynchronous parallel processing for geological generation
      - Integrated Performance Monitor (RAM & Execution Time tracking)
      - Added non-blocking UI during heavy calculations
    * Preview System Enhancements:
      - Implemented Adaptive Level of Detail (LOD) for high-performance rendering
      - Added Dynamic Zoom-based LOD (details increase as you zoom in)
      - Added Measurement Tool (Distance and Slope/Gradient)
      - Improved CRS handling and fixed blank rendering issues
    * Architecture & Fixes:
      - Refactored services to use Command Pattern for parallel execution
      - Fixed structure projection consistency
      - Resolved "No valid layers to render" warnings
      - Fixed Dip Scale Factor application


    1.0 (2025-12-08)
    * Refactoring & Architecture:
      - Split monolithic modules (algorithms.py, main_dialog.py) into focused components
      - Modularized exporters ecosystem
      - Implemented spatial indexing and native QGIS algorithms for performance
    * Quality Assurance:
      - Added comprehensive type hinting across modules
      - Enhanced test infrastructure with pytest and QGIS support
      - Implemented security fixes (path traversal protection)
    * Major UI Refactoring - Plugin Manager Style:
      - Redesigned main dialog with sidebar navigation (QListWidget + QStackedWidget)
      - Replaced absolute positioning with responsive layouts (QVBoxLayout, QHBoxLayout, QSplitter)
      - Integrated native QGIS theme icons for sidebar items
      - Improved preview/results area proportions with better vertical space management
      - Fixed legend rendering and resizing issues
    * Code Quality Improvements:
      - Extracted LegendWidget to separate module (gui/legend_widget.py)
      - Refactored preview_profile_handler with helper methods and early returns
      - Refactored export_preview with dedicated methods per format (PNG, JPG, SVG, PDF)
      - Applied SOLID principles throughout main dialog class
    * Documentation:
      - Added COMMIT_GUIDELINES.md for standardized commit messages
      - Added RELEASE_PROCESS.md with version release workflow
      - Added drilllogs_research.md with future integration requirements
    
    0.3 (2025-12-03)
    * Major Refactoring - Modular Project Structure:
      - Reorganized codebase into core/, gui/, resources/ packages
      - Improved code maintainability and scalability
      - Better separation of concerns (business logic, UI, resources)
    * Quality Improvements:
      - Achieved Pylint score 10/10
      - Specific exception handling throughout codebase
      - Comprehensive code documentation
      - Configured .pylintrc for consistent code quality
    * Testing & CI/CD:
      - Added pytest infrastructure with QGIS support
      - Created initial unit tests (3 tests passing)
      - Configured GitHub Actions for automated testing
      - Test configuration in tests/conftest.py
    * Build System:
      - Updated Makefile for new structure
      - Refactored deploy.sh for modular deployment
      - Organized build scripts in scripts/ directory
    * Documentation:
      - Added REFACTORING_PR.md with detailed changes
      - Improved project documentation structure
      - Added implementation plans for future features
    
    0.2 (2025-11-30)
    * Major UI Overhaul - Native QGIS Widget Integration:
      - Replaced standard Qt ComboBoxes with QgsMapLayerComboBox for automatic layer population
      - Integrated QgsRasterBandComboBox for intelligent raster band selection
      - Added QgsFileWidget for native file/directory browsing with QGIS integration
      - Eliminated manual layer population code - widgets auto-sync with QGIS project
      - Improved user experience with native QGIS look and feel
    * UI Enhancements:
      - Collapsible results panel (QgsCollapsibleGroupBox) for better space management
      - Read-only results field to prevent accidental edits
      - Fixed Qt enum syntax for better cross-version compatibility
    * New Features:
      - Flexible parsers for geological structural measurements (dip/strike formats)
      - Comprehensive logging system integrated with QGIS Message Panel
      - Enhanced validation logic for QgsMapLayer objects
    * Code Quality:
      - Removed 200+ lines of manual widget population code
      - Cleaner architecture leveraging QGIS native capabilities
    
    0.1 (Initial Release)
    - DEM topographic profile extraction
    - Geological outcrop data extraction
    - Structural point data extraction
    - Interactive preview visualization

# Tags are comma separated with spaces allowed
tags=csv, dem, point, polyline

homepage=https://github.com/geociencio/sec_interp

icon=icon.png
# experimental flag
experimental=False

# deprecated flag (applies to the whole plugin, not just a single version)
deprecated=False

# Since QGIS 3.8, a comma separated list of plugins to be installed
# (or upgraded) can be specified.
# Check the documentation for more information.
# plugin_dependencies=

# Category of the plugin: Raster, Vector, Database or Web
category=Vector

# If the plugin can run on QGIS Server.
server=False

