The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
---
abstract: 'frequently asked questions about Perl'
author:
  - 'Tom Christiansen <tchrist@perl.com>'
  - 'Nat Torkington <gnat@frii.com>'
  - 'brian d foy <bdfoy@cpan.org>'
  - 'Leo Lapworth <LLAP@cpan.org>'
  - 'perlfaq-workers <perlfaq-workers@perl.org>'
  - 'The Perl 5 Porters <perl5-porters@perl.org>'
build_requires:
  File::Spec: '0'
  IO::Handle: '0'
  IPC::Open3: '0'
  Test::More: '0'
configure_requires:
  ExtUtils::MakeMaker: '0'
dynamic_config: 0
generated_by: 'Dist::Zilla version 5.020, CPAN::Meta::Converter version 2.142690'
license: perl
meta-spec:
  url: http://module-build.sourceforge.net/META-spec-v1.4.html
  version: '1.4'
name: perlfaq
no_index:
  directory:
    - inc
resources:
  bugtracker: https://github.com/perl-doc-cats/perlfaq/issues
  homepage: https://metacpan.org/release/perlfaq
  repository: git://github.com/perl-doc-cats/perlfaq.git
version: '5.0150046'
x_Dist_Zilla:
  perl:
    version: '5.021003'
  plugins:
    -
      class: Dist::Zilla::Plugin::PruneCruft
      name: '@Filter/PruneCruft'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::ManifestSkip
      name: '@Filter/ManifestSkip'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::MetaYAML
      name: '@Filter/MetaYAML'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::License
      name: '@Filter/License'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::Readme
      name: '@Filter/Readme'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::ExecDir
      name: '@Filter/ExecDir'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::ShareDir
      name: '@Filter/ShareDir'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::MakeMaker
      config:
        Dist::Zilla::Role::TestRunner:
          default_jobs: 1
      name: '@Filter/MakeMaker'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::Manifest
      name: '@Filter/Manifest'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::TestRelease
      name: '@Filter/TestRelease'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::UploadToCPAN
      name: '@Filter/UploadToCPAN'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::Git::GatherDir
      config:
        Dist::Zilla::Plugin::GatherDir:
          exclude_filename: []
          exclude_match: []
          follow_symlinks: '0'
          include_dotfiles: '0'
          prefix: ''
          root: .
        Dist::Zilla::Plugin::Git::GatherDir:
          include_untracked: '0'
        Dist::Zilla::Role::Git::Repo:
          repo_root: .
      name: Git::GatherDir
      version: '2.025'
    -
      class: Dist::Zilla::Plugin::RunExtraTests
      config:
        Dist::Zilla::Role::TestRunner:
          default_jobs: '9'
      name: RunExtraTests
      version: '0.022'
    -
      class: Dist::Zilla::Plugin::Git::NextVersion
      config:
        Dist::Zilla::Plugin::Git::NextVersion:
          first_version: '0.001'
          version_by_branch: '0'
          version_regexp: (?^u:^([\d._]+)$)
        Dist::Zilla::Role::Git::Repo:
          repo_root: .
      name: Git::NextVersion
      version: '2.025'
    -
      class: Dist::Zilla::Plugin::PkgVersion
      name: PkgVersion
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::DualLife
      name: DualLife
      version: '0.03'
    -
      class: Dist::Zilla::Plugin::MetaConfig
      name: MetaConfig
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::MetaJSON
      name: MetaJSON
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::Test::Compile
      config:
        Dist::Zilla::Plugin::Test::Compile:
          bail_out_on_fail: '0'
          fail_on_warning: author
          fake_home: '0'
          filename: t/00-compile.t
          module_finder:
            - ':InstallModules'
          needs_display: '0'
          phase: test
          script_finder:
            - ':ExecFiles'
          skips: []
      name: Test::Compile
      version: '2.051'
    -
      class: Dist::Zilla::Plugin::PodSyntaxTests
      name: PodSyntaxTests
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::Test::NoTabs
      config:
        Dist::Zilla::Plugin::Test::NoTabs:
          filename: xt/author/no-tabs.t
          finder:
            - ':InstallModules'
            - ':ExecFiles'
            - ':TestFiles'
      name: Test::NoTabs
      version: '0.09'
    -
      class: Dist::Zilla::Plugin::EOLTests
      name: EOLTests
      version: '0.02'
    -
      class: Dist::Zilla::Plugin::Test::ChangesHasContent
      name: Test::ChangesHasContent
      version: '0.006'
    -
      class: Dist::Zilla::Plugin::MojibakeTests
      name: MojibakeTests
      version: '0.7'
    -
      class: Dist::Zilla::Plugin::Test::Portability
      name: Test::Portability
      version: '2.000005'
    -
      class: Dist::Zilla::Plugin::MetaResources
      name: MetaResources
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::Git::Contributors
      config:
        Dist::Zilla::Plugin::Git::Contributors:
          include_authors: '0'
          include_releaser: '1'
          order_by: name
          paths: []
      name: Git::Contributors
      version: '0.007'
    -
      class: Dist::Zilla::Plugin::Authority
      name: Authority
      version: '1.006'
    -
      class: Dist::Zilla::Plugin::MetaNoIndex
      name: MetaNoIndex
      version: '5.020'
    -
      class: inc::CreateQuestionList
      name: =inc::CreateQuestionList
      version: ~
    -
      class: Dist::Zilla::Plugin::NextRelease
      name: NextRelease
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::Git::Check
      config:
        Dist::Zilla::Plugin::Git::Check:
          untracked_files: die
        Dist::Zilla::Role::Git::DirtyFiles:
          allow_dirty: []
          allow_dirty_match: []
          changelog: Changes
        Dist::Zilla::Role::Git::Repo:
          repo_root: .
      name: Git::Check
      version: '2.025'
    -
      class: Dist::Zilla::Plugin::Git::CheckFor::MergeConflicts
      config:
        Dist::Zilla::Role::Git::Repo:
          repo_root: .
      name: Git::CheckFor::MergeConflicts
      version: '0.011'
    -
      class: Dist::Zilla::Plugin::Git::CheckFor::CorrectBranch
      config:
        Dist::Zilla::Role::Git::Repo:
          repo_root: .
      name: Git::CheckFor::CorrectBranch
      version: '0.011'
    -
      class: Dist::Zilla::Plugin::Git::Remote::Check
      name: Git::Remote::Check
      version: 0.1.2
    -
      class: Dist::Zilla::Plugin::CopyFilesFromRelease
      config:
        Dist::Zilla::Plugin::CopyFilesFromRelease:
          filename:
            - LICENSE
          match: []
      name: CopyFilesFromRelease
      version: '0.002'
    -
      class: Dist::Zilla::Plugin::Git::Commit
      config:
        Dist::Zilla::Plugin::Git::Commit:
          add_files_in:
            - .
          commit_msg: '%N-%v%t%n%n%c'
          time_zone: local
        Dist::Zilla::Role::Git::DirtyFiles:
          allow_dirty:
            - Changes
            - LICENSE
          allow_dirty_match: []
          changelog: Changes
        Dist::Zilla::Role::Git::Repo:
          repo_root: .
      name: Git::Commit
      version: '2.025'
    -
      class: Dist::Zilla::Plugin::Git::Tag
      config:
        Dist::Zilla::Plugin::Git::Tag:
          branch: ~
          signed: 0
          tag: '5.0150046'
          tag_format: '%v%t'
          tag_message: v%v%t
          time_zone: local
        Dist::Zilla::Role::Git::Repo:
          repo_root: .
      name: Git::Tag
      version: '2.025'
    -
      class: Dist::Zilla::Plugin::Git::Push
      config:
        Dist::Zilla::Plugin::Git::Push:
          push_to:
            - origin
          remotes_must_exist: 1
        Dist::Zilla::Role::Git::Repo:
          repo_root: .
      name: Git::Push
      version: '2.025'
    -
      class: Dist::Zilla::Plugin::ConfirmRelease
      name: ConfirmRelease
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::FinderCode
      name: ':InstallModules'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::FinderCode
      name: ':IncModules'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::FinderCode
      name: ':TestFiles'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::FinderCode
      name: ':ExecFiles'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::FinderCode
      name: ':ShareFiles'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::FinderCode
      name: ':MainModule'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::FinderCode
      name: ':AllFiles'
      version: '5.020'
    -
      class: Dist::Zilla::Plugin::FinderCode
      name: ':NoFiles'
      version: '5.020'
  zilla:
    class: Dist::Zilla::Dist::Builder
    config:
      is_trial: '0'
    version: '5.020'
