@hackage hup0.2.0.0

Upload packages or documentation to a hackage server

hup Hackage version Linux Build Status Windows Build Status

Small program for building and uploading packages and documentation built with stack to a hackage server; a Haskellified version of phadej's script, which is a stack-enabled version of ekmett's script.

In addition to stack, requires that cabal and haddock are on your path. (If you're using stack, they're easily installed with, e.g. stack install cabal-install.)

Installation

Install in the standard Haskell way: cabal install hup, or stack install hup.

Usage

  • hup [COMMAND] ... [OPTIONS]

    Build and/or upload packages or documentation to a hackage server. A server url should be of the format PROTOCOL://SERVER[:PORT]/, and defaults to https://hackage.haskell.org/ if not specified.

    A password can also be given in the PASSWORD environment variable instead of on the command line.

    'hup --help=all' will give help for all commands.

  • Commands:

      packup    Upload FILE as a package (or candidate package).
      docbuild  Build documentation for a  package.
      docup     Upload FILE as documentation.
      docboth   Build and upload documentation for a package.
    
  • Common flags:

      -v --verbose          be verbose
      -h --help             Display help message. '--help=all' will display help
                            for all commnds. '--help=bash' will output code for
                            bash command-line completion.
      -V --version          Print version information
         --numeric-version  Print just the version number
    
  • hup packup [OPTIONS] FILE
    Upload FILE as a package (or candidate package).

    Flags:

      -s --server=URL       
      -c --candidate        
      -u --user=USER        
      -p --password=PASSWORD  
    
  • hup docbuild [OPTIONS]
    Build documentation for a package.

    Flags:

      -e --executables             Run haddock for Executables targets
      -t --tests                   Run haddock for Test Suite targets
      -i --internal                Run haddock for internal modules and include
                                   all symbols
         --haddock-arguments=ARGS  extra args to pass to haddock
      -q --quick                   quick build - don't build docco for
                                   dependencies (links will be broken)
    
  • hup docup [OPTIONS] FILE
    Upload FILE as documentation.

    Flags:

      -s --server=URL       
      -c --candidate        
      -u --user=USER        
      -p --password=PASSWORD
    
  • hup docboth [OPTIONS]
    Build and upload documentation for a package.

    Flags:

      -e --executables             Run haddock for Executables targets
      -t --tests                   Run haddock for Test Suite targets
      -i --internal                Run haddock for internal modules and include
                                   all symbols
         --haddock-arguments=ARGS  extra args to pass to haddock
      -q --quick                   quick build - don't build docco for
                                   dependencies (links may be broken)
      -s --server=URL            
      -c --candidate             
      -u --user=USER             
      -p --password=PASSWORD      
    

Bash command-line completion

To enable bash command-completion:

Run

hup --help=bash > hup.complete

then either "source hup.complete" or ". hup.complete".

Defaults

Uses "https://hackage.haskell.org/" as the default server location, but see the DefaultServerUrl module if you want to patch this to something else before installing.

Bugs and limitations

  • Not yet tested on MS Windows or MacOS
  • Installation

  • Tested Compilers

  • Dependencies (0)

  • Dependents (0)

  • Package Flags

      enablewebtests
       (off by default)

      Enable tests that do a (pretty minimal) check by running an actual Warp web server. (Slower to build and run than other tests.)

      patchhelpmessage
       (off by default)

      Use patched version of cmdargs-0.10.14.1 with more informative help message. The patched version will need to be pulled from github (or a stack.yaml file must point to it) - see stack.yaml for details.