[R-pkg-devel] Warning about "serialize/load".

Rolf Turner r@turner @end|ng |rom @uck|@nd@@c@nz
Mon Jul 15 02:40:38 CEST 2019

On 15/07/19 12:19 PM, Duncan Murdoch wrote:

> On 14/07/2019 7:52 p.m., Rolf Turner wrote:
>> In a package (say "clyde") that I am building I save a number of
>> datasets in clyde/data via something like:
>> save(melvin,file="~/<whatever>/clyde/data/melvin.rda")
>> When I build "clyde" I now get warnings like unto:
>>> WARNING: Added dependency on R >= 3.5.0 because serialized objects in
>>> serialize/load version 3 cannot be read in older versions of R.
>>> File(s) containing such objects: 'clyde/data/melvin.rda'
>> If I put the argument "version=2" into my save() call, the warnings go 
>> away.
>> What are the implications of this?
>> What are the consequences/what is the downside of setting version=2?
>> What are the consequences/what is the downside of adding the dependency
>> on R >= 3.5.0 into my DESCRIPTION file?
> The main consequence of setting the R version is that nobody using an 
> older version could use your package.
> I'd suggest this is a good thing, unless you plan to test your package 
> with those old versions.  People should be nudged to upgrade. 

Indeed.  I agree.

> However, some people are stuck on old versions, and they really would miss
> out on clyde.

And I'd hate that!!! :-)

> I think Travers pointed out the main consequence of forcing version=2: 
> some things that are very compact in the next version might take a lot 
> more space in version=2, e.g. x <- 1:1000000.

I don't think that space is a major issue.  I managed to tot up the
total size of the data sets, using object.size() and I get 1219824 
bytes, i.e. about one and a quarter megabytes.  I don't think that's a 
worry, so I think I'll stick with version=2.

Thanks Duncan.



Honorary Research Fellow
Department of Statistics
University of Auckland
Phone: +64-9-373-7599 ext. 88276

More information about the R-package-devel mailing list