On 13-10-31 01:16 PM, Prof Brian Ripley wrote:
On 31/10/2013 15:33, Paul Gilbert wrote:
On 13-10-31 03:01 AM, Prof Brian Ripley wrote:
On 31/10/2013 00:40, Paul Gilbert wrote:
The old convention was that it went in the exec/ directory, but as you
can see at
http://cran.at.r-project.org/doc/manuals/r-devel/R-exts.html#Non_002dR-scripts-in-packages
it can be in inst/anyName/. A minor convenience of exec/ is that the
directory has the same name in source and when installed, whereas
inst/anyName gets moved to anyName/, so debugging can be a tiny bit
easier with exec/.
Having just put a package (TSjson) on CRAN with a python script, here
are a few other pointers for getting it on CRAN:
-SystemRequirements: should indicate if a particular version of python
is needed, and any non-default modules that are needed. (My package
does
not work with Python 3 because some modules are not available.) Some of
the libraries have changed, so it could be a bit tricky to make
something work easily with both 2 and 3.
-You need a README to explain how to install Python. (If you look at or
use mine, please let me know if you find problems.)
Better to describe exactly what you need: installation instructions go
stale very easily.
-The Linux and Sun CRAN test machines have Python 2 whereas winbuilder
has Python 3. Be prepared to explain that the package will not work on
one or the other.
Not true. Linux and Solaris (sic) have both: the Solaris machines have
2.6 and 3.3.
For an R package how does one go about specifying which should be used?
You ask the user to tell you the path or at least the command name, e.g.
by an environment variable or R function argument. Just like any other
external program such as GhostScript.
Yes, but since I don't have direct access to the CRAN test machines,
specifically, on the CRAN test machines, how do I specify to use Python
2 or Python 3? (That is, I think you are the user when CRAN tests are
done on Solaris, so I am asking you.)
Please do not spread misinformation about machines you do
not have any access to.
Another option to system() is pipe()
Paul
On 13-10-30 03:15 PM, Dirk Eddelbuettel wrote:
On 30 October 2013 at 13:54, Jonathan Greenberg wrote:
| R-developers:
|
| I have a small python script that I'd like to include in an R
package I'm
| developing, but I'm a bit unclear about which subfolder it should go
in. R
| will be calling the script via a system() call. Thanks!
Up to you as you control the path. As "Writing R Extensions" explains,
everything below the (source) directory inst/ will get installed. I
like
inst/extScripts/ (or similar) as it denotes that it is an external
script.
As an example, the gdata package has Perl code for xls reading/writing
below a
directory inst/perl/ -- and I think there are more packages doing
this.
Dirk
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel