wolfssl icon indicating copy to clipboard operation
wolfssl copied to clipboard

Change of SONAME in a stable patch release

Open jirutka opened this issue 2 years ago • 4 comments

Version

5.6.6

Description

Breaking ABI compatibility / changing SONAME in a patch release (5.6.4 -> 5.6.6) is really not cool.

-usr/lib/libwolfssl.so.41.0.0:    SONAME               libwolfssl.so.41
+usr/lib/libwolfssl.so.42.0.0:    SONAME               libwolfssl.so.42

jirutka avatar Dec 21 '23 11:12 jirutka

Hello @jirutka ,

Thank you for reaching out to us. We do guarantee ABI compatibility for those function marked WOLFSSL_ABI . We do our best to stay backwards compatible and there is active discussion on a plan for your concerns internally.

anhu avatar Dec 21 '23 14:12 anhu

Related to https://github.com/wolfSSL/wolfssl/issues/6928

Hi @jirutka, can you provide us some details about your use case with wolfSSL and how ABI would assist with it?

JacobBarthelmeh avatar Dec 21 '23 16:12 JacobBarthelmeh

I’m the maintainer of the wolfssl package in Alpine Linux. It’s in the community repository, so it’s in the stable releases (two a year) and we are committed to supporting it at least until the next stable release – security fixes without breaking backwards compatibility.

The change of SONAME is considered a breaking change (binaries linked against it must be rebuilt). Doing it in a patch release is against the semantic versioning and generally accepted best practices.

jirutka avatar Dec 25 '23 18:12 jirutka

+1 for soname stability — packaging for Fedora, ELx a hypothetical wolfssl-5.6.4 would provide libwolfssl.so.41 and wolfssl-5.6.6 would provide libwolfssl.so.42.

You could not "dnf upgrade" from wolfssl-5.6.4 to wolfssl-5.6.6.

Debian has libwolfssl24, libwolfssl35, libwolfssl42 etc — this is not sustainable.

space88man avatar Jan 17 '24 12:01 space88man