On Thu, Nov 14, 2024 at 04:45:16PM -0800, Adam Williamson wrote: > On Mon, 2024-11-11 at 17:38 +0100, Dan Horák wrote: > > On Mon, 11 Nov 2024 11:19:38 +0100 > > Fabio Valentini <decathorpe@xxxxxxxxx> wrote: > > > > > On Mon, Nov 11, 2024, 11:03 Dan Horák <dan@xxxxxxxx> wrote: > > > > > > > Hi, > > > > > > > > seems ImageMagick 7.1.1.40 comes with an ABI change > > > > > > > > it drops libMagickWand-7.Q16HDRI.so.10(VERS_10.0)(64bit) > > > > and has libMagickWand-7.Q16HDRI.so.10(VERS_10.2)(64bit) instead. > > > > This sounds wrong ... > > > > > > > > > > Indeed it does. I've also gotten at least one FTI issue filed due to this > > > change already. > > > > > > I've -1 karma'd the corresponding f41 update, but it's a Packit managed > > > package so I'm quite sure bodhi comments just go into the big /dev/null. [snip] > > It would not caught this particular issue, but > > still ... Although there could be an ABI check in the CI too. > > There is, to some extent (though it's checking the actual ABI, not the > sonames, by the looks of it). > > https://bodhi.fedoraproject.org/updates/FEDORA-2024-fff3964033 -> click > on Automated Tests -> click on fedora-ci.koji-build.rpminspect.static- > analysis -> takes you to > https://artifacts.dev.testing-farm.io/672d5798-03e5-4b53-80ba-79846ad65d71/ > , click on 'abidiff', and you'll see e.g.: > > INFO Comparing from /usr/lib/libMagickCore-7.Q16HDRI.so.10.0.1 to /usr/lib/libMagickCore-7.Q16HDRI.so.10.0.2 in package ImageMagick-libs on i686 revealed ABI differences. Not Waivable > Command: abidiff --d1 /var/ARTIFACTS/work-rpminspectokf2u_1i/rpminspect/tree/workdir/ImageMagick-7.1.1.40.CPBbej/root/before/i686/usr/lib/debug/ --hd1 /var/ARTIFACTS/work-rpminspectokf2u_1i/rpminspect/tree/workdir/ImageMagick-7.1.1.40.CPBbej/root/before/i686/usr/include --d2 /var/ARTIFACTS/work-rpminspectokf2u_1i/rpminspect/tree/workdir/ImageMagick-7.1.1.40.CPBbej/root/after/i686/usr/lib/debug/ --hd2 /var/ARTIFACTS/work-rpminspectokf2u_1i/rpminspect/tree/workdir/ImageMagick-7.1.1.40.CPBbej/root/after/i686/usr/include /var/ARTIFACTS/work-rpminspectokf2u_1i/rpminspect/tree/workdir/ImageMagick-7.1.1.40.CPBbej/root/before/i686/usr/lib/libMagickCore-7.Q16HDRI.so.10.0.1 /var/ARTIFACTS/work-rpminspectokf2u_1i/rpminspect/tree/workdir/ImageMagick-7.1.1.40.CPBbej/root/after/i686/usr/lib/libMagickCore-7.Q16HDRI.so.10.0.2 > > Functions changes summary: 0 Removed, 1 Changed (575 filtered out), 0 Added functions > Variables changes summary: 0 Removed, 0 Changed, 0 Added variable > > 1 function with some indirect sub-type change: > > [C] 'function CacheView* AcquireAuthenticCacheView(const Image*, ExceptionInfo*)' at cache-view.c:112:1 has some indirect sub-type changes: > parameter 1 of type 'const Image*' has sub-type changes: > in pointed to type 'const Image': > in unqualified underlying type 'typedef Image' at magick-type.h:194:1: > underlying type 'struct _Image' at image.h:131:1 changed: > type size hasn't changed > 1 data member changes (5 filtered): > type of 'FilterType filter' changed: > underlying type 'enum FilterType' at resample.h:33:1 changed: > type size hasn't changed > 2 enumerator insertions: > 'FilterType::MagicKernelSharp2013Filter' value '32' > 'FilterType::MagicKernelSharp2021Filter' value '33' > 1 enumerator change: > 'FilterType::SentinelFilter' from value '32' to '34' at resample.h:33:1 > > but this is entirely informative, at two levels. It's not a failure at > rpminspect level, only an 'info'. And failures at rpminspect level do > not gate updates unless the package opts into this in its package-level > gating.yaml config. Hm, ICBW, but, at least to me, this enum change looks like an actual breaking ABI (not API) change. If a program was compiled to call that function with the SentinelFilter value, the program code would pass 32 as a parameter and invoke the function. If loaded with the new version of the library, this would cause the function to assume that the caller wanted to pass MagicKernelSharp2013Filter and... do something unexpected. G'luck, Peter -- Peter Pentchev roam@xxxxxxxxxxx roam@xxxxxxxxxx peter@xxxxxxxxxxxxxx PGP key: https://www.ringlet.net/roam/roam.key.asc Key fingerprint 2EE7 A7A5 17FC 124C F115 C354 651E EFB0 2527 DF13
Attachment:
signature.asc
Description: PGP signature
-- _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue