Acme-CPANModules-HidingModules

 view release on metacpan or  search on metacpan

META.json  view on Meta::CPAN

                     ":PerlExecFiles"
                  ],
                  "skips" : [],
                  "switch" : []
               }
            },
            "name" : "@Author::PERLANCAR/Test::Compile",
            "version" : "2.058"
         },
         {
            "class" : "Dist::Zilla::Plugin::Test::Perl::Critic::Subset",
            "config" : {
               "Dist::Zilla::Plugin::Test::Perl::Critic::Subset" : {
                  "finder" : [
                     ":ExecFiles",
                     ":InstallModules",
                     ":TestFiles"
                  ]
               }
            },
            "name" : "@Author::PERLANCAR/Test::Perl::Critic::Subset",
            "version" : "3.001.006"
         },
         {
            "class" : "Dist::Zilla::Plugin::Test::Rinci",
            "name" : "@Author::PERLANCAR/Test::Rinci",
            "version" : "0.040"
         },
         {
            "class" : "Dist::Zilla::Plugin::StaticInstall",
            "config" : {

META.yml  view on Meta::CPAN

            - ':InstallModules'
          needs_display: 0
          phase: test
          script_finder:
            - ':PerlExecFiles'
          skips: []
          switch: []
      name: '@Author::PERLANCAR/Test::Compile'
      version: '2.058'
    -
      class: Dist::Zilla::Plugin::Test::Perl::Critic::Subset
      config:
        Dist::Zilla::Plugin::Test::Perl::Critic::Subset:
          finder:
            - ':ExecFiles'
            - ':InstallModules'
            - ':TestFiles'
      name: '@Author::PERLANCAR/Test::Perl::Critic::Subset'
      version: 3.001.006
    -
      class: Dist::Zilla::Plugin::Test::Rinci
      name: '@Author::PERLANCAR/Test::Rinci'
      version: '0.040'
    -
      class: Dist::Zilla::Plugin::StaticInstall
      config:
        Dist::Zilla::Plugin::StaticInstall:
          dry_run: 0

README  view on Meta::CPAN

    die when it receives a request to load a module that you want to hide.
    Some tools that work this way include:

    lib::filter family, including its thin wrapper lib::disallow.
    lib::filter et al supports hiding modules that you specify, as well as
    hiding all core modules or all non-core modules. They also support
    recursive allowing, i.e. you want to allow Moo and all the modules that
    Moo loads, and all the modules that they load, and so on.

    Devel::Hide. Devel::Hide also works by installing a hook in @INC. It
    supports propagating the hiding to child process by setting PERL5OPT
    environment variable.

    Test::Without::Module.

    Fooling module path finders

    Depending on which tool you use to find a module's path, here are some
    patches you can load to fool the finder.

    Module::Path::Patch::Hide

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

receives a request to load a module that you want to hide. Some tools that work
this way include:

<pm:lib::filter> family, including its thin wrapper <pm:lib::disallow>.
lib::filter et al supports hiding modules that you specify, as well as hiding
all core modules or all non-core modules. They also support recursive allowing,
i.e. you want to allow Moo and all the modules that Moo loads, and all the
modules that they load, and so on.

<pm:Devel::Hide>. Devel::Hide also works by installing a hook in `@INC`. It
supports propagating the hiding to child process by setting PERL5OPT environment
variable.

<pm:Test::Without::Module>.


**Fooling module path finders**

Depending on which tool you use to find a module's path, here are some patches
you can load to fool the finder.

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

receives a request to load a module that you want to hide. Some tools that work
this way include:

L<lib::filter> family, including its thin wrapper L<lib::disallow>.
lib::filter et al supports hiding modules that you specify, as well as hiding
all core modules or all non-core modules. They also support recursive allowing,
i.e. you want to allow Moo and all the modules that Moo loads, and all the
modules that they load, and so on.

L<Devel::Hide>. Devel::Hide also works by installing a hook in C<@INC>. It
supports propagating the hiding to child process by setting PERL5OPT environment
variable.

L<Test::Without::Module>.

B<Fooling module path finders>

Depending on which tool you use to find a module's path, here are some patches
you can load to fool the finder.

L<Module::Path::Patch::Hide>

t/author-critic.t  view on Meta::CPAN

  unless ($ENV{AUTHOR_TESTING}) {
    print qq{1..0 # SKIP these tests are for testing by the author\n};
    exit
  }
}


use strict;
use warnings;

# this test was generated with Dist::Zilla::Plugin::Test::Perl::Critic::Subset 3.001.006

use Test::Perl::Critic (-profile => "") x!! -e "";

my $filenames = ['lib/Acme/CPANModules/HidingModules.pm'];
unless ($filenames && @$filenames) {
    $filenames = -d "blib" ? ["blib"] : ["lib"];
}

all_critic_ok(@$filenames);



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