Bug#963247: ignition-fuel-tools FTBFS with Protobuf 3.12.3
Sebastian Ramacher
sramacher at debian.org
Sun Jul 12 09:28:05 BST 2020
Hi
On 2020-07-11 22:51:13 +0200, László Böszörményi (GCS) wrote:
> Hi,
>
> On Sat, Jul 11, 2020 at 5:53 PM <jspricke at debian.org> wrote:
> > * Sebastian Ramacher <sramacher at 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.
As far as I understand it, a tighter dependency would make britney
consider them as having to transition together, avoiding the issue with
the autopkgtests. It would recogince that migrating protobuf would make
ignition-msgs uninstallable, and so it would try them together.
> > 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.
Since ignition-msgs is the only package that has this issue, something
like the following should be enough:
In debian/control:
Depends: libprotobuf-dev (>= ${protobuf:Upstream-Version}), libprotobuf-dev (< ${protobuf:Upstream-Version}.1)
In debian/rules:
override_dh_gencontrol:
dh_gencontrol -- -Vprotobuf:Upstream-Version="$(shell dpkg-query -W -f '$${Source:Upstream-Version}' libprotobuf-dev)"
(This might be a little to tight and depending on >= X.Y, < X.(Y+1)
would be enough).
But yes, depending on a protobuf-abi-$VER provided by libprotobuf-dev
could also work. It wouldn't work if provided by the shared library,
though, as they are co-installable.
Cheers
>
> 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) <gcs at 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}
--
Sebastian Ramacher
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/debian-science-maintainers/attachments/20200712/7971f194/attachment.sig>
More information about the debian-science-maintainers
mailing list