Skip to content

Old: cabal upload

Edward Z. Yang edited this page May 1, 2017 · 1 revision

cabal upload is a command for uploading Cabal packages to Hackage. Before uploading, it first runs QA checks (cf. cabal check) to find problems that might cause Hackage to reject the upload.

It is part of the cabal-install command line tool.

Usage

Usage: cabal upload [FLAGS] [TARFILES]

Flags for upload:
 -h --help              Show this help text
 -v --verbose[=n]       Control verbosity (n is 0--3, default verbosity level
			is 1)
 -c --check             Do not upload, just do QA checks.
 -u --username=USERNAME Hackage username.
 -p --password=PASSWORD Hackage password.

Here USERNAME and PASSWORD are your credentials for the Hackage web interface.

You can store your Hackage login in your config file (cabal --help will tell you where it is) using the format:

username: foo
password: bar

TODO

  • Change the web interface to output error messages as plain text instead of HTML when the request has Accept: text/plain.
  • Use digest authentication? Does the hackage web server support that?
  • Run cabal sdist and upload the resulting tarball.
  • Improve HTTP package API to make programs like cabal upload simpler.