Http package:cabal-install
Separate module for HTTP actions, using a proxy server if one exists.
Abstraction over HTTP clients
This avoids insisting on a particular implementation (such as the HTTP
package) and allows for other implementations (such as a conduit based
one).
NOTE: Library-specific exceptions MUST be wrapped in
SomeRemoteError.
GET a URI, with an optional ETag (to do a conditional fetch), write
the resource to the given file and return the HTTP status code, and
optional ETag.
POST a resource to a URI, with optional
Auth and return the
HTTP status code and any redirect URL.
POST a file resource to a URI using multipart/form-data encoding, with
optional
Auth and return the HTTP status code and any error
string.
PUT a file resource to a URI, with optional
Auth, extra headers
and return the HTTP status code and any error string.
If the remote repo is accessed over HTTPS, ensure that the transport
supports HTTPS.
If the URI scheme is HTTPS, ensure the transport supports HTTPS.
Whether this transport supports https or just http.
Normally a repo just specifies an HTTP or HTTPS URI, but as a special
case we may know a repo supports both and want to try HTTPS if we can,
but still allow falling back to HTTP.
This field is not currently stored in the config file, but is filled
in automagically for known repos.