On 6/28/19 5:16 PM, Florian Oswald wrote:
oh ok i see: so i will always be able to do

clean(path = "~/data.csv")

for example? in that case I completely misunderstood this and there must
indeed be some system.file call buried somewhere. will check. thanks!

In case it is hard to find manually, there is a script at https://github.com/kalibera/rstagedinst (described also in the blog post about staged install), which finds variables holding hard-coded paths to the temporary installation directory. Please give a reproducible example (e.g. the package, output from the script, output from the installation with the error, etc) if you needed more help.

Best
Tomas


Florian

On Fri, 28 Jun 2019 at 17:11, Georgi Boshnakov <
georgi.boshna...@manchester.ac.uk> wrote:

You need to give details what exactly gets you into trouble and about your
use case, since any advice would be conditional on making assumptions about
that. It is usually a bad a idea to have a function working on a hardcoded
full filename. You will thank yourself later if you at least make it
argument to your function(s). It can have for default value the one that is
currently hardcoded.

Please note that your use case does not seem inherently related to staged
installation.
"Hardcoded" in the context of staged installation does not refer to any
hardcoded path
but to those paths that contain the temporary installation directory. Such
paths can be obtained,
for example, with calls to system.path(), as illustrated by Tomas.

Georgi Boshnakov



-----Original Message-----
From: R-package-devel [mailto:r-package-devel-boun...@r-project.org] On
Behalf Of Florian Oswald
Sent: 28 June 2019 09:17
To: r-package-devel@r-project.org
Subject: [R-pkg-devel] implications of staged install for data processing
packages

Hi all

I ran into trouble with the changes starting to come in with R3.6 stemming
from the new staged installation, which checks and errors on hard coded
paths in R code. I understand there is an opt out, but still want to know.
here's the blog post:
https://developer.r-project.org/Blog/public/2019/02/14/staged-install/

I have several packages which look like that:

    1. large messy dataset stored on disk as `filename`, maybe a csv.
    2. R package has a function `clean(filename)` which reads the data and
    brings it into useable form
    3. R package does analysis
    4. R package exports results

`filename` is hard coded. What is the proper way to do this instead? Should
I store the inital raw data inside the R package in `/inst`? These things
are typically very large, so I like to decouple the raw data from the
package (easier to share).

thanks for any suggestions!

         [[alternative HTML version deleted]]

______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

        [[alternative HTML version deleted]]

______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

Reply via email to