r-hub / rhub-linux-builders

Docker configuration for the R-hub Linux builders
GNU General Public License v2.0
23 stars 13 forks source link

openssl not found in Ubuntu and Fedora builds. #58

Open JSchoenbachler opened 2 years ago

JSchoenbachler commented 2 years ago

Other users and I have noted some issues with the linux rhub platforms as of late, see this issue: https://github.com/r-hub/rhub/issues/508

I'm not sure of the exact details for the other users, but in my situation openssl isn't found on the platform which causes R packages that use openssl to fail. One of my runs with the relevant line: https://builder.r-hub.io/status/zeitzeiger_2.0.4.tar.gz-18424e001248437e88769f36486e4b92#L4429

I looked through your Dockerfiles and see that it should be installing: https://github.com/r-hub/rhub-linux-builders/blob/18a40adb9811520b828d930905cbec113c0938b8/ubuntu/Dockerfile#L37

Not sure why it isn't. Also not sure if this happens on other linux builds, as I only tested with "Ubuntu Linux 20.04.1 LTS, R-release, GCC" and "Fedora Linux, R-devel, clang, gfortran".

Also a minor point, but your README and other documentation list the Ubuntu version as 16.04 even though the version being used is 20.04.

JSchoenbachler commented 2 years ago

@gaborcsardi Hey Sorry to ping you, you're just the last person to push to this repository. Was wondering if you guys were aware of this bug?

I'm trying to check several packages on rhub to submit to CRAN and am running into this issue.

gaborcsardi commented 2 years ago

Sorry about that. The logs are not kept for log, can you please resubmit the package and then ping me here? Thanks.

JSchoenbachler commented 2 years ago

@gaborcsardi I just ran it on the original package I got the error with and another package that relies on a similar package that uses openssl-

Some weird notes:

gaborcsardi commented 2 years ago

The ssl error happens because your package depends on openssl through a Bioconductor package, and we don't automatically discover system dependencies of Bioconductor package. I have added an exception for this now here: https://github.com/r-hub/sysreqsdb/commit/5fd38f9afb88869e99036b1311eb0b530b5786e1 so it should work now.

JSchoenbachler commented 2 years ago

Okay thank you! I appreciate it.

gaborcsardi commented 2 years ago

And a similar exception seems to be needed for annotate to make the other package pick up openssl: https://github.com/r-hub/sysreqsdb/commit/2780892777fef0640b3d6f7bdbe2f43bea5bacf9 So please try that again as well.

gaborcsardi commented 2 years ago

The error on Windows is a bug in install.packages(), it cannot work out the proper installation order if a mixture of binary and source packages are involved. There isn't much that we can do about this, unfortunately. Eventually Bioconductor will ship binary packages for R 4.2.x Windows, but until then this is not going to work.

JSchoenbachler commented 2 years ago

@gaborcsardi This all looks fine now except that it looks like I'm now having the same problem with xml2-config on Ubuntu only:

https://builder.r-hub.io/status/zeitzeiger_2.0.4.tar.gz-fbb965ad7c0a4e81b4634119082a81e4

gaborcsardi commented 2 years ago

Yeah, libxml2 is also need through BioC:

❯ pak::pkg_deps_explain("local::.", "XML")
zeitzeiger -> sva -> genefilter -> annotate -> XML

It should work now: https://github.com/r-hub/sysreqsdb/commit/3f42c7b773f4d4e127e46bc5d307fea2b0f73cf0

JSchoenbachler commented 2 years ago

@gaborcsardi excellent, everything is working now!

Is adding the ability to discover BioConductor system dependencies a possible future enhancement? That way it these situations don't pop up and require exceptions.

Regardless thanks for helping out with this issue!

JSchoenbachler commented 2 years ago

Hey @gaborcsardi sorry to bother you again.

I'm running into a similar issue to this again on a different package. Could you take a look and see if it's the same thing?

Windows: https://builder.r-hub.io/status/limorhyde_1.0.1.tar.gz-9416d81d2e2b45f3af64f3664b5c59ee Ubuntu: https://builder.r-hub.io/status/limorhyde_1.0.1.tar.gz-6c16435c56e04d78a38de6188e280984

Strangely enough, doesn't seem to happen on Fedora: https://builder.r-hub.io/status/limorhyde_1.0.1.tar.gz-0cdd17258f1f4c1e801c6465bc87137b

gaborcsardi commented 2 years ago

Yes, annotate also needs XML -> libxml2, it seems: https://github.com/r-hub/sysreqsdb/commit/85f3558c9413112eda665702cda2059a72853035

Should be good now. (Except for R-devel on Windows, which will not work for the same reason as before.)

JSchoenbachler commented 2 years ago

@gaborcsardi (Really sorry to keep pinging you) could you also do this for the package it's happening to here: https://builder.r-hub.io/status/limorhyde2_0.0.6.tar.gz-2a69a89258d8447488fbd161c365cddc