Nicholas Clark
2009-06-13 10:59:29 UTC
In perl.git, the branch blead has been updated
<http://perl5.git.perl.org/perl.git/commitdiff/6e2c892858f0153d478baaafedb3170a7306bd0a?hp=26ad458aeb6c3166efd1c5144eb908c7a3242226>
- Log -----------------------------------------------------------------
commit 6e2c892858f0153d478baaafedb3170a7306bd0a
Author: Nicholas Clark <***@ccl4.org>
Date: Sat Jun 13 11:46:29 2009 +0100
Generate perlmodlib.pod at build time, instead of shipping it.
M MANIFEST
M Makefile.SH
M pod.lst
D pod/perlmodlib.pod
M vms/descrip_mms.template
M win32/Makefile
M win32/makefile.mk
commit 291c64f4c0f01fdef1479446cf0ba1ec265227d5
Author: Nicholas Clark <***@ccl4.org>
Date: Sat Jun 13 11:34:34 2009 +0100
Make perlmodlib.PL chdir into pod. Add a -q flag to suppress routine warnings.
M pod/perlmodlib.PL
commit e8041d9b8361b47aafe5f4dc70a7ae9b018574c2
Author: Nicholas Clark <***@ccl4.org>
Date: Sat Jun 13 10:25:12 2009 +0100
In perlmodlib.PL, just open files in their original location.
Trying to munge the file to a path in lib/ and then attempting to open that
first doesn't gain anything.
M pod/perlmodlib.PL
-----------------------------------------------------------------------
Summary of changes:
MANIFEST | 1 -
Makefile.SH | 5 +-
pod.lst | 2 +-
pod/perlmodlib.PL | 27 +-
pod/perlmodlib.pod | 3422 ----------------------------------------------
vms/descrip_mms.template | 6 +-
win32/Makefile | 11 +-
win32/makefile.mk | 11 +-
8 files changed, 38 insertions(+), 3447 deletions(-)
delete mode 100644 pod/perlmodlib.pod
diff --git a/MANIFEST b/MANIFEST
index 48ab18c..ead080d 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -3636,7 +3636,6 @@ pod/perllocale.pod Perl locale support
pod/perllol.pod Perl data structures: arrays of arrays
pod/perlmodinstall.pod Perl modules: how to install from CPAN
pod/perlmodlib.PL Generate pod/perlmodlib.pod
-pod/perlmodlib.pod Perl modules: how to write and use
pod/perlmod.pod Perl modules: how they work
pod/perlmodstyle.pod Perl modules: how to write modules with style
pod/perlnewmod.pod Perl modules: preparing a new module for distribution
diff --git a/Makefile.SH b/Makefile.SH
index c78aefc..4afaf88 100644
--- a/Makefile.SH
+++ b/Makefile.SH
@@ -462,7 +462,7 @@ mini_obj = $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
ndt_obj = $(obj0) $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
obj = $(ndt_obj) $(DTRACE_O)
-perltoc_pod_prereqs = extra.pods pod/perlapi.pod pod/perldelta.pod pod/perlintern.pod
+perltoc_pod_prereqs = extra.pods pod/perlapi.pod pod/perldelta.pod pod/perlintern.pod pod/perlmodlib.pod
generated_pods = pod/perltoc.pod $(perltoc_pod_prereqs)
lintflags = \
@@ -989,6 +989,9 @@ pod/perltoc.pod: $(perltoc_pod_prereqs) perl$(EXE_EXT) $(ext) pod/buildtoc
pod/perlapi.pod pod/perlintern.pod: miniperl$(EXE_EXT) autodoc.pl embed.fnc
$(LDLIBPTH) $(RUN) ./miniperl$(EXE_EXT) -Ilib autodoc.pl
+pod/perlmodlib.pod: miniperl$(EXE_EXT) pod/perlmodlib.PL MANIFEST
+ $(LDLIBPTH) $(RUN) ./miniperl$(EXE_EXT) -Ilib pod/perlmodlib.PL -q
+
pod/perldelta.pod: pod/perl5110delta.pod
$(LNS) perl5110delta.pod pod/perldelta.pod
diff --git a/pod.lst b/pod.lst
index 548b1b7..0a4a1e8 100644
--- a/pod.lst
+++ b/pod.lst
@@ -89,7 +89,7 @@ h Reference Manual
perlsec Perl security
perlmod Perl modules: how they work
- perlmodlib Perl modules: how to write and use
+g perlmodlib Perl modules: how to write and use
perlmodstyle Perl modules: how to write modules with style
perlmodinstall Perl modules: how to install from CPAN
perlnewmod Perl modules: preparing a new module for distribution
diff --git a/pod/perlmodlib.PL b/pod/perlmodlib.PL
index cec7845..0a75208 100644
--- a/pod/perlmodlib.PL
+++ b/pod/perlmodlib.PL
@@ -2,9 +2,17 @@
$ENV{LC_ALL} = 'C';
+use FindBin;
+chdir $FindBin::Bin or die "$0: Can't chdir $FindBin::Bin: $!";
+
+my $Quiet = @ARGV && $ARGV[0] eq '-q';
+
open (OUT, ">perlmodlib.pod") or die $!;
my (@pragma, @mod, @MANIFEST);
+# MANIFEST itself is Unix style filenames, so we have to assume that Unix style
+# filenames will work.
+
open (MANIFEST, "../MANIFEST") or die $!;
@MANIFEST = grep !m</(?:t|demo)/>, <MANIFEST>;
push @MANIFEST, 'lib/Config.pod', 'lib/Errno.pm', 'lib/lib.pm',
@@ -35,16 +43,12 @@ my %suppressed = map {$_ => 1} qw(
for (@MANIFEST) {
my $filename;
- next unless s|^lib/|| or m|^ext/|;
- my ($origfilename) = ($filename) = m|^(\S+)|;
- $filename =~ s|^[^/]+/|| if $filename =~ s|^ext/||;
+ next unless m|^lib/| or m|^ext/|;
+ my ($filename) = m|^(\S+)|;
next unless $filename =~ m!\.p(m|od)$!;
- unless (open (MOD, "../lib/$filename")) {
- unless (open (MOD, "../$origfilename")) {
- warn "Couldn't open ../$origfilename: $!";
- next;
- }
- $filename = $origfilename;
+ unless (open MOD, '<', "../$filename") {
+ warn "Couldn't open ../$filename: $!";
+ next;
}
@@ -59,7 +63,8 @@ for (@MANIFEST) {
}
}
unless ($foundit) {
- warn "$filename missing =head1 NAME (OK if respective .pod exists)\n";
+ warn "$filename missing =head1 NAME (OK if respective .pod exists)\n"
+ unless $Quiet;
next;
}
my $title = <MOD>;
@@ -80,7 +85,7 @@ for (@MANIFEST) {
unless ($name and $thing) {
warn "$filename missing name\n" unless $name;
- warn "$filename missing thing\n" unless $thing;
+ warn "$filename missing thing\n" unless $thing or $Quiet;
next;
}
diff --git a/pod/perlmodlib.pod b/pod/perlmodlib.pod
deleted file mode 100644
index 6a4e715..0000000
--- a/pod/perlmodlib.pod
+++ /dev/null
@@ -1,3422 +0,0 @@
-=for maintainers
-Generated by perlmodlib.PL -- DO NOT EDIT!
-
-=head1 NAME
-
-perlmodlib - constructing new Perl modules and finding existing ones
-
-=head1 THE PERL MODULE LIBRARY
-
-Many modules are included in the Perl distribution. These are described
-below, and all end in F<.pm>. You may discover compiled library
-files (usually ending in F<.so>) or small pieces of modules to be
-autoloaded (ending in F<.al>); these were automatically generated
-by the installation process. You may also discover files in the
-library directory that end in either F<.pl> or F<.ph>. These are
-old libraries supplied so that old programs that use them still
-run. The F<.pl> files will all eventually be converted into standard
-modules, and the F<.ph> files made by B<h2ph> will probably end up
-as extension modules made by B<h2xs>. (Some F<.ph> values may
-already be available through the POSIX, Errno, or Fcntl modules.)
-The B<pl2pm> file in the distribution may help in your conversion,
-but it's just a mechanical process and therefore far from bulletproof.
-
-=head2 Pragmatic Modules
-
-They work somewhat like compiler directives (pragmata) in that they
-tend to affect the compilation of your program, and thus will usually
-work well only when used within a C<use>, or C<no>. Most of these
-are lexically scoped, so an inner BLOCK may countermand them
-by saying:
-
- no integer;
- no strict 'refs';
- no warnings;
-
-which lasts until the end of that BLOCK.
-
-Some pragmas are lexically scoped--typically those that affect the
-C<$^H> hints variable. Others affect the current package instead,
-like C<use vars> and C<use subs>, which allow you to predeclare a
-variables or subroutines within a particular I<file> rather than
-just a block. Such declarations are effective for the entire file
-for which they were declared. You cannot rescind them with C<no
-vars> or C<no subs>.
-
-The following pragmas are defined (and have their own documentation).
-
-=over 12
-
-=item attributes
-
-Get/set subroutine or variable attributes
-
-=item autodie
-
-Replace functions with ones that succeed or die with lexical scope
-
-=item autodie::exception
-
-Exceptions from autodying functions.
-
-=item autodie::exception::system
-
-Exceptions from autodying system().
-
-=item autouse
-
-Postpone load of modules until a function is used
-
-=item base
-
-Establish an ISA relationship with base classes at compile time
-
-=item bigint
-
-Transparent BigInteger support for Perl
-
-=item bignum
-
-Transparent BigNumber support for Perl
-
-=item bigrat
-
-Transparent BigNumber/BigRational support for Perl
-
-=item blib
-
-Use MakeMaker's uninstalled version of a package
-
-=item bytes
-
-Force byte semantics rather than character semantics
-
-=item charnames
-
-Define character names for C<\N{named}> string literal escapes
-
-=item constant
-
-Declare constants
-
-=item deprecate
-
-Perl pragma for deprecating the core version of a module
-
-=item diagnostics
-
-Produce verbose warning diagnostics
-
-=item encoding
-
-Allows you to write your script in non-ascii or non-utf8
-
-=item encoding::warnings
-
-Warn on implicit encoding conversions
-
-=item feature
-
-Enable new syntactic features
-
-=item fields
-
-Compile-time class fields
-
-=item filetest
-
-Control the filetest permission operators
-
-=item if
-
-C<use> a Perl module if a condition holds
-
-=item integer
-
-Use integer arithmetic instead of floating point
-
-=item less
-
-Request less of something
-
-=item lib
-
-Manipulate @INC at compile time
-
-=item locale
-
-Use and avoid POSIX locales for built-in operations
-
-=item mro
-
-Method Resolution Order
-
-=item open
-
-Set default PerlIO layers for input and output
-
-=item ops
-
-Restrict unsafe operations when compiling
-
-=item overload
-
-Package for overloading Perl operations
-
-=item overloading
-
-Lexically control overloading
-
-=item parent
-
-Establish an ISA relationship with base classes at compile time
-
-=item re
-
-Alter regular expression behaviour
-
-=item sigtrap
-
-Enable simple signal handling
-
-=item sort
-
-Control sort() behaviour
-
-=item strict
-
-Restrict unsafe constructs
-
-=item subs
-
-Predeclare sub names
-
-=item threads
-
-Perl interpreter-based threads
-
-=item threads::shared
-
-Perl extension for sharing data structures between threads
-
-=item utf8
-
-Enable/disable UTF-8 (or UTF-EBCDIC) in source code
-
-=item vars
-
-Predeclare global variable names (obsolete)
-
-=item version
-
-Perl extension for Version Objects
-
-=item vmsish
-
-Control VMS-specific language features
-
-=item warnings
-
-Control optional warnings
-
-=item warnings::register
-
-Warnings import function
-
-=back
-
-=head2 Standard Modules
-
-Standard, bundled modules are all expected to behave in a well-defined
-manner with respect to namespace pollution because they use the
-Exporter module. See their own documentation for details.
-
-It's possible that not all modules listed below are installed on your
-system. For example, the GDBM_File module will not be installed if you
-don't have the gdbm library.
-
-=over 12
-
-=item AnyDBM_File
-
-Provide framework for multiple DBMs
-
-=item App::Prove
-
-Implements the C<prove> command.
-
-=item App::Prove::State
-
-State storage for the C<prove> command.
-
-=item App::Prove::State::Result
-
-Individual test suite results.
-
-=item App::Prove::State::Result::Test
-
-Individual test results.
-
-=item Archive::Extract
-
-A generic archive extracting mechanism
-
-=item Archive::Tar
-
-Module for manipulations of tar archives
-
-=item Archive::Tar::File
-
-A subclass for in-memory extracted file from Archive::Tar
-
-=item Attribute::Handlers
-
-Simpler definition of attribute handlers
-
-=item AutoLoader
-
-Load subroutines only on demand
-
-=item AutoSplit
-
-Split a package for autoloading
-
-=item B
-
-The Perl Compiler
-
-=item B::Concise
-
-Walk Perl syntax tree, printing concise info about ops
-
-=item B::Debug
-
-Walk Perl syntax tree, printing debug info about ops
-
-=item B::Deparse
-
-Perl compiler backend to produce perl code
-
-=item B::Lint
-
-Perl lint
-
-=item B::Lint::Debug
-
-Adds debugging stringification to B::
-
-=item B::Showlex
-
-Show lexical variables used in functions or files
-
-=item B::Terse
-
-Walk Perl syntax tree, printing terse info about ops
-
-=item B::Xref
-
-Generates cross reference reports for Perl programs
-
-=item Benchmark
-
-Benchmark running times of Perl code
-
-=item CGI
-
-Handle Common Gateway Interface requests and responses
-
-=item CGI::Apache
-
-Backward compatibility module for CGI.pm
-
-=item CGI::Carp
-
-CGI routines for writing to the HTTPD (or other) error log
-
-=item CGI::Cookie
-
-Interface to Netscape Cookies
-
-=item CGI::Fast
-
-CGI Interface for Fast CGI
-
-=item CGI::Pretty
-
-Module to produce nicely formatted HTML code
-
-=item CGI::Push
-
-Simple Interface to Server Push
-
-=item CGI::Switch
-
-Backward compatibility module for defunct CGI::Switch
-
-=item CGI::Util
-
-Internal utilities used by CGI module
-
-=item CORE
-
-Pseudo-namespace for Perl's core routines
-
-=item CPAN
-
-Query, download and build perl modules from CPAN sites
-
-=item CPAN::API::HOWTO
-
-A recipe book for programming with CPAN.pm
-
-=item CPAN::Distroprefs
-
-Read and match distroprefs
-
-=item CPAN::FirstTime
-
-Utility for CPAN::Config file Initialization
-
-=item CPAN::Kwalify
-
-Interface between CPAN.pm and Kwalify.pm
-
-=item CPAN::Nox
-
-Wrapper around CPAN.pm without using any XS module
-
-=item CPAN::Version
-
-Utility functions to compare CPAN versions
-
-=item CPANPLUS
-
-API & CLI access to the CPAN mirrors
-
-=item CPANPLUS::Dist::Base
-
-Base class for custom distribution classes
-
-=item CPANPLUS::Dist::Build
-
-CPANPLUS plugin to install packages that use Build.PL
-
-=item CPANPLUS::Dist::Build::Constants
-
-Constants for CPANPLUS::Dist::Build
-
-=item CPANPLUS::Dist::Sample
-
-Sample code to create your own Dist::* plugin
-
-=item CPANPLUS::Internals::Source::Memory
-
-In memory implementation
-
-=item CPANPLUS::Internals::Source::SQLite
-
-SQLite implementation
-
-=item CPANPLUS::Shell::Classic
-
-CPAN.pm emulation for CPANPLUS
-
-=item CPANPLUS::Shell::Default::Plugins::HOWTO
-
-Documentation on how to write your own plugins
-
-=item Carp
-
-Warn of errors (from perspective of caller)
-
-=item Carp::Heavy
-
-Heavy machinery, no user serviceable parts inside
-
-=item Class::ISA
-
-Report the search path for a class's ISA tree
-
-=item Class::Struct
-
-Declare struct-like datatypes as Perl classes
-
-=item Compress::Raw::Bzip2
-
-Low-Level Interface to bzip2 compression library
-
-=item Compress::Raw::Bzip2::pod::FAQ
-
-Frequently Asked Questions about Compress::Raw::Bzip2
-
-=item Compress::Raw::Zlib
-
-Low-Level Interface to zlib compression library
-
-=item Compress::Raw::Zlib::pod::FAQ
-
-Frequently Asked Questions about Compress::Raw::Zlib
-
-=item Compress::Zlib
-
-Interface to zlib compression library
-
-=item Config
-
-Access Perl configuration information
-
-=item Cwd
-
-Get pathname of current working directory
-
-=item DB
-
-Programmatic interface to the Perl debugging API
-
-=item DBM_Filter
-
-Filter DBM keys/values
-
-=item DBM_Filter::compress
-
-Filter for DBM_Filter
-
-=item DBM_Filter::encode
-
-Filter for DBM_Filter
-
-=item DBM_Filter::int32
-
-Filter for DBM_Filter
-
-=item DBM_Filter::null
-
-Filter for DBM_Filter
-
-=item DBM_Filter::utf8
-
-Filter for DBM_Filter
-
-=item DB_File
-
-Perl5 access to Berkeley DB version 1.x
-
-=item Data::Dumper
-
-Stringified perl data structures, suitable for both printing and C<eval>
-
-=item Devel::DProf
-
-A Perl code profiler
-
-=item Devel::InnerPackage
-
-Find all the inner packages of a package
-
-=item Devel::Peek
-
-A data debugging tool for the XS programmer
-
-=item Devel::SelfStubber
-
-Generate stubs for a SelfLoading module
-
-=item Digest
-
-Modules that calculate message digests
-
-=item Digest::MD5
-
-Perl interface to the MD5 Algorithm
-
-=item Digest::SHA
-
-Perl extension for SHA-1/224/256/384/512
-
-=item Digest::base
-
-Digest base class
-
-=item Digest::file
-
-Calculate digests of files
-
-=item DirHandle
-
-Supply object methods for directory handles
-
-=item Dumpvalue
-
-Provides screen dump of Perl data.
-
-=item DynaLoader
-
-Dynamically load C libraries into Perl code
-
-=item Encode
-
-Character encodings
-
-=item Encode::Alias
-
-Alias definitions to encodings
-
-=item Encode::Byte
-
-Single Byte Encodings
-
-=item Encode::CJKConstants
-
-Internally used by Encode::??::ISO_2022_*
-
-=item Encode::CN
-
-China-based Chinese Encodings
-
-=item Encode::CN::HZ
-
-Internally used by Encode::CN
-
-=item Encode::Config
-
-Internally used by Encode
-
-=item Encode::EBCDIC
-
-EBCDIC Encodings
-
-=item Encode::Encoder
-
-Object Oriented Encoder
-
-=item Encode::Encoding
-
-Encode Implementation Base Class
-
-=item Encode::GSM0338
-
-ESTI GSM 03.38 Encoding
-
-=item Encode::Guess
-
-Guesses encoding from data
-
-=item Encode::JP
-
-Japanese Encodings
-
-=item Encode::JP::H2Z
-
-Internally used by Encode::JP::2022_JP*
-
-=item Encode::JP::JIS7
-
-Internally used by Encode::JP
-
-=item Encode::KR
-
-Korean Encodings
-
-=item Encode::KR::2022_KR
-
-Internally used by Encode::KR
-
-=item Encode::MIME::Header
-
-MIME 'B' and 'Q' header encoding
-
-=item Encode::MIME::Name
-
-Internally used by Encode
-
-=item Encode::PerlIO
-
-A detailed document on Encode and PerlIO
-
-=item Encode::Supported
-
-Encodings supported by Encode
-
-=item Encode::Symbol
-
-Symbol Encodings
-
-=item Encode::TW
-
-Taiwan-based Chinese Encodings
-
-=item Encode::Unicode
-
-Various Unicode Transformation Formats
-
-=item Encode::Unicode::UTF7
-
-UTF-7 encoding
-
-=item English
-
-Use nice English (or awk) names for ugly punctuation variables
-
-=item Env
-
-Perl module that imports environment variables as scalars or arrays
-
-=item Errno
-
-System errno constants
-
-=item Exporter
-
-Implements default import method for modules
-
-=item Exporter::Heavy
-
-Exporter guts
-
-=item ExtUtils::CBuilder
-
-Compile and link C code for Perl modules
-
-=item ExtUtils::CBuilder::Platform::Windows
-
-Builder class for Windows platforms
-
-=item ExtUtils::Command
-
-Utilities to replace common UNIX commands in Makefiles etc.
-
-=item ExtUtils::Command::MM
-
-Commands for the MM's to use in Makefiles
-
-=item ExtUtils::Constant
-
-Generate XS code to import C header constants
-
-=item ExtUtils::Constant::Base
-
-Base class for ExtUtils::Constant objects
-
-=item ExtUtils::Constant::Utils
-
-Helper functions for ExtUtils::Constant
-
-=item ExtUtils::Constant::XS
-
-Base class for ExtUtils::Constant objects
-
-=item ExtUtils::Embed
-
-Utilities for embedding Perl in C/C++ applications
-
-=item ExtUtils::Install
-
-Install files from here to there
-
-=item ExtUtils::Installed
-
-Inventory management of installed modules
-
-=item ExtUtils::Liblist
-
-Determine libraries to use and how to use them
-
-=item ExtUtils::MM
-
-OS adjusted ExtUtils::MakeMaker subclass
-
-=item ExtUtils::MM_AIX
-
-AIX specific subclass of ExtUtils::MM_Unix
-
-=item ExtUtils::MM_Any
-
-Platform-agnostic MM methods
-
-=item ExtUtils::MM_BeOS
-
-Methods to override UN*X behaviour in ExtUtils::MakeMaker
-
-=item ExtUtils::MM_Cygwin
-
-Methods to override UN*X behaviour in ExtUtils::MakeMaker
-
-=item ExtUtils::MM_DOS
-
-DOS specific subclass of ExtUtils::MM_Unix
-
-=item ExtUtils::MM_Darwin
-
-Special behaviors for OS X
-
-=item ExtUtils::MM_MacOS
-
-Once produced Makefiles for MacOS Classic
-
-=item ExtUtils::MM_NW5
-
-Methods to override UN*X behaviour in ExtUtils::MakeMaker
-
-=item ExtUtils::MM_OS2
-
-Methods to override UN*X behaviour in ExtUtils::MakeMaker
-
-=item ExtUtils::MM_QNX
-
-QNX specific subclass of ExtUtils::MM_Unix
-
-=item ExtUtils::MM_UWIN
-
-U/WIN specific subclass of ExtUtils::MM_Unix
-
-=item ExtUtils::MM_Unix
-
-Methods used by ExtUtils::MakeMaker
-
-=item ExtUtils::MM_VMS
-
-Methods to override UN*X behaviour in ExtUtils::MakeMaker
-
-=item ExtUtils::MM_VOS
-
-VOS specific subclass of ExtUtils::MM_Unix
-
-=item ExtUtils::MM_Win32
-
-Methods to override UN*X behaviour in ExtUtils::MakeMaker
-
-=item ExtUtils::MM_Win95
-
-Method to customize MakeMaker for Win9X
-
-=item ExtUtils::MY
-
-ExtUtils::MakeMaker subclass for customization
-
-=item ExtUtils::MakeMaker
-
-Create a module Makefile
-
-=item ExtUtils::MakeMaker::Config
-
-Wrapper around Config.pm
-
-=item ExtUtils::MakeMaker::FAQ
-
-Frequently Asked Questions About MakeMaker
-
-=item ExtUtils::MakeMaker::Tutorial
-
-Writing a module with MakeMaker
-
-=item ExtUtils::Manifest
-
-Utilities to write and check a MANIFEST file
-
-=item ExtUtils::Mkbootstrap
-
-Make a bootstrap file for use by DynaLoader
-
-=item ExtUtils::Mksymlists
-
-Write linker options files for dynamic extension
-
-=item ExtUtils::Packlist
-
-Manage .packlist files
-
-=item ExtUtils::ParseXS
-
-Converts Perl XS code into C code
-
-=item ExtUtils::XSSymSet
-
-Keep sets of symbol names palatable to the VMS linker
-
-=item ExtUtils::testlib
-
-Add blib/* directories to @INC
-
-=item Fatal
-
-Replace functions with equivalents which succeed or die
-
-=item Fcntl
-
-Load the C Fcntl.h defines
-
-=item File::Basename
-
-Parse file paths into directory, filename and suffix.
-
-=item File::CheckTree
-
-Run many filetest checks on a tree
-
-=item File::Compare
-
-Compare files or filehandles
-
-=item File::Copy
-
-Copy files or filehandles
-
-=item File::DosGlob
-
-DOS like globbing and then some
-
-=item File::Fetch
-
-A generic file fetching mechanism
-
-=item File::Find
-
-Traverse a directory tree.
-
-=item File::Glob
-
-Perl extension for BSD glob routine
-
-=item File::GlobMapper
-
-Extend File Glob to Allow Input and Output Files
-
-=item File::Path
-
-Create or remove directory trees
-
-=item File::Spec
-
-Portably perform operations on file names
-
-=item File::Spec::Cygwin
-
-Methods for Cygwin file specs
-
-=item File::Spec::Epoc
-
-Methods for Epoc file specs
-
-=item File::Spec::Functions
-
-Portably perform operations on file names
-
-=item File::Spec::Mac
-
-File::Spec for Mac OS (Classic)
-
-=item File::Spec::OS2
-
-Methods for OS/2 file specs
-
-=item File::Spec::Unix
-
-File::Spec for Unix, base for other File::Spec modules
-
-=item File::Spec::VMS
-
-Methods for VMS file specs
-
-=item File::Spec::Win32
-
-Methods for Win32 file specs
-
-=item File::Temp
-
-Return name and handle of a temporary file safely
-
-=item File::stat
-
-By-name interface to Perl's built-in stat() functions
-
-=item FileCache
-
-Keep more files open than the system permits
-
-=item FileHandle
-
-Supply object methods for filehandles
-
-=item Filter::Simple
-
-Simplified source filtering
-
-=item Filter::Util::Call
-
-Perl Source Filter Utility Module
-
-=item FindBin
-
-Locate directory of original perl script
-
-=item GDBM_File
-
-Perl5 access to the gdbm library.
-
-=item Getopt::Long
-
-Extended processing of command line options
-
-=item Getopt::Std
-
-Process single-character switches with switch clustering
-
-=item Hash::Util
-
-A selection of general-utility hash subroutines
-
-=item Hash::Util::FieldHash
-
-Support for Inside-Out Classes
-
-=item I18N::Collate
-
-Compare 8-bit scalar data according to the current locale
-
-=item I18N::LangTags
-
-Functions for dealing with RFC3066-style language tags
-
-=item I18N::LangTags::Detect
-
-Detect the user's language preferences
-
-=item I18N::LangTags::List
-
-Tags and names for human languages
-
-=item I18N::Langinfo
-
-Query locale information
-
-=item IO
-
-Load various IO modules
-
-=item IO::Compress::Base
-
-Base Class for IO::Compress modules
-
-=item IO::Compress::Bzip2
-
-Write bzip2 files/buffers
-
-=item IO::Compress::Deflate
-
-Write RFC 1950 files/buffers
-
-=item IO::Compress::Gzip
-
-Write RFC 1952 files/buffers
-
-=item IO::Compress::RawDeflate
-
-Write RFC 1951 files/buffers
-
-=item IO::Compress::Zip
-
-Write zip files/buffers
-
-=item IO::Compress::pod::FAQ
-
-Frequently Asked Questions about IO::Compress
-
-=item IO::Dir
-
-Supply object methods for directory handles
-
-=item IO::File
-
-Supply object methods for filehandles
-
-=item IO::Handle
-
-Supply object methods for I/O handles
-
-=item IO::Pipe
-
-Supply object methods for pipes
-
-=item IO::Poll
-
-Object interface to system poll call
-
-=item IO::Seekable
-
-Supply seek based methods for I/O objects
-
-=item IO::Select
-
-OO interface to the select system call
-
-=item IO::Socket
-
-Object interface to socket communications
-
-=item IO::Socket::INET
-
-Object interface for AF_INET domain sockets
-
-=item IO::Socket::UNIX
-
-Object interface for AF_UNIX domain sockets
-
-=item IO::Uncompress::AnyInflate
-
-Uncompress zlib-based (zip, gzip) file/buffer
-
-=item IO::Uncompress::AnyUncompress
-
-Uncompress gzip, zip, bzip2 or lzop file/buffer
-
-=item IO::Uncompress::Base
-
-Base Class for IO::Uncompress modules
-
-=item IO::Uncompress::Bunzip2
-
-Read bzip2 files/buffers
-
-=item IO::Uncompress::Gunzip
-
-Read RFC 1952 files/buffers
-
-=item IO::Uncompress::Inflate
-
-Read RFC 1950 files/buffers
-
-=item IO::Uncompress::RawInflate
-
-Read RFC 1951 files/buffers
-
-=item IO::Uncompress::Unzip
-
-Read zip files/buffers
-
-=item IO::Zlib
-
-IO:: style interface to L<Compress::Zlib>
-
-=item IPC::Cmd
-
-Finding and running system commands made easy
-
-=item IPC::Msg
-
-SysV Msg IPC object class
-
-=item IPC::Open2
-
-Open a process for both reading and writing
-
-=item IPC::Open3
-
-Open a process for reading, writing, and error handling
-
-=item IPC::Semaphore
-
-SysV Semaphore IPC object class
-
-=item IPC::SharedMem
-
-SysV Shared Memory IPC object class
-
-=item IPC::SysV
-
-System V IPC constants and system calls
-
-=item List::Util
-
-A selection of general-utility list subroutines
-
-=item Locale::Constants
-
-Constants for Locale codes
-
-=item Locale::Country
-
-ISO codes for country identification (ISO 3166)
-
-=item Locale::Currency
-
-ISO three letter codes for currency identification (ISO 4217)
-
-=item Locale::Language
-
-ISO two letter codes for language identification (ISO 639)
-
-=item Locale::Maketext
-
-Framework for localization
-
-=item Locale::Maketext::Simple
-
-Simple interface to Locale::Maketext::Lexicon
-
-=item Locale::Maketext::TPJ13
-
-Article about software localization
-
-=item Locale::Script
-
-ISO codes for script identification (ISO 15924)
-
-=item Log::Message
-
-A generic message storing mechanism;
-
-=item Log::Message::Config
-
-Configuration options for Log::Message
-
-=item Log::Message::Handlers
-
-Message handlers for Log::Message
-
-=item Log::Message::Item
-
-Message objects for Log::Message
-
-=item MIME::Base64
-
-Encoding and decoding of base64 strings
-
-=item MIME::QuotedPrint
-
-Encoding and decoding of quoted-printable strings
-
-=item Math::BigFloat
-
-Arbitrary size floating point math package
-
-=item Math::BigInt
-
-Arbitrary size integer/float math package
-
-=item Math::BigInt::Calc
-
-Pure Perl module to support Math::BigInt
-
-=item Math::BigInt::CalcEmu
-
-Emulate low-level math with BigInt code
-
-=item Math::BigInt::FastCalc
-
-Math::BigInt::Calc with some XS for more speed
-
-=item Math::BigRat
-
-Arbitrary big rational numbers
-
-=item Math::Complex
-
-Complex numbers and associated mathematical functions
-
-=item Math::Trig
-
-Trigonometric functions
-
-=item Memoize
-
-Make functions faster by trading space for time
-
-=item Memoize::AnyDBM_File
-
-Glue to provide EXISTS for AnyDBM_File for Storable use
-
-=item Memoize::Expire
-
-Plug-in module for automatic expiration of memoized values
-
-=item Memoize::ExpireFile
-
-Test for Memoize expiration semantics
-
-=item Memoize::ExpireTest
-
-Test for Memoize expiration semantics
-
-=item Memoize::NDBM_File
-
-Glue to provide EXISTS for NDBM_File for Storable use
-
-=item Memoize::SDBM_File
-
-Glue to provide EXISTS for SDBM_File for Storable use
-
-=item Memoize::Storable
-
-Store Memoized data in Storable database
-
-=item Module::Build
-
-Build and install Perl modules
-
-=item Module::Build::API
-
-API Reference for Module Authors
-
-=item Module::Build::Authoring
-
-Authoring Module::Build modules
-
-=item Module::Build::Base
-
-Default methods for Module::Build
-
-=item Module::Build::Compat
-
-Compatibility with ExtUtils::MakeMaker
-
-=item Module::Build::ConfigData
-
-Configuration for Module::Build
-
-=item Module::Build::Cookbook
-
-Examples of Module::Build Usage
-
-=item Module::Build::ModuleInfo
-
-Gather package and POD information from a perl module files
-
-=item Module::Build::Notes
-
-Configuration for $module_name
-
-=item Module::Build::PPMMaker
-
-Perl Package Manager file creation
-
-=item Module::Build::Platform::Amiga
-
-Builder class for Amiga platforms
-
-=item Module::Build::Platform::Default
-
-Stub class for unknown platforms
-
-=item Module::Build::Platform::EBCDIC
-
-Builder class for EBCDIC platforms
-
-=item Module::Build::Platform::MPEiX
-
-Builder class for MPEiX platforms
-
-=item Module::Build::Platform::MacOS
-
-Builder class for MacOS platforms
-
-=item Module::Build::Platform::RiscOS
-
-Builder class for RiscOS platforms
-
-=item Module::Build::Platform::Unix
-
-Builder class for Unix platforms
-
-=item Module::Build::Platform::VMS
-
-Builder class for VMS platforms
-
-=item Module::Build::Platform::VOS
-
-Builder class for VOS platforms
-
-=item Module::Build::Platform::Windows
-
-Builder class for Windows platforms
-
-=item Module::Build::Platform::aix
-
-Builder class for AIX platform
-
-=item Module::Build::Platform::cygwin
-
-Builder class for Cygwin platform
-
-=item Module::Build::Platform::darwin
-
-Builder class for Mac OS X platform
-
-=item Module::Build::Platform::os2
-
-Builder class for OS/2 platform
-
-=item Module::Build::YAML
-
-Provides just enough YAML support so that Module::Build works even if YAML.pm is not installed
-
-=item Module::CoreList
-
-What modules shipped with versions of perl
-
-=item Module::Load
-
-Runtime require of both modules and files
-
-=item Module::Load::Conditional
-
-Looking up module information / loading at runtime
-
-=item Module::Loaded
-
-Mark modules as loaded or unloaded
-
-=item Module::Pluggable
-
-Automatically give your module the ability to have plugins
-
-=item Module::Pluggable::Object
-
-Automatically give your module the ability to have plugins
-
-=item NDBM_File
-
-Tied access to ndbm files
-
-=item NEXT
-
-Provide a pseudo-class NEXT (et al) that allows method redispatch
-
-=item Net::Cmd
-
-Network Command class (as used by FTP, SMTP etc)
-
-=item Net::Config
-
-Local configuration data for libnet
-
-=item Net::Domain
-
-Attempt to evaluate the current host's internet name and domain
-
-=item Net::FTP
-
-FTP Client class
-
-=item Net::NNTP
-
-NNTP Client class
-
-=item Net::Netrc
-
-OO interface to users netrc file
-
-=item Net::POP3
-
-Post Office Protocol 3 Client class (RFC1939)
-
-=item Net::Ping
-
-Check a remote host for reachability
-
-=item Net::SMTP
-
-Simple Mail Transfer Protocol Client
-
-=item Net::Time
-
-Time and daytime network client interface
-
-=item Net::hostent
-
-By-name interface to Perl's built-in gethost*() functions
-
-=item Net::libnetFAQ
-
-Libnet Frequently Asked Questions
-
-=item Net::netent
-
-By-name interface to Perl's built-in getnet*() functions
-
-=item Net::protoent
-
-By-name interface to Perl's built-in getproto*() functions
-
-=item Net::servent
-
-By-name interface to Perl's built-in getserv*() functions
-
-=item O
-
-Generic interface to Perl Compiler backends
-
-=item ODBM_File
-
-Tied access to odbm files
-
-=item Opcode
-
-Disable named opcodes when compiling perl code
-
-=item POSIX
-
-Perl interface to IEEE Std 1003.1
-
-=item Package::Constants
-
-List all constants declared in a package
-
-=item Params::Check
-
-A generic input parsing/checking mechanism.
-
-=item Parse::CPAN::Meta
-
-Parse META.yml and other similar CPAN metadata files
-
-=item PerlIO
-
-On demand loader for PerlIO layers and root of PerlIO::* name space
-
-=item PerlIO::encoding
-
-Encoding layer
-
-=item PerlIO::scalar
-
-In-memory IO, scalar IO
-
-=item PerlIO::via
-
-Helper class for PerlIO layers implemented in perl
-
-=item PerlIO::via::QuotedPrint
-
-PerlIO layer for quoted-printable strings
-
-=item Pod::Checker
-
-Check pod documents for syntax errors
-
-=item Pod::Escapes
-
-For resolving Pod EE<lt>...E<gt> sequences
-
-=item Pod::Find
-
-Find POD documents in directory trees
-
-=item Pod::Functions
-
-Group Perl's functions a la perlfunc.pod
-
-=item Pod::Html
-
-Module to convert pod files to HTML
-
-=item Pod::InputObjects
-
-Objects representing POD input paragraphs, commands, etc.
-
-=item Pod::LaTeX
-
-Convert Pod data to formatted Latex
-
-=item Pod::Man
-
-Convert POD data to formatted *roff input
-
-=item Pod::ParseLink
-
-Parse an LE<lt>E<gt> formatting code in POD text
-
-=item Pod::ParseUtils
-
-Helpers for POD parsing and conversion
-
-=item Pod::Parser
-
-Base class for creating POD filters and translators
-
-=item Pod::Perldoc
-
-Look up Perl documentation in Pod format.
-
-=item Pod::Perldoc::BaseTo
-
-Base for Pod::Perldoc formatters
-
-=item Pod::Perldoc::GetOptsOO
-
-Customized option parser for Pod::Perldoc
-
-=item Pod::Perldoc::ToChecker
-
-Let Perldoc check Pod for errors
-
-=item Pod::Perldoc::ToMan
-
-Let Perldoc render Pod as man pages
-
-=item Pod::Perldoc::ToNroff
-
-Let Perldoc convert Pod to nroff
-
-=item Pod::Perldoc::ToPod
-
-Let Perldoc render Pod as ... Pod!
-
-=item Pod::Perldoc::ToRtf
-
-Let Perldoc render Pod as RTF
-
-=item Pod::Perldoc::ToText
-
-Let Perldoc render Pod as plaintext
-
-=item Pod::Perldoc::ToTk
-
-Let Perldoc use Tk::Pod to render Pod
-
-=item Pod::Perldoc::ToXml
-
-Let Perldoc render Pod as XML
-
-=item Pod::PlainText
-
-Convert POD data to formatted ASCII text
-
-=item Pod::Plainer
-
-Perl extension for converting Pod to old style Pod.
-
-=item Pod::Select
-
-Extract selected sections of POD from input
-
-=item Pod::Simple
-
-Framework for parsing Pod
-
-=item Pod::Simple::Checker
-
-Check the Pod syntax of a document
-
-=item Pod::Simple::Debug
-
-Put Pod::Simple into trace/debug mode
-
-=item Pod::Simple::DumpAsText
-
-Dump Pod-parsing events as text
-
-=item Pod::Simple::DumpAsXML
-
-Turn Pod into XML
-
-=item Pod::Simple::HTML
-
-Convert Pod to HTML
-
-=item Pod::Simple::HTMLBatch
-
-Convert several Pod files to several HTML files
-
-=item Pod::Simple::LinkSection
-
-Represent "section" attributes of L codes
-
-=item Pod::Simple::Methody
-
-Turn Pod::Simple events into method calls
-
-=item Pod::Simple::PullParser
-
-A pull-parser interface to parsing Pod
-
-=item Pod::Simple::PullParserEndToken
-
-End-tokens from Pod::Simple::PullParser
-
-=item Pod::Simple::PullParserStartToken
-
-Start-tokens from Pod::Simple::PullParser
-
-=item Pod::Simple::PullParserTextToken
-
-Text-tokens from Pod::Simple::PullParser
-
-=item Pod::Simple::PullParserToken
-
-Tokens from Pod::Simple::PullParser
-
-=item Pod::Simple::RTF
-
-Format Pod as RTF
-
-=item Pod::Simple::Search
-
-Find POD documents in directory trees
-
-=item Pod::Simple::SimpleTree
-
-Parse Pod into a simple parse tree
-
-=item Pod::Simple::Subclassing
-
-Write a formatter as a Pod::Simple subclass
-
-=item Pod::Simple::Text
-
-Format Pod as plaintext
-
-=item Pod::Simple::TextContent
-
-Get the text content of Pod
-
-=item Pod::Simple::XHTML
-
-Format Pod as validating XHTML
-
-=item Pod::Simple::XMLOutStream
-
-Turn Pod into XML
-
-=item Pod::Text
-
-Convert POD data to formatted ASCII text
-
-=item Pod::Text::Color
-
-Convert POD data to formatted color ASCII text
-
-=item Pod::Text::Termcap
-
-Convert POD data to ASCII text with format escapes
-
-=item Pod::Usage
-
-Print a usage message from embedded pod documentation
-
-=item SDBM_File
-
-Tied access to sdbm files
-
-=item Safe
-
-Compile and execute code in restricted compartments
-
-=item Scalar::Util
-
-A selection of general-utility scalar subroutines
-
-=item Search::Dict
-
-Search for key in dictionary file
-
-=item SelectSaver
-
-Save and restore selected file handle
-
-=item SelfLoader
-
-Load functions only on demand
-
-=item Shell
-
-Run shell commands transparently within perl
-
-=item Socket
-
-Load the C socket.h defines and structure manipulators
-
-=item Storable
-
-Persistence for Perl data structures
-
-=item Switch
-
-A switch statement for Perl
-
-=item Symbol
-
-Manipulate Perl symbols and their names
-
-=item Sys::Hostname
-
-Try every conceivable way to get hostname
-
-=item Sys::Syslog
-
-Perl interface to the UNIX syslog(3) calls
-
-=item Sys::Syslog::win32::Win32
-
-Win32 support for Sys::Syslog
-
-=item TAP::Base
-
-Base class that provides common functionality to L<TAP::Parser>
-
-=item TAP::Formatter::Base
-
-Harness output delegate for default console output
-
-=item TAP::Formatter::Color
-
-Run Perl test scripts with color
-
-=item TAP::Formatter::Console
-
-Harness output delegate for default console output
-
-=item TAP::Formatter::Console::ParallelSession
-
-Harness output delegate for parallel console output
-
-=item TAP::Formatter::Console::Session
-
-Harness output delegate for default console output
-
-=item TAP::Formatter::File
-
-Harness output delegate for file output
-
-=item TAP::Formatter::File::Session
-
-Harness output delegate for file output
-
-=item TAP::Formatter::Session
-
-Abstract base class for harness output delegate
-
-=item TAP::Harness
-
-Run test scripts with statistics
-
-=item TAP::Object
-
-Base class that provides common functionality to all C<TAP::*> modules
-
-=item TAP::Parser
-
-Parse L<TAP|Test::Harness::TAP> output
-
-=item TAP::Parser::Aggregator
-
-Aggregate TAP::Parser results
-
-=item TAP::Parser::Grammar
-
-A grammar for the Test Anything Protocol.
-
-=item TAP::Parser::Iterator
-
-Internal base class for TAP::Parser Iterators
-
-=item TAP::Parser::Iterator::Array
-
-Internal TAP::Parser array Iterator
-
-=item TAP::Parser::Iterator::Process
-
-Internal TAP::Parser Iterator
-
-=item TAP::Parser::Iterator::Stream
-
-Internal TAP::Parser Iterator
-
-=item TAP::Parser::IteratorFactory
-
-Internal TAP::Parser Iterator
-
-=item TAP::Parser::Multiplexer
-
-Multiplex multiple TAP::Parsers
-
-=item TAP::Parser::Result
-
-Base class for TAP::Parser output objects
-
-=item TAP::Parser::Result::Bailout
-
-Bailout result token.
-
-=item TAP::Parser::Result::Comment
-
-Comment result token.
-
-=item TAP::Parser::Result::Plan
-
-Plan result token.
-
-=item TAP::Parser::Result::Pragma
-
-TAP pragma token.
-
-=item TAP::Parser::Result::Test
-
-Test result token.
-
-=item TAP::Parser::Result::Unknown
-
-Unknown result token.
-
-=item TAP::Parser::Result::Version
-
-TAP syntax version token.
-
-=item TAP::Parser::Result::YAML
-
-YAML result token.
-
-=item TAP::Parser::ResultFactory
-
-Factory for creating TAP::Parser output objects
-
-=item TAP::Parser::Scheduler
-
-Schedule tests during parallel testing
-
-=item TAP::Parser::Scheduler::Job
-
-A single testing job.
-
-=item TAP::Parser::Scheduler::Spinner
-
-A no-op job.
-
**** PATCH TRUNCATED AT 2000 LINES -- 1624 NOT SHOWN ****
--
Perl5 Master Repository
<http://perl5.git.perl.org/perl.git/commitdiff/6e2c892858f0153d478baaafedb3170a7306bd0a?hp=26ad458aeb6c3166efd1c5144eb908c7a3242226>
- Log -----------------------------------------------------------------
commit 6e2c892858f0153d478baaafedb3170a7306bd0a
Author: Nicholas Clark <***@ccl4.org>
Date: Sat Jun 13 11:46:29 2009 +0100
Generate perlmodlib.pod at build time, instead of shipping it.
M MANIFEST
M Makefile.SH
M pod.lst
D pod/perlmodlib.pod
M vms/descrip_mms.template
M win32/Makefile
M win32/makefile.mk
commit 291c64f4c0f01fdef1479446cf0ba1ec265227d5
Author: Nicholas Clark <***@ccl4.org>
Date: Sat Jun 13 11:34:34 2009 +0100
Make perlmodlib.PL chdir into pod. Add a -q flag to suppress routine warnings.
M pod/perlmodlib.PL
commit e8041d9b8361b47aafe5f4dc70a7ae9b018574c2
Author: Nicholas Clark <***@ccl4.org>
Date: Sat Jun 13 10:25:12 2009 +0100
In perlmodlib.PL, just open files in their original location.
Trying to munge the file to a path in lib/ and then attempting to open that
first doesn't gain anything.
M pod/perlmodlib.PL
-----------------------------------------------------------------------
Summary of changes:
MANIFEST | 1 -
Makefile.SH | 5 +-
pod.lst | 2 +-
pod/perlmodlib.PL | 27 +-
pod/perlmodlib.pod | 3422 ----------------------------------------------
vms/descrip_mms.template | 6 +-
win32/Makefile | 11 +-
win32/makefile.mk | 11 +-
8 files changed, 38 insertions(+), 3447 deletions(-)
delete mode 100644 pod/perlmodlib.pod
diff --git a/MANIFEST b/MANIFEST
index 48ab18c..ead080d 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -3636,7 +3636,6 @@ pod/perllocale.pod Perl locale support
pod/perllol.pod Perl data structures: arrays of arrays
pod/perlmodinstall.pod Perl modules: how to install from CPAN
pod/perlmodlib.PL Generate pod/perlmodlib.pod
-pod/perlmodlib.pod Perl modules: how to write and use
pod/perlmod.pod Perl modules: how they work
pod/perlmodstyle.pod Perl modules: how to write modules with style
pod/perlnewmod.pod Perl modules: preparing a new module for distribution
diff --git a/Makefile.SH b/Makefile.SH
index c78aefc..4afaf88 100644
--- a/Makefile.SH
+++ b/Makefile.SH
@@ -462,7 +462,7 @@ mini_obj = $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
ndt_obj = $(obj0) $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
obj = $(ndt_obj) $(DTRACE_O)
-perltoc_pod_prereqs = extra.pods pod/perlapi.pod pod/perldelta.pod pod/perlintern.pod
+perltoc_pod_prereqs = extra.pods pod/perlapi.pod pod/perldelta.pod pod/perlintern.pod pod/perlmodlib.pod
generated_pods = pod/perltoc.pod $(perltoc_pod_prereqs)
lintflags = \
@@ -989,6 +989,9 @@ pod/perltoc.pod: $(perltoc_pod_prereqs) perl$(EXE_EXT) $(ext) pod/buildtoc
pod/perlapi.pod pod/perlintern.pod: miniperl$(EXE_EXT) autodoc.pl embed.fnc
$(LDLIBPTH) $(RUN) ./miniperl$(EXE_EXT) -Ilib autodoc.pl
+pod/perlmodlib.pod: miniperl$(EXE_EXT) pod/perlmodlib.PL MANIFEST
+ $(LDLIBPTH) $(RUN) ./miniperl$(EXE_EXT) -Ilib pod/perlmodlib.PL -q
+
pod/perldelta.pod: pod/perl5110delta.pod
$(LNS) perl5110delta.pod pod/perldelta.pod
diff --git a/pod.lst b/pod.lst
index 548b1b7..0a4a1e8 100644
--- a/pod.lst
+++ b/pod.lst
@@ -89,7 +89,7 @@ h Reference Manual
perlsec Perl security
perlmod Perl modules: how they work
- perlmodlib Perl modules: how to write and use
+g perlmodlib Perl modules: how to write and use
perlmodstyle Perl modules: how to write modules with style
perlmodinstall Perl modules: how to install from CPAN
perlnewmod Perl modules: preparing a new module for distribution
diff --git a/pod/perlmodlib.PL b/pod/perlmodlib.PL
index cec7845..0a75208 100644
--- a/pod/perlmodlib.PL
+++ b/pod/perlmodlib.PL
@@ -2,9 +2,17 @@
$ENV{LC_ALL} = 'C';
+use FindBin;
+chdir $FindBin::Bin or die "$0: Can't chdir $FindBin::Bin: $!";
+
+my $Quiet = @ARGV && $ARGV[0] eq '-q';
+
open (OUT, ">perlmodlib.pod") or die $!;
my (@pragma, @mod, @MANIFEST);
+# MANIFEST itself is Unix style filenames, so we have to assume that Unix style
+# filenames will work.
+
open (MANIFEST, "../MANIFEST") or die $!;
@MANIFEST = grep !m</(?:t|demo)/>, <MANIFEST>;
push @MANIFEST, 'lib/Config.pod', 'lib/Errno.pm', 'lib/lib.pm',
@@ -35,16 +43,12 @@ my %suppressed = map {$_ => 1} qw(
for (@MANIFEST) {
my $filename;
- next unless s|^lib/|| or m|^ext/|;
- my ($origfilename) = ($filename) = m|^(\S+)|;
- $filename =~ s|^[^/]+/|| if $filename =~ s|^ext/||;
+ next unless m|^lib/| or m|^ext/|;
+ my ($filename) = m|^(\S+)|;
next unless $filename =~ m!\.p(m|od)$!;
- unless (open (MOD, "../lib/$filename")) {
- unless (open (MOD, "../$origfilename")) {
- warn "Couldn't open ../$origfilename: $!";
- next;
- }
- $filename = $origfilename;
+ unless (open MOD, '<', "../$filename") {
+ warn "Couldn't open ../$filename: $!";
+ next;
}
@@ -59,7 +63,8 @@ for (@MANIFEST) {
}
}
unless ($foundit) {
- warn "$filename missing =head1 NAME (OK if respective .pod exists)\n";
+ warn "$filename missing =head1 NAME (OK if respective .pod exists)\n"
+ unless $Quiet;
next;
}
my $title = <MOD>;
@@ -80,7 +85,7 @@ for (@MANIFEST) {
unless ($name and $thing) {
warn "$filename missing name\n" unless $name;
- warn "$filename missing thing\n" unless $thing;
+ warn "$filename missing thing\n" unless $thing or $Quiet;
next;
}
diff --git a/pod/perlmodlib.pod b/pod/perlmodlib.pod
deleted file mode 100644
index 6a4e715..0000000
--- a/pod/perlmodlib.pod
+++ /dev/null
@@ -1,3422 +0,0 @@
-=for maintainers
-Generated by perlmodlib.PL -- DO NOT EDIT!
-
-=head1 NAME
-
-perlmodlib - constructing new Perl modules and finding existing ones
-
-=head1 THE PERL MODULE LIBRARY
-
-Many modules are included in the Perl distribution. These are described
-below, and all end in F<.pm>. You may discover compiled library
-files (usually ending in F<.so>) or small pieces of modules to be
-autoloaded (ending in F<.al>); these were automatically generated
-by the installation process. You may also discover files in the
-library directory that end in either F<.pl> or F<.ph>. These are
-old libraries supplied so that old programs that use them still
-run. The F<.pl> files will all eventually be converted into standard
-modules, and the F<.ph> files made by B<h2ph> will probably end up
-as extension modules made by B<h2xs>. (Some F<.ph> values may
-already be available through the POSIX, Errno, or Fcntl modules.)
-The B<pl2pm> file in the distribution may help in your conversion,
-but it's just a mechanical process and therefore far from bulletproof.
-
-=head2 Pragmatic Modules
-
-They work somewhat like compiler directives (pragmata) in that they
-tend to affect the compilation of your program, and thus will usually
-work well only when used within a C<use>, or C<no>. Most of these
-are lexically scoped, so an inner BLOCK may countermand them
-by saying:
-
- no integer;
- no strict 'refs';
- no warnings;
-
-which lasts until the end of that BLOCK.
-
-Some pragmas are lexically scoped--typically those that affect the
-C<$^H> hints variable. Others affect the current package instead,
-like C<use vars> and C<use subs>, which allow you to predeclare a
-variables or subroutines within a particular I<file> rather than
-just a block. Such declarations are effective for the entire file
-for which they were declared. You cannot rescind them with C<no
-vars> or C<no subs>.
-
-The following pragmas are defined (and have their own documentation).
-
-=over 12
-
-=item attributes
-
-Get/set subroutine or variable attributes
-
-=item autodie
-
-Replace functions with ones that succeed or die with lexical scope
-
-=item autodie::exception
-
-Exceptions from autodying functions.
-
-=item autodie::exception::system
-
-Exceptions from autodying system().
-
-=item autouse
-
-Postpone load of modules until a function is used
-
-=item base
-
-Establish an ISA relationship with base classes at compile time
-
-=item bigint
-
-Transparent BigInteger support for Perl
-
-=item bignum
-
-Transparent BigNumber support for Perl
-
-=item bigrat
-
-Transparent BigNumber/BigRational support for Perl
-
-=item blib
-
-Use MakeMaker's uninstalled version of a package
-
-=item bytes
-
-Force byte semantics rather than character semantics
-
-=item charnames
-
-Define character names for C<\N{named}> string literal escapes
-
-=item constant
-
-Declare constants
-
-=item deprecate
-
-Perl pragma for deprecating the core version of a module
-
-=item diagnostics
-
-Produce verbose warning diagnostics
-
-=item encoding
-
-Allows you to write your script in non-ascii or non-utf8
-
-=item encoding::warnings
-
-Warn on implicit encoding conversions
-
-=item feature
-
-Enable new syntactic features
-
-=item fields
-
-Compile-time class fields
-
-=item filetest
-
-Control the filetest permission operators
-
-=item if
-
-C<use> a Perl module if a condition holds
-
-=item integer
-
-Use integer arithmetic instead of floating point
-
-=item less
-
-Request less of something
-
-=item lib
-
-Manipulate @INC at compile time
-
-=item locale
-
-Use and avoid POSIX locales for built-in operations
-
-=item mro
-
-Method Resolution Order
-
-=item open
-
-Set default PerlIO layers for input and output
-
-=item ops
-
-Restrict unsafe operations when compiling
-
-=item overload
-
-Package for overloading Perl operations
-
-=item overloading
-
-Lexically control overloading
-
-=item parent
-
-Establish an ISA relationship with base classes at compile time
-
-=item re
-
-Alter regular expression behaviour
-
-=item sigtrap
-
-Enable simple signal handling
-
-=item sort
-
-Control sort() behaviour
-
-=item strict
-
-Restrict unsafe constructs
-
-=item subs
-
-Predeclare sub names
-
-=item threads
-
-Perl interpreter-based threads
-
-=item threads::shared
-
-Perl extension for sharing data structures between threads
-
-=item utf8
-
-Enable/disable UTF-8 (or UTF-EBCDIC) in source code
-
-=item vars
-
-Predeclare global variable names (obsolete)
-
-=item version
-
-Perl extension for Version Objects
-
-=item vmsish
-
-Control VMS-specific language features
-
-=item warnings
-
-Control optional warnings
-
-=item warnings::register
-
-Warnings import function
-
-=back
-
-=head2 Standard Modules
-
-Standard, bundled modules are all expected to behave in a well-defined
-manner with respect to namespace pollution because they use the
-Exporter module. See their own documentation for details.
-
-It's possible that not all modules listed below are installed on your
-system. For example, the GDBM_File module will not be installed if you
-don't have the gdbm library.
-
-=over 12
-
-=item AnyDBM_File
-
-Provide framework for multiple DBMs
-
-=item App::Prove
-
-Implements the C<prove> command.
-
-=item App::Prove::State
-
-State storage for the C<prove> command.
-
-=item App::Prove::State::Result
-
-Individual test suite results.
-
-=item App::Prove::State::Result::Test
-
-Individual test results.
-
-=item Archive::Extract
-
-A generic archive extracting mechanism
-
-=item Archive::Tar
-
-Module for manipulations of tar archives
-
-=item Archive::Tar::File
-
-A subclass for in-memory extracted file from Archive::Tar
-
-=item Attribute::Handlers
-
-Simpler definition of attribute handlers
-
-=item AutoLoader
-
-Load subroutines only on demand
-
-=item AutoSplit
-
-Split a package for autoloading
-
-=item B
-
-The Perl Compiler
-
-=item B::Concise
-
-Walk Perl syntax tree, printing concise info about ops
-
-=item B::Debug
-
-Walk Perl syntax tree, printing debug info about ops
-
-=item B::Deparse
-
-Perl compiler backend to produce perl code
-
-=item B::Lint
-
-Perl lint
-
-=item B::Lint::Debug
-
-Adds debugging stringification to B::
-
-=item B::Showlex
-
-Show lexical variables used in functions or files
-
-=item B::Terse
-
-Walk Perl syntax tree, printing terse info about ops
-
-=item B::Xref
-
-Generates cross reference reports for Perl programs
-
-=item Benchmark
-
-Benchmark running times of Perl code
-
-=item CGI
-
-Handle Common Gateway Interface requests and responses
-
-=item CGI::Apache
-
-Backward compatibility module for CGI.pm
-
-=item CGI::Carp
-
-CGI routines for writing to the HTTPD (or other) error log
-
-=item CGI::Cookie
-
-Interface to Netscape Cookies
-
-=item CGI::Fast
-
-CGI Interface for Fast CGI
-
-=item CGI::Pretty
-
-Module to produce nicely formatted HTML code
-
-=item CGI::Push
-
-Simple Interface to Server Push
-
-=item CGI::Switch
-
-Backward compatibility module for defunct CGI::Switch
-
-=item CGI::Util
-
-Internal utilities used by CGI module
-
-=item CORE
-
-Pseudo-namespace for Perl's core routines
-
-=item CPAN
-
-Query, download and build perl modules from CPAN sites
-
-=item CPAN::API::HOWTO
-
-A recipe book for programming with CPAN.pm
-
-=item CPAN::Distroprefs
-
-Read and match distroprefs
-
-=item CPAN::FirstTime
-
-Utility for CPAN::Config file Initialization
-
-=item CPAN::Kwalify
-
-Interface between CPAN.pm and Kwalify.pm
-
-=item CPAN::Nox
-
-Wrapper around CPAN.pm without using any XS module
-
-=item CPAN::Version
-
-Utility functions to compare CPAN versions
-
-=item CPANPLUS
-
-API & CLI access to the CPAN mirrors
-
-=item CPANPLUS::Dist::Base
-
-Base class for custom distribution classes
-
-=item CPANPLUS::Dist::Build
-
-CPANPLUS plugin to install packages that use Build.PL
-
-=item CPANPLUS::Dist::Build::Constants
-
-Constants for CPANPLUS::Dist::Build
-
-=item CPANPLUS::Dist::Sample
-
-Sample code to create your own Dist::* plugin
-
-=item CPANPLUS::Internals::Source::Memory
-
-In memory implementation
-
-=item CPANPLUS::Internals::Source::SQLite
-
-SQLite implementation
-
-=item CPANPLUS::Shell::Classic
-
-CPAN.pm emulation for CPANPLUS
-
-=item CPANPLUS::Shell::Default::Plugins::HOWTO
-
-Documentation on how to write your own plugins
-
-=item Carp
-
-Warn of errors (from perspective of caller)
-
-=item Carp::Heavy
-
-Heavy machinery, no user serviceable parts inside
-
-=item Class::ISA
-
-Report the search path for a class's ISA tree
-
-=item Class::Struct
-
-Declare struct-like datatypes as Perl classes
-
-=item Compress::Raw::Bzip2
-
-Low-Level Interface to bzip2 compression library
-
-=item Compress::Raw::Bzip2::pod::FAQ
-
-Frequently Asked Questions about Compress::Raw::Bzip2
-
-=item Compress::Raw::Zlib
-
-Low-Level Interface to zlib compression library
-
-=item Compress::Raw::Zlib::pod::FAQ
-
-Frequently Asked Questions about Compress::Raw::Zlib
-
-=item Compress::Zlib
-
-Interface to zlib compression library
-
-=item Config
-
-Access Perl configuration information
-
-=item Cwd
-
-Get pathname of current working directory
-
-=item DB
-
-Programmatic interface to the Perl debugging API
-
-=item DBM_Filter
-
-Filter DBM keys/values
-
-=item DBM_Filter::compress
-
-Filter for DBM_Filter
-
-=item DBM_Filter::encode
-
-Filter for DBM_Filter
-
-=item DBM_Filter::int32
-
-Filter for DBM_Filter
-
-=item DBM_Filter::null
-
-Filter for DBM_Filter
-
-=item DBM_Filter::utf8
-
-Filter for DBM_Filter
-
-=item DB_File
-
-Perl5 access to Berkeley DB version 1.x
-
-=item Data::Dumper
-
-Stringified perl data structures, suitable for both printing and C<eval>
-
-=item Devel::DProf
-
-A Perl code profiler
-
-=item Devel::InnerPackage
-
-Find all the inner packages of a package
-
-=item Devel::Peek
-
-A data debugging tool for the XS programmer
-
-=item Devel::SelfStubber
-
-Generate stubs for a SelfLoading module
-
-=item Digest
-
-Modules that calculate message digests
-
-=item Digest::MD5
-
-Perl interface to the MD5 Algorithm
-
-=item Digest::SHA
-
-Perl extension for SHA-1/224/256/384/512
-
-=item Digest::base
-
-Digest base class
-
-=item Digest::file
-
-Calculate digests of files
-
-=item DirHandle
-
-Supply object methods for directory handles
-
-=item Dumpvalue
-
-Provides screen dump of Perl data.
-
-=item DynaLoader
-
-Dynamically load C libraries into Perl code
-
-=item Encode
-
-Character encodings
-
-=item Encode::Alias
-
-Alias definitions to encodings
-
-=item Encode::Byte
-
-Single Byte Encodings
-
-=item Encode::CJKConstants
-
-Internally used by Encode::??::ISO_2022_*
-
-=item Encode::CN
-
-China-based Chinese Encodings
-
-=item Encode::CN::HZ
-
-Internally used by Encode::CN
-
-=item Encode::Config
-
-Internally used by Encode
-
-=item Encode::EBCDIC
-
-EBCDIC Encodings
-
-=item Encode::Encoder
-
-Object Oriented Encoder
-
-=item Encode::Encoding
-
-Encode Implementation Base Class
-
-=item Encode::GSM0338
-
-ESTI GSM 03.38 Encoding
-
-=item Encode::Guess
-
-Guesses encoding from data
-
-=item Encode::JP
-
-Japanese Encodings
-
-=item Encode::JP::H2Z
-
-Internally used by Encode::JP::2022_JP*
-
-=item Encode::JP::JIS7
-
-Internally used by Encode::JP
-
-=item Encode::KR
-
-Korean Encodings
-
-=item Encode::KR::2022_KR
-
-Internally used by Encode::KR
-
-=item Encode::MIME::Header
-
-MIME 'B' and 'Q' header encoding
-
-=item Encode::MIME::Name
-
-Internally used by Encode
-
-=item Encode::PerlIO
-
-A detailed document on Encode and PerlIO
-
-=item Encode::Supported
-
-Encodings supported by Encode
-
-=item Encode::Symbol
-
-Symbol Encodings
-
-=item Encode::TW
-
-Taiwan-based Chinese Encodings
-
-=item Encode::Unicode
-
-Various Unicode Transformation Formats
-
-=item Encode::Unicode::UTF7
-
-UTF-7 encoding
-
-=item English
-
-Use nice English (or awk) names for ugly punctuation variables
-
-=item Env
-
-Perl module that imports environment variables as scalars or arrays
-
-=item Errno
-
-System errno constants
-
-=item Exporter
-
-Implements default import method for modules
-
-=item Exporter::Heavy
-
-Exporter guts
-
-=item ExtUtils::CBuilder
-
-Compile and link C code for Perl modules
-
-=item ExtUtils::CBuilder::Platform::Windows
-
-Builder class for Windows platforms
-
-=item ExtUtils::Command
-
-Utilities to replace common UNIX commands in Makefiles etc.
-
-=item ExtUtils::Command::MM
-
-Commands for the MM's to use in Makefiles
-
-=item ExtUtils::Constant
-
-Generate XS code to import C header constants
-
-=item ExtUtils::Constant::Base
-
-Base class for ExtUtils::Constant objects
-
-=item ExtUtils::Constant::Utils
-
-Helper functions for ExtUtils::Constant
-
-=item ExtUtils::Constant::XS
-
-Base class for ExtUtils::Constant objects
-
-=item ExtUtils::Embed
-
-Utilities for embedding Perl in C/C++ applications
-
-=item ExtUtils::Install
-
-Install files from here to there
-
-=item ExtUtils::Installed
-
-Inventory management of installed modules
-
-=item ExtUtils::Liblist
-
-Determine libraries to use and how to use them
-
-=item ExtUtils::MM
-
-OS adjusted ExtUtils::MakeMaker subclass
-
-=item ExtUtils::MM_AIX
-
-AIX specific subclass of ExtUtils::MM_Unix
-
-=item ExtUtils::MM_Any
-
-Platform-agnostic MM methods
-
-=item ExtUtils::MM_BeOS
-
-Methods to override UN*X behaviour in ExtUtils::MakeMaker
-
-=item ExtUtils::MM_Cygwin
-
-Methods to override UN*X behaviour in ExtUtils::MakeMaker
-
-=item ExtUtils::MM_DOS
-
-DOS specific subclass of ExtUtils::MM_Unix
-
-=item ExtUtils::MM_Darwin
-
-Special behaviors for OS X
-
-=item ExtUtils::MM_MacOS
-
-Once produced Makefiles for MacOS Classic
-
-=item ExtUtils::MM_NW5
-
-Methods to override UN*X behaviour in ExtUtils::MakeMaker
-
-=item ExtUtils::MM_OS2
-
-Methods to override UN*X behaviour in ExtUtils::MakeMaker
-
-=item ExtUtils::MM_QNX
-
-QNX specific subclass of ExtUtils::MM_Unix
-
-=item ExtUtils::MM_UWIN
-
-U/WIN specific subclass of ExtUtils::MM_Unix
-
-=item ExtUtils::MM_Unix
-
-Methods used by ExtUtils::MakeMaker
-
-=item ExtUtils::MM_VMS
-
-Methods to override UN*X behaviour in ExtUtils::MakeMaker
-
-=item ExtUtils::MM_VOS
-
-VOS specific subclass of ExtUtils::MM_Unix
-
-=item ExtUtils::MM_Win32
-
-Methods to override UN*X behaviour in ExtUtils::MakeMaker
-
-=item ExtUtils::MM_Win95
-
-Method to customize MakeMaker for Win9X
-
-=item ExtUtils::MY
-
-ExtUtils::MakeMaker subclass for customization
-
-=item ExtUtils::MakeMaker
-
-Create a module Makefile
-
-=item ExtUtils::MakeMaker::Config
-
-Wrapper around Config.pm
-
-=item ExtUtils::MakeMaker::FAQ
-
-Frequently Asked Questions About MakeMaker
-
-=item ExtUtils::MakeMaker::Tutorial
-
-Writing a module with MakeMaker
-
-=item ExtUtils::Manifest
-
-Utilities to write and check a MANIFEST file
-
-=item ExtUtils::Mkbootstrap
-
-Make a bootstrap file for use by DynaLoader
-
-=item ExtUtils::Mksymlists
-
-Write linker options files for dynamic extension
-
-=item ExtUtils::Packlist
-
-Manage .packlist files
-
-=item ExtUtils::ParseXS
-
-Converts Perl XS code into C code
-
-=item ExtUtils::XSSymSet
-
-Keep sets of symbol names palatable to the VMS linker
-
-=item ExtUtils::testlib
-
-Add blib/* directories to @INC
-
-=item Fatal
-
-Replace functions with equivalents which succeed or die
-
-=item Fcntl
-
-Load the C Fcntl.h defines
-
-=item File::Basename
-
-Parse file paths into directory, filename and suffix.
-
-=item File::CheckTree
-
-Run many filetest checks on a tree
-
-=item File::Compare
-
-Compare files or filehandles
-
-=item File::Copy
-
-Copy files or filehandles
-
-=item File::DosGlob
-
-DOS like globbing and then some
-
-=item File::Fetch
-
-A generic file fetching mechanism
-
-=item File::Find
-
-Traverse a directory tree.
-
-=item File::Glob
-
-Perl extension for BSD glob routine
-
-=item File::GlobMapper
-
-Extend File Glob to Allow Input and Output Files
-
-=item File::Path
-
-Create or remove directory trees
-
-=item File::Spec
-
-Portably perform operations on file names
-
-=item File::Spec::Cygwin
-
-Methods for Cygwin file specs
-
-=item File::Spec::Epoc
-
-Methods for Epoc file specs
-
-=item File::Spec::Functions
-
-Portably perform operations on file names
-
-=item File::Spec::Mac
-
-File::Spec for Mac OS (Classic)
-
-=item File::Spec::OS2
-
-Methods for OS/2 file specs
-
-=item File::Spec::Unix
-
-File::Spec for Unix, base for other File::Spec modules
-
-=item File::Spec::VMS
-
-Methods for VMS file specs
-
-=item File::Spec::Win32
-
-Methods for Win32 file specs
-
-=item File::Temp
-
-Return name and handle of a temporary file safely
-
-=item File::stat
-
-By-name interface to Perl's built-in stat() functions
-
-=item FileCache
-
-Keep more files open than the system permits
-
-=item FileHandle
-
-Supply object methods for filehandles
-
-=item Filter::Simple
-
-Simplified source filtering
-
-=item Filter::Util::Call
-
-Perl Source Filter Utility Module
-
-=item FindBin
-
-Locate directory of original perl script
-
-=item GDBM_File
-
-Perl5 access to the gdbm library.
-
-=item Getopt::Long
-
-Extended processing of command line options
-
-=item Getopt::Std
-
-Process single-character switches with switch clustering
-
-=item Hash::Util
-
-A selection of general-utility hash subroutines
-
-=item Hash::Util::FieldHash
-
-Support for Inside-Out Classes
-
-=item I18N::Collate
-
-Compare 8-bit scalar data according to the current locale
-
-=item I18N::LangTags
-
-Functions for dealing with RFC3066-style language tags
-
-=item I18N::LangTags::Detect
-
-Detect the user's language preferences
-
-=item I18N::LangTags::List
-
-Tags and names for human languages
-
-=item I18N::Langinfo
-
-Query locale information
-
-=item IO
-
-Load various IO modules
-
-=item IO::Compress::Base
-
-Base Class for IO::Compress modules
-
-=item IO::Compress::Bzip2
-
-Write bzip2 files/buffers
-
-=item IO::Compress::Deflate
-
-Write RFC 1950 files/buffers
-
-=item IO::Compress::Gzip
-
-Write RFC 1952 files/buffers
-
-=item IO::Compress::RawDeflate
-
-Write RFC 1951 files/buffers
-
-=item IO::Compress::Zip
-
-Write zip files/buffers
-
-=item IO::Compress::pod::FAQ
-
-Frequently Asked Questions about IO::Compress
-
-=item IO::Dir
-
-Supply object methods for directory handles
-
-=item IO::File
-
-Supply object methods for filehandles
-
-=item IO::Handle
-
-Supply object methods for I/O handles
-
-=item IO::Pipe
-
-Supply object methods for pipes
-
-=item IO::Poll
-
-Object interface to system poll call
-
-=item IO::Seekable
-
-Supply seek based methods for I/O objects
-
-=item IO::Select
-
-OO interface to the select system call
-
-=item IO::Socket
-
-Object interface to socket communications
-
-=item IO::Socket::INET
-
-Object interface for AF_INET domain sockets
-
-=item IO::Socket::UNIX
-
-Object interface for AF_UNIX domain sockets
-
-=item IO::Uncompress::AnyInflate
-
-Uncompress zlib-based (zip, gzip) file/buffer
-
-=item IO::Uncompress::AnyUncompress
-
-Uncompress gzip, zip, bzip2 or lzop file/buffer
-
-=item IO::Uncompress::Base
-
-Base Class for IO::Uncompress modules
-
-=item IO::Uncompress::Bunzip2
-
-Read bzip2 files/buffers
-
-=item IO::Uncompress::Gunzip
-
-Read RFC 1952 files/buffers
-
-=item IO::Uncompress::Inflate
-
-Read RFC 1950 files/buffers
-
-=item IO::Uncompress::RawInflate
-
-Read RFC 1951 files/buffers
-
-=item IO::Uncompress::Unzip
-
-Read zip files/buffers
-
-=item IO::Zlib
-
-IO:: style interface to L<Compress::Zlib>
-
-=item IPC::Cmd
-
-Finding and running system commands made easy
-
-=item IPC::Msg
-
-SysV Msg IPC object class
-
-=item IPC::Open2
-
-Open a process for both reading and writing
-
-=item IPC::Open3
-
-Open a process for reading, writing, and error handling
-
-=item IPC::Semaphore
-
-SysV Semaphore IPC object class
-
-=item IPC::SharedMem
-
-SysV Shared Memory IPC object class
-
-=item IPC::SysV
-
-System V IPC constants and system calls
-
-=item List::Util
-
-A selection of general-utility list subroutines
-
-=item Locale::Constants
-
-Constants for Locale codes
-
-=item Locale::Country
-
-ISO codes for country identification (ISO 3166)
-
-=item Locale::Currency
-
-ISO three letter codes for currency identification (ISO 4217)
-
-=item Locale::Language
-
-ISO two letter codes for language identification (ISO 639)
-
-=item Locale::Maketext
-
-Framework for localization
-
-=item Locale::Maketext::Simple
-
-Simple interface to Locale::Maketext::Lexicon
-
-=item Locale::Maketext::TPJ13
-
-Article about software localization
-
-=item Locale::Script
-
-ISO codes for script identification (ISO 15924)
-
-=item Log::Message
-
-A generic message storing mechanism;
-
-=item Log::Message::Config
-
-Configuration options for Log::Message
-
-=item Log::Message::Handlers
-
-Message handlers for Log::Message
-
-=item Log::Message::Item
-
-Message objects for Log::Message
-
-=item MIME::Base64
-
-Encoding and decoding of base64 strings
-
-=item MIME::QuotedPrint
-
-Encoding and decoding of quoted-printable strings
-
-=item Math::BigFloat
-
-Arbitrary size floating point math package
-
-=item Math::BigInt
-
-Arbitrary size integer/float math package
-
-=item Math::BigInt::Calc
-
-Pure Perl module to support Math::BigInt
-
-=item Math::BigInt::CalcEmu
-
-Emulate low-level math with BigInt code
-
-=item Math::BigInt::FastCalc
-
-Math::BigInt::Calc with some XS for more speed
-
-=item Math::BigRat
-
-Arbitrary big rational numbers
-
-=item Math::Complex
-
-Complex numbers and associated mathematical functions
-
-=item Math::Trig
-
-Trigonometric functions
-
-=item Memoize
-
-Make functions faster by trading space for time
-
-=item Memoize::AnyDBM_File
-
-Glue to provide EXISTS for AnyDBM_File for Storable use
-
-=item Memoize::Expire
-
-Plug-in module for automatic expiration of memoized values
-
-=item Memoize::ExpireFile
-
-Test for Memoize expiration semantics
-
-=item Memoize::ExpireTest
-
-Test for Memoize expiration semantics
-
-=item Memoize::NDBM_File
-
-Glue to provide EXISTS for NDBM_File for Storable use
-
-=item Memoize::SDBM_File
-
-Glue to provide EXISTS for SDBM_File for Storable use
-
-=item Memoize::Storable
-
-Store Memoized data in Storable database
-
-=item Module::Build
-
-Build and install Perl modules
-
-=item Module::Build::API
-
-API Reference for Module Authors
-
-=item Module::Build::Authoring
-
-Authoring Module::Build modules
-
-=item Module::Build::Base
-
-Default methods for Module::Build
-
-=item Module::Build::Compat
-
-Compatibility with ExtUtils::MakeMaker
-
-=item Module::Build::ConfigData
-
-Configuration for Module::Build
-
-=item Module::Build::Cookbook
-
-Examples of Module::Build Usage
-
-=item Module::Build::ModuleInfo
-
-Gather package and POD information from a perl module files
-
-=item Module::Build::Notes
-
-Configuration for $module_name
-
-=item Module::Build::PPMMaker
-
-Perl Package Manager file creation
-
-=item Module::Build::Platform::Amiga
-
-Builder class for Amiga platforms
-
-=item Module::Build::Platform::Default
-
-Stub class for unknown platforms
-
-=item Module::Build::Platform::EBCDIC
-
-Builder class for EBCDIC platforms
-
-=item Module::Build::Platform::MPEiX
-
-Builder class for MPEiX platforms
-
-=item Module::Build::Platform::MacOS
-
-Builder class for MacOS platforms
-
-=item Module::Build::Platform::RiscOS
-
-Builder class for RiscOS platforms
-
-=item Module::Build::Platform::Unix
-
-Builder class for Unix platforms
-
-=item Module::Build::Platform::VMS
-
-Builder class for VMS platforms
-
-=item Module::Build::Platform::VOS
-
-Builder class for VOS platforms
-
-=item Module::Build::Platform::Windows
-
-Builder class for Windows platforms
-
-=item Module::Build::Platform::aix
-
-Builder class for AIX platform
-
-=item Module::Build::Platform::cygwin
-
-Builder class for Cygwin platform
-
-=item Module::Build::Platform::darwin
-
-Builder class for Mac OS X platform
-
-=item Module::Build::Platform::os2
-
-Builder class for OS/2 platform
-
-=item Module::Build::YAML
-
-Provides just enough YAML support so that Module::Build works even if YAML.pm is not installed
-
-=item Module::CoreList
-
-What modules shipped with versions of perl
-
-=item Module::Load
-
-Runtime require of both modules and files
-
-=item Module::Load::Conditional
-
-Looking up module information / loading at runtime
-
-=item Module::Loaded
-
-Mark modules as loaded or unloaded
-
-=item Module::Pluggable
-
-Automatically give your module the ability to have plugins
-
-=item Module::Pluggable::Object
-
-Automatically give your module the ability to have plugins
-
-=item NDBM_File
-
-Tied access to ndbm files
-
-=item NEXT
-
-Provide a pseudo-class NEXT (et al) that allows method redispatch
-
-=item Net::Cmd
-
-Network Command class (as used by FTP, SMTP etc)
-
-=item Net::Config
-
-Local configuration data for libnet
-
-=item Net::Domain
-
-Attempt to evaluate the current host's internet name and domain
-
-=item Net::FTP
-
-FTP Client class
-
-=item Net::NNTP
-
-NNTP Client class
-
-=item Net::Netrc
-
-OO interface to users netrc file
-
-=item Net::POP3
-
-Post Office Protocol 3 Client class (RFC1939)
-
-=item Net::Ping
-
-Check a remote host for reachability
-
-=item Net::SMTP
-
-Simple Mail Transfer Protocol Client
-
-=item Net::Time
-
-Time and daytime network client interface
-
-=item Net::hostent
-
-By-name interface to Perl's built-in gethost*() functions
-
-=item Net::libnetFAQ
-
-Libnet Frequently Asked Questions
-
-=item Net::netent
-
-By-name interface to Perl's built-in getnet*() functions
-
-=item Net::protoent
-
-By-name interface to Perl's built-in getproto*() functions
-
-=item Net::servent
-
-By-name interface to Perl's built-in getserv*() functions
-
-=item O
-
-Generic interface to Perl Compiler backends
-
-=item ODBM_File
-
-Tied access to odbm files
-
-=item Opcode
-
-Disable named opcodes when compiling perl code
-
-=item POSIX
-
-Perl interface to IEEE Std 1003.1
-
-=item Package::Constants
-
-List all constants declared in a package
-
-=item Params::Check
-
-A generic input parsing/checking mechanism.
-
-=item Parse::CPAN::Meta
-
-Parse META.yml and other similar CPAN metadata files
-
-=item PerlIO
-
-On demand loader for PerlIO layers and root of PerlIO::* name space
-
-=item PerlIO::encoding
-
-Encoding layer
-
-=item PerlIO::scalar
-
-In-memory IO, scalar IO
-
-=item PerlIO::via
-
-Helper class for PerlIO layers implemented in perl
-
-=item PerlIO::via::QuotedPrint
-
-PerlIO layer for quoted-printable strings
-
-=item Pod::Checker
-
-Check pod documents for syntax errors
-
-=item Pod::Escapes
-
-For resolving Pod EE<lt>...E<gt> sequences
-
-=item Pod::Find
-
-Find POD documents in directory trees
-
-=item Pod::Functions
-
-Group Perl's functions a la perlfunc.pod
-
-=item Pod::Html
-
-Module to convert pod files to HTML
-
-=item Pod::InputObjects
-
-Objects representing POD input paragraphs, commands, etc.
-
-=item Pod::LaTeX
-
-Convert Pod data to formatted Latex
-
-=item Pod::Man
-
-Convert POD data to formatted *roff input
-
-=item Pod::ParseLink
-
-Parse an LE<lt>E<gt> formatting code in POD text
-
-=item Pod::ParseUtils
-
-Helpers for POD parsing and conversion
-
-=item Pod::Parser
-
-Base class for creating POD filters and translators
-
-=item Pod::Perldoc
-
-Look up Perl documentation in Pod format.
-
-=item Pod::Perldoc::BaseTo
-
-Base for Pod::Perldoc formatters
-
-=item Pod::Perldoc::GetOptsOO
-
-Customized option parser for Pod::Perldoc
-
-=item Pod::Perldoc::ToChecker
-
-Let Perldoc check Pod for errors
-
-=item Pod::Perldoc::ToMan
-
-Let Perldoc render Pod as man pages
-
-=item Pod::Perldoc::ToNroff
-
-Let Perldoc convert Pod to nroff
-
-=item Pod::Perldoc::ToPod
-
-Let Perldoc render Pod as ... Pod!
-
-=item Pod::Perldoc::ToRtf
-
-Let Perldoc render Pod as RTF
-
-=item Pod::Perldoc::ToText
-
-Let Perldoc render Pod as plaintext
-
-=item Pod::Perldoc::ToTk
-
-Let Perldoc use Tk::Pod to render Pod
-
-=item Pod::Perldoc::ToXml
-
-Let Perldoc render Pod as XML
-
-=item Pod::PlainText
-
-Convert POD data to formatted ASCII text
-
-=item Pod::Plainer
-
-Perl extension for converting Pod to old style Pod.
-
-=item Pod::Select
-
-Extract selected sections of POD from input
-
-=item Pod::Simple
-
-Framework for parsing Pod
-
-=item Pod::Simple::Checker
-
-Check the Pod syntax of a document
-
-=item Pod::Simple::Debug
-
-Put Pod::Simple into trace/debug mode
-
-=item Pod::Simple::DumpAsText
-
-Dump Pod-parsing events as text
-
-=item Pod::Simple::DumpAsXML
-
-Turn Pod into XML
-
-=item Pod::Simple::HTML
-
-Convert Pod to HTML
-
-=item Pod::Simple::HTMLBatch
-
-Convert several Pod files to several HTML files
-
-=item Pod::Simple::LinkSection
-
-Represent "section" attributes of L codes
-
-=item Pod::Simple::Methody
-
-Turn Pod::Simple events into method calls
-
-=item Pod::Simple::PullParser
-
-A pull-parser interface to parsing Pod
-
-=item Pod::Simple::PullParserEndToken
-
-End-tokens from Pod::Simple::PullParser
-
-=item Pod::Simple::PullParserStartToken
-
-Start-tokens from Pod::Simple::PullParser
-
-=item Pod::Simple::PullParserTextToken
-
-Text-tokens from Pod::Simple::PullParser
-
-=item Pod::Simple::PullParserToken
-
-Tokens from Pod::Simple::PullParser
-
-=item Pod::Simple::RTF
-
-Format Pod as RTF
-
-=item Pod::Simple::Search
-
-Find POD documents in directory trees
-
-=item Pod::Simple::SimpleTree
-
-Parse Pod into a simple parse tree
-
-=item Pod::Simple::Subclassing
-
-Write a formatter as a Pod::Simple subclass
-
-=item Pod::Simple::Text
-
-Format Pod as plaintext
-
-=item Pod::Simple::TextContent
-
-Get the text content of Pod
-
-=item Pod::Simple::XHTML
-
-Format Pod as validating XHTML
-
-=item Pod::Simple::XMLOutStream
-
-Turn Pod into XML
-
-=item Pod::Text
-
-Convert POD data to formatted ASCII text
-
-=item Pod::Text::Color
-
-Convert POD data to formatted color ASCII text
-
-=item Pod::Text::Termcap
-
-Convert POD data to ASCII text with format escapes
-
-=item Pod::Usage
-
-Print a usage message from embedded pod documentation
-
-=item SDBM_File
-
-Tied access to sdbm files
-
-=item Safe
-
-Compile and execute code in restricted compartments
-
-=item Scalar::Util
-
-A selection of general-utility scalar subroutines
-
-=item Search::Dict
-
-Search for key in dictionary file
-
-=item SelectSaver
-
-Save and restore selected file handle
-
-=item SelfLoader
-
-Load functions only on demand
-
-=item Shell
-
-Run shell commands transparently within perl
-
-=item Socket
-
-Load the C socket.h defines and structure manipulators
-
-=item Storable
-
-Persistence for Perl data structures
-
-=item Switch
-
-A switch statement for Perl
-
-=item Symbol
-
-Manipulate Perl symbols and their names
-
-=item Sys::Hostname
-
-Try every conceivable way to get hostname
-
-=item Sys::Syslog
-
-Perl interface to the UNIX syslog(3) calls
-
-=item Sys::Syslog::win32::Win32
-
-Win32 support for Sys::Syslog
-
-=item TAP::Base
-
-Base class that provides common functionality to L<TAP::Parser>
-
-=item TAP::Formatter::Base
-
-Harness output delegate for default console output
-
-=item TAP::Formatter::Color
-
-Run Perl test scripts with color
-
-=item TAP::Formatter::Console
-
-Harness output delegate for default console output
-
-=item TAP::Formatter::Console::ParallelSession
-
-Harness output delegate for parallel console output
-
-=item TAP::Formatter::Console::Session
-
-Harness output delegate for default console output
-
-=item TAP::Formatter::File
-
-Harness output delegate for file output
-
-=item TAP::Formatter::File::Session
-
-Harness output delegate for file output
-
-=item TAP::Formatter::Session
-
-Abstract base class for harness output delegate
-
-=item TAP::Harness
-
-Run test scripts with statistics
-
-=item TAP::Object
-
-Base class that provides common functionality to all C<TAP::*> modules
-
-=item TAP::Parser
-
-Parse L<TAP|Test::Harness::TAP> output
-
-=item TAP::Parser::Aggregator
-
-Aggregate TAP::Parser results
-
-=item TAP::Parser::Grammar
-
-A grammar for the Test Anything Protocol.
-
-=item TAP::Parser::Iterator
-
-Internal base class for TAP::Parser Iterators
-
-=item TAP::Parser::Iterator::Array
-
-Internal TAP::Parser array Iterator
-
-=item TAP::Parser::Iterator::Process
-
-Internal TAP::Parser Iterator
-
-=item TAP::Parser::Iterator::Stream
-
-Internal TAP::Parser Iterator
-
-=item TAP::Parser::IteratorFactory
-
-Internal TAP::Parser Iterator
-
-=item TAP::Parser::Multiplexer
-
-Multiplex multiple TAP::Parsers
-
-=item TAP::Parser::Result
-
-Base class for TAP::Parser output objects
-
-=item TAP::Parser::Result::Bailout
-
-Bailout result token.
-
-=item TAP::Parser::Result::Comment
-
-Comment result token.
-
-=item TAP::Parser::Result::Plan
-
-Plan result token.
-
-=item TAP::Parser::Result::Pragma
-
-TAP pragma token.
-
-=item TAP::Parser::Result::Test
-
-Test result token.
-
-=item TAP::Parser::Result::Unknown
-
-Unknown result token.
-
-=item TAP::Parser::Result::Version
-
-TAP syntax version token.
-
-=item TAP::Parser::Result::YAML
-
-YAML result token.
-
-=item TAP::Parser::ResultFactory
-
-Factory for creating TAP::Parser output objects
-
-=item TAP::Parser::Scheduler
-
-Schedule tests during parallel testing
-
-=item TAP::Parser::Scheduler::Job
-
-A single testing job.
-
-=item TAP::Parser::Scheduler::Spinner
-
-A no-op job.
-
**** PATCH TRUNCATED AT 2000 LINES -- 1624 NOT SHOWN ****
--
Perl5 Master Repository