You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by GitBox <gi...@apache.org> on 2021/08/02 00:57:03 UTC

[GitHub] [arrow] jonkeane commented on a change in pull request #10841: ARROW-13511: [CI][R] Fail in the docker build step if R deps don't install

jonkeane commented on a change in pull request #10841:
URL: https://github.com/apache/arrow/pull/10841#discussion_r680595069



##########
File path: ci/scripts/r_deps.sh
##########
@@ -25,7 +25,12 @@ source_dir=${1}/r
 pushd ${source_dir}
 
 # Install R package dependencies
-${R_BIN} -e "install.packages('remotes'); remotes::install_cran(c('glue', 'rcmdcheck', 'sys'))"
-${R_BIN} -e "remotes::install_deps(dependencies = TRUE)"
+# install.packages() emits warnings if packages fail to install,
+# but we want to error/fail the build.
+# options(warn=2) turns warnings into errors
+${R_BIN} -e "options(warn=2); install.packages('remotes'); remotes::install_cran(c('glue', 'rcmdcheck', 'sys')); remotes::install_deps()"
+# Separately install the optional/test dependencies but don't error on them,
+# they're not available everywhere and that's ok
+${R_BIN} -e "remotes::install_deps(dependencies = 'Suggests')"

Review comment:
       ```suggestion
   ${R_BIN} -e "remotes::install_deps(dependencies = TRUE)"
   ```
   
   I think that we don't actually want to use "Suggests" here, because it appears that in remotes, that is then [used recursively with all of the Suggested packages if I'm reading correctly](https://github.com/r-lib/remotes/blob/3e35a1f41ce4923088a4c2b0ca463ea1d81377cb/R/install.R#L198) which is why we are suddenly installing many more packages + seeing failures we didn't have before.
   
   Using `dependencies = TRUE` is a little silly since part of them were already installed in the line above, but should restore the behavior we want of only installing our Suggests + their (hard) dependencies rather than our Suggests + their Suggests + ...




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org