Keith Jewell
2010-Jan-26 15:01 UTC
[R] update.packages on MS Windows with //server/share paths
Hi,> update.packages(ask='graphics')gives me multiple warning (one per updated package?) similar to ... Warning: unable to move temporary installation '\\Server02\stats\R\library\2.10\file3de56e0d\locfit' to '\\Server02\stats\R\library\2.10\locfit' The final, updated, folders do not end up where they should be. I can move them 'by hand', but it is an inconvenience. Checking the archives I find http://finzi.psych.upenn.edu/Rhelp08/2008-April/160963.html where Prof Ripley opines "The issue appears to be that your OS is garbling file names", and it surely does seem to be a filename problem - in combination R and Windows don't seem to be handling the '//server/share' path construction. I have:> .libPaths()[1] "//Server02/stats/R/library/2.10" "//Server02/stats/R/R-Current/library" I can work around by mapping a drive letter to the '//server/share', but prefer not to (for local reasons). In CHANGES.R-2.10.1pat I find CHANGES IN R VERSION 2.7.2 patched o dir.create(recursive = TRUE) was not working on //server/share paths. In CHANGES.R-2.11.0dev I find CHANGES IN R VERSION 2.11.0 NEW FEATURES o file.rename() can work across volumes (by copy-and-delete) In another R function I've hit a similar problem and solved it using the construction: file.path(dirname(x), basename(x)) to convert '//server/share' to (printed as) '\\\\server/share' which worked in that function. In this case:> file.path(dirname(.libPaths()), basename(.libPaths()))[1] "\\\\Server02/stats/R/library/2.10" "\\\\Server02/stats/R/R-Current/library" which looks OK but> .libPaths(file.path(dirname(.libPaths()), basename(.libPaths()))) > .libPaths()[1] "//Server02/stats/R/library/2.10" "//Server02/stats/R/R-Current/library" doesn't actually change the internal paths. I don't see the problem in V2.9.2 . I do see the problem in V2.10.1, V2.10.1 Patched (2010-01-24 r51030) V2.11.0 Under development (unstable) (2010-01-24 r51030) Grateful for any suggestions, Keith Jewell ----------------------------------------------------- Version: platform = i386-pc-mingw32 arch = i386 os = mingw32 system = i386, mingw32 status = Patched major = 2 minor = 10.1 year = 2010 month = 01 day = 24 svn rev = 51030 language = R version.string = R version 2.10.1 Patched (2010-01-24 r51030) Windows Server 2003 x64 (build 3790) Service Pack 2 Locale: LC_COLLATE=English_United Kingdom.1252;LC_CTYPE=English_United Kingdom.1252;LC_MONETARY=English_United Kingdom.1252;LC_NUMERIC=C;LC_TIME=English_United Kingdom.1252 Search Path: .GlobalEnv, package:stats, package:graphics, package:grDevices, package:utils, package:datasets, package:methods, Autoloads, package:base
Gabor Grothendieck
2010-Jan-26 15:14 UTC
[R] update.packages on MS Windows with //server/share paths
Try mapping a drive letter to \\Server02 and then use that. For more, google for: map network drive On Tue, Jan 26, 2010 at 10:01 AM, Keith Jewell <k.jewell at campden.co.uk> wrote:> Hi, > >> update.packages(ask='graphics') > > ?gives me ?multiple warning (one per updated package?) similar to ... > > Warning: unable to move temporary installation > '\\Server02\stats\R\library\2.10\file3de56e0d\locfit' to > '\\Server02\stats\R\library\2.10\locfit' > > The final, updated, folders do not end up where they should be. I can move > them 'by hand', but it is an inconvenience. > > Checking the archives I find > http://finzi.psych.upenn.edu/Rhelp08/2008-April/160963.html where Prof > Ripley opines "The issue appears to be that your OS is garbling file names", > and it surely does seem to be a filename problem - in combination R and > Windows don't seem to be handling the '//server/share' path construction. I > have: >> .libPaths() > [1] "//Server02/stats/R/library/2.10" > "//Server02/stats/R/R-Current/library" > > I can work around by mapping a drive letter to the '//server/share', but > prefer not to (for local reasons). > > In CHANGES.R-2.10.1pat I find > ?CHANGES IN R VERSION 2.7.2 patched > ? ?o dir.create(recursive = TRUE) was not working on //server/share ?paths. > > In CHANGES.R-2.11.0dev I find > ? ? ?CHANGES IN R VERSION 2.11.0 > NEW FEATURES > ? ?o file.rename() can work across volumes (by copy-and-delete) > > In another R function I've hit a similar problem and solved it using the > construction: > ? ? ?file.path(dirname(x), basename(x)) > to convert ?'//server/share' to (printed as) '\\\\server/share' which worked > in that function. In this case: >> file.path(dirname(.libPaths()), basename(.libPaths())) > [1] "\\\\Server02/stats/R/library/2.10" > "\\\\Server02/stats/R/R-Current/library" > which looks OK but >> .libPaths(file.path(dirname(.libPaths()), basename(.libPaths()))) >> .libPaths() > [1] "//Server02/stats/R/library/2.10" > "//Server02/stats/R/R-Current/library" > doesn't actually change the internal paths. > > I don't see the problem in V2.9.2 . > I do see the problem in > ? V2.10.1, > ? V2.10.1 Patched (2010-01-24 r51030) > ? V2.11.0 Under development (unstable) (2010-01-24 r51030) > > Grateful for any suggestions, > > Keith Jewell > ----------------------------------------------------- > Version: > ?platform = i386-pc-mingw32 > ?arch = i386 > ?os = mingw32 > ?system = i386, mingw32 > ?status = Patched > ?major = 2 > ?minor = 10.1 > ?year = 2010 > ?month = 01 > ?day = 24 > ?svn rev = 51030 > ?language = R > ?version.string = R version 2.10.1 Patched (2010-01-24 r51030) > > Windows Server 2003 x64 (build 3790) Service Pack 2 > > Locale: > LC_COLLATE=English_United Kingdom.1252;LC_CTYPE=English_United > Kingdom.1252;LC_MONETARY=English_United > Kingdom.1252;LC_NUMERIC=C;LC_TIME=English_United Kingdom.1252 > > Search Path: > ?.GlobalEnv, package:stats, package:graphics, package:grDevices, > package:utils, package:datasets, package:methods, Autoloads, package:base > > ______________________________________________ > 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. >