On 2024-03-07 19:47 +0100, Bernd Schubert wrote:
> Hi all,
> 
> this is certainly not kind of the mail I was hoping for as a new libfuse
> maintainer.
> 
> As you can see from the title and from discussion below (sorry this is 
> not typical ML discussion style), we have a bit of of problem with 
> libfuse ABI compatibility. 

Oops. 

> While scanning through git history, Ashley found a commit that was adding
> members in the middle of struct - doesn't break API, but binary
> compatibility. That commit already landed a year ago in these releases:
> 
> git tag --contains a5eb7f2a0117ab43119ef5724cf5f4f2f181804a
> fuse-3.14.1
> fuse-3.15.0
> fuse-3.15.1
> fuse-3.16.1
> fuse-3.16.2

> > Perhaps we should bring in the distro package maintainers here for their 
> > guidance/input?  Like I say I’ve not had experience of this type of issue 
> > before but I’m sure the distros will have.

Looking at
https://tracker.debian.org/pkg/fuse
and
https://tracker.debian.org/pkg/fuse3

It looks like Debian (and thus most debian-derived distros) has not
yet moved past 3.14.0, so we appear to have narrowly avoided building anything 
using the broken ABI.
So a revert to the old ABI in 3.17 along with advice not to use 3.14.1-3.16.x 
would work fine for us.

I have no particular expertise in libfuse, so I don't know if somehow
the offending commit has been included depsite the version
numbers. https://sources.debian.org/src/fuse3/3.14.0-5/debian/patches/
suggests not. Hopefully the maintainer will weigh in on this.

So I don't think we care whether you revert or do a soname bump -
that's something you need to decide based on the fallout elsewhere in
the ecosystem. I have no idea how many people/groups/distros/softwares
are following fuse development more closely and thus have already got
'wrong' binaries.

A soname bump is probably your best bet, but if no-one even noticed
this for a year then maybe it's not that bad and just reverting will
suffice? (And send everyone on a crash course about ABIs and struct padding!)

Wookey
-- 
Principal hats:  Debian, Wookware, ARM
http://wookware.org/

Attachment: signature.asc
Description: PGP signature

Reply via email to