From ccdfa2082d240ed892cb398c2a9e0f112be6a060 Mon Sep 17 00:00:00 2001 From: Bryce Mecum Date: Thu, 10 May 2018 15:02:48 -0700 Subject: [PATCH 1/4] Reduce dependencies on ncdf4 and yaml @isteves helpfully noted that the Travis CI builds started failing a while ago in https://github.com/NCEAS/arcticdatautils/issues/86. The failures indicate issues with Ubuntu PPAs and nothing to do with our tools. Though this happened around the time R 3.5.0 was released, which is a backwards incompatible R release indue to the introduction of ALTREP. This is: 1. My attempt to fix that so all the Travis builds pass 2. Reduce the deps arcticdatautils requires to install. ncdf4 and yaml are not packages that _need_ to be installed to get started using it so they should be in Suggests --- .travis.yml | 2 -- DESCRIPTION | 4 ++-- R/attributes.R | 6 ++++++ R/environment.R | 6 ++++++ R/util.R | 6 ++++++ 5 files changed, 20 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index a4c91ba..835edf6 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,5 +11,3 @@ addons: apt: packages: - librdf0-dev - - libnetcdf-dev - - r-cran-ncdf4 diff --git a/DESCRIPTION b/DESCRIPTION index 67fdc2e..ac8d1f5 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -21,12 +21,10 @@ Imports: EML, httr, methods, - ncdf4, stringr, stringi, tools, uuid, - yaml, xml2, XML License: MIT + file LICENSE @@ -35,7 +33,9 @@ Suggests: testthat, humaniformat, knitr, + ncdf4, rmarkdown, + yaml, xslt RoxygenNote: 6.0.1 VignetteBuilder: knitr diff --git a/R/attributes.R b/R/attributes.R index 8042a40..fed08e6 100644 --- a/R/attributes.R +++ b/R/attributes.R @@ -12,6 +12,12 @@ get_ncdf4_attributes <- function(nc) { stopifnot(is(nc, "ncdf4") || file.exists(nc)) + if (!requireNamespace("ncdf4")) { + stop(call. = FALSE, + "The package 'ncdf4' must be installed to run this function. ", + "Please install it and try again.") + } + # Read the file in if `nc` is a character vector if (is.character(nc)) { nc <- ncdf4::nc_open(nc) diff --git a/R/environment.R b/R/environment.R index 8ff1c12..66c32aa 100644 --- a/R/environment.R +++ b/R/environment.R @@ -38,6 +38,12 @@ env_get <- function() { #' #' env_load <- function(name=NULL, path=NULL, skip_mn=FALSE) { + if (!requireNamespace("yaml")) { + stop(call. = FALSE, + "The package 'yaml' must be installed to run this function. ", + "Please install it and try again.") + } + # Determine the environment to load if (is.null(name)) { name <- env_get() diff --git a/R/util.R b/R/util.R index eaa5001..2ef7984 100644 --- a/R/util.R +++ b/R/util.R @@ -109,6 +109,12 @@ get_netcdf_format_id <- function(path) { nchar(path) > 0, file.exists(path)) + if (!requireNamespace("ncdf4")) { + stop(call. = FALSE, + "The package 'ncdf4' must be installed to run this function. ", + "Please install it and try again.") + } + # Try to open the file, capturing errors cdf_file <- try({ ncdf4::nc_open(path) From 431593e088e234919e4bf88300d501f62227a62f Mon Sep 17 00:00:00 2001 From: Bryce Mecum Date: Thu, 10 May 2018 15:26:04 -0700 Subject: [PATCH 2/4] Turn off forcing suggests in travis build --- .travis.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.travis.yml b/.travis.yml index 835edf6..fcd9c84 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,6 +6,8 @@ r: - release - devel sudo: false +env: + - _R_CHECK_FORCE_SUGGESTS_=0 cache: packages addons: apt: From 9e0ea67708deccee4c3dd635e0b843b72cbedef6 Mon Sep 17 00:00:00 2001 From: Bryce Mecum Date: Thu, 10 May 2018 15:42:41 -0700 Subject: [PATCH 3/4] Move dplyr to Suggests --- DESCRIPTION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DESCRIPTION b/DESCRIPTION index ac8d1f5..1cddca5 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -15,7 +15,6 @@ Depends: R (>= 3.2.3) Imports: digest, - dplyr, dataone, datapack, EML, @@ -30,6 +29,7 @@ Imports: License: MIT + file LICENSE LazyData: true Suggests: + dplyr, testthat, humaniformat, knitr, From 77ef74f042374cc334efe1d60f8a745ac71f1a3c Mon Sep 17 00:00:00 2001 From: Bryce Mecum Date: Thu, 10 May 2018 15:52:10 -0700 Subject: [PATCH 4/4] Incorporate carl's great ideas https://github.com/NCEAS/arcticdatautils/pull/88#issuecomment-388208858 --- .travis.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index fcd9c84..aee4c81 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,11 +5,13 @@ r: - oldrel - release - devel +r_packages: ncdf4 sudo: false -env: - - _R_CHECK_FORCE_SUGGESTS_=0 cache: packages addons: apt: + update: true packages: - librdf0-dev + - libnetcdf-dev + - netcdf-bin