Subject: INCOMPATIBLE, was Re: inflation of PKGREVISION bumps [was Re: CVS
To: Hubert Feyrer <hubert@feyrer.de>
From: Frederick Bruckman <fredb@immanent.net>
List: tech-pkg
Date: 01/04/2004 07:42:42
On Sun, 4 Jan 2004, Hubert Feyrer wrote:

> On Sun, 4 Jan 2004, Rene Hexel wrote:
> >
> >    Let's say such an incompatibility occurs in tiff-3.6.1.  When the
> > tiff package gets updated to 3.6.1, a line such as
> >
> > INCOMPATIBLE=	tiff<3.6.1
> >
> >    gets added to the tiff package's Makefile.  This gets registered
> > in the binary (and installed) tiff package.  If someone now tries
> > to install an old xpaint-2.7.0 that was compiled against tiff-3.5.4,
> > the recorded tiff-3.5.4 dependency matches the INCOMPATIBLE pattern
> > of the installed tiff-3.6.1 package, and xpaint will refuse to
> > install.

I think that would work.

> >    When xpaint-2.7.0 gets recompiled against tiff-3.6.1, it
> > implicitly adds CONFLICTS+=tiff<3.6.1, so the binary package
> > can no longer be installed on top of, say, tiff-3.5.4, even
> > if its dependencies say otherwise.
>
> Um, I'm not sure this (ab)use ob CONFLICTS is a good idea.
> Requiring (via depends) tiff>=3.6.1 should be enough to prevent getting
> installed against an older libtiff.

The wildcard scheme is evidently inadequate. With INCOMPATIBLE fully
implemented, we could revert most wildcards to "-*". For that to work,
the build process would have to respect INCOMPATIBLE, too.

Frederick