Hi Adrian,

After asking upstream some questions to clarify their ABI policy, I now
have a different view on this issue.
You are correct: we should think again about forcing the SOVERSION to 0 in
0.2.11-2, because upstream does not guarantee ABI stability between 0.x
releases.

I recently reached out to the upstream maintainer (jpmag) to clarify their
versioning policy, and they confirmed the following:

* Current 0.x series: ABI compatibility is explicitly not preserved between
releases (e.g., between 0.2.7 and 0.2.11), and breaks are expected on every
release by design until 0.6.0.

* Future releases (0.6.0+): Upstream intends to stabilize the SONAME/ABI
across patch releases (breaking only at the minor 0.x level), as committed
in upstream issue #177.
Because the ABI changes with every release in the current series, we should
drop the artificial "Set proper soversion" patch introduced in 0.2.11-2.
We will allow upstream's build system to natively set the full-version
SONAME (e.g., libc4core.so.0.2.11) and rename the binary package
accordingly (to libc4core0.2.11) to comply with Debian Policy 8.1.

We should continue tracking the full SONAME per release until upstream
implements patch-level stability in 0.6.0, at which point we can transition
to a minor-version naming scheme.
I am preparing the updated package now and working to coordinate the
necessary rebuilds for jsonnet and libryml0.
Once the updated package is ready, I will share with you since I have no
upload rights for this package.

Regards,
Fukui

Reply via email to