On 23 March 2024 at 07:25, Dirk Eddelbuettel wrote:
| 
| On 22 March 2024 at 11:12, Dirk Eddelbuettel wrote:
| | 
| | On 27 February 2024 at 19:01, Dirk Eddelbuettel wrote:
| | | A couple of days ago, the (effective) Maintainer and rather active 
developer
| | | of the Matrix package Mikael Jagan (CC'ed) posted on the r-package-devel 
list
| | | (the primary list for R package development) that the upcoming change of
| | | Matrix 1.7-0, planned for March 11, will be _very midly disruptive_ but 
only
| | | to the very small subset of Matrix dependents that _actually use its
| | | headers_. See the full mail at [1]. The gory detail is that Matrix embeds 
and
| | | uses an advanced sparse matrix library (called SuiteSparse) which it 
updates,
| | | and the change in headers affects those (and only those!) who compile 
against
| | | these headers.
| | | 
| | | Now, Matrix currently has 1333 packages at CRAN using it [2]. But he 
lists 15
| | | (fifteen) of possibly breaking because these are the packages having a
| | | 'LinkingTo: Matrix' [3].  That 1.113 per cent.
| | | 
| | | It is similar for us. Running a simple `apt-cache rdepends r-cran-matrix 
| wc -l`
| | | gets us 145 lines (including headers and meta packages). Call it 140 that 
a
| | | transition would cover.
| | | 
| | | But among the 15 affected only five are in Debian:
| | | 
| | |   irlba    r-cran-irlba
| | |   lme4     r-cran-lme4
| | |   OpenMx   r-cran-openmx
| | |   TMP      r-cran-tmp
| | |   bcSeq    r-bioc-bcseq
| | |   
| | | One of these is mine (lme4), I can easily produce a sequenced update. I
| | | suggested we deal with the other _four packages_ by standard bug reports 
and
| | | NMUs as needed instead of forcing likely 140 packages through a 
transition.
| | | 
| | | Note that is in fact truly different from the past two hickups with Matrix
| | | transition which happened at the R-only level of caching elements of its 
OO
| | | resolution and whatnot hence affecting more package. This time it really 
is
| | | compilation, and packages NOT touching the SuiteSparse headers (ie roughly
| | | 135 or so of the 140 Debian packages using Matrix) will not be affected.
| | | 
| | | That said, I of course defer to the release team. If the feeling is 'eff
| | | this, transition it is' that is what we do. Whether I think is overkill or
| | | not is moot.
| | | 
| | | Feel free to CC me as I am not longer a regular on debian-devel.
| | 
| | The new Matrix release is now on CRAN so I plan to proceed as outlined with 
a
| | first upload experimental, likely later today or this evening (my timezone).
| 
| My bad. That was another release in the 1.6-* series, namely 1.6-5. No
| special action needed.  1.7-0 is still pending.

Gaaa. Wrong *again*. 1.7-0 *was* released (see my CRANberries log [1]) but
has since been withdrawn (!!) at CRAN. We continue to monitor.

Dirk

[1] https://dirk.eddelbuettel.com/cranberries/2024/03/22/#Matrix_1.7-0


| Dirk
|  
| | Dirk
| | 
| | | 
| | | Cheers,  Dirk
| | | 
| | | 
| | | [1] https://stat.ethz.ch/pipermail/r-package-devel/2024q1/010463.html
| | | [2] In R:
| | |     > db <- tools::CRAN_package_db()
| | |     > matrixrevdep <- tools::package_dependencies("Matrix", reverse=TRUE, 
db=db)[[1]]
| | |     > length(matrixrevdep)    # the vector 'matrixrevdep' list all
| | |     [1] 1333
| | |     > 
| | | [3] LinkingTo:, despite its name, is the directive to include the package 
C
| | |     headers in the compilation. The 'db' object above allows to us to 
subset
| | |     which of the 1333 packages using Matrix also have a LinkingTo
| | |  
| | | 
| | | -- 
| | | dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org
| | 
| | -- 
| | dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org
| 
| -- 
| dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org

-- 
dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org

Reply via email to