NAME

cpan-upload - upload one or more files to CPAN, using PAUSE

SYNOPSIS

cpan-upload [options] file1 .. fileN

DESCRIPTION

cpan-upload is a script which automates the process of uploading a file to CPAN using PAUSE, the Perl Authors Upload SErver:

  • FTP the file(s) to the PAUSE ftp server, putting them in the incoming directory.

  • Register the upload(s) by POSTing to the PAUSE web server.

This is just one of the ways you can upload something to PAUSE. See the PAUSE FAQ for details (ses SEE ALSO section below).

Before using this script you must register with PAUSE, to get a username and password. If you are a regular uploader to PAUSE, you'll probably want to create a .pause configuration file. If not, you can probably just use the command-line options, as described below.

For example, to upload a recent version of the Net::Dict module I ran:

% cpan-upload Net-Dict-1.04.tar.gz

If everything went OK, you'll get a mail message from the PAUSE monitor.

OPTIONS

-user <string>

Your PAUSE username (which you previously registered with PAUSE).

-password <string>

The password for your PAUSE username.

-ftp_gateway <host>

Specifies the name of the host which has your ftp gateway.

-ftp_proxy <host>

Specifies the name of the host which has your ftp proxy, if you're behind a firewall.

-http_proxy <URL>

Specifies the URL for a proxy to use when making HTTP requests.

-mailto <email>

Your email address, to include the HTTP request header. This is also used as the password for the ftp upload to PAUSE.

-help

Displays a short help message with the OPTIONS section from the cpan-upload documentation.

-doc

Display the full documentation for cpan-upload.

-verbose

Turns on verbose information as the script runs.

-debug

Turns on debugging information. Useful mainly for the developer, it displays the HTTP request and response.

-version

Display the version number of the cpan-upload script.

CONFIGURATION FILE

You can provide the configuration information needed via a .pause file in your home directory. If you upload files at all regularly you will want to set up one of these.

user <username>

This is used to specify your PAUSE username. This just saves you from typing it every time you run the script.

password <password>

This is used to specify your PAUSE password.

ftp_proxy <HOST>

Specifies the hostname of your ftp gateway used to get through a firewall. For example:

ftp_proxy = ftp-gw
http_proxy <URL>

The URL for the proxy to use when making HTTP requests to the PAUSE web server. For example:

http_proxy = http://proxy/
mailto <EMAIL>

Specifies the email address which is passed in the header of the HTTP request, and as the password for the anonymous ftp upload. You must provide this.

The following is a sample .pause file:

# example .pause for user neilb
# the user is your registered PAUSE username
user NEILB
password thisisnotmyrealpassword

mailto      = neilb@cre.canon.co.uk
ftp_proxy   = ftp-gw
http_proxy  = http://proxy.cre.canon.co.uk/

Note that your .pause must not be readable by others, since it can contain your PAUSE password. The b<cpan-upload> script refuses to run if your config file can be read by others.

SEE ALSO

www.cpan.org

The home page for the Comprehensive Perl Archive Network.

PAUSE

The Perl Authors Upload SErver. The PAUSE FAQ can be seen on CPAN:

http://www.cpan.org/modules/04pause.html
Net::FTP

Graham Barr's studly module for doing that crazy ftp thang. Part of the libnet distribution, available from:

http://www.cpan.org/modules/by-module/Net/
libwww-perl5

The LWP distribution which provides the modules used by this script to talk to the PAUSE web server. You can get the latest version from:

http://www.cpan.org/modules/by-module/LWP/
AppConfig::Std

The module used to handle command-line options and the configuration file. This is actually a subclass of AppConfig, which you'll also need.

http://www.cpan.org/modules/by-module/AppConfig/

VERSION

$Id: cpan-upload,v 1.8 2001/03/06 17:17:52 neilb Exp $

AUTHOR

Neil Bowers <neilb@cre.canon.co.uk>

COPYRIGHT

Copyright (c) 1998-2001 Canon Research Centre Europe. All rights reserved.

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