CPAN-UPLOAD(1p)

πŸ“¦
version 0.103019 Β· 3 versions
, in ubuntu stonking

✨ cpan-upload ✨

okay bestie, so this is the manual page for cpan-upload β€” it's a Perl thing, from the User Contributed Perl Documentation, and it's your new bestie for yeeting a distribution straight up to the CPAN. πŸ’–


🌸 NAME 🌸

cpan-upload β€” upload a distribution to the CPAN. that's it. that's the whole job. πŸ‘‘


πŸŽ€ VERSION πŸŽ€

version 0.103019 β€” the moment, the icon, the number.


πŸ¦‹ PERL VERSION πŸ¦‹

so like, this library should run on perls released even a long time ago. any version of perl released in the last five years? yeah, it should work on that. slay.

ngl though β€” it may work on older versions of perl, but no guarantee is made that the minimum required version won't get bumped up. the version may be increased for literally any reason, and there's no promise that patches will be accepted to lower the minimum required perl. so if you're on ancient perl, that's on you bestie 😭


πŸ’… USAGE πŸ’…

here's the whole vibe:

usage: cpan-upload [options] file-to-upload-1 [ file-to-upload-2 ... ]
  -v --verbose       enable verbose logging
  -h --help          display this help message
  --dry-run          do not actually upload anything

  -u --user          your PAUSE username
  -p --password      the password to your PAUSE account
  -d --directory     a dir in your CPAN space in which to put the file
  --http-proxy       URL of the http proxy to use in uploading
  --ignore-errors    instead of aborting, continue to next file on error
  -c --config        config file to use; defaults to ~/.pause
  --md5              compute MD5 checksums of the files
  --retries          number of retries to perform on upload failure
  --retry-delay      number of seconds to wait between retries

quick lil tour of what's going on, because i love you and i want you to win:

  • -v, --verbose β€” turn on verbose logging. spill the tea, more of it, in your terminal 🌸
  • -h, --help β€” display this help message. the classic.
  • --dry-run β€” do not actually upload anything. bestie this is your practice run, nothing leaves the house πŸ™ˆ
  • -u, --user β€” your PAUSE username
  • -p, --password β€” the password to your PAUSE account. keep it secret, keep it safe πŸ”’
  • -d, --directory β€” a dir in your CPAN space in which to put the file
  • --http-proxy β€” URL of the http proxy to use in uploading
  • --ignore-errors β€” instead of aborting, continue to next file on error. like when one of your friends is being messy at the function but you keep the party going πŸ’€
  • -c, --config β€” config file to use; defaults to ~/.pause
  • --md5 β€” compute MD5 checksums of the files
  • --retries β€” number of retries to perform on upload failure
  • --retry-delay β€” number of seconds to wait between retries

🌈 CONFIGURATION 🌈

so if you've got a ".pause" file hanging out in your home directory, it will be checked for a username and password. yes this is real. it should look exactly like this:

user EXAMPLE
password your-secret-password

(no cap, EXAMPLE is a placeholder β€” use your actual username, you icon ✨)

you can GnuPG-encrypt this file if you wish β€” honestly, highkey recommend β€” but just know that you must install Config::Identity and configure your gpg-agent, because Config::Identity currently doesn't prompt for a password at decryption time. she just won't ask. awkward.

here's how, step by step:

# Follow the prompts, setting your key as the "recipient"
# Use ^D once you've finished typing out your authentication information
gpg -ea > $HOME/.pause
# OR, encrypt a file you already created:
gpg -ea $HOME/.pause && mv $HOME/.pause{.asc,}

first one is giving "starting from scratch, typing it all out live". the second is giving "i already made the file, just encrypt it and rename it real quick". both iconic, both valid 🫢

ok one lil note fr fr: with the first command, you press ^D once you've finished typing out your authentication information. don't forget or you'll just sit there staring at your terminal like πŸ‘οΈπŸ‘„πŸ‘οΈ

⭐ SEE ALSO ⭐

go read these next, they're the supporting cast:

  • CPAN::Uploader
  • Config::Identity

iykyk 🌟


πŸ‘‘ AUTHOR πŸ‘‘

Ricardo SIGNES <cpan@semiotic.systems> β€” the legend behind it all.


This software is copyright (c) 2026 by Ricardo SIGNES.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. periodt. free as in go wild, bestie πŸ¦‹


aaaaand that's the whole page!! this was CPAN-UPLOAD(1p), the User Contributed Perl Documentation version, from perl v5.40.1, dated 2026-02-26. go forth and upload responsibly, my main character πŸ’–πŸŽ€βœ¨

πŸ“¦ where this page comes from