Subject: Re: (Incomplete) List of pkgsrc Improvements
To: Greg Troxel <firstname.lastname@example.org>
From: Dieter Baron <email@example.com>
Date: 07/31/2007 14:48:10
> >> 1.4 fix open-ended dependencies
> >> I agree, but I think the problem is bigger than this.
> >> In using pkg_rolling-replace, I find that there are often needless
> >> rebuilds when a package is updated, e.g., from x.ynb1 to x.ynb2. Here,
> >> there are no ABI changes, and there is no need to rebuild dependencies.
> >> For some updates, there aren't ABI changes, and for some there are, and
> >> it's hard to tell.
> >> ABI is more than shlib versions, althoug that's 99% of it in practice.
> >> So, I'd like to see an explicit ABI version, and to have way for 'make
> >> replace' to only set unsafe_depends if the ABI version changes.
> > That is precisely what I suggested, I just called it differently:
> > When the ABI changes in a backwards incompatible way (for whatever
> > reason), we note that the package is no longer backwards compatible
> > with earlier versions.
> OK, but we have to have an ABI version (maybe that's what you mean by
> 'noting that the package is no longer backwards compatible),
Yes, it is, at least for ABI changes that break backwards
compatibility, and I don't think we are interested in others.
: so we can
> answer the question: is replacing version x of pkg foo with version y an
> ABI change? Given that, I think I can very easily add the unsafe
> tagging features that I would like.
If the lowest compatible versions of version X and version Y are
different, it's a backwards incompatible ABI change. Otherwise, it's