[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1012768: Bug#1012785: libgsasl7 depends on outdated gsasl-common version 1.10.0-5



> > I guess the idea is that all packages that are built against
> > libgsasl7
> > is going to be NMU'd through the transition, so that they are built
> > against libgsasl18 instead.  Then this shouldn't be a problem.
> 
> While this won't be a problem in testing and unstable once the
> transition is done, it could be a problem for bullseye -> bookworm
> upgrades.

Okay, this statement, and your entire email, makes me believe that the
situation is fine for this transition, but we should continue discuss
if there is something to be improved to handle bullseye->bookworm
upgrades.  Right?   Maybe dist-upgrades is a consideration for
transitions too, but it helps (me) to separate the issues.


> Whether this is a problem for libgsasl, we'll see once upgrade tests
> for bullseye -> bookworm are started.

Right.  I can't help but feel unsatisfied by relying on testing rather
than a complete understanding of what is supposed to happen.

I would have thought piuparts testing (which I did) would catch
problems like this.  Maybe I misunderstood what I tested, or it has to
be tested in a different way.

I think the upgrade problem will go away once the transition is
finished.

> > B) Somehow drop the gsasl-common dependency?  It only contains
> > translations, which works for both libgsasl7 and libgsasl18.
> 
> If gsasl-common only contains translations, would a Recommends:
> gsasl-common (>= ${source:Version}) (or Depends) be enough? The
> solution
> with Depends would not improve the situation for this transition, but
> only for the next one.

Yes perhaps -- libgsasl7 and libgsasl18 works without gsasl-common but
translations will be broken.  Translations shouldn't be broken, hence a
'Required:' field.  I guess these things are subjective though.

> > C) Change the versioning dependency, so that new gsasl-common
> > satisfy
> > the old libgsasl7 dependency -- but I'm not sure that's possible,
> > libgsasl7 depends on the same version of gsasl-common.
> 
> That won't be possible … unless SRMs accept such a change in stable.

Indeed, and it wouldn't help if someone didn't upgrade to a "fixed"
stable gsasl package either, but went directly from current 'gsasl' in
stable to unstable.

> > Maybe B) is the right solution?!  We could move the translations
> > into
> > libgsasl18 and drop gsasl-common.  Then old libgsasl7 could depend
> > on
> > gsasl-common and things will work, and you could have libgsasl18
> > installed too -- however, they would conflict in files since both
> > ship
> > the same translation files... unless we modify the filenames so
> > they
> > live in separate directories or basenames.  I'm not sure that is
> > worth
> > it.
> 
> Note that this requires the translation files contained in libgsasl18
> to be versioned exactly in the same way as the shared library. See
> Policy 8.2.

Reading

https://www.debian.org/doc/debian-policy/ch-sharedlibs.html#shared-library-support-files

makes me believe the situation is correct here: translations do not
change between library SO versions and should thus not be in the
libgsasl7 or libgsasl18 package, and putting them in a gsasl-common
seems to be the recommended approach.  However, translations is such a
widespread class of files that maybe they are discussed elsewhere in
the policy manual, but I can't find any reference now.

Maybe what is the problem is the hard versioned dependency from
libgsasl7 and libgsasl18 on gsasl-common?  Maybe it shouldn't be
versioned at all, or a >= condition?

/Simon

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: