The RequireExplicitInclusion policy will complain about modules that you're using but didn't specifically include. For example:
use Test::More; sub test_something { local $Test::Builder::Level = $Test::Builder::Level + 1; return is( ... ); }
The policy will complain about you using $Test::Builder::Level without including Test::Builder.
Ideally you could tell the policy that Test::More brings in Test::Builder but until then you can now do this:
[Modules::RequireExplicitInclusion] ignore_modules = Test::Builder
submitted by /u/petdance
[link] [comments]
Perl::Critic::Policy::Modules::RequireExplicitInclusion
Perl::Critic plugin for stricter subroutine checkingMetaCPAN