[R-pkg-devel] Error: [writeRaster] cannot write file

Duncan Murdoch murdoch@dunc@n @end|ng |rom gm@||@com
Tue Oct 10 01:16:17 CEST 2023


On 09/10/2023 6:56 p.m., Keshav, Krishna wrote:
> Outdir is either a directory like getwd(), tempdir() etc or empty/null. 
> If it is empty/null, then I set it to tempdir().

That doesn't answer the question, and the link you provided doesn't 
answer it either, as far as I can see.  In the test and the vignette 
that generated the errors, something specific was passed as outdir.  But 
what? If it was getwd(), that's bound to fail -- you don't have 
permission to write there.  tempdir() should have worked, but Berry 
pointed out some other things that might be problems.

Duncan Murdoch

> 
> /if (is.null(outdir) || length(outdir) == 0) {
>      outdir <- tempdir()/
> 
> /}///
> 
> I am not sure how to debug when running it in Rbuilder. But you can look 
> at results here - 
> https://builder.r-hub.io/status/geohabnet_1.0.0.tar.gz-a2eaa40ccf1d026bbebf5077bfb482d5 <https://builder.r-hub.io/status/geohabnet_1.0.0.tar.gz-a2eaa40ccf1d026bbebf5077bfb482d5>
> 
> Best Regards,
> 
> Krishna Keshav
> 
> *From: *Duncan Murdoch <murdoch.duncan using gmail.com>
> *Date: *Monday, October 9, 2023 at 4:08 PM
> *To: *Keshav, Krishna <kkeshav using ufl.edu>, r-package-devel using r-project.org 
> <r-package-devel using r-project.org>
> *Subject: *Re: [R-pkg-devel] Error: [writeRaster] cannot write file
> 
> [External Email]
> 
> What were you using as "outdir"?
> 
> 
> On 09/10/2023 2:59 p.m., Keshav, Krishna wrote:
>> Hi,
>>
>> I am developing an R package where I need to save Raster file with .tif extension to the tempdir(). I am using terra::writeRaster for the same. While it works through R CMD check in mac, it is failing in R hub builder.
>> Snippet �V
>> .saverast <- function(typ, rast, outdir) {
>>
>>    if (is.null(outdir) || length(outdir) == 0) {
>>      outdir <- tempdir()
>>    }
>>
>>    # Save the plot as a raster file
>>    fp <- file.path(outdir, paste("plots", "/",
>>                                  typ, "_",
>>                                  stringr::str_replace_all(Sys.time(), "[^a-zA-Z0-9]", ""),
>>                                  ".tif", sep = ""))
>>      # Create the "plots" directory if it doesn't exist
>>    if (!dir.exists(fp)) {
>>      dir.create(fp, recursive = TRUE)
>>    }
>>
>>    terra::writeRaster(rast, overwrite = TRUE,
>>                       filename = fp,
>>                       gdal = c("COMPRESS=NONE"))
>>    message(paste("raster created", fp, sep = ": "), "\n")
>> }
>>
>> Error �V
>>
>>    Error: [writeRaster] cannot write file
>>     12.         �|�wgeohabnet:::.saverast(typ, rast, outdir)
>>     13.           �u�wterra::writeRaster(rast, overwrite = TRUE, filename = fp, gdal = c("COMPRESS=NONE"))
>>     14.           �|�wterra::writeRaster(rast, overwrite = TRUE, filename = fp, gdal = c("COMPRESS=NONE"))
>>     15.             �|�wterra (local) .local(x, filename, ...)
>>     16.               �|�wterra:::messages(x, "writeRaster")
>>     17.                 �|�wterra:::error(f, x using pnt$getError())
>>
>>
>>
>> Best Regards,
>> Krishna Keshav
>>
>>       [[alternative HTML version deleted]]
>>
>>
>> ______________________________________________
>> R-package-devel using r-project.org mailing list
>> https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fstat.ethz.ch%2Fmailman%2Flistinfo%2Fr-package-devel&data=05%7C01%7Ckkeshav%40ufl.edu%7Cddd83781762040d664dc08dbc9038ec7%7C0d4da0f84a314d76ace60a62331e1b84%7C0%7C0%7C638324789348072931%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=mBzV%2BSJoOTTnSpRzu0EvLT8sZ2NJ1OlhSGXqNCvGWB4%3D&reserved=0 <https://stat.ethz.ch/mailman/listinfo/r-package-devel>
>




More information about the R-package-devel mailing list