An R version gotcha

  • Before April 2018: .rds files used version 2 serialization format
  • Since April 2019: .rds files use version 3 serialization format
  • R < 3.5.0 (before April 2018) can’t read .rds v3
  • When .rds saved as v3, package depends on R >= 3.5.0
NB: this package now depends on R (>= 3.5.0)
  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:
    'path/to/some_file.rds'
  • If you want to support R < 3.5.0, be careful about .rds version
  • The base pipe |> requires R >= 4.1.0