Bug#627753: liblwp-protocol-https-perl has circular Depends on libwww-perl

Damyan Ivanov dmn at debian.org
Tue May 24 16:31:05 UTC 2011


-=| Bill Allombert, Tue, May 24, 2011 at 01:56:00PM +0200 |=-
> On Tue, May 24, 2011 at 01:35:44PM +0200, gregor herrmann wrote:
> > On Tue, 24 May 2011 10:55:03 +0200, Bill Allombert wrote:
> > 
> > > There is a circular dependency between liblwp-protocol-https-perl and libwww-perl:
> > > 
> > > liblwp-protocol-https-perl 	:Depends: libwww-perl (>= 6.02)
> > > libwww-perl 	                :Depends: liblwp-protocol-https-perl
> > > 
> > > Circular dependencies involving libraries are known to cause problems
> > > during upgrade between stable releases, so we should try to get rid of them.
> > 
> > While this is generally true, I don't see the concrete problems in
> > this case.
> 
> You need to consider the upgrade from weezy to wheezy+1 into account. It is the
> one where the circular dependency will cause problem.

What problem do you think there will be?

Quoting Policy 7.2:

 If there is a circular dependency among packages being installed or 
 removed, installation or removal order honoring the dependency order 
 is impossible, requiring the dependency loop be broken at some point 
 and the dependency requirements violated for at least one package. 
 Packages involved in circular dependencies may not be able to rely on 
 their dependencies being configured before they themselves are 
 configured, depending on which side of the break of the circular 
 dependency loop they happen to be on. If one of the packages in the 
 loop has no postinst script, then the cycle will be broken at that 
 package; this ensures that all postinst scripts are run with their 
 dependencies properly configured if this is possible. Otherwise the 
 breaking point is arbitrary. Packages should therefore avoid circular 
 dependencies where possible, particularly if they have postinst 
 scripts.

Neither of packages has postinst scripts, so there shall be no 
problems, as far as I can see.

> > Current state (squeeze):
> > libwww-perl: 5.836-1
> > liblwp-protocol-https-perl: n/a
> > 
> > Upgrade to wheezy:
> > libwww-perl 5.836-1 -> 6.x, which pulls in
> > liblwp-protocol-https-perl, which needs libwww-perl >= 6.02 (and
> > Breaks/Replaces older versions of libwww-perl), which is upgraded
> > anyway.
> 
> Cannot you replace Depends: libwww-perl >= 6.02 by Breaks: 
> libwww-perl< 6.02 ?

Not really. liblwp-protocol-https-perl can't be used without 
libwww-perl.





More information about the pkg-perl-maintainers mailing list