R4.2 Updates - lots of old packages need updates - why?

We've got quite a lot of individual R repos now, most of them set up with renv to ensure we know which package versions to use with each repo.

We generally also try to keep up to date with R minor version changes - so we've kept up with R3.x -> R4.0 -> R4.1 recently, and are now updating our build servers, our Connect server and our job runners with R4.2

Generally the process of supporting new R versions has been fairly painless - e.g. there were a few hiccups with strings-as-factors when moving to R4, but otherwise its been pretty fast and easy.

However... with R4.2 I'm seeing that lots of our repos won't build when we try to move R4.2 - especially because of lots of C/C++ compile time errors - e.g. packages like stringi, xml2, curl, openssl, arrow, git2r, httpuv, readr, ...

Solving these errors has been easy (but manual) across all the repos so far - it's generally just a case of using renv::install to upgrade the packages and then doing some testing to check this hasn't broken too much...

However, I'm not really sure "why" this is happening. I've looked through the release notes ( R: R News ). I can see lots of Windows build tooling changes there, but I can't really see anything that explains the number of package failures I'm seeing.

Has anyone got any pointers to what the main C/C++ changes are? I'm especially interested so I can try to anticipate and avoid future manual updates here :slight_smile: