Bug#1016418: transition: fmtlib

2022-08-18 Thread Sebastian Ramacher
Control: tags -1 confirmed
Control: tags 1017412 confirmed

On 2022-08-17 03:42:18 +0800, Shengjing Zhu wrote:
> On Wed, Aug 17, 2022 at 3:07 AM Sebastian Ramacher  
> wrote:
> >
> > On 2022-08-15 20:35:49 +0800, Shengjing Zhu wrote:
> > > CC spdlog maintainer as well.
> > >
> > > On Mon, Aug 15, 2022 at 01:45:32PM +0200, Sebastian Ramacher wrote:
> > > > Let's note hide spdlog's ABI breakage that is unreleated to the fmtlib
> > > > transition. Please fix this issue first and remove the moreinfo tag once
> > > > that's done.
> > >
> > > What's your suggestions to fix the spdlog ABI breakage?
> >
> > The ABI breakage was caused by adding a new argument to some functions
> > with a default argument. This could be fixed by keeping the old
> > functions around.
> >
> 
> TBH, given libspdlog1.10 is in experimental, I feel it's more correct
> to just do a spdlog transition.

Please go ahead with both uploads.

Cheers
-- 
Sebastian Ramacher



Bug#1016418: transition: fmtlib

2022-08-16 Thread Shengjing Zhu
On Wed, Aug 17, 2022 at 3:07 AM Sebastian Ramacher  wrote:
>
> On 2022-08-15 20:35:49 +0800, Shengjing Zhu wrote:
> > CC spdlog maintainer as well.
> >
> > On Mon, Aug 15, 2022 at 01:45:32PM +0200, Sebastian Ramacher wrote:
> > > Let's note hide spdlog's ABI breakage that is unreleated to the fmtlib
> > > transition. Please fix this issue first and remove the moreinfo tag once
> > > that's done.
> >
> > What's your suggestions to fix the spdlog ABI breakage?
>
> The ABI breakage was caused by adding a new argument to some functions
> with a default argument. This could be fixed by keeping the old
> functions around.
>

TBH, given libspdlog1.10 is in experimental, I feel it's more correct
to just do a spdlog transition.

-- 
Shengjing Zhu



Bug#1016418: transition: fmtlib

2022-08-16 Thread Sebastian Ramacher
On 2022-08-15 20:35:49 +0800, Shengjing Zhu wrote:
> CC spdlog maintainer as well.
> 
> On Mon, Aug 15, 2022 at 01:45:32PM +0200, Sebastian Ramacher wrote:
> > Let's note hide spdlog's ABI breakage that is unreleated to the fmtlib
> > transition. Please fix this issue first and remove the moreinfo tag once
> > that's done.
> 
> What's your suggestions to fix the spdlog ABI breakage?

The ABI breakage was caused by adding a new argument to some functions
with a default argument. This could be fixed by keeping the old
functions around.

Cheers

> 
> Currently,
> 
> + spdlog/1.9 ftbfs with fmtlib/9
> + Upstream doesn't want to fix the ABI breakage in spdlog/1.10, the opening
>   issue is closed without fix.
> 
> Solutions?
> 
> + revert spdlog to 1.9 and let it use a embedded copy of fmtlib, so it won't
>   block fmtlib/9 transition.
> 
>   But I think it needs to use soversion libspdlog1, not libspdlog1-fmt8 as 
> well?
> 
> + bump spdlog so version in Debian only without coordination from upstream.
> 
>   For example, -> libspdlog1.10-fmt8
> 
> + kick spdlog out of testing.

-- 
Sebastian Ramacher



Bug#1015742: Bug#1016418: transition: fmtlib

2022-08-15 Thread Shengjing Zhu
On Mon, Aug 15, 2022 at 8:36 PM Shengjing Zhu  wrote:
>
> CC spdlog maintainer as well.
>
> On Mon, Aug 15, 2022 at 01:45:32PM +0200, Sebastian Ramacher wrote:
> > Let's note hide spdlog's ABI breakage that is unreleated to the fmtlib
> > transition. Please fix this issue first and remove the moreinfo tag once
> > that's done.
>
> What's your suggestions to fix the spdlog ABI breakage?
>
> Currently,
>
> + spdlog/1.9 ftbfs with fmtlib/9
> + Upstream doesn't want to fix the ABI breakage in spdlog/1.10, the opening
>   issue is closed without fix.
>
> Solutions?
>
> + revert spdlog to 1.9 and let it use a embedded copy of fmtlib, so it won't
>   block fmtlib/9 transition.

This seems much more complicated since packages may use spdlog and fmt together.

>
>   But I think it needs to use soversion libspdlog1, not libspdlog1-fmt8 as 
> well?
>
> + bump spdlog so version in Debian only without coordination from upstream.
>
>   For example, -> libspdlog1.10-fmt8
>

So I will upload NMU to bump spdlog soversion to 1.10.

It's unfortunate that we diverted from upstream with the soversion.
But we'll align with upstream once spdlog 1.11 is released.

