On Wed, Sep 09, 2009 at 11:08:05PM +0200, Bill Allombert wrote:
> Hello Steve,

> I am concerned that the situation you mention is quite common and resolving it
> this way will lead to a marked increase in the number of circular dependencies
> in Debian.

> Even in such situations, there are various ways to avoid the circular
> dependency.

> The first way: odbcinst1debian1 shlib could look like:
> libodbcinst 1 odbcinst1debian1,odbcinst
> This way every package linked against odbcinst1debian1 would also depend
> on odbcinst, alleviating the need for odbcinst1debian1 itself to depend
> on odbcinst.

Doesn't actually work now that unixodbc is using .symbols files instead.
I'm not sure if there is a syntax that can be used to achieve this with
.symbols; I'd be willing to look at this option if it can be done, but it
also requires rebuilds of all the reverse-dependencies to ensure odbcinst
gets pulled in, so the odbcinst dep would have to remain on a transitional
basis for upgrades.

> The second way: Add a new package odbcinst-config that contains the
> configuration files and set up the dependencies as follow:
> odbcinst -> odbcinst1debian1 -> odbcinst-config

I don't think I can come up with anything better... and I don't think those
ways are good enough.  I'm particularly not going to create a separate
package just for the config files, I already feel bad about having to split
odbcinst into its own package.  Circular dependencies aren't bugs - policy
doesn't prohibit them (it actually describes how they're handled), dpkg
knows what to do with them, and these packages will install correctly since
only one of them has a postinst.  So while circular dependencies aren't
really desirable, I think they're the least evil in this case.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
[email protected]                                     [email protected]

Attachment: signature.asc
Description: Digital signature

Reply via email to