From: Shawn M Moore Date: Tue, 28 Apr 2009 09:05:52 +0000 (-0400) Subject: Add the warning from Perl::Critic::Dynamic::ValidateAgainstSymbolTable X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo%2FPerl-Critic-Dynamic-Moose.git;a=commitdiff_plain;h=c562b9cbe41b48f3685b49ed15d928e0a3430597 Add the warning from Perl::Critic::Dynamic::ValidateAgainstSymbolTable --- diff --git a/lib/Perl/Critic/Policy/DynamicMoose/ProhibitPublicBuilders.pm b/lib/Perl/Critic/Policy/DynamicMoose/ProhibitPublicBuilders.pm index 69fa757..9cbbe5d 100644 --- a/lib/Perl/Critic/Policy/DynamicMoose/ProhibitPublicBuilders.pm +++ b/lib/Perl/Critic/Policy/DynamicMoose/ProhibitPublicBuilders.pm @@ -61,5 +61,19 @@ should not be considered part of that class's public API. Thus we recommend that your attribute builder methods' names are prefixed with an underscore to mark them private. +=head1 WARNING + +B Most L Policies (including all the ones that +ship with Perl::Critic> use pure static analysis -- they never compile nor +execute any of the code that they analyze. However, this policy is very +different. It actually attempts to compile your code and then compares the +subroutines mentioned in your code to those found in the symbol table. +Therefore you should B use this Policy on any code that you do not trust, +or may have undesirable side-effects at compile-time (such as connecting to the +network or mutating files). + +For this Policy to work, all the modules included in your code must be +installed locally, and must compile without error. + =cut