[R] rdb and rds files include abolute file paths / help understanding how lazy-load dbs are created

Jeff Newmiller jdnewmil at dcn.davis.ca.us
Fri Apr 21 04:07:13 CEST 2017


I don't think this is on topic either here or on R-package-devel... it should go back to R-devel of you can provide a compelling argument for making the change. 

That said, I still feel you are chasing a non-problem. The original directories generally don't even exist on the original computer any more once the package has been created, but the files they refer to definitely do exist and R has no problem finding them.

Read the R source code,  src/library/tools/R/Rd.R. If you "fix" this not-a-problem and submit a patch to R-devel, then I suspect you will have to provide a more convincing argument for applying it than you have so far given.
-- 
Sent from my phone. Please excuse my brevity.

On April 19, 2017 3:56:38 PM PDT, Philip Rinn <rinni at inventati.org> wrote:
>Hi,
>
>Am 20.04.2017 um 00:32 schrieb Jeff Newmiller:
>> I think we are (I certainly am) going to need a more concrete
>example. As in,
>> point us at a specific package and filename in this package that
>illustrates
>> your concern. Such precision would also be expected on R-devel, so
>the lack of
>> response may have been self-inflicted.
>
>Ok, let's give you an example:
>
>philip at debian:~$ wget
>https://cran.r-project.org/src/contrib/ald_1.1.tar.gz
>philip at debian:~$ mkdir test
>philip at debian:~$ mkdir test1
>philip at debian:~$ cp ald_1.1.tar.gz test/
>philip at debian:~$ cp ald_1.1.tar.gz test1/
>philip at debian:~$ cd test
>philip at debian:~/test$ R CMD INSTALL --build ald_1.1.tar.gz
>philip at debian:~/test$ tar -zxvf ald_1.1_R_x86_64-pc-linux-gnu.tar.gz
>ald/help/paths.rds
>philip at debian:~/test$ cd ../test1
>philip at debian:~/test1$ R CMD INSTALL --build ald_1.1.tar.gz
>philip at debian:~/test1$ tar -zxvf ald_1.1_R_x86_64-pc-linux-gnu.tar.gz
>ald/help/paths.rds
>philip at debian:~/test1$ cd ..
>philip at debian:~$ Rscript -e "readRDS('test/ald/help/paths.rds')"
>[1] "/tmp/RtmpXhF0y3/R.INSTALLd717b7b387a/ald/man/ALD.Rd"
>[2] "/tmp/RtmpXhF0y3/R.INSTALLd717b7b387a/ald/man/ald-package.Rd"
>[3] "/tmp/RtmpXhF0y3/R.INSTALLd717b7b387a/ald/man/likALD.Rd"
>[4] "/tmp/RtmpXhF0y3/R.INSTALLd717b7b387a/ald/man/mleALD.Rd"
>[5] "/tmp/RtmpXhF0y3/R.INSTALLd717b7b387a/ald/man/momentsALD.Rd"
>attr(,"first")
>[1] 46
>philip at debian:~$ Rscript -e "readRDS('test1/ald/help/paths.rds')"
>[1] "/tmp/RtmpqjNKva/R.INSTALLe362823e45a/ald/man/ALD.Rd"
>[2] "/tmp/RtmpqjNKva/R.INSTALLe362823e45a/ald/man/ald-package.Rd"
>[3] "/tmp/RtmpqjNKva/R.INSTALLe362823e45a/ald/man/likALD.Rd"
>[4] "/tmp/RtmpqjNKva/R.INSTALLe362823e45a/ald/man/mleALD.Rd"
>[5] "/tmp/RtmpqjNKva/R.INSTALLe362823e45a/ald/man/momentsALD.Rd"
>attr(,"first")
>[1] 46
>
>As you see, the file help/paths.rds contains absolute paths which doe
>not exist
>(after compilation) on the PC. I therefore try to find a way to replace
>these
>absolute paths by relative. My favorite output would be:
>
>philip at debian:~$ Rscript -e "readRDS('test2/ald/help/paths.rds')"
>[1] "./ald/man/ALD.Rd"
>[2] "./ald/man/ald-package.Rd"
>[3] "./ald/man/likALD.Rd"
>[4] "./ald/man/mleALD.Rd"
>[5] "./ald/man/momentsALD.Rd"
>attr(,"first")
>[1] 46
>
>I just ask for help to understand where those paths got inject (see my
>first mail
>for details). I'm willing to write/test the patches needed.
>
>Hope that helps to understand my idea.
>
>Best,
>Philip



More information about the R-help mailing list