x_authority: cpan:LLAP
x_contributors:
  - 'Alex Beamish <talexb@gmail.com>'
  - 'apeiron <cnehren@gmail.com>'
  - 'Brian Fraser <brian.fraser@booking.com>'
  - 'Chris Nehren <apeiron@cpan.org>'
  - 'Chris Nehren <cnehren@gmail.com>'
  - 'Chris Nehren <c.nehren@shadowcat.co.uk>'
  - 'Christian Walde <walde.christian@googlemail.com>'
  - 'Christopher J. Madsen <perl@cjmweb.net>'
  - 'darfich <bourbaki007@gmail.com>'
  - 'Dave Cross <dave@dave.org.uk>'
  - 'David Precious <davidp@preshweb.co.uk>'
  - 'David Steinbrunner <dsteinbrunner@pobox.com>'
  - 'Eric Johnson <eric.git@iijo.org>'
  - 'Father Chrysostomos <sprout@cpan.org>'
  - 'Florian Ragwitz <rafl@debian.org>'
  - 'Grzegorz Rożniecki <xaerxess@gmail.com>'
  - 'hemanth.hm <hemanth.hm@gmail.com>'
  - 'Herbert Breunung <lichtkind@cpan.org>'
  - 'Jeffrey Kegler <jeffreykegler@jeffreykegler.com>'
  - 'Jeffrey Kegler <jeffreykegler@Jeffrey-Keglers-Computer.local>'
  - 'joaquinferrero <explorer+git@joaquinferrero.com>'
  - 'Karen Etheridge <ether@cpan.org>'
  - 'Laurent Dami <laurent.dami@free.fr>'
  - 'Leo Lapworth <leo@cuckoo.org>'
  - 'Lukas Mai <l.mai@web.de>'
  - 'Martin Becker <becker-github@cozap.com>'
  - 'Martin Becker <mhasch@cpan.org>'
  - 'Martin McGrath <mcgrath.martin@gmail.com>'
  - 'Matthew Horsfall <wolfsage@gmail.com>'
  - 'Michael G. Schwern <schwern@pobox.com>'
  - 'Mike Doherty <doherty@cs.dal.ca>'
  - 'Olaf Alders <olaf@wundersolutions.com>'
  - 'Ricardo Signes <rjbs@cpan.org>'
  - 'Sebastian Riedel <kraihx@gmail.com>'
  - 'SHIRAKATA Kentaro <argrath@ub32.org>'
  - 'Shlomi Fish <shlomif@iglu.org.il>'
  - 'Shlomi Fish <shlomif@shlomifish.org>'
  - 'Smylers <Smylers@stripey.com>'
  - 'tina <forum@s05.tinita.de>'