[R] R package dependencies

Colin Millar C.Millar at MARLAB.AC.UK
Thu Jan 14 16:33:27 CET 2010


Thanks guys!

The tools functions are very useful, and also the the
utils:::.clean_up_dependencies hiding in there, which I had a managed to
do myself but in far more lines!

I think I am going to download each zip file one by one to find if there
are dlls - which sounds like an overnight job to me.

Many thanks again,
Colin.

-----Original Message-----
From: Uwe Ligges [mailto:ligges at statistik.tu-dortmund.de] 
Sent: 14 January 2010 14:06
To: Colin Millar
Cc: Gabor Grothendieck; r-help at r-project.org
Subject: Re: [R] R package dependencies

For the original question:

 >   what are a packages dependencies

tools:::package.dependencies(available.packages())


 >   what are a packages reverse dependencies

tools:::dependsOnPkgs(available.packages()[,1])


 >   does a package contain a dll

If the package has been installed already and you want to get the number

of dlls in libs:

   length(grep("\\.dll$", dir(system.file(package="foo", "libs"))))

or if not installed, you can get an idea by looking at the check logs on

CRAN. If they contain a line
  * checking line endings in C/C++/Fortran sources/headers ... OK
they also contain compiled code. This is not a save test, though.

Uwe Ligges







On 14.01.2010 12:27, Colin Millar wrote:
> Thanks Gabor,
>
> Are you or anyone aware if there is a text list of of package
contents?  The only way i have managed to get information like the
number of dlls per package is by downloading the zip file to a
tempporary file and listing its contents via unzip(..., list  = TRUE).
However, downloading every package on CRAN is a time consuming so if
there was a more efficient way of finding the contents of each it would
be useful to know.
>
> The code i am using on R2.10.1 on windows 7
>
> contriburl<-
"http://cran.uk.r-project.org/bin/windows/contrib/2.10<http://cran.uk.r-
project.org/bin/windows/contrib/2.10>  "
> destdir<- "C:/colin/SCOTS-user-group/pkgs"
> lab.pkgs<-
c("gamair","mgcv","survival","lme4","nlme","lattice","MASS","nnet","spli
nes","stats4", "stats", "methods")
>
> available<- available.packages(contriburl = contriburl)
> fnames<- paste(available[,"Repository"], available[,"File"], sep =
"/")
> tmpf<- paste(tempfile(), ".zip", sep = "")
>
> pkg.contents<- lapply(fnames, function(x) {download.file(x, tmpf);
unzip(tmpf, list = TRUE)})
> ndlls<- sapply(pkg.contents, function(x) sum( grepl( ".dll", x $ Name
)))
> pkg.summ<- data.frame(pkg = rownames(available), dll = ndlls)
>
>
> Thanks again,
> Colin.
>
> ________________________________
>
> From: Gabor Grothendieck [mailto:ggrothendieck at gmail.com]
> Sent: Wed 13/01/2010 22:09
> To: Colin Millar
> Cc: r-help at r-project.org
> Subject: Re: [R] R package dependencies
>
>
>
> See the dep function defined here:
> http://tolstoy.newcastle.edu.au/R/e6/help/09/03/7159.html
>
> On Wed, Jan 13, 2010 at 11:39 AM, Colin Millar<C.Millar at marlab.ac.uk>
wrote:
>> Hi there,
>>
>> My question relates to getting information about R packages.  In
particular i would like to be able to find from within R:
>>   what are a packages dependencies
>>   what are a packages reverse dependencies
>>   does a package contain a dll
>>
>> The reason i ask is:
>>
>> The organisation that i work for is introducing a secure intranet
operating on windows PCs and laptops, and this requires that all
software / executables / dlls are validated before they are combined to
produce a generic PC build.
>>
>> I would like to maximise the packages available to our staff and so
for the packages that we have listed as buisness needs, i would like to
include all reverse dependencies of this collection that do not have
dlls.
>>
>> I hope this makes sense (the question not the reason).
>>
>> Kind regards,
>> Colin.
>>
>>         [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>
> ______________________________________________________________________
> This email has been scanned by the MessageLabs Email Security System.
> For more information please visit http://www.messagelabs.com/email
> ______________________________________________________________________
>
>
>
> 	[[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email 



More information about the R-help mailing list