NAME

Perl::Critic::Policy::Community::StrictWarnings - Always use strict and warnings, or a module that imports these

DESCRIPTION

The strict and warnings pragmas help avoid many common pitfalls such as misspellings, scoping issues, and performing operations on undefined values. Warnings can also alert you to deprecated or experimental functionality. The pragmas may either be explicitly imported with use, or indirectly through a number of importer modules such as Moose or strictures. strict is also enabled automatically with a use declaration of perl version 5.12 or higher.

  use strict;
  use warnings;

  use Moose;

  use 5.012;
  use warnings;

This policy is similar to the core policies Perl::Critic::Policy::TestingAndDebugging::RequireUseStrict and Perl::Critic::Policy::TestingAndDebugging::RequireUseWarnings, but combines them into one policy in the community theme. The default modules recognized as importing strict and warnings are defined by the same constants as the core policies, "@STRICT_EQUIVALENT_MODULES" in Perl::Critic::Utils::Constants. To define additional modules, see "CONFIGURATION".

AFFILIATION

This policy is part of Perl::Critic::Community.

CONFIGURATION

This policy can be configured to recognize additional modules as importers of strict and warnings, by putting an entry in a .perlcriticrc file like this:

  [Community::StrictWarnings]
  extra_importers = MyApp::Class MyApp::Role

AUTHOR

Dan Book, dbook@cpan.org

COPYRIGHT AND LICENSE

Copyright 2015, Dan Book.

This library is free software; you may redistribute it and/or modify it under the terms of the Artistic License version 2.0.

SEE ALSO

Perl::Critic