Acme-CPANModules-LoadingModules

 view release on metacpan or  search on metacpan

META.json  view on Meta::CPAN

      },
      "x_lists" : {
         "x_lists" : {
            "Acme::CPANModule::ModuleAutoinstallers" : "0",
            "Acme::CPANModule::ModuleAutoloaders" : "0",
            "Module::Load" : "0",
            "Require::Hook" : "0",
            "Require::Hook::More" : "0",
            "Require::HookChain" : "0",
            "Require::HookChain::log::logger" : "0",
            "Require::HookChain::log::stderr" : "0",
            "all" : "0",
            "lib::disallow" : "0",
            "lib::filter" : "0",
            "lib::relative" : "0",
            "lib::require::all" : "0"
         }
      },
      "x_mentions" : {
         "x_mentions" : {
            "Acme::CPANModule::ModuleAutoinstallers" : "0",
            "Acme::CPANModule::ModuleAutoloaders" : "0",
            "Module::Load" : "0",
            "Require::Hook" : "0",
            "Require::Hook::More" : "0",
            "Require::HookChain" : "0",
            "Require::HookChain::log::logger" : "0",
            "Require::HookChain::log::stderr" : "0",
            "all" : "0",
            "lib::disallow" : "0",
            "lib::filter" : "0",
            "lib::relative" : "0",
            "lib::require::all" : "0"
         }
      }
   },
   "provides" : {
      "Acme::CPANModules::LoadingModules" : {

README  view on Meta::CPAN

    all requires all packages under a namespace. It will search the
    filesystem for installed module source files under a specified namespace
    and load them all.

    lib::require::all loads all modules in a directory.

    Logging module loading

    Require::HookChain::log::logger

    Require::HookChain::log::stderr

    Preventing loading certain modules

    lib::filter, lib::disallow

    Require hook frameworks

    These frameworks let you create require hook more easily.

    Require::Hook

README  view on Meta::CPAN

    Acme::CPANModule::ModuleAutoinstallers
    Acme::CPANModule::ModuleAutoloaders
    all Author: DEXTER <https://metacpan.org/author/DEXTER>

    lib::require::all
        Author: MIYAGAWA <https://metacpan.org/author/MIYAGAWA>

    Require::HookChain::log::logger
        Author: PERLANCAR <https://metacpan.org/author/PERLANCAR>

    Require::HookChain::log::stderr
        Author: PERLANCAR <https://metacpan.org/author/PERLANCAR>

    lib::filter
        Author: PERLANCAR <https://metacpan.org/author/PERLANCAR>

    lib::disallow
        Author: PERLANCAR <https://metacpan.org/author/PERLANCAR>

    Require::Hook
        Author: PERLANCAR <https://metacpan.org/author/PERLANCAR>

lib/Acme/CPANModules/LoadingModules.pm  view on Meta::CPAN

<pm:all> requires all packages under a namespace. It will search the filesystem
for installed module source files under a specified namespace and load them all.

<pm:lib::require::all> loads all modules in a directory.


**Logging module loading**

<pm:Require::HookChain::log::logger>

<pm:Require::HookChain::log::stderr>


**Preventing loading certain modules**

<pm:lib::filter>, <pm:lib::disallow>


**Require hook frameworks**

These frameworks let you create require hook more easily.

lib/Acme/CPANModules/LoadingModules.pm  view on Meta::CPAN


L<all> requires all packages under a namespace. It will search the filesystem
for installed module source files under a specified namespace and load them all.

L<lib::require::all> loads all modules in a directory.

B<Logging module loading>

L<Require::HookChain::log::logger>

L<Require::HookChain::log::stderr>

B<Preventing loading certain modules>

L<lib::filter>, L<lib::disallow>

B<Require hook frameworks>

These frameworks let you create require hook more easily.

L<Require::Hook>

lib/Acme/CPANModules/LoadingModules.pm  view on Meta::CPAN

Author: L<DEXTER|https://metacpan.org/author/DEXTER>

=item L<lib::require::all>

Author: L<MIYAGAWA|https://metacpan.org/author/MIYAGAWA>

=item L<Require::HookChain::log::logger>

Author: L<PERLANCAR|https://metacpan.org/author/PERLANCAR>

=item L<Require::HookChain::log::stderr>

Author: L<PERLANCAR|https://metacpan.org/author/PERLANCAR>

=item L<lib::filter>

Author: L<PERLANCAR|https://metacpan.org/author/PERLANCAR>

=item L<lib::disallow>

Author: L<PERLANCAR|https://metacpan.org/author/PERLANCAR>

t/00-compile.t  view on Meta::CPAN

use File::Spec;
use IPC::Open3;
use IO::Handle;

open my $stdin, '<', File::Spec->devnull or die "can't open devnull: $!";

my @warnings;
for my $lib (@module_files)
{
    # see L<perlfaq8/How can I capture STDERR from an external command?>
    my $stderr = IO::Handle->new;

    diag('Running: ', join(', ', map { my $str = $_; $str =~ s/'/\\'/g; q{'} . $str . q{'} }
            $^X, @switches, '-e', "require q[$lib]"))
        if $ENV{PERL_COMPILE_TEST_DEBUG};

    my $pid = open3($stdin, '>&STDERR', $stderr, $^X, @switches, '-e', "require q[$lib]");
    binmode $stderr, ':crlf' if $^O eq 'MSWin32';
    my @_warnings = <$stderr>;
    waitpid($pid, 0);
    is($?, 0, "$lib loaded ok");

    shift @_warnings if @_warnings and $_warnings[0] =~ /^Using .*\bblib/
        and not eval { +require blib; blib->VERSION('1.01') };

    if (@_warnings)
    {
        warn @_warnings;
        push @warnings, @_warnings;



( run in 1.168 second using v1.01-cache-2.11-cpan-49f99fa48dc )