← Back to all sparks
O

OpenLand

INFRA · APIS
Velocity0.0

Quantitative Analysis and Visualization of LUCC

Land-change analysis in R that has spent six years defending one download link.

remote-sensingland-use-changeraster-analysiscran-maintenancer-package
Current state
OpenLand computes land use and cover change metrics from raster time series, including the full intensity analysis framework of Aldwaik and Pontius. The method surface has not moved since the 1.0.0 release in 2020; the four releases since are entirely about surviving CRAN checks and the fragility of fetching its example dataset from Zenodo. The most recent one stops examples from leaving downloaded data in the user's persistent cache directory.
Where it's heading
Two forces shape every release here: an external data dependency the package cannot control, and upstream churn in the tidyverse. The Zenodo-hosted SaoLourencoBasin dataset has now been the subject of three separate releases — failing gracefully when unreachable, loading through a helper with informative errors, and finally writing to temporary files instead of the cache. The other recurring cost is dplyr, most recently the removal of dplyr::changes() forcing a global-variable declaration. Actual analytical work is rare: the one substantive fix in the window was a memory allocation failure in contingencyTable() on rasters spanning many years or large areas.
Prediction
The entries give no sign of new metrics or methods in progress, so the next release will most likely be another compatibility or CRAN-check response rather than a feature.

Recent moves

  1. 1mo ago

    Examples write downloads to temp files, not the user cache

    A CRAN donttest complaint about examples and the vignette leaving Zenodo downloads under the user's cache directory. The third release in a row spent managing the same external dataset dependency, with no change to what the package computes.

    View source ↗
  2. 1mo ago

    Compatibility with dplyr after changes() removal; safer dataset loading

    The binding fix keeps the package working against current dplyr, where the deprecated changes() function is gone entirely — a real breakage avoided rather than a cosmetic NOTE. Alongside it, a dedicated download helper gives informative errors when the example dataset is unreachable instead of failing opaquely.

    View source ↗
  3. 2y ago

    Plot unit test repaired after a ggplot change

    A single test fix contributed upstream, with nothing user-facing. It is the only release in a nearly three-year gap between 1.0.2 and 1.0.4, which marks how quiet the package is between compatibility emergencies.

    View source ↗
  4. 4y ago

    Memory allocation failure fixed for large multi-year rasters

    The one release in the window that touches the analysis itself: contingencyTable() no longer fails on rasters covering many layers or large areas, which is precisely the case a land-change study is likely to hit. The vignette also gains graceful handling when the dataset URL is unreachable, opening the dependency thread that later releases keep pulling.

    View source ↗
  5. 6y ago

    First release: LUCC metrics and full intensity analysis

    ⚡ SPARK

    The release that defines the package and, six years on, still defines its entire capability surface. Everything since has been maintenance around this core rather than extension of it.

    View source ↗