Hi Sebastian,

On 14 October 2021 at 22:46, Sebastian Ramacher wrote:
| Hi Dirk
| 
| On 2021-08-30 16:27:49 -0500, Dirk Eddelbuettel wrote:
| > 
| > On 30 August 2021 at 23:42, Niko Tyni wrote:
| > | Package: libgsl25
| > | Version: 2.7+dfsg-2
| > | Control: affects -1 libmath-gsl-perl
| > | Severity: serious
| > | 
| > | gsl 2.7 broke libmath-gsl-perl on runtime, as seen in the autopkgtest 
regressions:
| > | 
| > |    not ok 7 - use Math::GSL::Matrix;
| > |    
| > |    #   Failed test 'use Math::GSL::Matrix;'
| > |    #   at t/00-load.t line 14.
| > |    #     Tried to use 'Math::GSL::Matrix'.
| > |    #     Error:  Can't load 
'/usr/lib/x86_64-linux-gnu/perl5/5.32/auto/Math/GSL/Linalg/Linalg.so' for 
module Math::GSL::Linalg: 
/usr/lib/x86_64-linux-gnu/perl5/5.32/auto/Math/GSL/Linalg/Linalg.so: undefined 
symbol: gsl_linalg_QR_TR_decomp at 
/usr/lib/x86_64-linux-gnu/perl-base/DynaLoader.pm line 187.
| > |    # � at /usr/lib/x86_64-linux-gnu/perl5/5.32/Math/GSL/Linalg.pm line 11.
| > |    # Compilation failed in require at 
/usr/lib/x86_64-linux-gnu/perl5/5.32/Math/GSL/Matrix.pm line 1210.
| > |    # BEGIN failed--compilation aborted at 
/usr/lib/x86_64-linux-gnu/perl5/5.32/Math/GSL/Matrix.pm line 1210.
| > |    # Compilation failed in require at t/00-load.t line 14.
| > |    # BEGIN failed--compilation aborted at t/00-load.t line 14.
| > |    ok 8 - use Math::GSL::Poly;
| > |    not ok 9 - use Math::GSL::MatrixComplex;
| > | 
| > | It seems that the 2.7 upload broke the ABI of libgsl25 by removing
| > | the gsl_linalg_QR_TR_decomp symbol. src:gsl is currently blocked from
| > | entering testing because of this regression in libmath-gsl-perl_0.42-1.
| > | 
| > | Looks like upstream Math-GSL-0.43 probably no longer references this
| > | symbol, but it's not in Debian yet and I haven't built and verified that.
| > | 
| > | Clearly at least something must be done on the libgsl side. Not sure if
| > | it needs to restore the symbol or bump its SONAME, or if just a Breaks
| > | on older libmath-gsl-perl versions is enough. (See policy 8.6.2)
| > 
| > I am not fully sure what they are doing.  They do increment values 
sometimes,
| > sometimes they keep them. I mostly just followed along.
| > 
| > We also for a time tried to accomodate lagging Debian packages. I do not
| > think that that winnable strategy long term.
| > 
| > I could add a versioned breaks for libmath-gsl-perl.  Can you send me a
| > preferred expression?
| 
| No, that would just paper over the problem and wouldn't be a proper fix.
| 
| There are two options to fix this issue:
| 
| * Unbreak the ABI by reintroducing the removed symbols.

I think we tried that a few gsl release ago and I don't think it was a success.

| * Bump the SONAME and change the package name. This will trigger a
|   transition and the reverse dependencies will be rebuilt.
| 
| In any case, the best idea is to talk to upstream. If removal of the
| symbols was intentional, please ask them to bump the SONAME.

It is AFAICR the opposite: upstream *did* the change years ago, we decided to
paper over but at some point that becomes too much.  Upstream is, in my book,
the best judge of their code, and if they deprecated / changed something
years ago then client packages need to (eventually) adapt.

If the Perl package needs a (deprecated in the library) function and cannot
change its code, maybe it can stub it locally?

Dirk


| Cheers
| 
| > 
| > | I've also filed the separate bug #993323 about libmath-gsl-perl failing to
| > | build with GSL 2.7. That should be fixed just by upgrading it to 0.43.
| > 
| > Right.
| > 
| > Dirk
| > 
| > | -- 
| > | Niko Tyni nt...@debian.org
| > 
| > -- 
| > https://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org
| 
| -- 
| Sebastian Ramacher
| [DELETED ATTACHMENT signature.asc, application/pgp-signature]

-- 
https://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org

Reply via email to