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