Thinking out loud here... do we want to have some macro magic to embed a dependency on an R(ABI) provides? Where R 4.0.0 would provide R(ABI) = 4 and all R packages built against it would pick up Requires: R(ABI) = 4 ? I don't suppose we need it, since the likelihood of someone installing R module packages but not updating R is low, but I wanted to throw it out there. Tom On Mon, May 4, 2020 at 3:31 PM I?aki Ucar <iucar at fedoraproject.org> wrote:> On Mon, 4 May 2020 at 19:15, Tom Callaway <tcallawa at redhat.com> wrote: > > > > Hi folks, > > > > As expected of a new major release of R, there is a break in > compatibility > > for R packages. From the NEWS entry for 4.0.0: > > > > Packages need to be (re-)installed under this version (4.0.0) of R. > > > > This has two impacts on Fedora/EPEL. > > > > 1. Users who update to 4.0.0 will need to rebuild any/all packages > > installed from CRAN. > > 2. Fedora/EPEL R packages will need to be rebuilt for 4.0.0. > > > > For EPEL, #2 is less impactful (there are not that many R packages in > EPEL) > > but for Fedora, this is a pretty big lift. > > > > I'm thinking that we'll only push this update to EPEL-8, F32, and > rawhide, > > but please, if you have input here, chime in. > > I agree. And we patched the symbol issues in v3.6.3 in F31 (please, > don't forget to trigger a build and an update) thanks to Paul Murrell, > so we're fine on that front. > > I'll have to rebuild 15k packages on the CRAN Copr repo. That's gonna > be huuuge. :) I'll try to do that while the update is sitting in > updates-testing and before it's pushed to stable. > > I?aki > >[[alternative HTML version deleted]]
On Sat, 9 May 2020 at 05:46, Tom Callaway <tcallawa at redhat.com> wrote:> > Thinking out loud here... do we want to have some macro magic to embed a > dependency on an R(ABI) provides? Where R 4.0.0 would provide R(ABI) = 4 > and all R packages built against it would pick up Requires: R(ABI) = 4 ?Note that recompilation is sometimes required too for minor version changes, so the virtual provides should include the minor version to be in the safe side.> I don't suppose we need it, since the likelihood of someone installing R > module packages but not updating R is low, but I wanted to throw it out > there.Or updating R and not updating R packages. Even if the chances are low, I think it's a cheap thing to add and would make the installation more robust to this kind of issue. -- I?aki ?car
Hmmm. That seems like a rather heavy dependency, given that I think we've only been forced to do rebuilds for everything as a result of 4.0.0 and 3.4.0. Does anyone know if upstream has any sort of commitment to ABI here that we could depend on (e.g. only breaking on major versions, never minor) ? Tom On Sat, May 9, 2020 at 5:32 AM I?aki Ucar <iucar at fedoraproject.org> wrote:> On Sat, 9 May 2020 at 05:46, Tom Callaway <tcallawa at redhat.com> wrote: > > > > Thinking out loud here... do we want to have some macro magic to embed a > > dependency on an R(ABI) provides? Where R 4.0.0 would provide R(ABI) = 4 > > and all R packages built against it would pick up Requires: R(ABI) = 4 ? > > Note that recompilation is sometimes required too for minor version > changes, so the virtual provides should include the minor version to > be in the safe side. > > > I don't suppose we need it, since the likelihood of someone installing R > > module packages but not updating R is low, but I wanted to throw it out > > there. > > Or updating R and not updating R packages. Even if the chances are > low, I think it's a cheap thing to add and would make the installation > more robust to this kind of issue. > > -- > I?aki ?car > > _______________________________________________ > R-SIG-Fedora mailing list > R-SIG-Fedora at r-project.org > https://stat.ethz.ch/mailman/listinfo/r-sig-fedora > >[[alternative HTML version deleted]]