Improve RFC 3986 conformance of url package.
authorChong Yidong <cyd@gnu.org>
Wed, 9 May 2012 08:33:48 +0000 (16:33 +0800)
committerChong Yidong <cyd@gnu.org>
Wed, 9 May 2012 08:33:48 +0000 (16:33 +0800)
commitce7b18ec41c5102f4af27ec22cf873a75f510630
tree7608fccb83f4887f7e95f925b2ee36cd4f78be7d
parent66b03a53a3218479b93d64857a08b6d4cb5a0f7f
Improve RFC 3986 conformance of url package.
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
etc/NEWS
lisp/url/ChangeLog
lisp/url/url-http.el
lisp/url/url-parse.el
lisp/url/url-util.el
lisp/url/url-vars.el
lisp/url/url.el