Hi Graham,

Am Sun, Nov 19, 2023 at 01:55:04PM -0100 schrieb Graham Inggs:
> On Sat, 18 Nov 2023 at 19:18, Andreas Tille <andr...@an3as.eu> wrote:
> > We need some means to follow ABI changes.  In Debian we could use
> > something like r-matrix-abi-VERSION.
> 
> Indeed, this is one solution.  As you saw in [1], upstream now provide
> an ABI version and a way to extract it:
> > Matrix will commence ABI versioning in 1.6-2.  The ABI version will be 
> > available
> > in R as Matrix.Version()[["abi"]] and in C as R_MATRIX_ABI_VERSION (from 
> > header
> > Matrix/Matrix.h).  It is numeric_version("1") in Matrix 1.6-2 and 
> > _implicitly_
> > numeric_version("0") in Matrix < 1.6-2.

I'd personally would prefer, if we would implement this ABI versioning
in our packaging in the long term.
 
> However, since rmatrix has over 100 reverse-dependencies, and only a
> very small number of these are broken by the ABI change, we feel this
> may be overkill, but wouldn't dissuade anyone from proposing patches
> to implement this.

This somehow reminds me to bug #1040038 where r-graphics-engine was
implemented in r-base.  I'm willing to help with the implementation of
R_MATRIX_ABI_VERSION but my motivation would be increased if the
authorship of the patches would be mentioned at least in d/changelog
(which was not the case for r-graphics-engine).
 
> Another option is simply to add a versioned dependency on
> r-cran-matrix to the affected packages, e.g.:
> Depends: r-cran-matrix (>= 1.6-2-1)
> ...but this requires a source change and an upload, is error-prone,
> and a binNMU would not be sufficient.
> 
> We liked the change you made to r-cran-tmb [2], as this allows the
> affected packages to be binNMU'd and gain a versioned dependency on
> r-cran-matrix.  Would you please apply this to the other affected
> packages (only r-cran-irlba and r-cran-openmx, if I understand
> correctly)?

Done.
 
> Unfortunately, it seems the two-sided dependency introduced
> subsequently [3], which produces:
> r-cran-matrix (>= 1.6-2-1), r-cran-matrix (<= 1.6-2-199)
> ...is too strict, and r-cran-tmb already needs another rebuild due to
> the upload of rmatrix 1.6-3-1.  Would you please revert that change
> and upload?

I've reverted this but in previous discussion[4] with Paul we agreed
upon the strict version dependency.  I think this is only necessary for
r-cran-tmb (where upstream is enforcing this with a test I'm hesitating
to patch out).  But maybe upstream can work with the freshly implemented
R_MATRIX_ABI_VERSION and thus we can come back to upstream if the
autopkgtest will fire next time (which will happen now after the next
r-cran-matrix update).

Kind regards
   Andreas.
 
> [1] https://stat.ethz.ch/pipermail/r-sig-mac/2023-October/014890.html
> [2] 
> https://salsa.debian.org/r-pkg-team/r-cran-tmb/-/commit/92579f72c2db4d51a45cf317f580d790da158f4f
> [3] 
> https://salsa.debian.org/r-pkg-team/r-cran-tmb/-/commit/0a4d35d10f9c875863fa0238287cee8ab25aecdd

[4] https://lists.debian.org/debian-r/2023/11/msg00007.html 

-- 
http://fam-tille.de

Reply via email to