From pgilbert902 at gmail.com  Thu Oct 31 01:40:23 2013
From: pgilbert902 at gmail.com (Paul Gilbert)
Date: Wed, 30 Oct 2013 20:40:23 -0400
Subject: [Rd] Where to drop a python script?
In-Reply-To: <21105.23279.974154.140323@max.nulle.part>
References: <CABG0rfvUzodJ6c22tU6E+yS_Z1NxieQE+afOAHZ4m+wvjcW2Dg@mail.gmail.com>
	<21105.23279.974154.140323@max.nulle.part>
Message-ID: <5271A6F7.8070904@gmail.com>

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.)

-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.

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
>
>



[Rd] Where to drop a python script?
Paul Gilbert