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

Re: Planning for libidn shared library version transition



On Wed, 26 May 2021 at 00:11:29 +0200, Simon Josefsson wrote:
> Andreas Metzler <ametzler@bebt.de> writes:
> > On 2021-05-24 Simon Josefsson <simon@josefsson.org> wrote:
> >> I want to upload a new upstream libidn release into Debian, but upstream
> >> has done a shared library transition.
...
> >>  Package: libidn11-dev
> >> +Section: oldlibs
> >> +Architecture: any
> >> +Depends: libidn-dev, ${misc:Depends}
> >
> > I would use (= ${binary:Version}) for the depends to make sure that
> > libidn11-dev 1.38 together with libidn-dev 1.34 do not fullfill a
> > dependency on libidn11-dev (>= 1.35)

It's better to use (>= ${binary:Version}), or even the hard-coded version
where it became transitional like (>= 1.x.y~), for transitional packages.

This means that when the source package drops the transitional binary
package, anyone who needs to keep it installed for some legacy reason
(such as proprietary or unmaintained software) can keep the transitional
package installed alongside a newer version of the actual library.

> >> +Breaks: libidn11-dev (<< 1.33-4)
> >> +Replaces: libidn11-dev (<< 1.33-4)

If you use 1.33-4~ then it's backports-friendly (1.33-4~bpo11+1 > 1.33.4~).
This also lets you do prereleases with something like
<https://salsa.debian.org/smcv/deb-build-snapshot/> in an automated way.

    smcv


Reply to: