CRAN release ‘Luminescence’ v0.9.18

- the lazy cat was trapped -

by RLum.Network (January 17, 2022)

The new year continues with updates, and again it was an external
trigger. What? Yes, 'Luminescence' got trapped in the dependency hell.

In essence, to implement new features fast and to avoid reinventing the wheel time and time again,
'Luminescence' depends on a couple of other R packages. Those packages depend again on other packages, which depend on additional packages, and so forth. Sometimes packages even rely further on external software. All those imports add an enormous functionality to the package, but they can also cause all kinds of trouble.

At a very early stage of 'Luminescence' in 2013, when the RLum-class structure was introduced, we decided to use the very powerful package 'raster' to support image data. 'raster' is mainly written for geospatial data and can do a lot, in particular, a lot more than we ever used in 'Luminescence'. Still, the cat was lazy, and there was no need to change the running system. Until recently, when the package 'raster' itself started to depend on a package called 'terra', which will supersede raster' eventually end of 2023. Some hick-ups in this transition process made it increasingly complicated to build the package on all platforms. Therefore, we decided to strip ‘raster’ from 'Luminescence'. You won’t miss it, because we merely used it to visualise a few image data and never tapped into its potential, and if, you can still use data from 'Luminescence' and process them in 'raster' or 'terra'.

We 'raster' we also dropped the link to 'RLumShiny' after it caused a nasty back dependency loop causing 'raster' and 'terra' to import even it was not required anymore for 'Luminescence'. And yes, ’RLumShiny' is the package that provides the beautiful user interface to 'Luminescence'. And it still does, you just cannot call it anymore from 'Luminescence', but you have to type RLumShiny::app_RLum(); it was the recommended way anyway.

For a complete list of changes, please check our GitHub page.

Stay safe!

Your R Luminescence Team