Hi,

On Sat, Jul 11, 2020 at 5:53 PM <jspri...@debian.org> wrote:
> * Sebastian Ramacher <sramac...@debian.org> [2020-07-11 16:54]:
> So it should work if all migrate at the same time, right?
 It would work if all packages migrate at the same time. It will not
do that automatically however, as auto testing will constantly fail.
It tests with the testing version of ignition-fuel-tools and with the
unstable version of protobuf - being incompatible with each other.
I don't think a break of older protobuf libraries would help either,
but might help against partial upgrades of protobuf related packages.

> >This could be avoided if
> >libignition-msgs-dev which contains the protobuf-generated header files
> >would have a stricter dependency on libprotobuf-dev. Since these files
> >are only compatible with the same protobuf upstream version, it would
> >need to depend on the protobuf upstream version it was built with.
 That would prevent setting up the transition testing chroot, but I
don't know how our tools handle such things. I think preventing the
automatic protobuf transition to testing.

> There was a similar discussion in #900429 and also #910964 but no real
> solution was proposed. It would be great if the protobuf package would
> provide some tooling to encode the ABI information to the packages at
> compile time.
> What would be the way forward here? Open a bug with protobuf?
 Without too much thinking I've prepared an update which embeds an ABI
version to the library package (see attached diff) that you can depend
on, but I don't think that would help. It will be the same as
depending on the named library.

Regards,
Laszlo/GCS
diff -Nru protobuf-3.12.3/debian/changelog protobuf-3.12.3/debian/changelog
--- protobuf-3.12.3/debian/changelog	2020-07-08 00:47:38.000000000 +0200
+++ protobuf-3.12.3/debian/changelog	2020-07-11 21:37:49.000000000 +0200
@@ -1,3 +1,9 @@
+protobuf (3.12.3-3) unstable; urgency=medium
+
+  * Make libprotobuf provide protobuf-abi with soname version.
+
+ -- Laszlo Boszormenyi (GCS) <g...@debian.org>  Sat, 11 Jul 2020 21:37:49 +0200
+
 protobuf (3.12.3-2) unstable; urgency=medium
 
   * Upload to Sid.
diff -Nru protobuf-3.12.3/debian/control protobuf-3.12.3/debian/control
--- protobuf-3.12.3/debian/control	2020-05-09 20:45:17.000000000 +0200
+++ protobuf-3.12.3/debian/control	2020-07-11 21:37:49.000000000 +0200
@@ -65,7 +65,7 @@
 Multi-Arch: same
 Section: libs
 Depends: ${shlibs:Depends}, ${misc:Depends}
-Breaks: libarcus3 (<< 3.3.0-2), cura-engine (<< 1:3.3.0-2.1+b1)
+Provides: protobuf-abi-${pb:ABI}
 Description: protocol buffers C++ library
  Protocol buffers are a flexible, efficient, automated mechanism for
  serializing structured data - similar to XML, but smaller, faster, and
diff -Nru protobuf-3.12.3/debian/rules protobuf-3.12.3/debian/rules
--- protobuf-3.12.3/debian/rules	2020-05-09 20:45:17.000000000 +0200
+++ protobuf-3.12.3/debian/rules	2020-07-11 21:37:49.000000000 +0200
@@ -18,6 +18,7 @@
 endif
 
 SONAME=23
+ABI_VERSION=$(SONAME)-0
 
 %:
 	dh $@ --with autoreconf,elpa,python3
@@ -167,3 +168,6 @@
 override_dh_installdocs-indep:
 	dh_installdocs --indep
 	dh_installdocs -Xprotobuf-mode.el  # in protobuf-mode-el
+
+override_dh_gencontrol:
+	dh_gencontrol -- -Vpb:ABI=${ABI_VERSION}

Reply via email to