* url-http.el (url-http): Respect `url-request-noninteractive'.
* url-queue.el (url-queue-start-retrieve): Fetching through
url-queue should always be noninteractive.
* url-vars.el (url-request-noninteractive): New variable.
* url-http.el (url-user-agent): New variable, can be function or
string. Suggested by Vibhav Pant <vibhavp@ubuntu.com>.
(url-http-user-agent-string): Use it.
* url-http.el (url-user-agent): New variable, can be function or
string. Suggested by Vibhav Pant <vibhavp@ubuntu.com>.
src/decompress.c (init_zlib_functions): Move the message about zlib
being unavailable from here...
(Fzlib_decompress_region): ...to here.
lisp/url/url-http.el (url-http-create-request): Recheck zlib availability
on windows-nt each time it might be required.
Currently, when `url-retrieve' is called for an https url it modifies
the variable `url-gateway-method'. This has been changed to
explicitly pass the requested gateway method to other functions.
When `url-retrieve' is being processed then (via
`accept-process-output') another `url-retrieve' call from a pending
timer can be started. The second call would always see the modified
`url-gateway-method' of the first one, which in general does not match
the url.
2014-09-28 Ulf Jasper <ulf.jasper@web.de>
* url-gw.el (url-open-stream): New optional parameter
`gateway-method'. If non-nil use it instead of global variable
`url-gateway-method'.
* url/url-http.el (url-http): New optional parameter
`gateway-method', pass it to `url-http-find-free-connection'.
(url-http-find-free-connection): New optional parameter
gateway-method, pass it to `url-open-stream'.
(url-https-create-secure-wrapper): Do not modify
`url-gateway-method' but explicitly provide 'tls as gateway-method
parameter to `url-https'.
(url-insert-file-contents): Condition on url-http-response-status
for the HTTP/S specific part.
* lisp/url/url-http.el (url-http-end-of-headers): Remove duplicate defvar.
Fixes: debbugs:17549
* url-http.el (url-handle-content-transfer-encoding): Support
decompressing gzipped content.
* url-vars.el (url-mime-encoding-string): If we have built-in gzip
support, say that we accept gzipped content.
(success): Remove var.
(url-http-handle-authentication): Return the value that `success'
should take instead of setting `success' directly. Don't set `status'
since it's not used.
(url-http-parse-headers): Avoid unneeded setq.
Move the `setq success'.
(url-http): Use pcase.
(url-http-file-exists-p): Simplify.
* url-expand.el (url-default-expander): Don't calculate a default
url port before checking url-type.
* url-http.el (url-http-end-of-document-sentinel): Bind relevant
url-request-* variables around the call to url-http.
Fixes: debbugs:11469 debbugs:12374
Fix 2012-04-10 change to url.el.
* url-http.el (url-http-create-request): Ignore obsolete
attributes slot of url-object.
* url-parse.el: Improve RFC 3986 conformance.
(url-generic-parse-url): Do not populate the ATTRIBUTES slot,
since this is not reliable for general RFC 3986 URIs. Keep the
whole path and query inside the FILENAME slot. Improve docstring.
(url-recreate-url-attributes): Mark as obsolete.
(url-recreate-url): Handle missing scheme and userinfo.
* url-util.el (url-encode-url): New function for URL quoting.
(url-encoding-table, url-host-allowed-chars)
(url-path-allowed-chars): New constants.
(url--allowed-chars): New helper function.
(url-hexify-string): Use them.
* url-vars.el (url-nonrelative-link): Make the regexp stricter.
* url.el (url-retrieve-internal): Use url-encode-url.
Fixes: debbugs:7017
* lisp/url/url-http.el (url-http-end-of-document-sentinel): Handle
keepalive expiry by calling url-http again.
(url-http): New arg, for the above.
Fixes: debbugs:10223
* url-http.el (url-http-create-request): Don't send cookies unless
requested.
(url-http-parse-headers): Don't store cookies unless requested.
* url.el (url-retrieve): Ditto
* url-queue.el (url-queue-retrieve): Take an optional
`inhibit-cookies' parameter.
* url-parse.el (url): Add the `use-cookies' slot to the URL struct
to be able to keep track of whether to do cookies or not on a
per-URL basis.