Does anyone have an easy way to find circular dependency loops between modules?

I'm talking about cases like

package Foo::Bar;
use Foo::Boo;

package Foo::Boo;
use Foo::Bif;

package Foo::Bif;
use Foo:Bar;

At compile time this causes warnings about redefined subs, but we
often don't spot these warnings until some time after the change was
made that introduced the circular dependency. The warnings tell you
what was redefined, but don't give you the full loop, which makes it
difficult to track down where the circular dependency was introduced.

At the moment I'm making educated guesses based on recent commits and
some grepping, hoping there's a nice Perlish shortcut. Maybe something
using a sub ref on @INC?

Alex
_______________________________________________
BristolBathPM mailing list
[email protected]
http://mailman.bristolbath.org/mailman/listinfo/bristolbathpm

Reply via email to