GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  RELEASE (1)

.ds Aq ’

NAME

release - give your Perl distros to the world

CONTENTS

SYNOPSIS



        release [OPTIONS] [ LOCAL_FILE [ REMOTE_FILE ] ]

        # try a dry run without uploading anything
        release -t
        # skip dist while checking
        release -D

        # print a help message and exit
        release -h

        # skip kwalitee testing (e.g. a script distro)
        release -k

        # print debugging information
        release -d

        # print release number and exit
        release -v

        # set $ENV{AUTOMATED_TESTING} to a true value
        release -a



DESCRIPTION

This is the prototype program for using Module::Release. You should modify it to fit your needs. If it doesn’t do what you want, you can change it however you like. This is how I like to release my modules, and I’m happy to add features that do not get in my way. Beyond that, you should write your own script to match your process.

This program automates Perl module releases. It makes the distribution, tests it, checks that source control is up to date, tags source control, uploads it to the PAUSE anonymous FTP directory and claims it on PAUSE.

By default this script assumes that you use CVS, but recognizes SVN and git and switches when appropriate.

    Process

The release script checks many things before it actually releases the file. Some of these are annoying, but they are also the last line of defense against releasing bad distributions.
Read the configuration data Look in the current working directory for .releaserc. See the Configuration section. If release cannot find the configuration file, it dies.
Test and make the distribution Run make realclean, perl Makefile.PL, make test, make dist, make disttest. If testing fails, release dies. make dist provides the name of the distribution if LOCAL_FILE is not provided on the command line. Too test the distribution against several perl binaries, see the perls configuration setting.
Check that source control is up-to-date If there are modified files, added files, or extra files so that source control complains, fail.
Upload to PAUSE This program used to use FTP uploads, but PAUSE has turned that feature. Now it uploads through the web form.
Tag the repository Use the version number (in the distribution name) to tag the repository. You should be able to checkout the code from any release.

    Command-line switches

-a Set $ENV{AUTOMATED_TESTING} to true. You can also set automated_testing in the configuration file.
-d Show debugging information
-h Print a help message then exit
-k Skip the kwalitee checks. You can also set the skip_kwalitee directive to a true value in the configuration file.

Have you considered just fixing the kwalitee though? :)

-p Skip the prereq checks. You can also set the skip_prereqs directive to a true value in the configuration file.

Have you considered just fixing the prereqs though? :)

-t Run all checks then stop. Do not change any files or upload the distribution.
-T Skip the tests. This is useful when you just want to upload.
-v Print the program name and version then exit

    Configuration

The release script uses a configuration file in the current working directory. The file name is .releaserc.

release’s own .releaserc looks like this:



    cpan_user BDFOY



If you would like to test with multiple perl binaries (version 1.21 and later), list them as a colon-separated list in the perls setting:



        perls /usr/local/bin/perl5.6.2:/usr/local/bin/perl5.10.0



release does not test the perls in any particular order.
automated_testing Set automated_testing to the value you want for the $ENV{AUTOMATED_TESTING} setting. By default this is 0, so testing is started in interactive mode.
cpan_user The PAUSE user
passive_ftp Set passive_ftp to y or yes for passive FTP transfers. Usually this is to get around a firewall issue. Note that PAUSE has turned off FTP uploads, so this setting is useless now.
perls A colon-separated list of perls to test with. If allow_glob_in_perls is a true value, globs in paths will expand to their paths so you can specify many perls.

Default: the perl that’s running release.

allow_glob_in_perls If true, expand globs in the perls configuration.

Default: 0

skip_kwalitee Set to a false value to skip kwalitee checks (such as for a script distribution with no modules in it).
skip_prereqs Set skip_prereqs to 1 if you don’t want to run the Test::Prereq checks. By default this is 0 and release will try to check prerequisites.
release_subclass DEPRECATED AND REMOVED. You should really just write your own release script. Fork this one even!

    Environment

o AUTOMATED_TESTING

Module::Release doesn’t do anything with this other than set it for Test::Harness.

o CPAN_PASS

release reads the CPAN_PASS environment variable to set the password for PAUSE. Of course, you don’t need to set the password for a system you’re not uploading to.

o RELEASE_DEBUG

The RELEASE_DEBUG environment variable sets the debugging value, which is 0 by default. Set RELEASE_DEBUG to a true value to get debugging output.

o PERL

The PERL environment variable sets the path to perl for use in the make; otherwise, the perl used to run release will be used.

o RELEASE_OPTS

A string representing options to add to the command line.

TO DO

o break out functional groups into modules.
o more plugins!

SOURCE AVAILABILITY

This source is in Github as part of the Module::Release project:



        https://github.com/briandfoy/module-release



AUTHOR

brian d foy, <bdfoy@cpan.org>

COPYRIGHT AND LICENSE

Copyright X 2002-2015, brian d foy <bdfoy@cpan.org>. All rights reserved.

You may use this software under the same terms as Perl itself.

CREDITS

Ken Williams turned the original release(1) script into a module.

Andy Lester contributed to the module and script.

H. Merijn Brand submitted patches to work with 5.005 and to create the automated_testing feature.

Search for    or go to Top of page |  Section 1 |  Main Index


perl v5.20.3 RELEASE (1) 2016-03-04

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.