On Tue, 2009-04-07 at 12:59 +0200, Pierre-Yves wrote:
On Tue, 2009-04-07 at 12:09 +0200, Martyn Plummer wrote:
Setting R_HOME in the environment before launching R is the wrong thing to do.
Just out of curiosity, why ? R_HOME should be coherent between the environment and R itself, through a warning if they are different makes sense (IMHO), but if they are the same what is the problem ?
People can and do have multiple R installations. Most of these people are developers, but we also encourage users to download and test beta releases. You are currently breaking developer builds by setting R_HOME to point to the Fedora RPM. Of course, the breakage is relatively minor, and takes the form of annoying warnings, but those warnings were put there for a reason.
The user is not meant to set R_HOME. The system administrator is certainly not meant to set R_HOME. R_HOME is meant to be set by the application that starts the R engine, and it does so in its own shell so that there are no side effects. This allows multiple versions of R to coexist on the same system.
The only reason that the warning is silenced when the R_HOME environment variable matches the correct value is because the R script can recursively call itself, e.g.
R CMD Sweave foo.Rnw
will call two instances of the R shell script, and in the second call R_HOME is already set by the first call.
Martyn
----------------------------------------------------------------------- This message and its attachments are strictly confidential. If you are not the intended recipient of this message, please immediately notify the sender and delete it. Since its integrity cannot be guaranteed, its content cannot involve the sender's responsibility. Any misuse, any disclosure or publication of its content, either whole or partial, is prohibited, exception made of formally approved use -----------------------------------------------------------------------
On Tue, 2009-04-07 at 18:53 +0200, Martyn Plummer wrote:
On Tue, 2009-04-07 at 12:59 +0200, Pierre-Yves wrote:
On Tue, 2009-04-07 at 12:09 +0200, Martyn Plummer wrote:
Setting R_HOME in the environment before launching R is the wrong thing to do.
Just out of curiosity, why ? R_HOME should be coherent between the environment and R itself, through a warning if they are different makes sense (IMHO), but if they are the same what is the problem ?
People can and do have multiple R installations. Most of these people are developers, but we also encourage users to download and test beta releases. You are currently breaking developer builds by setting R_HOME to point to the Fedora RPM. Of course, the breakage is relatively minor, and takes the form of annoying warnings, but those warnings were put there for a reason.
The user is not meant to set R_HOME. The system administrator is certainly not meant to set R_HOME. R_HOME is meant to be set by the application that starts the R engine, and it does so in its own shell so that there are no side effects. This allows multiple versions of R to coexist on the same system.
The only reason that the warning is silenced when the R_HOME environment variable matches the correct value is because the R script can recursively call itself, e.g.
R CMD Sweave foo.Rnw
will call two instances of the R shell script, and in the second call R_HOME is already set by the first call.
Thanks for the explanation.
Spot I think the decision is up to you but I think we should not break R :-)
Martyn, are you in contact with the guys from rJava ? Would it be possible to ask then to make JRI asking R for the R_HOME instead of asking an shell variable ?
Best regards,
Pierre
On Tue, 2009-04-07 at 19:18 +0200, Pierre-Yves wrote:
On Tue, 2009-04-07 at 18:53 +0200, Martyn Plummer wrote:
On Tue, 2009-04-07 at 12:59 +0200, Pierre-Yves wrote:
On Tue, 2009-04-07 at 12:09 +0200, Martyn Plummer wrote:
Setting R_HOME in the environment before launching R is the wrong thing to do.
Just out of curiosity, why ? R_HOME should be coherent between the environment and R itself, through a warning if they are different makes sense (IMHO), but if they are the same what is the problem ?
People can and do have multiple R installations. Most of these people are developers, but we also encourage users to download and test beta releases. You are currently breaking developer builds by setting R_HOME to point to the Fedora RPM. Of course, the breakage is relatively minor, and takes the form of annoying warnings, but those warnings were put there for a reason.
The user is not meant to set R_HOME. The system administrator is certainly not meant to set R_HOME. R_HOME is meant to be set by the application that starts the R engine, and it does so in its own shell so that there are no side effects. This allows multiple versions of R to coexist on the same system.
The only reason that the warning is silenced when the R_HOME environment variable matches the correct value is because the R script can recursively call itself, e.g.
R CMD Sweave foo.Rnw
will call two instances of the R shell script, and in the second call R_HOME is already set by the first call.
Thanks for the explanation.
Spot I think the decision is up to you but I think we should not break R :-)
Martyn, are you in contact with the guys from rJava ?
Yes of course. The mailing list for R JAVA development is here:
http://mailman.rz.uni-augsburg.de/mailman/listinfo/stats-rosuda-devel
Would it be possible to ask then to make JRI asking R for the R_HOME instead of asking an shell variable ?
You can try, but you will probably be told that the recommended way to launch an application using JRI is with the "run" script that is installed with the rJava package, as detailed in the FAQ:
It is the run script that sets up the environment for you.
Best regards,
Pierre
Fedora-r-devel-list mailing list Fedora-r-devel-list@redhat.com http://www.redhat.com/mailman/listinfo/fedora-r-devel-list
----------------------------------------------------------------------- This message and its attachments are strictly confidential. If you are not the intended recipient of this message, please immediately notify the sender and delete it. Since its integrity cannot be guaranteed, its content cannot involve the sender's responsibility. Any misuse, any disclosure or publication of its content, either whole or partial, is prohibited, exception made of formally approved use -----------------------------------------------------------------------
On 04/08/2009 05:50 AM, Martyn Plummer wrote:
Spot I think the decision is up to you but I think we should not break
R :-)
Yeah, I agree. I'm pushing updates this morning that revert the profile.d scripts (and clean up some of the unnecessary Requires that Martyn pointed out before).
~spot
r-devel@lists.fedoraproject.org