[R-pkg-devel] Matrix 1.7-0 to be released in March with ABI-breaking SuiteSparse update
Tim Taylor
t|m@t@y|or @end|ng |rom h|ddene|eph@nt@@co@uk
Wed Apr 10 11:37:00 CEST 2024
Hi Mikael
Revisiting this. Have the plans changed for 1.7-0 release?
Tim
On Mon, 12 Feb 2024, at 6:36 PM, Mikael Jagan wrote:
> Dear users and binary repository maintainers,
>
> We are preparing Matrix version 1.7-0 for CRAN submission on March 11, ahead
> of the spring release of R version 4.4.0. The only significant change from
> Matrix 1.6-5 is an update of the internal SuiteSparse libraries
> (5.10.1 -> 7.6.0). Unfortunately, the old and new SuiteSparse versions are
> binary incompatible, hence so too will be the old and new Matrix versions.
>
> A corollary is that users and binary repository maintainers switching between
> Matrix < 1.7-0 and Matrix >= 1.7-0 must rebuild _from sources_ packages that
> link Matrix:
>
> > tools::package_dependencies("Matrix", which = "LinkingTo", reverse = TRUE)[[1L]]
> [1] "ahMLE" "bayesWatch" "cplm"
> [4] "GeneralizedWendland" "geostatsp" "irlba"
> [7] "lme4" "mcmcsae" "OpenMx"
> [10] "PRIMME" "PUlasso" "robustlmm"
> [13] "spGARCH" "TMB" "bcSeq"
>
> For users, that means doing, e.g.,
>
> install.packages("lme4", type = "source")
>
> but an alternative for Windows and macOS users without the required tools is
>
> oo <- options(repos = "https://cran.r-project.org/")
> install.packages("Matrix")
> install.packages("lme4")
> options(oo)
>
> where we trust CRAN to provide binaries compatible with the latest Matrix
> version (because we notify CRAN upon submission about required rebuilds).
> Once other repositories react with rebuilds, they can be used instead of
> CRAN.
>
> Our reverse dependency checks (and history, intuition, ...) show that most
> problems (caught segfaults in this case) can be traced to a binary incompatible
> lme4 and not to one of the other packages linking Matrix. Still, we recommend
> rebuilds for all 15 packages.
>
> Maintainers of packages that link Matrix can implement an .onLoad test for
> possible binary incompatibility by comparing the value of
>
> if (utils::packageVersion("Matrix") >= "1.6.2")
> Matrix::Matrix.Version()[["abi"]]
> else numeric_version("0")
>
> at install time and at load time, warning the user if the values differ.
> But please do look at the above and not at packageVersion("Matrix") directly,
> as the ABI version is incremented less often than the package version.
>
> Mikael {on behalf of citation("Matrix")$author}
>
> ______________________________________________
> R-package-devel using r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-package-devel
>
[[alternative HTML version deleted]]
More information about the R-package-devel
mailing list