Open colinpmillar opened 2 years ago
The TAF wiki states that
If software entry A depends on entry B, then B should be listed before A in SOFTWARE.bib, so they are installed in the right order.
In other words, when declaring 'FLCore' in SOFTWARE.bib, one could declare 'iterators' just above it. Or, perhaps more commonly, leave it to the user to install CRAN dependencies such as 'iterators' outside the TAF library. This would imply that 'FLCore' is not highly sensitive to the version of 'iterators'.
The taf.boot() functionality in TAF comes with a good number of features, but it does not aspire to solve every possible situation that can arise related to package dependencies (some on CRAN, some on GitHub) and version conflicts. Users can potentially write a software boot script to overcome dependency challenges specific to a particular TAF analysis. Such a boot script could indeed utilize the 'remotes' package and/or other packages.
The SOFTWARE.bib file is an excellent place to document the key software and versions used in a TAF analysis, but SOFTWARE.bib entries will not always guarantee that things will 'just work'. For some software (and especially older versions) it will require some thought and extra work of the user to rerun an existing analysis.
Issue arose when FLCore in in taf library but CRAN dependency iterators is not on the local machine
https://github.com/ices-tools-prod/TAF/blob/0e7c09f52a79ecd84c60d99ab3682e5942fcd464/R/taf.install.R#L73