[R] [External] Re: Error in setwd(dir) when initializing R
Ivan Krylov
kry|ov@r00t @end|ng |rom gm@||@com
Tue Nov 21 09:16:01 CET 2023
On Tue, 21 Nov 2023 08:46:25 +0100
Ana de las Heras Molina <andelash using ucm.es> wrote:
> > traceback()
> 4: setwd(dir)
> 3: .rs.onAvailablePackagesStale(reposString)
> 2: .rs.availablePackages()
> 1: .rs.rpc.discover_package_dependencies("3C994FEC", ".R")
This is something that RStudio (not R itself!) does, but it shouldn't
be failing. Here's what seems to be failing for you [*]:
# prepare directory for discovery of available packages
dir <- tempfile("rstudio-available-packages-")
dir.create(dir, showWarnings = FALSE)
# create a file in that directory
saveRDS(Sys.time(), file = file.path(dir, "time.rds"))
# (This doesn't fail because we keep executing the function, so the
# directory must exist!)
# move there
owd <- setwd(dir) # this somehow fails
Is it an option to disable OneDrive for the home directory? It's
clearly doing something terrible to your temporary files. If not, it
should be possible to create a separate temporary directory on your
computer (the path must not contain spaces) and list it in the
.Renviron file in the home directory as the TMPDIR variable:
TMPDIR=C:/my/R/temp/directory
See help(Startup) for more information on .Renviron.
Alternatively, we may try to perform some debugging. If you set
options(error = recover) and run .rs.availablePackages() again, it
should fail and give you a debugger prompt. Choose the deepest option
in the call stack and try to find out the value of the `dir` variable.
Does dir.exists(dir) still return TRUE? Does setwd(dir) still fail? Can
you open the directory in the Windows Explorer?
The last but not the least, do you see some of the same problems if you
launch Rgui.exe instead of RStudio?
--
Best regards,
Ivan
[*]
https://github.com/rstudio/rstudio/blob/45af283a7a5853399904ddc438f6cd89d9b5c137/src/cpp/session/modules/SessionPackages.R#L1625-L1636
More information about the R-help
mailing list