[Rd] recent changes to r-devel with package date checking?

Ben Bolker bbo|ker @end|ng |rom gm@||@com
Thu Mar 26 13:15:14 CET 2026


  Having just installed

R Under development (unstable) (2026-03-25 r89702)

and trying to run update.packages(), I'm seeing errors from within 
old.packages(); some packages have a "Built" string where the date 
component of the build string is not in an as.POSIXct-friendly format, e.g.

 > instPkgs[k, "Built"]
[1] "R 4.0.1; ; 'Sat, 30 May 2020 09:46:33 +0000'; unix"


as opposed to

 > instPkgs[k+1, "Built"]
[1] "R 4.5.2; x86_64-pc-linux-gnu; 2025-12-15 12:38:09 UTC; unix"

    This leads to

 > traceback()
10: stop("character string is not in a standard unambiguous format")
9: as.POSIXlt.character(x, tz, ...)
8: as.POSIXlt(x, tz, ...)
7: as.POSIXct(as.POSIXlt(x, tz, ...), tz, ...)
6: as.POSIXct.default(bc[3], "UTC")
5: as.POSIXct(bc[3], "UTC")
4: .builtDate(inst["Built"])
3: isTRUE(.builtDate(repo["Built"]) > .builtDate(inst["Built"]))
2: needs.install(onRepos, instPkgs[k, ])
1: old.packages()


I do see some changes from r89371 ("compare Built date when determining 
where a binary is new") in 
https://github.com/r-devel/r-svn/commit/d0ea3357b8a9865afa68a35d87ece6de6db099c5

  (it definitely looks like the relevant code was added/changed in this 
commit).  I can see that Dirk Eddelbuettel's "anytime" package would 
guess this correctly:

  anytime::anytime("Sat, 30 May 2020 09:46:33 +0000")
[1] "2020-05-30 09:46:33 EDT"

... but I can see that you wouldn't want to build in a bunch of 
format-guessing machinery into base R at this point ...

   I am installing packages via bspm/r2u, which seems like it might be 
relevant ...

   Any thoughts?

    cheers
    Ben Bolker



More information about the R-devel mailing list