- lightr now depends on R >= 4.0.0, following the tidyverse recommendation
- the future package is now explicitly listed as a dependency, removing an
R CMD check
NOTE
and thus removing the strain on CRAN reviewers. The future package was already a indirect dependency via the future.apply package.
- this project now uses lintr to ensure the code is always following the current best coding practices in the R community
- ensure floating precision issues are not causing tests to fail on CRAN (@Bisaloo, #156)
lr_parse_irr8()
,lr_parse_rfl8()
andlr_parse_raw8()
now error if you provide a file not produced by AvaSoft 8.2 as they have not been tested properly with other versions of AvaSoft 8.
-
Errors in low-level parsers are now passed as warnings in high-level
lr_get_XXX()
functions instead of being completely silenced. -
IRR8 (irradiance files produced by AvaSoft 8) are now explicitly supported by
lr_get_spec()
. An alias has been added for the low-level parser:lr_parse_irr8()
.
- fix failing tests on CRAN due to unattached dependency
- fix failing tests on CRAN caused by non UTF-8 files
- The date returned in metadata (by
lr_get_metadata()
,lr_convert_tocsv(metadata = TRUE)
andlr_parse_XXXX()
) is now a datetime (with UTC as timezone and format%Y-%m-%d %H:%M:%S
). The column name inlr_get_metadata()
has been updated fromdate
todatetime
to reflect this. Thanks to Giancarlo Chiarenza for the report, and to Hao Ye, Laura DeCicco and Elin Waring for helpful comments about timezones and datetime formatting for reproducibility.
- datetime parsing is supported for more formats
- Files produced by OceanInsight software (such as SpectraSuite) in Spanish can now be parsed)
- the
cores
argument inlr_get_spec()
,lr_get_metadata()
, andlr_convert_tocsv()
has been completely removed. It was already deprecated since lightr 1.0 (released on CRAN on 2020-01-27) lr_convert_tocsv()
gains a newmetadata
argument (defaults toTRUE
) to determine if metadata should be exported in a csv file as well alongside the spectral data.
- Output of the low-level parsers
lr_parse_XXXX()
is now a named list with elementsdata
andmetadata
lr_parse_raw8()
andlr_parse_rfl8()
now explicitly mention the number of spectra in the warnings instead of the generic "multiple spectra"lr_parse_generic()
now makes sure that the data is ordered by increasing wavelengths, which fixes a bug reported by @itamshab
- (mostly internal)
compute_processed()
function is now namedlr_compute_processed()
- disable hash tests on Solaris (the output is still checked by other tests)
- fixed tests on platform with no long-doubles ('noLD')
- restored tests on 32bits machines
spec_ID
extraction from Avantes exported files (ttt
andtrt
) is now more robust, meaning it should work for more files.
date
column in metadata is now always formatted as ISO 8601.lightr
can now import AvaSoft8 files (test files provided by M.D. Shawkey and L. Swierk), via the functionslr_parse_rfl8()
/lr_parse_raw8()
.lightr
can correctly importsTRM
files from AvaSoft 6.0 (previously it only supported files from AvaSoft 7.0).lightr
can now import binary.spc
files (via thelr_parse_spc()
parser). This format is used by OceanInsight and CRAIC.
- new test suite on a different locale (in this case
fr_FR.UTF-8
) to ensure parsing is locale-independent. - warnings on CRAN build system for platforms that don't support markdown 2 have been fixed.
- new, stricter tests for various file formats.
jdx
files saved in a locale that uses,
as the decimal separator are now parsed correctly.- Avantes exported files in non-English locales (
ttt
andtrt
files) are now parsed correctly again (this was a regression compared to pavo'spavo::getspec()
). Thanks to A. Fargevieille for reporting the issue and providing a test file.
- parallel processing now relies on the
future
package, which offers windows and high performance computing (HPC) environments support. The progress bar is produced by theprogressr
package and can be customised as well. lr_parse_generic()
(and thuslr_get_spec()
) now works with non-UTF8 files (this was a regression compared to pavo'spavo::getspec()
).lr_get_spec()
now has a newinterpolate
argument to determine whether you want your data interpolated and pruned at every nm or not.
readBin()
(in the binary Avantes parser) now has an explicitendian
value, making this package portable to platform that use big endians.- documentation has been updated to follow the rebranding of OceanOptics into OceanInsight.
- vignette chunks that use
pavo
now only run if the package is available. savetime
field is now extracted from converted avantes files (when available).
- First release.