GHA - Ubuntu runner -remote github dependency

I have just started using GHA, and in particular the standard R-CMD-check workflow for a package that I am developing.

One of the Dependency a bioconductor package (GSEABase) that can be installed directly from
github bioconductor repostitory with remotes::install_github("Bioconductor/GSEABase")

Therefore my Package Description file contains the following lines:

Imports: 
    GSEABase (>= 1.52.1)
Remotes: 
    Bioconductor/GSEABase

And package built on Windows and MacOs but fails on Ubuntu runners with just

* checking package dependencies ... ERROR
Error: Package required but not available: ‘GSEABase’

Not sure what I am missing, and I was wondering if you guys could point me to the right direction.

Best

The error you get when running R CMD check means the installation failed earlier, so earlier in the GHA log there might be a more informative error message.

Sometimes things just work better if switching from remotes-based workflows to pak-based workflows. I.e. in r-lib/actions, using the workflows whose filename features "pak". Especially as pak docs mention Bioconductor support.

If you keep using remotes: it might actually be a bit annoying that the next steps are run when installation fails. To make the run stop if installations fail you need to set the environment variable R_REMOTES_NO_ERRORS_FROM_WARNINGSto false. GitHub code search, remotes changelog.

1 Like

Thank you so much for the tips Maelle!
I will check that out and see how it goes...
Best,
Claudio

1 Like

Yes, that solved the problem.
I used pak and in Ubuntu I also had to install libcurl4-openssl-dev and that did it.

Thanks!

1 Like

Awesome! :tada:

I'm curious why you had to explicitly install libcurl4-openssl-dev as pak workflows have a step install system dependencies?

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.