# This file contains metadata for your plugin.

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

[general]
name=movecost
qgisMinimumVersion=3.0
qgisMaximumVersion=4.99
description=R script for QGIS for Calculation of Slope-Dependent Accumulated Cost Surface, Least-Cost Paths, and Least-Cost Corridors Related to Human Movement
version=3.1.4
author=Enzo Cocca; Gianmarco Alberti
email=enzo.ccc@gmail.com

about=R script for QGIS for Calculation of Slope-Dependent Accumulated Cost Surface, Least-Cost Paths, and Least-Cost Corridors Related to Human Movement. Based on the movecost R package by Gianmarco Alberti. Requires the Processing R Provider plugin and R with movecost, sf, and terra packages installed.

tracker=https://github.com/enzococca/movecost/issues
repository=https://github.com/enzococca/movecost
# End of mandatory metadata

# Recommended items:

hasProcessingProvider=no

# Changelog
changelog=
    3.1.4 - Pass plugins.qgis.org Bandit + flake8 review (W503/W504 + B112/B110):
        - Collapsed the Qt5/Qt6 dock feature flags expression into a single
          line via getattr(QDockWidget, 'DockWidgetFeature', QDockWidget),
          removing the multi-line OR that triggered W503 when split before
          and W504 when split after the operator.
        - Narrowed 4 broad 'except Exception:' handlers in plot-discovery
          code to 'except (OSError, PermissionError):' to satisfy Bandit
          B112 (try-except-continue) and B110 (try-except-pass) rules.
          No behavior change: the operations that can fail are filesystem
          calls (os.listdir, glob, getmtime), which raise OSError variants.
    3.1.3 - Plugin repository W504 compliance:
        - In movecost_dialog.py (Qt5/Qt6 dock feature flags), moved the '|'
          operator to the beginning of the continuation lines instead of the
          end (modern PEP 8 recommendation; resolves W504 warnings from the
          plugins.qgis.org review).
    3.1.2 - Document Topo_Dist parameter in algorithm help files:
        - Added Topo_Dist parameter description to all 14 .rsx.help files
          (shown in the QGIS Processing parameter dialog when hovering).
        - Bumped Version 2.1 -> 2.2 marker in movecost.rsx.help ALG_DESC.
    3.1.1 - Plugin repository compliance:
        - Removed deprecated supportsQt6 metadata flag (Qt6 compatibility is
          now determined solely by qgisMaximumVersion=4.99).
        - Cleaned up Python source files to satisfy plugins.qgis.org's
          Bandit/flake8 review: removed ~30 unused imports, replaced bare
          'except:' with explicit 'except Exception:', fixed long lines,
          replaced star imports in movecost_dialog with explicit imports,
          removed orphan 'standard_library.install_aliases()' call.
        - No behavior changes; this is a tooling/cleanup release.
    3.1.0 - Support movecost R package 2.2 (topo.dist parameter):
        - New "Topo_Dist" parameter (default FALSE) added to all 14 algorithm scripts
          (movecost, movealloc, movebound, movecomp, movecorr, movenetw, moverank,
          plus their _by_polygon variants). When TRUE, accumulated cost is
          calculated using topographic surface distance instead of planar
          distance (surface = planar * sqrt(1 + slope^2)). Recommended for
          time-based hiking functions; use with caution on metabolic energy
          functions which are derived from planar measurements.
        - Bumped minimum required movecost R package version from 2.1 to 2.2
          (auto-installer in each rsx will now prompt the update).
    3.0.1 - Fix Qt6 compatibility: replaced PyQt5 import in resources_rc.py with qgis.PyQt
    3.0 - Major UI redesign and improvements:
        - Converted dialog to dockable panel (QDockWidget) that docks to right side of QGIS
        - New tabbed interface: Algorithms, Results, Export, Settings
        - R Plot Viewer: displays plots directly in the plugin panel
        - Cost Summary: shows statistics from analysis results
        - Export options: CSV tables, HTML reports
        - Modern CSS styling with color-coded algorithm buttons
        - movecomp: now supports unlimited cost function comparison (comma-separated input)
        - All LCP outputs now include cost, time_converted, length_m, length_km fields
        - All polygon outputs now include area_m2, area_km2, area_ha fields
        - Fixed barrier support: proper sf to Spatial conversion for all algorithms
        - Layer organization: automatic grouping and styling of output layers
    2.1 - Qt6/QGIS 4 compatibility, removed deprecated rgdal dependency, multilingual help files
    2.0 - Initial release with sf/terra support

# Tags are comma separated with spaces allowed
tags=python, R, least-cost path, cost surface, movement, archaeology, GIS

homepage=https://github.com/enzococca/movecost
category=Plugins
icon=movecost.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=

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

