The getBridgeNames() function in BridgeDbR uses the following code to download the HTML page at https://bridgedb.github.io/data/gene_database/

  url <- "https://bridgedb.github.io/data/gene_database/";
  library(RCurl)
  CURL_SSLVERSION_TLSv1_2 <- 6L
  opts <- curlOptions(sslversion=CURL_SSLVERSION_TLSv1_2)
  site <- basicTextGatherer()
  curlPerform(url=url, writefunction=site$update, .opts=opts)
  html <- site$value()

Not sure why this fails on our Windows builder but if it fails there it might fail on other Windows systems. A more portable/reliable way to get that HTML document is to use download.file():

  url <- "https://bridgedb.github.io/data/gene_database/";
  destfile <- tempfile()
  download.file(url, destfile)
  html2 <- paste0(readLines(destfile), "\n", collapse="")

  identical(html, html2)  # TRUE

This works everywhere I tested e.g. my laptop, malbec1, merida1, tokay2, etc... and doesn't rely on some obscure RCurl/SSL settings.

By doing the same kind of change in their getDatabase() function, the BridgeDbR maintainers can get rid of their dependency on RCurl.

Hope this helps,
H.


On 3/18/20 12:20, Neumann, Steffen wrote:
Hi,

can you get me the URL that wants to be downloaded ?

The "tlsv1 alert protocol version" indicates that the proper
solution might be to notify the server to reconfigure
the web server supported TLS versions.

Yours,
Steffen


On Wed, 2020-03-18 at 19:55 +0100, Egon Willighagen wrote:
Hi all,

in the BridgeDbR package I have a TSL issue, just on Windows10 [0]:

location <- getDatabase("Bacillus subtilis")

Error in function (type, msg, asError = TRUE)  :
   error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert
protocol version
Calls: getDatabase ... getBridgeNames -> curlPerform -> <Anonymous>
-> fun
Execution halted

This method is using the download.file() method (see [1]). I am not
sure
what this method uses by default. I have been googling and found a
number
of suggestions on how to get RCurl to use other SSL version, such as:

CURL_SSLVERSION_TLSv1_2 <- 1Lopts <- RCurl::curlOptions(  verbose =
TRUE, sslversion = CURL_SSLVERSION_TLSv1_2)download.file(url, file,
mode = "wb", .opts=opts)


But I haven't found something that works. Error messages are very
cryptic,
and I'm running out of ideas.

Does someone have a suggestion how to debug this? Maybe even have a
solution?

All feedback is very much appreciated!

Egon



0.

https://urldefense.proofpoint.com/v2/url?u=https-3A__bioconductor.org_checkResults_release_bioc-2DLATEST_BridgeDbR_tokay1-2Dchecksrc.html&d=DwICAg&c=eRAMFD45gAfqt84VtBcfhQ&r=BK7q3XeAvimeWdGbWY_wJYbW0WYiZvSXAJJKaaPhzWA&m=6ZUwYkvqkDVxUXnwM4Ny0c26DHiOZSSZMb3TcjTEhTU&s=SDaSu90TFdkKtZZR37pGYXHlqzxNF52W5cEYLNRIl88&e=
1.
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_bridgedb_BridgeDbR_blob_master_R_getDatabase.R-23L23&d=DwICAg&c=eRAMFD45gAfqt84VtBcfhQ&r=BK7q3XeAvimeWdGbWY_wJYbW0WYiZvSXAJJKaaPhzWA&m=6ZUwYkvqkDVxUXnwM4Ny0c26DHiOZSSZMb3TcjTEhTU&s=IIwoUM7vnfvLY_e0j7jr4Vd3-EFsgGD1khuegLj83KI&e=




--
Hervé Pagès

Program in Computational Biology
Division of Public Health Sciences
Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N, M1-B514
P.O. Box 19024
Seattle, WA 98109-1024

E-mail: hpa...@fredhutch.org
Phone:  (206) 667-5791
Fax:    (206) 667-1319

_______________________________________________
Bioc-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel

Reply via email to