.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Test::CleanNamespaces 3pm" .TH Test::CleanNamespaces 3pm "2018-12-14" "perl v5.28.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Test::CleanNamespaces \- Check for uncleaned imports .SH "VERSION" .IX Header "VERSION" version 0.24 .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 3 \& use strict; \& use warnings; \& use Test::CleanNamespaces; \& \& all_namespaces_clean; .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This module lets you check your module's namespaces for imported functions you might have forgotten to remove with namespace::autoclean or namespace::clean and are therefore available to be called as methods, which usually isn't want you want. .SH "FUNCTIONS" .IX Header "FUNCTIONS" All functions are exported by default. .SS "namespaces_clean" .IX Subsection "namespaces_clean" .Vb 1 \& namespaces_clean(\*(AqYourModule\*(Aq, \*(AqAnotherModule\*(Aq); .Ve .PP Tests every specified namespace for uncleaned imports. If the module couldn't be loaded it will be skipped. .SS "all_namespaces_clean" .IX Subsection "all_namespaces_clean" .Vb 1 \& all_namespaces_clean; .Ve .PP Runs \*(L"namespaces_clean\*(R" for all modules in your distribution. .SS "find_modules" .IX Subsection "find_modules" .Vb 1 \& my @modules = Test::CleanNamespaces\->find_modules; .Ve .PP Returns a list of modules in the current distribution. It'll search in \&\f(CW\*(C`blib/\*(C'\fR, if it exists. \f(CW\*(C`lib/\*(C'\fR will be searched otherwise. .SS "builder" .IX Subsection "builder" .Vb 1 \& my $builder = Test::CleanNamespaces\->builder; .Ve .PP Returns the \f(CW\*(C`Test::Builder\*(C'\fR used by the test functions. .SH "KNOWN ISSUES" .IX Header "KNOWN ISSUES" Uncleaned imports from Mouse classes are incompletely detected, due to its lack of ability to return the correct method list \*(-- it assumes that all subs are meant to be callable as methods unless they originated from (were imported by) one of: Mouse, Mouse::Role, Mouse::Util, Mouse::Util::TypeConstraints, Carp, Scalar::Util, or List::Util. .SH "SEE ALSO" .IX Header "SEE ALSO" .IP "\(bu" 4 namespace::clean .IP "\(bu" 4 namespace::autoclean .IP "\(bu" 4 namespace::sweep .IP "\(bu" 4 Sub::Exporter::ForMethods .IP "\(bu" 4 Test::API .IP "\(bu" 4 Sub::Name .IP "\(bu" 4 Sub::Install .IP "\(bu" 4 MooseX::MarkAsMethods .IP "\(bu" 4 Dist::Zilla::Plugin::Test::CleanNamespaces .SH "SUPPORT" .IX Header "SUPPORT" Bugs may be submitted through the \s-1RT\s0 bug tracker (or bug\-Test\-CleanNamespaces@rt.cpan.org ). .PP There is also a mailing list available for users of this distribution, at . .PP There is also an irc channel available for users of this distribution, at \&\f(CW\*(C`#perl\*(C'\fR on \f(CW\*(C`irc.perl.org\*(C'\fR . .SH "AUTHOR" .IX Header "AUTHOR" Florian Ragwitz .SH "CONTRIBUTORS" .IX Header "CONTRIBUTORS" .IP "\(bu" 4 Karen Etheridge .IP "\(bu" 4 Graham Knop .SH "COPYRIGHT AND LICENCE" .IX Header "COPYRIGHT AND LICENCE" This software is copyright (c) 2009 by Florian Ragwitz. .PP This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.