R snippets not working in knime on MacOS

Hi,

I am having trouble getting certain packages to work in R snippet nodes in knime on Mac (Mac OS Sequoia 15.6.1). I believe I have downloaded all necessary packages (e.g. Rserve, Cairo). I have inputted the correct R path in my preferences. Base R code runs perfectly fine. Certain packages, such as ‘dplyr’, also load and work fine. However, there are certain packages that cause issues. For example, whenever I try to load the package ‘msigdbr’, I get an error. See the following:


> library(msigdbr)

ERROR: R evaluation failed.: "knime.tmp.ret<-NULL;printError<-function(e) message(paste(‘Error:’,conditionMessage(e)));for(exp in tryCatch(parse(text=knime.tmp.script),error=printError)){tryCatch(knime.tmp.ret<-withVisible(eval(exp)),error=printError)

if(!is.null(knime.tmp.ret)) {if(knime.tmp.ret$visible) tryCatch(print(knime.tmp.ret$value),error=printError)}};rm(knime.tmp.script,exp,printError);knime.tmp.ret$value"ERROR: R evaluation failed.: "knime.tmp.ret<-NULL;printError<-function(e) message(paste(‘Error:’,conditionMessage(e)));for(exp in tryCatch(parse(text=knime.tmp.script),error=printError)){tryCatch(knime.tmp.ret<-withVisible(eval(exp)),error=printError)

if(!is.null(knime.tmp.ret)) {if(knime.tmp.ret$visible) tryCatch(print(knime.tmp.ret$value),error=printError)}};rm(knime.tmp.script,exp,printError);knime.tmp.ret$value"ERROR: eval failedERROR: Could not capture output of command.ERROR: R evaluation failed.: "sink();sink(type=‘message’)

close(knime.stdout.con);close(knime.stderr.con)

knime.output.ret<-c(paste(knime.stdout,collapse=‘\n’), paste(knime.stderr,collapse=‘\n’))

knime.output.ret"ERROR: R evaluation failed.: "sink();sink(type=‘message’)

close(knime.stdout.con);close(knime.stderr.con)

knime.output.ret<-c(paste(knime.stdout,collapse=‘\n’), paste(knime.stderr,collapse=‘\n’))

knime.output.ret"ERROR: eval failedERROR: Could not cleanup after command execution.ERROR: R evaluation failed.: "rm(knime.tmp.ret,knime.output.ret,knime.stdout.con,knime.stderr.con,knime.stdout,knime.stderr)"ERROR: R evaluation failed.: "rm(knime.tmp.ret,knime.output.ret,knime.stdout.con,knime.stderr.con,knime.stdout,knime.stderr)"ERROR: voidEval failedERROR: Could not execute internal command.ERROR: R evaluation failed.: "dev.off()"ERROR: R evaluation failed.: "dev.off()"ERROR: eval failedERROR: Could not execute internal command.ERROR: R evaluation failed.: "ls()"ERROR: R evaluation failed.: "ls()"ERROR: eval failed


I know the package is definitely installed as I see it when I list packages from within the R node. It also loads perfectly fine in my terminal which uses the same R.

Certain other functions also produce the exact same error, for example, doing this:


library(httr)

url ← “https://data.broadinstitute.org/gsea-msigdb/msigdb/release/2025.1.Hs/c5.go.bp.v2025.1.Hs.symbols.gmt

response ← GET(url)


The httr package seems to load fine, but using the GET command does not work. I am unsure exactly what the issue is and how to solve it, so any help would be greatly appreciated!

@MartinStoves welcome to the KNIME forum. This is an error that is bugging the R nodes on macOS for quite some time. It seems they are not able to connect to the internet. On Windows with proxy it was successful.

The R community nodes seem to work just fine:

So the option would be to try and use them, or download the data externally (maybe with a GET function) or use an older version of the package that would still have the data ‘offline’.

@MartinStoves another option is to use an older version of the package that would have the data offline inside the package. Maybe not the best option but it seems to work.

install.packages("remotes")
remotes::install_version("msigdbr", version = "7.5.1")