inc::latest man page on Slackware

Man page or keyword search:  
man Server   14563 pages
apropos Keyword Search (all sections)
Output format
Slackware logo
[printable version]

inc::latest(3)	       Perl Programmers Reference Guide		inc::latest(3)

NAME
       inc::latest - use modules bundled in inc/ if they are newer than
       installed ones

SYNOPSIS
	 # in Build.PL
	 use inc::latest 'Module::Build';

DESCRIPTION
       The "inc::latest" module helps bootstrap configure-time dependencies
       for CPAN distributions.	These dependencies get bundled into the "inc"
       directory within a distribution and are used by Build.PL (or
       Makefile.PL).

       Arguments to "inc::latest" are module names that are checked against
       both the current @INC array and against specially-named directories in
       "inc".  If the bundled version is newer than the installed one (or the
       module isn't installed, then, the bundled directory is added to the
       start of <@INC> and the module is loaded from there.

       There are actually two variations of "inc::latest" -- one for authors
       and one for the "inc" directory.	 For distribution authors, the
       "inc::latest" installed in the system will record modules loaded via
       "inc::latest" and can be used to create the bundled files in "inc",
       including writing the second variation as "inc/latest.pm".

       This second "inc::latest" is the one that is loaded in a distribution
       being installed (e.g. from Build.PL).  This bundled "inc::latest" is
       the one that determines which module to load.

   Special notes on bundling
       The "inc::latest" module creates bundled directories based on the
       packlist file of an installed distribution.  Even though "inc::latest"
       takes module name arguments, it is better to think of it as bundling
       and making available entire distributions.  When a module is loaded
       through "inc::latest", it looks in all bundled distributions in "inc/"
       for a newer module than can be found in the existing @INC array.

       Thus, the module-name provided should usually be the "top-level" module
       name of a distribution, though this is not strictly required.  For
       example, Module::Build has a number of heuristics to map module names
       to packlists, allowing users to do things like this:

	 use inc::latest 'Devel::AssertOS::Unix';

       even though Devel::AssertOS::Unix is contained within the Devel-CheckOS
       distribution.

       At the current time, packlists are required.  Thus, bundling dual-core
       modules may require a 'forced install' over versions in the latest
       version of perl in order to create the necessary packlist for bundling.

USAGE
       When calling "use", the bundled "inc::latest" takes a single module
       name and optional arguments to pass to that module's own import method.

	 use 'inc::latest' 'Foo::Bar' qw/foo bar baz/;

   Author-mode
       You are in author-mode inc::latest if any of the Author-mode methods
       are available.  For example:

	 if ( inc::latest->can('write') ) {
	   inc::latest->write('inc');
	 }

       loaded_modules()
	     my @list = inc::latest->loaded_modules;

	   This takes no arguments and always returns a list of module names
	   requested for loading via "use inc::latest 'MODULE'", regardless of
	   whether the load was successful or not.

       write()
	     inc::latest->write( 'inc' );

	   This writes the bundled version of inc::latest to the directory
	   name given as an argument.  It almost all cases, it should be
	   '"inc"'.

       bundle_module()
	     for my $mod ( inc::latest->loaded_modules ) {
	       inc::latest->bundle_module($mod, $dir);
	     }

	   If $mod corresponds to a packlist, then this function creates a
	   specially-named directory in $dir and copies all .pm files from the
	   modlist to the new directory (which almost always should just be
	   'inc').  For example, if Foo::Bar is the name of the module, and
	   $dir is 'inc', then the directory would be 'inc/inc_Foo-Bar' and
	   contain files like this:

	     inc/inc_Foo-Bar/Foo/Bar.pm

	   Currently, $mod must have a packlist.  If this is not the case
	   (e.g. for a dual-core module), then the bundling will fail.	You
	   may be able to create a packlist by forced installing the module on
	   top of the version that came with core Perl.

   As bundled in inc/
       All methods are private.	 Only the "import" method is public.

AUTHOR
       Eric Wilhelm <ewilhelm@cpan.org>, David Golden <dagolden@cpan.org>

COPYRIGHT
       Copyright (c) 2009 by Eric Wilhelm and David Golden

       This library is free software; you can redistribute it and/or modify it
       under the same terms as Perl itself.

SEE ALSO
       Module::Build

perl v5.18.1			  2013-08-11			inc::latest(3)
[top]
                             _         _         _ 
                            | |       | |       | |     
                            | |       | |       | |     
                         __ | | __ __ | | __ __ | | __  
                         \ \| |/ / \ \| |/ / \ \| |/ /  
                          \ \ / /   \ \ / /   \ \ / /   
                           \   /     \   /     \   /    
                            \_/       \_/       \_/ 
More information is available in HTML format for server Slackware

List of man pages available for Slackware

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net