@spdlog maintainer, if you disagree with this, there is still enough
time to retract my NMU since it hits the NEW queue.

> + kick spdlog out of testing.

This is impossible as spdlog is a key package.

-- 
Shengjing Zhu



Bug#1016418: transition: fmtlib

2022-08-15 Thread Shengjing Zhu
CC spdlog maintainer as well.

On Mon, Aug 15, 2022 at 01:45:32PM +0200, Sebastian Ramacher wrote:
> Let's note hide spdlog's ABI breakage that is unreleated to the fmtlib
> transition. Please fix this issue first and remove the moreinfo tag once
> that's done.

What's your suggestions to fix the spdlog ABI breakage?

Currently,

+ spdlog/1.9 ftbfs with fmtlib/9
+ Upstream doesn't want to fix the ABI breakage in spdlog/1.10, the opening
  issue is closed without fix.

Solutions?

+ revert spdlog to 1.9 and let it use a embedded copy of fmtlib, so it won't
  block fmtlib/9 transition.

  But I think it needs to use soversion libspdlog1, not libspdlog1-fmt8 as well?

+ bump spdlog so version in Debian only without coordination from upstream.

  For example, -> libspdlog1.10-fmt8

+ kick spdlog out of testing.



Bug#1016418: transition: fmtlib

2022-08-15 Thread Sebastian Ramacher
Control: tags -1 moreinfo

On 2022-07-31 20:18:31, Shengjing Zhu wrote:
> Package: release.debian.org
> Severity: normal
> User: release.debian@packages.debian.org
> Usertags: transition
> X-Debbugs-Cc: z...@debian.org
> 
> Ben file:
> 
> title = "fmtlib";
> is_affected = .depends ~ "libfmt8" | .depends ~ "libfmt9";
> is_good = .depends ~ "libfmt9";
> is_bad = .depends ~ "libfmt8";
> 
> fmtlib 9 has been release for a while, I'd like to start the transition.
> 
> I have built the rerverse-depends, and all ftbfs bugs have been filed.
> See the affected packages in 
> https://bugs.debian.org/cgi-bin/pkgreport.cgi?repeatmerged=no=fmtlib
> 
> Most packages have been fixed, or fixed-upstream, or have patches.
> 
> The left packages are
> + #1014677 src:opendht, I think the root cause is restinio, so I will re-test
>   after the new restinio is uploaded.
> + #1014678 src:openimageio, it's not in testing.
> 
> One difficult situation is spdlog.
> 
> I have uploaded spdlog/1.10 last few days, but it causes a regression, since 
> upstream
> breaks the ABI without bumping SOVERSION (#1016408).
> 
> After filling bugs on upstream (https://github.com/gabime/spdlog/issues/2454),
> the response seems depressed. They will start to use the package minior 
> version in
> soversion, like 1.11, instead of maintaining a stable soversion.
> 
> OTOH, spdlog in Debian already doesn't use soversion to track transition, 
> since it embeds
> fmtlib version in it's shared library. Currently it's libspdlog1-fmt8.
> 
> With the fmt transition, spdlog will also transit to libspdlog1-fmt9. So it 
> can solve the ABI
> regression by spdlog/1.10.

Let's note hide spdlog's ABI breakage that is unreleated to the fmtlib
transition. Please fix this issue first and remove the moreinfo tag once
that's done.

Cheers
-- 
Sebastian Ramacher



Bug#1016418: transition: fmtlib

2022-07-31 Thread Shengjing Zhu
Package: release.debian.org
Severity: normal
User: release.debian@packages.debian.org
Usertags: transition
X-Debbugs-Cc: z...@debian.org

Ben file:

title = "fmtlib";
is_affected = .depends ~ "libfmt8" | .depends ~ "libfmt9";
is_good = .depends ~ "libfmt9";
is_bad = .depends ~ "libfmt8";

fmtlib 9 has been release for a while, I'd like to start the transition.

I have built the rerverse-depends, and all ftbfs bugs have been filed.
See the affected packages in 
https://bugs.debian.org/cgi-bin/pkgreport.cgi?repeatmerged=no=fmtlib

Most packages have been fixed, or fixed-upstream, or have patches.

The left packages are
+ #1014677 src:opendht, I think the root cause is restinio, so I will re-test
  after the new restinio is uploaded.
+ #1014678 src:openimageio, it's not in testing.

One difficult situation is spdlog.

I have uploaded spdlog/1.10 last few days, but it causes a regression, since 
upstream
breaks the ABI without bumping SOVERSION (#1016408).

After filling bugs on upstream (https://github.com/gabime/spdlog/issues/2454),
the response seems depressed. They will start to use the package minior version 
in
soversion, like 1.11, instead of maintaining a stable soversion.

OTOH, spdlog in Debian already doesn't use soversion to track transition, since 
it embeds
fmtlib version in it's shared library. Currently it's libspdlog1-fmt8.

With the fmt transition, spdlog will also transit to libspdlog1-fmt9. So it can 
solve the ABI
regression by spdlog/1.10.