Insensa-GIS is back
After several years of dormancy, Insensa-GIS is being actively maintained again. The 2.x line modernises the build system, restores R/Rserve stability, and puts R-first plugins front and centre.
What changed
- Build system modernised: Gradle 3.3 → 7.6.4, the
install4jplugin is now optional, the toolchain produces clean Java 8 bytecode while building on JDK 17. - R / Rserve stability: the long-standing "Rserve cannot start" dialog now shows a copy-pasteable install command and uses the modern CRAN repository. Disconnect-on-shutdown errors are demoted from ERROR to DEBUG — they were never fatal.
- Plugin loading: an empty
<menuItem>inextensions.xmlno longer raises aSEVERElog entry.
Why it matters: R-first plugins
The biggest reason to come back to Insensa-GIS in 2026 is that researchers can now ship full plugins as R scripts — settings dialog included — without writing a single line of Java.
library(insensa)
insensa::uiAddInputNumeric("digits",
displayText = "Decimal digits",
defaultValue = 3,
global = TRUE)
insensa::uiAddBoolean("includeNA",
displayText = "Count NA",
defaultValue = FALSE)
if (!insensa::isActive()) rasterFile <- "/path/to/test.tif"
insensa::iget("raster", attach = TRUE)
r <- raster(rasterFile)
digits <- insensa::getVar("digits", default = 3)
includeNA <- insensa::getVar("includeNA", default = FALSE)
insensa::addVar(round(cellStats(r, "mean", na.rm = !includeNA), digits),
"mean_value")
The uiAdd* calls turn into a Swing dialog that Insensa renders for
free. Inputs come back via getVar, results go out via addVar and
land in the project's data model — exactly the way Java plugins
behave.
What's next
The reactivation is staged. Stage 1 is about making the tool runnable
and recommendable again — modernised GDAL, the insensa R package
shipped CRAN-clean (CRAN submission is gated on the rest of the
ecosystem stabilising), Apple Silicon tested. Stage 2 polishes the
look and feel: a modernised UI, better error reporting for R-plugin
crashes, plugin API versioning.
Watch this page or the source repositories on Bitbucket for the next milestones.
— Dennis