Merge from emacs-23
[bpt/emacs.git] / lisp / url / ChangeLog
1 2010-07-27 Michael Albinus <michael.albinus@gmx.de>
2
3 * url-http (url-http-parse-headers): Disable file name handlers at
4 all (not only Tramp). (Bug#6717)
5
6 2010-07-27 Michael Albinus <michael.albinus@gmx.de>
7
8 * url-http (url-http-parse-headers): Disable Tramp. (Bug#6717)
9
10 2010-07-01 Mark A. Hershberger <mah@everybody.org>
11
12 * url-http.el (url-http-create-request): Add a CRLF on the end so
13 that POSTs with content to https urls work. See
14 <https://bugs.launchpad.net/mediawiki-el/+bug/540759>
15
16 2010-06-22 Mark A. Hershberger <mah@everybody.org>
17
18 * url-parse.el (url-user-for-url, url-password-for-url):
19 Convenience functions that get usernames and passwords for urls
20 from auth-source functions.
21
22 2010-06-12 Štěpán Němec <stepnem@gmail.com> (tiny change)
23
24 * url-vars.el (url-privacy-level): Fix doc typo. (Bug#6406)
25
26 2010-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
27
28 * url-util.el (url-unhex-string): Don't accidentally decode as latin-1.
29
30 2010-05-07 Chong Yidong <cyd@stupidchicken.com>
31
32 * Version 23.2 released.
33
34 2010-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
35
36 * url-dired.el (url-dired-minor-mode): Use define-minor-mode.
37
38 2010-03-24 Teodor Zlatanov <tzz@lifelogs.com>
39
40 * url-http.el (url-http-parse-headers): Fix wrong variable name.
41
42 2010-03-24 Teodor Zlatanov <tzz@lifelogs.com>
43
44 * url-http.el (url-http-codes): New variable to hold a mapping of
45 HTTP status codes' numbers, their symbolic name, and their text.
46 (url-http-parse-headers): Use it, leaving the original numeric
47 code in a comment.
48
49 2010-03-19 Glenn Morris <rgm@gnu.org>
50
51 * url.el: Move mailcap require earlier in the file.
52
53 2010-03-12 Chong Yidong <cyd@stupidchicken.com>
54
55 * url-vars.el (url): Put in comm group.
56
57 2010-03-10 Chong Yidong <cyd@stupidchicken.com>
58
59 * Branch for 23.2.
60
61 2010-01-23 Chong Yidong <cyd@stupidchicken.com>
62
63 * url-util.el: Require url-vars (Bug#5459).
64
65 2009-11-27 Stefan Monnier <monnier@iro.umontreal.ca>
66
67 * url-parse.el (url-generic-parse-url): Bind deactivate-mark.
68
69 2009-11-08 Kai Tetzlaff <kai.tetzlaff@web.de> (tiny change)
70
71 * url-http.el (url-http-handle-authentication): Use proxy server,
72 if any, for authentication (Bug#4883).
73
74 2009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
75
76 * url-util.el (url-insert-entities-in-string):
77 * url-nfs.el (url-nfs-unescape):
78 * url-ldap.el (url-ldap):
79 * url-imap.el (url-imap):
80 * url-cid.el (url-cid-gnus, url-cid): Use with-current-buffer.
81
82 2009-10-01 Glenn Morris <rgm@gnu.org>
83
84 * url-http.el (url-dav-file-attributes): Fix declaration.
85
86 2009-09-13 Chong Yidong <cyd@stupidchicken.com>
87
88 * url-handlers.el (url-copy-file): Add fifth arg for compatibility
89 with 2005-06-25 change to copy-file (Bug#4410).
90
91 2009-09-13 Glenn Morris <rgm@gnu.org>
92
93 * url-file.el (url-file): Avoid assignment to free variable `filename'.
94
95 2009-09-12 Chong Yidong <cyd@stupidchicken.com>
96
97 * url-methods.el (url-scheme--registering-proxy): New variable.
98 (url-scheme-register-proxy, url-scheme-get-property):
99 Avoid calling url-scheme-register-proxy in an infloop (Bug#4191).
100
101 2009-08-22 Glenn Morris <rgm@gnu.org>
102
103 * url-file.el (url-file-build-filename):
104 * url-privacy.el (url-setup-privacy-info): Remove code for defunct
105 system-types Apple-Macintosh, emx, ms-windows, next-mach.
106
107 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
108
109 * Branch for 23.1.
110
111 2009-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
112
113 * url-handlers.el (url-file-handler): Save match data.
114
115 2009-02-21 Jason Rumney <jasonr@gnu.org>
116
117 * url-expand.el (url-default-expander): Use concat to combine
118 parts. (Bug #1020)
119
120 2009-02-10 Glenn Morris <rgm@gnu.org>
121
122 * url-util.el (url-generate-unique-filename): Silence compiler.
123
124 2009-02-07 Chong Yidong <cyd@stupidchicken.com>
125
126 * url-file.el (url-file): Use make-temp-file.
127
128 * url-util.el (url-generate-unique-filename): Mark as obsolete.
129
130 * url-vars.el (url-temporary-directory): Mark as obsolete.
131
132 2009-01-15 Chong Yidong <cyd@stupidchicken.com>
133
134 * url-cookie.el (url-cookie-retrieve): Fix last change.
135
136 2009-01-14 Chong Yidong <cyd@stupidchicken.com>
137
138 * url-cookie.el (url-cookie-retrieve): Handle null localpart.
139
140 2009-01-13 Juanma Barranquero <lekktu@gmail.com>
141
142 * url-util.el (url-truncate-url-for-viewing): Doc fix.
143
144 2009-01-09 Glenn Morris <rgm@gnu.org>
145
146 * url-cid.el (url-cid-gnus): Fix typo in header name.
147
148 2008-11-04 Chong Yidong <cyd@stupidchicken.com>
149
150 * url-util.el (url-basepath): Add url-basepath as an alias for
151 url-file-directory.
152
153 2008-10-24 Juanma Barranquero <lekktu@gmail.com>
154
155 * url.el (url-configuration-directory): Use `locate-user-emacs-file'.
156
157 2008-10-20 İsmail Dönmez <ismail@namtrac.org> (tiny change)
158
159 * url-auth.el (url-basic-auth): Encode password string.
160
161 2008-08-30 Glenn Morris <rgm@gnu.org>
162
163 * url-http.el (url-https-expand-file-name): Resolve directly to
164 url-default-expander rather than via another alias.
165 (url-default-expander): Autoload an autoload. (Bug#825).
166
167 2008-07-02 Juanma Barranquero <lekktu@gmail.com>
168
169 * url.el (url-do-setup):
170 * url-dired.el (url-dired-minor-mode):
171 * url-file.el (url-file-find-possibly-compressed-file):
172 * url-gw.el (url-gateway-broken-resolution):
173 * url-handlers.el (url-handler-regexp):
174 * url-imap.el (url-imap-default-port):
175 * url-methods.el (url-scheme-get-property): Fix typos in docstrings.
176
177 * url-auth.el (url-basic-auth-storage, url-digest-auth):
178 Fix typos in docstrings.
179 (url-digest-auth-storage, url-register-auth-scheme): Reflow docstrings.
180
181 * url-cache.el (url-cache-prepare): Doc fix.
182 (url-cache-create-filename-human-readable, url-cache-extract):
183 Fix typos in docstrings.
184
185 * url-dav.el (url-intersection, url-dav-iso8601-regexp)
186 (url-dav-delete-something): Fix typos in docstrings.
187 (url-dav-http-success-p, url-dav-file-name-all-completions)
188 (url-dav-directory-files, url-dav-file-name-completion): Doc fixes.
189
190 * url-http.el (url-http-idle-sentinel): Doc fix.
191
192 * url-irc.el (url-irc-default-port): Fix typo in docstring.
193 (url-irc-function): Doc fix.
194
195 * url-util.el (url-get-url-filename-chars, url-unhex-string):
196 Fix typos in docstrings.
197 (url-file-extension): Doc fix.
198
199 * url-vars.el (url-current-object, url-current-mime-headers)
200 (url-privacy-level, url-mail-command, url-mime-language-string):
201 Fix typos in docstrings.
202 (url-honor-refresh-requests): Reflow docstring.
203 (url-using-proxy): Doc fix.
204
205 2008-06-22 Dan Nicolaescu <dann@ics.uci.edu>
206
207 * vc-dav.el: Move to the parent directory to be together with the
208 rest of the VC backends.
209
210 2008-06-07 Glenn Morris <rgm@gnu.org>
211
212 * url-auth.el (auth-source-user-or-password): Remove unnecessary
213 eval-and-compile.
214
215 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
216
217 * url-handlers.el (url-file-name-completion): Add missing argument.
218
219 2008-05-12 Teodor Zlatanov <tzz@lifelogs.com>
220
221 * url-auth.el: Add autoload cookie for `auth-source-user-or-password'.
222 (url-basic-auth, url-digest-auth): Use it with any realm,
223 overriding the user name and password before the prompt.
224
225 2008-04-28 Juanma Barranquero <lekktu@gmail.com>
226
227 * url-vars.el (url-load-hook): Fix typo in docstring.
228
229 2008-03-09 Magnus Henoch <mange@freemail.hu>
230
231 * url-http.el (url-http-chunked-encoding-after-change-function):
232 Remove superfluous CRLF at end of file. (Bug #42)
233
234 2008-03-02 Andreas Schwab <schwab@suse.de>
235
236 * url-util.el: Require cl when compiling.
237
238 2008-02-28 Teodor Zlatanov <tzz@lifelogs.com>
239
240 * url-util.el (url-get-normalized-date): Simplify to use
241 `format-time-string'. Always generate date in UTC, but
242 call it GMT for full compatibility with the RFCs.
243
244 2008-02-06 Michael Albinus <michael.albinus@gmx.de>
245
246 * url-handlers.el (file-remote-p): Add handler.
247 (url-handler-file-remote-p): New fun.
248
249 2008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
250
251 * url-handlers.el (url-handler-unhandled-file-name-directory):
252 Handle `file' URLs specially. Return nil for non-local filenames.
253
254 2008-02-04 Magnus Henoch <mange@freemail.hu>
255
256 * url-expand.el: Require cl when compiling, for setf.
257
258 2008-01-29 John Wiegley <johnw@newartisans.com>
259
260 * url-auth.el (url-digest-auth): If the 'opaque' argument is not
261 being used, don't add it to the response text. Also, changed an
262 if so that the interaction between the PROMPT and OVERWRITE
263 arguments can no longer result in the user being queried twice for
264 the same login and password information.
265
266 2008-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
267
268 * url-handlers.el (unhandled-file-name-directory): Add handler.
269 (url-handler-unhandled-file-name-directory): New fun.
270
271 2008-01-07 Michael Albinus <michael.albinus@gmx.de>
272
273 * url-handlers.el (url-file-handler): Autoload.
274
275 2007-12-11 Glenn Morris <rgm@gnu.org>
276
277 * url.el (url-configuration-directory): Make it a defcustom.
278
279 * url-util.el (url-make-private-file): New function.
280 * url-cookie.el (url-cookie-write-file):
281 * url-history.el (url-history-save-history):
282 Use url-make-private-file and with-temp-buffer.
283
284 2007-12-06 Glenn Morris <rgm@gnu.org>
285
286 * url-file.el, url-mailto.el: Remove directory part from filenames
287 in function declarations.
288
289 2007-12-02 Glenn Morris <rgm@gnu.org>
290
291 * url-about.el, url-handlers.el: Don't require cl when compiling.
292
293 * url-dav.el (url-dav-delete-directory): Fix message typo.
294
295 * url-history.el (top-level): Don't require cl when compiling.
296 (url-history-setup-save-timer, url-history-save-history):
297 Use condition-case rather than ignore-errors.
298
299 * url-imap.el (top-level): Don't require cl when compiling.
300 (url-imap): Use signal rather than check-type.
301
302 * url-news.el (top-level): Don't require cl when compiling.
303 (gnus-group-buffer): Define for compiler.
304 (url-news-fetch-message-id): Don't use `declare'.
305 (nntp-open-tls-stream, nntp-open-ssl-stream):
306 No need to define for compiler.
307 (url-snews): Use nntp-open-tls-stream unless ssl is requested.
308 Correct quoting of nntp-open-connection-function value.
309
310 2007-12-01 Glenn Morris <rgm@gnu.org>
311
312 * url-handlers.el (top-level): Always require url-parse, not just
313 when compiling.
314
315 2007-11-30 Glenn Morris <rgm@gnu.org>
316
317 * url-cookie.el (url-cookie-p): Declare as a function.
318
319 2007-11-29 Glenn Morris <rgm@gnu.org>
320
321 * url-file.el (url-file-build-filename, url-file): Wrap uses of
322 efs in (featurep 'xemacs) test.
323
324 * url-irc.el (zenirc, zenirc-send-line): Declare as functions.
325
326 2007-11-28 Diane Murray <disumu@x3y2z1.net>
327
328 * url-dired.el: Don't require w3-fetch and w3-open-local.
329 (url-dired-find-file): Use `find-file'. Doc fix.
330 (url-dired-find-file-mouse, url-dired-minor-mode): Doc fix.
331
332 2007-11-24 Glenn Morris <rgm@gnu.org>
333
334 * url-privacy.el (url-device-type): Fix typo.
335
336 2007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
337
338 * url-mailto.el (mail-send-and-exit):
339 * url-http.el (url-dav-file-attributes):
340 * url-file.el (ange-ftp-set-passwd, ange-ftp-copy-file-internal)
341 (url-generate-unique-filename): Declare as functions.
342
343 * url-privacy.el (url-device-type): Define unconditionally.
344
345 2007-11-15 Richard Stallman <rms@gnu.org>
346
347 * url.el (url-retrieve-synchronously): Call delete-process.
348
349 2007-10-31 Juanma Barranquero <lekktu@gmail.com>
350
351 * url-vars.el (url-vars-unload-hook): Remove function and variable.
352 Hooks are automatically removed by `unload-feature'.
353
354 2007-10-13 Richard Stallman <rms@gnu.org>
355
356 * url-util.el (url-basepath): Function deleted.
357 (url-file-directory, url-file-nondirectory): New functions
358 replacing url-basepath. Callers changed.
359
360 * url-expand.el (url-default-expander): Use `url-file-directory'.
361
362 * url-auth.el (url-digest-auth, url-basic-auth):
363 Rename `path' to `file'. Use `url-file-directory'.
364
365 2007-10-12 Diane Murray <disumu@x3y2z1.net>
366
367 * url-auth.el (url-basic-auth): Set path to "/" when URL has an
368 empty string filename.
369
370 2007-10-09 Richard Stallman <rms@gnu.org>
371
372 * url-parse.el (url-type, url-user, url-password, url-host)
373 (url-port, url-filename, url-target, url-attributes)
374 (url-fullness, url-set-type, url-set-user, url-set-password)
375 (url-set-host, url-set-port, url-set-filename, url-set-target)
376 (url-set-attributes, url-set-full): Change macros to defuns.
377
378 2007-09-26 Juanma Barranquero <lekktu@gmail.com>
379
380 * url-dav.el (top):
381 * url-vars.el (top): Use `mapc' rather than `mapcar'.
382
383 2007-09-22 Diane Murray <disumu@x3y2z1.net>
384
385 * url-misc.el (url-generic-emulator-loader): Send the port as a
386 string to `url-do-terminal-emulator'.
387
388 2007-09-21 Diane Murray <disumu@x3y2z1.net>
389
390 * url-news.el (url-news-fetch-newsgroup): Fix formatting of Gnus method.
391
392 * url-util.el (url-get-normalized-date): Pass full timezone
393 information to timezone-make-date-arpa-standard, since zone name
394 may be unknown.
395
396 2007-09-03 Diane Murray <disumu@x3y2z1.net>
397
398 * url-http.el (url-http-parse-headers): Bind the current buffer
399 rather than calling `url-mark-buffer-as-dead' with
400 `current-buffer', so that the correct buffer is killed if
401 `url-retrieve-synchronously' gets redirected to a new URL.
402
403 2007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
404
405 * url-parse.el (url): Use defstruct rather than macros.
406 (url-generic-parse-url):
407 * url-util.el (url-normalize-url, url-truncate-url-for-viewing):
408 * url-methods.el (url-scheme-register-proxy):
409 * url-mailto.el (url-mailto):
410 * url-file.el (url-file-build-filename):
411 * url-expand.el (url-identity-expander, url-default-expander):
412 Update all callers.
413
414 2007-08-09 Edward O'Connor <hober0@gmail.com> (tiny change)
415
416 * url-auth.el (url-basic-auth): When prompting for username
417 and password, default to the username and password in the URL.
418
419 2007-08-08 Glenn Morris <rgm@gnu.org>
420
421 * url-auth.el, url-cache.el, url-dav.el, url-file.el, vc-dav.el:
422 Replace `iff' in doc-strings and comments.
423
424 2007-07-25 Glenn Morris <rgm@gnu.org>
425
426 * Relicense all FSF files to GPLv3 or later.
427
428 2007-06-12 Tom Tromey <tromey@redhat.com>
429
430 * url.el (url-configuration-directory): Use user-emacs-directory.
431
432 2007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
433
434 * url-cookie.el (url-cookie-name, url-cookie-value)
435 (url-cookie-expires, url-cookie-localpart, url-cookie-domain)
436 (url-cookie-secure, url-cookie-set-name, url-cookie-set-value)
437 (url-cookie-set-expires, url-cookie-set-localpart)
438 (url-cookie-set-domain, url-cookie-set-secure)
439 (url-cookie-retrieve-arg, url-cookie-create, url-cookie-p): Remove.
440 (url-cookie): New struct.
441 (url-cookie-store): Use setf instead of url-cookie-set-*.
442
443 2007-05-29 Chong Yidong <cyd@stupidchicken.com>
444
445 * url-mailto.el (url-mailto): Insert body after
446 mail-header-separator if present, so that it is before signature.
447 Suggested by Leo <sdl.web@gmail.com>.
448
449 2007-04-15 Chong Yidong <cyd@stupidchicken.com>
450
451 * url-parse.el (url-generic-parse-url): Revert 2006-10-09 changes.
452
453 2007-04-13 Chong Yidong <cyd@stupidchicken.com>
454
455 * url-http.el (url-http-parse-headers): Stop after a set number of
456 redirections. Suggested by Diane Murray.
457
458 * url-vars.el (url-max-redirections): New var.
459
460 2007-04-01 Diane Murray <disumu@x3y2z1.net> (tiny change)
461
462 * url-http.el (url-http-handle-cookies): Reverse list returned by
463 `mail-fetch-field', so that cookies are set in the correct order.
464
465 * url-cookie.el (url-cookie-retrieve, url-cookie-host-can-set-p):
466 Deal with wildcard dots in domain values.
467
468 2007-03-31 Andreas Seltenreich <uwi7@rz.uni-karlsruhe.de>
469
470 * url-http.el (url-http-mark-connection-as-busy)
471 (url-http-mark-connection-as-free): Clear query-on-exit flag on
472 idle connections.
473
474 2007-02-04 Chong Yidong <cyd@stupidchicken.com>
475
476 * url-http.el (url-http-connection-opened): New variable.
477 (url-http): Initialize it.
478 (url-http-async-sentinel): Don't try changing sentinels.
479 Run url-http-end-of-document-sentinel if necessary.
480
481 2007-01-29 Juanma Barranquero <lekktu@gmail.com>
482
483 * url-auth.el (url-get-authentication): Fix typo in docstring.
484
485 2007-01-14 Magnus Henoch <mange@freemail.hu>
486
487 * url-proxy.el (url-proxy-object): Remove.
488 (url-proxy): Don't use `url-proxy-object'. Act according to type of
489 proxy (currently only HTTP supported).
490
491 * url.el (url-retrieve-internal): Don't use `url-proxy-object'.
492
493 * url-http.el (url-http-proxy): New variable.
494 (url-http-create-request): Use it. Don't use `url-proxy-object'.
495 (url-http): Treat `url' argument as resource to download, and
496 dynamic variable `url-using-proxy' as proxy to use. Set
497 `url-current-object' to actual URL, and `url-http-proxy' to proxy
498 used.
499 (url-http-handle-cookies): Assume that `url-current-object' does
500 not point to the proxy used.
501 (url-http-async-sentinel): Adapt error message.
502
503 2006-12-10 Juanma Barranquero <lekktu@gmail.com>
504
505 * url-gw.el (url-gateway-nslookup-program): Doc fix.
506
507 2006-12-08 Magnus Henoch <mange@freemail.hu>
508
509 * url-proxy.el (url-proxy-object): New variable.
510 (url-proxy): Bind it instead of `proxy-object'.
511
512 * url-http.el (url-http-create-request): Remove url argument, use
513 the buffer-local variable `url-http-target-url' instead. Both
514 callers updated. Simplify proxy handling.
515 (url-http): Don't make proxy-object buffer local.
516
517 * url.el (url-retrieve-internal): Bind url-proxy-object to nil.
518
519 2006-11-26 Magnus Henoch <mange@freemail.hu>
520
521 * url-http.el (url-http-wait-for-headers-change-function): Use
522 `when' instead of `if' when possible.
523 (url-http): Define url-http-response-version.
524 (url-http-parse-response): Set it.
525 (url-http-parse-headers): Use it to determine keep-alive behavior.
526
527 2006-11-23 Diane Murray <disumu@x3y2z1.net> (tiny change)
528
529 * url-http.el (url-http-content-length-after-change-function): Use
530 `url-lazy-message'.
531
532 * url-util.el (url-display-percentage): Only show a message if
533 `url-show-status' is non-nil.
534
535 2006-11-15 Magnus Henoch <mange@freemail.hu>
536
537 * url-http.el (url-http): Make proxy-object buffer-local, to
538 handle proxied asynchronous connections correctly.
539
540 * url-parse.el (url-generic-parse-url): Use with-temp-buffer.
541
542 2006-11-15 Shun-ichi GOTO <gotoh@taiyo.co.jp> (tiny change)
543
544 * url-http.el (url-http-wait-for-headers-change-function):
545 Defer detection of HTTP 0.9 until we have at least one line.
546
547 2006-11-10 Shun-ichi GOTO <gotoh@taiyo.co.jp> (tiny change)
548
549 * url-http.el (url-http-mark-connection-as-free)
550 (url-http-find-free-connection): Don't treat process with status
551 `connect' as free.
552 (url-http-async-sentinel): Request correct url.
553
554 2006-11-08 Magnus Henoch <mange@freemail.hu>
555
556 * url-http.el (url-http-handle-authentication): If there are
557 several authentication headers, use the strongest available
558 method.
559
560 * url.el (url-retrieve-synchronously): Allow quitting when
561 inhibit-quit is t.
562
563 2006-11-03 Shun-ichi GOTO <gotoh@taiyo.co.jp> (tiny change)
564
565 * url-http.el (url-http-handle-authentication): If there are
566 several authentication headers, use the first with a supported
567 method.
568
569 2006-11-01 Magnus Henoch <mange@freemail.hu>
570
571 * url-http.el (url-http-create-request): Use buffer-local
572 equivalents of dynamically bound variables.
573
574 2006-10-29 Magnus Henoch <mange@freemail.hu>
575
576 * url-gw.el (url-open-stream): Really use asynchronous
577 connections (accidentally disabled during debugging).
578
579 2006-10-28 Magnus Henoch <mange@freemail.hu>
580
581 * url-http.el (url-http-parse-headers): Fix misplaced paren.
582
583 2006-10-27 Magnus Henoch <mange@freemail.hu>
584
585 * url-http.el (url-http-mark-connection-as-free): Verify that
586 connection is open before saving it.
587 (url-http-handle-authentication): Use url-retrieve-internal
588 instead of url-retrieve.
589 (url-http-parse-headers): Adapt to new callback interface.
590 (url-http): Handle non-blocking connections.
591 (url-http-async-sentinel): Create.
592
593 * url.el (url-retrieve): Update docstring for new callback interface.
594 Remove all code.
595 (url-retrieve-internal): Move code from url-retrieve here.
596
597 * url-gw.el (url-open-stream): Use a non-blocking socket for
598 `native' gateway method, if available.
599
600 2006-10-16 Magnus Henoch <mange@freemail.hu>
601
602 * url-http.el (url-https-create-secure-wrapper):
603 Always use tls gateway method.
604
605 2006-10-12 Magnus Henoch <mange@freemail.hu>
606
607 * url-http.el (url-http-find-free-connection):
608 Handle url-open-stream returning nil.
609
610 2006-10-11 Magnus Henoch <mange@freemail.hu>
611
612 * url-https.el: Remove (clashes with url-http on 8+3 systems).
613
614 * url-http.el: Move contents of url-https.el here. Add autoloads.
615
616 2006-10-09 Magnus Henoch <mange@freemail.hu>
617
618 * url-parse.el (url-generic-parse-url): Handle URLs with empty
619 path component and non-empty query component. Untangle path,
620 query and fragment parsing code. Add references to RFC 3986 in
621 comments.
622 (url-recreate-url-attributes): Start query string with "?", not ";".
623
624 2006-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
625
626 * url-dav.el (url-dav-file-attributes): Simplify.
627
628 * url-http.el (url-http-head-file-attributes): Add device "info".
629
630 2006-09-18 Michael Olson <mwolson@gnu.org>
631
632 * url-methods.el (url-scheme-register-proxy): Handle case where
633 getenv returns an empty string for http_proxy. This prevents an
634 error when calling `format' later on.
635
636 2006-08-31 Diane Murray <disumu@x3y2z1.net> (tiny change)
637
638 * url-parse.el (url-recreate-url-attributes): New function, code
639 simply moved from `url-recreate-url'.
640 (url-recreate-url): Use it.
641 Put the `url-target' at the end of the URL after the attributes.
642
643 * url-http.el (url-http-create-request):
644 Use `url-recreate-url-attributes' when setting real-fname.
645
646 2006-08-29 Diane Murray <disumu@x3y2z1.net> (tiny change)
647
648 * url-cookie.el (url-cookie-write-file): Really don't use versioned
649 backups.
650
651 2006-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
652
653 * url-handlers.el (url-file-local-copy): Tell url-copy-file that the
654 dest file will already exist.
655
656 2006-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
657
658 * url-util.el (url-hexify-string): Only utf-8 encode if it's
659 a multibyte string.
660 (url-normalize-url): Remove unused var `grok'.
661 (url-truncate-url-for-viewing): Remove unused var `tail'.
662
663 2006-07-30 Thien-Thi Nguyen <ttn@gnu.org>
664
665 * url-util.el (url-hexify-string): Rewrite.
666 Suggested by David Smith <davidsmith@acm.org>.
667
668 2006-07-12 Michael Olson <mwolson@gnu.org>
669
670 * url-irc.el (url-irc-erc): Call erc-handle-irc-url.
671
672 2006-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
673
674 * url-cookie.el: Remove spurious * in docstrings.
675 (url-cookie-write-file): Don't use versioned backups.
676 (url-cookie-host-can-set-p): Remove unused var `tmp'.
677
678 2006-07-04 Andreas Seltenreich <uwi7@rz.uni-karlsruhe.de>
679
680 * url-cookie.el (url-cookie-save-interval): Move to url-cookie group.
681 (url-cookie-write-file): Reset url-cookies-changed-since-last-save.
682
683 2006-05-12 Reiner Steib <Reiner.Steib@gmx.de>
684
685 * url-http.el (url-http-file-exists-p): Test if status is integer.
686
687 2006-05-05 Andreas Seltenreich <seltenreich@gmx.de>
688
689 * url-http.el (url-http-parse-headers): Don't reuse connection if
690 "Connection: close" header was seen.
691
692 2006-04-26 Stefan Monnier <monnier@iro.umontreal.ca>
693
694 * url-gw.el (url-open-stream): Don't hide errors.
695 (url-gateway-nslookup-host, url-open-telnet): Use with-current-buffer.
696
697 * url-handlers.el (url-insert): New function.
698 (url-insert-file-contents): Use it.
699
700 2006-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
701
702 * url-handlers.el (url-handler-directory-file-name): New handler.
703 (url-file-local-copy): Plug race condition security hole.
704
705 2006-03-27 Romain Francoise <romain@orebokech.com>
706
707 * url-irc.el (url-irc-rcirc, url-irc-erc): New functions.
708 (url-irc-function): Add rcirc and ERC to the list of IRC clients.
709 Default to rcirc, since ZenIRC isn't part of Emacs.
710
711 2006-03-07 Stefan Monnier <monnier@iro.umontreal.ca>
712
713 * url-http.el (url-http-find-free-connection): Fix braino in last fix.
714
715 2006-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
716
717 * url-http.el (url-http-find-free-connection): Don't kill the process
718 when killing the temp buffer.
719 (url-http-symbol-value-in-buffer): Massage to make it clear to the
720 byte-compiler that the function is defined.
721
722 2006-02-20 Stefan Monnier <monnier@iro.umontreal.ca>
723
724 * url.el (url-redirect-buffer): New var.
725 (url-retrieve-synchronously): Use it to follow redirections.
726
727 * url-http.el: Require `url' rather than try to autoload parts of it.
728 (url-http-find-free-connection): `url-open-stream' needs a real buffer.
729 (url-http-parse-headers): Set `url-redirect-buffer' when following
730 a redirection reply.
731
732 2006-01-18 Stefan Monnier <monnier@iro.umontreal.ca>
733
734 * url-news.el: Move defvars out of eval-when-compile.
735 (url-news-fetch-message-id, url-news-fetch-newsgroup):
736 Use with-current-buffer.
737
738 2006-01-10 Stefan Monnier <monnier@iro.umontreal.ca>
739
740 * url.el (url-retrieve-synchronously): Adjust the workaround so as not
741 to stop in the middle of a redirection.
742
743 * url-vars.el (url-privacy-level): Add setter.
744
745 2006-01-05 Stefan Monnier <monnier@iro.umontreal.ca>
746
747 * url-history.el (url-history-hash-table): Initialize in declaration.
748 (url-history-parse-history): Don't reset the history.
749 (url-history-save-history): Create parent dir if necessary.
750 (url-history-save-history): Don't write the initialization of
751 url-history-hash-table into the history file.
752 (url-have-visited-url): Simplify since url-history-hash-table isn't nil.
753 (url-completion-function): Simplify.
754
755 * url-cookie.el (url-cookie-parse-file): Don't complain of missing file.
756 (url-cookie-parse-file, url-cookie-write-file, url-cookie-retrieve)
757 (url-cookie-generate-header-lines, url-cookie-handle-set-cookie)
758 (url-cookie-setup-save-timer): Remove autoload cookies.
759 They're only called from files that require url-cookie anyway.
760
761 * url-history.el (url-history-setup-save-timer)
762 (url-history-parse-history, url-history-save-history):
763 Remove autoload cookies. They're only called from url.el which requires
764 url-history anyway.
765 (url-history-parse-history): Don't complain if the file is missing.
766
767 2006-01-02 Stefan Monnier <monnier@iro.umontreal.ca>
768
769 * url-handlers.el (url-retrieve-synchronously): Don't autoload.
770
771 * url.el (url-retrieve, url-retrieve-synchronously): Autoload.
772
773 * url-cache.el: Require `url'.
774
775 2005-12-27 Stefan Monnier <monnier@iro.umontreal.ca>
776
777 * url-cache.el (url-store-in-cache): Use save-current-buffer.
778
779 * url.el (url-configuration-directory): Don't autoload because the
780 default value needs to be computed at run-time, not dump-time.
781
782 2005-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
783
784 * url-cookie.el (url-cookie-write-file): Create parent dir.
785
786 * url.el (url-configuration-directory): Use ~/.emacs.d if possible.
787
788 2005-12-07 Klaus Straubinger <KSNetz@Arcor.DE> (tiny change)
789
790 * url-cookie.el (url-cookie-save-interval): Simplify.
791 (url-cookie-setup-save-timer): Simplify.
792
793 2005-12-04 Klaus Straubinger <KSNetz@Arcor.DE> (tiny change)
794
795 * url-history.el (url-history-list): Var deleted.
796 (url-history-save-interval): Simplify.
797 (url-history-setup-save-timer): Simplify.
798
799 2005-12-01 Kim F. Storm <storm@cua.dk>
800
801 * url-history.el (url-history-track): Fix last change.
802
803 2005-12-01 Klaus Straubinger <KSNetz@Arcor.DE> (tiny change)
804
805 * url-history.el (url-history-track):
806 Call url-history-setup-save-timer in :set function.
807 :type allows three alternatives.
808 (url-history-setup-save-timer): Test url-history-track.
809 * url.el (url-retrieve): Test url-history-track.
810
811 2005-11-18 Stefan Monnier <monnier@iro.umontreal.ca>
812
813 * url-http.el: Use with-current-buffer.
814 (url-http-target-url): Rename from url-http-cookies-sources.
815 (url-http-parse-headers): Use it.
816 (url-http-handle-authentication): Use subst-char-in-string.
817
818 2005-11-16 Jürgen Hötzel <emacs@hoetzel.info> (tiny change)
819
820 * url-handlers.el (url-insert-file-contents): Use the charset info
821 provided by the HTTP server, if any.
822
823 2005-10-20 CHENG Gao <chenggao@gmail.com> (tiny change)
824
825 * url-nfs.el (top level):
826 * url-handlers.el (directory-files):
827 * url-file.el (top level):
828 * url-dired.el (url-dired-minor-mode-map):
829 * url-http.el (url-http-chunked-encoding-after-change-function):
830 Remove XEmacs support.
831
832 2005-10-15 Richard M. Stallman <rms@gnu.org>
833
834 * url.el: Don't try to autoload hash table functions.
835
836 2005-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
837
838 * url-http.el (url-http-create-request): Avoid incorrect implicit
839 unibyte->multibyte conversion.
840
841 2005-09-17 Richard M. Stallman <rms@gnu.org>
842
843 * url-vars.el (url-mail-command): Don't test fboundp of `compose-mail'.
844
845 * url-mailto.el (url-mailto): Special case `mail'.
846 Don't test fboundp of `compose-mail'.
847
848 2005-09-15 Chong Yidong <cyd@stupidchicken.com>
849
850 * url-mailto.el (url-mailto): Delete mail buffer after sending
851 autogenerated mail.
852 Call `compose-mail with `new' argument if possible.
853
854 2005-09-13 Chong Yidong <cyd@stupidchicken.com>
855
856 * url-mailto.el (url-mailto): Always use a new mail buffer.
857
858 2005-09-01 Chong Yidong <cyd@stupidchicken.com>
859
860 * url-util.el (url-parse-query-string): New optional argument
861 allow-newlines allows decoding of newlines.
862
863 * url-mailto.el (url-mailto): Allow newlines in URL arguments.
864 Don't lose original "to" value when there is a "to" header.
865 Remove carriage return characters in message body.
866
867 2005-08-24 Juanma Barranquero <lekktu@gmail.com>
868
869 * url-news.el (nntp-open-tls-stream, nntp-open-ssl-stream):
870 * url-http.el (url-http-cookies-sources): Defvar at compile time.
871
872 2005-07-15 Richard M. Stallman <rms@gnu.org>
873
874 * url-http.el (url-http-parse-headers): Add :redirect arg-pair
875 when calling url-retrieve, to indicate a redirect.
876
877 * url.el (url-retrieve): The callback function can get an additional
878 keyword arg pair.
879
880 2005-07-04 Lute Kamstra <lute@gnu.org>
881
882 Update FSF's address in GPL notices.
883
884 2005-07-04 Juanma Barranquero <lekktu@gmail.com>
885
886 * url-history.el (url-history-track): Doc fix.
887 (url-history): Finish `defgroup' description with period.
888
889 * url-cookie.el (url-cookie):
890 * url-gw.el (url-gateway):
891 * url-news.el (url-news):
892 * url-vars.el (url, url-file, url-cache, url-mime, url-hairy):
893 Finish `defgroup' description with period.
894
895 2005-06-28 Klaus Straubinger <KSNetz@Arcor.DE> (tiny change)
896
897 * url-http.el (url-http-create-request): Call url-recreate-url
898 in proxy case.
899
900 2005-06-27 Klaus Straubinger <KSNetz@Arcor.DE> (tiny change)
901
902 * url-http.el (url-http-create-request): When computing real-fname,
903 call url-filename in both cases.
904
905 2005-06-27 Richard M. Stallman <rms@gnu.org>
906
907 * url-cookie.el (url-cookie-store): Rename arg PATH to LOCALPART.
908 (url-cookie-retrieve): Likewise.
909 (url-cookie-generate-header-lines): Likewise.
910 (url-cookie-handle-set-cookie): Likewise.
911 (url-cookie-create): Expect :localpart instead of :path.
912 (url-cookie-localpart): Renamed from url-cookie-path.
913 (url-cookie-set-localpart): Renamed from url-cookie-set-path.
914 (url-cookie-file): Doc fix.
915 (url-cookie-p): Add doc string.
916
917 2005-06-23 Richard M. Stallman <rms@gnu.org>
918
919 * url-cookie.el (url-cookie-generate-header-lines): Fix autoload cookie.
920
921 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
922
923 * url-gw.el (url-open-stream):
924 * url-vars.el (url-gateway-unplugged): Fix spellings.
925
926 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
927
928 * url-history.el (url-completion-function): Follow error conventions.
929
930 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
931
932 * url-file.el (url-file, url-file-asynch-callback): with-current-buffer.
933
934 2005-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
935
936 * url-dav.el: Remove most autoload cookies.
937 Don't hook into the url-file-handler since it currently breaks all
938 non-HTTP URLs.
939
940 * url-handlers.el (vc-registered): Explicitly disable VC for URL files.
941
942 * url.el (url-retrieve-synchronously): Don't exit precipitously when
943 fetching a file via ange-ftp.
944
945 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
946
947 * url-cookie.el (url-cookie-multiple-line): Fix spelling in docstring.
948
949 2005-05-19 Juanma Barranquero <lekktu@gmail.com>
950
951 * url-cookie.el (url-cookie-multiple-line):
952 Specify group and type in defcustom.
953
954 2005-05-06 Juanma Barranquero <lekktu@gmail.com>
955
956 * url-auth.el (url-register-auth-scheme):
957 * url-cookie.el (url-cookie-expired-p):
958 * url-dav.el (url-dav-process-date-property)
959 (url-dav-process-boolean-property, url-dav-process-DAV:status):
960 * url-http.el (url-http-chunked-encoding-after-change-function)
961 (url-http-wait-for-headers-change-function):
962 * url-ns.el (isInNet):
963 * url-parse.el (url-generic-parse-url):
964 * url-util.el (url-get-normalized-date): Replace `string-to-int'
965 by `string-to-number'.
966
967 2005-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
968
969 * url.el (url-retrieve-synchronously): Work around the fact that
970 url-http sometimes doesn't call the callback.
971
972 2005-04-04 Lute Kamstra <lute@gnu.org>
973
974 * url-handlers.el (url-handler-mode): Specify :group.
975
976 2005-02-26 James Cloos <cloos@jhcloos.com> (tiny change)
977
978 * url-history.el (url-have-visited-url): Don't barf if
979 url-history-hash-table is nil.
980
981 2005-02-14 Michael Welsh Duggan <md5i@cs.cmu.edu>
982
983 * url-http.el (url-http-parse-headers): Test url-automatic-caching.
984
985 2005-01-22 Klaus Straubinger <KSNetz@Arcor.DE> (tiny change)
986
987 * url-http.el (url-http-parse-headers) <302>: Reset url-http-data
988 to nil, like for the 303 response.
989
990 2005-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
991
992 * url.el (url-retrieve-synchronously): Use accept-process-output rather
993 than sit-for.
994
995 2005-01-03 Klaus Straubinger <ksnetz@arcor.de> (tiny change)
996
997 * url-http.el (url-http-handle-authentication):
998 Don't kill the current buffer.
999
1000 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
1001
1002 * url-handlers.el: Don't `require' everything eagerly.
1003
1004 2004-11-30 Paul Pogonyshev <pogonyshev@gmx.net>
1005
1006 * url-http.el (url-http-handle-cookies): Bind `url-current-object'
1007 to `url-http-cookies-sources' so that cookies are attributed to
1008 proper domain.
1009 (url-http): Make local variable `url-http-cookies-sources'.
1010
1011 2004-11-28 Andreas Schwab <schwab@suse.de>
1012
1013 * url-http.el (url-http-create-request): Don't add newline after
1014 the request data.
1015
1016 2004-11-20 Masatake YAMATO <jet@gyve.org>
1017
1018 * url.el (url-mm-callback): Delay the invocation
1019 of `mm-destroy-parts'. Invoke `mm-destroy-parts'
1020 when the buffer is killed.
1021
1022 2004-11-12 Masatake YAMATO <jet@gyve.org>
1023
1024 * url-mailto.el (url-mailto): Fix a typo in the comment.
1025
1026 2004-11-02 Masatake YAMATO <jet@gyve.org>
1027
1028 * url-imap.el (url-imap-open-host): Don't use
1029 `string-to-int'. The port returned by `url-port'
1030 is expected to be an integer.
1031
1032 * url-irc.el (url-irc): Ditto.
1033
1034 * url-news.el (url-news-open-host): Ditto.
1035
1036 * url-nfs.el (url-nfs-build-filename): Ditto.
1037
1038 2004-10-20 John Paul Wallington <jpw@gnu.org>
1039
1040 * url-gw.el (url-gateway-nslookup-host):
1041 Use `set-process-query-on-exit-flag'.
1042
1043 2004-10-10 Lars Hansen <larsh@math.ku.dk>
1044
1045 * url-auth.el:
1046 * url-cache.el:
1047 * url-cid.el:
1048 * url-dired.el:
1049 * url-expand.el:
1050 * url-ftp.el:
1051 * url-gw.el:
1052 * url-imap.el:
1053 * url-irc.el:
1054 * url-misc.el:
1055 * url-news.el:
1056 * url-ns.el:
1057 * url-privacy.el:
1058 * url-proxy.el: Update header and footer.
1059
1060 * url-vars.el: Update header.
1061
1062 2004-10-16 Richard M. Stallman <rms@gnu.org>
1063
1064 * url.el (url-do-setup): Don't set url-passwd-entry-func.
1065
1066 * url-vars.el (url-passwd-entry-func): Var deleted.
1067 (mm-mime-mule-charset-alist): Remove compatibility code for old Gnus.
1068 (url-weekday-alist): Rename from weekday-alist.
1069 (url-monthabbrev-alist): Rename from monthabbrev-alist.
1070 (url-vars-unload-hook): Initialize hook var to hold the function.
1071
1072 * url-util.el (url-get-normalized-date): Use url-weekday-alist and
1073 url-monthabbrev-alist.
1074
1075 * url-misc.el: Load cl at compile time.
1076
1077 * url-mailto.el: Don't load cl.
1078 (url-mailto): Fix call to `push'.
1079
1080 * url-gw.el (url-open-telnet): Use read-passwd.
1081
1082 * url-auth.el (url-basic-auth, url-digest-auth): Use read-passwd.
1083
1084 2004-10-12 Simon Josefsson <jas@extundo.com>
1085
1086 * url-vars.el (url-gateway-method): Add new method `tls'.
1087
1088 * url-news.el (url-snews): Use nntp-open-tls-stream if
1089 url-gateway-method is tls.
1090
1091 * url-ldap.el (url-ldap-certificate-formatter):
1092 Use tls-certificate-information if ssl.el is not available.
1093
1094 * url-https.el (url-https-create-secure-wrapper): Use tls if ssl
1095 is not available.
1096
1097 * url-gw.el (url-open-stream): Support tls url-gateway-method.
1098 (url-open-stream): Likewise.
1099
1100 2004-10-10 Lars Hansen <larsh@math.ku.dk>
1101
1102 * url-auth.el:
1103 * url-cache.el:
1104 * url-cookie.el:
1105 * url-dired.el:
1106 * url-file.el:
1107 * url-ftp.el:
1108 * url-handlers.el:
1109 * url-history.el:
1110 * url-irc.el:
1111 * url-mailto.el:
1112 * url-methods.el:
1113 * url-misc.el:
1114 * url-news.el:
1115 * url-nfs.el:
1116 * url-parse.el:
1117 * url-privacy.el:
1118 * url-vars.el:
1119 * url.el:
1120 * url-util.el: Fix copyright notice.
1121
1122 2004-10-06 Stefan Monnier <monnier@iro.umontreal.ca>
1123
1124 * url-handlers.el (url-insert-file-contents): Use the URL to decide the
1125 encoding, not the buffer-file-name (which might not even exist).
1126
1127 2004-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
1128
1129 * url-handlers.el (url-insert-file-contents): Decode contents.
1130
1131 2004-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
1132
1133 * url-util.el (url-debug): Use with-current-buffer.
1134
1135 * url-nfs.el (url-nfs-file-attributes): Add id-format parameter.
1136 (url-nfs-create-wrapper): Use new backquote syntax.
1137
1138 * url-https.el (url-https-file-attributes): Add id-format param.
1139
1140 * url-http.el (url-http-head-file-attributes)
1141 (url-http-file-attributes): Add id-format parameter.
1142
1143 * url-handlers.el: Use new find-file-hook.
1144 (url-file-attributes): Add id-format parameter.
1145
1146 * url-file.el (url-file-create-wrapper): Use new backquote syntax.
1147 (url-file-file-attributes): Add id-format parameter.
1148
1149 * url-dav.el: Use with-current-buffer.
1150 (url-dav-process-response): Fix regexps and spurious quote.
1151 (url-dav-file-attributes): Add id-format param.
1152
1153 2004-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
1154
1155 * url.el (url-retrieve): Use with-current-buffer.
1156
1157 * url-http.el (url-http-parse-headers, url-http-file-exists-p):
1158 Remove unused var `version'.
1159
1160 * url-handlers.el (url-handler-mode): New minor mode.
1161 (url-setup-file-name-handlers): Remove.
1162
1163 2004-04-12 John Paul Wallington <jpw@gnu.org>
1164
1165 * url-cookie.el (url-cookie-handle-set-cookie): Replace calls
1166 to obsolete `assoc-ignore-case' with calls to `assoc-string'.
1167
1168 2004-04-11 Dave Love <fx@gnu.org>
1169
1170 * url-mailto.el (url-mailto):
1171 * url-history.el (url-history-setup-save-timer):
1172 * url-cookie.el (url-cookie-setup-save-timer): Avoid warnings.
1173
1174 * url-file.el (url-file-build-filename): Don't use
1175 directory-sep-char.
1176
1177 * url-auth.el (url-register-auth-scheme): Fix `format' call.
1178
1179 * url-about.el (url-scheme-registry): Defvar.
1180 (url-about): Use text/plain.
1181
1182 * url-vars.el (cl): Don't require.
1183 (url): Add :version.
1184 (url-bug-address): Use bug-gnu-emacs.
1185
1186 * url-util.el (url-hexify-string): Don't give multibyte error
1187 for char <16.
1188 (mail-header-extract): Autoload.
1189
1190 * url-parse.el: Doc fixes.
1191
1192 * url-ldap.el (ldap): Require.
1193 (url-ldap): Fix `format' call.
1194 (url-ldap-certificate-formatter): Avoid warning.
1195
1196 * url-https.el (url-https-create-secure-wrapper): Use modern backquotes.
1197
1198 * url-dav.el (url-dav-rename-file): Fix args of `signal'.
1199 (url-intersection): New.
1200 (url-dav-supported-p): Use it.
1201 (url-dav-save-resource): Declare url-http-response-status special.
1202
1203 * url-cache.el (url-util): Require.
1204
1205 2004-04-10 Miles Bader <miles@gnu.org>
1206
1207 RCS keyword removal (only non-comment changes are enumerated here):
1208
1209 * url-vars.el (url-version): Use the constant string "Emacs"
1210 instead of calculating something from the RCS `State' keyword
1211 [the latter is almost entirely useless anyway].
1212
1213 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1214
1215 * url-methods.el:
1216 * url-parse.el: Don't require url-auto.
1217
1218 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1219
1220 * url: Imported the URL package from its own CVS repository into Emacs.
1221
1222 ===========================================================================
1223 ===========================================================================
1224 Copy of the ChangeLog file from URL's own CVS repository:
1225 ===========================================================================
1226 ===========================================================================
1227
1228 2003-07-16 Dave Love <fx@gnu.org>
1229
1230 * lisp/url.el (url-retrieve-synchronously): Revert last change.
1231 Should be revisited.
1232
1233 2003-06-26 Sam Steingold <sds@gnu.org>
1234
1235 * lisp/url-handlers.el (url-handlers-create-wrapper): Do not call
1236 method on invalid urls.
1237
1238 2003-05-29 Dave Love <fx@gnu.org>
1239
1240 * lisp/url.el (url-retrieve-synchronously): Use sleep-for, not
1241 sit-for. From monnier@gnu.org.
1242
1243 2002-11-04 Walter C. Pelissero <walter@pelissero.org>
1244
1245 * lisp/url-methods.el (url-scheme-register-proxy): Make sure to convert
1246 port numbers to integers when creating the URL objects for proxies.
1247
1248 2002-10-29 William M. Perry <wmperry@gnu.org>
1249
1250 * lisp/url-http.el (url-http-parse-headers): When doing a
1251 redirect, some broken software (sourceforge) sends a redirect to
1252 '/', which is blatantly illegal (see section 14.30 of the HTTP/1.1
1253 specification). I wish we could deal with such lame software
1254 appropriately (spank the authors), but this is the web, so we have
1255 to kow-tow to the servers.
1256
1257 2002-10-27 William M. Perry <wmperry@gnu.org>
1258
1259 * lisp/url-http.el (url-http-create-request): If we are talking to
1260 the default port for a the selected protocol, do NOT send the port
1261 in the HOST header. This fixes the login page at sourceforge.
1262
1263 2002-09-17 William M. Perry <wmperry@gnu.org>
1264
1265 * lisp/url-http.el (url-http-handle-cookies): New function to deal
1266 with cookie headers.
1267 (url-http-parse-headers): Call `url-http-handle-cookies' here so
1268 that cookie additions and deletions get handled immediately.
1269 This is so that sites that set cookies while doing redirects
1270 (my.yahoo.com, outlook web access, etc) work. This should also
1271 fix sites that delete cookies on invalid access or other error
1272 pages the user might not actually see.
1273 (url-http-parse-headers): Silently convert non-HEAD and non-GET
1274 methods to GET in redirects. Too many web sites do this now, and
1275 it is just likely to confuse users.
1276
1277 2002-05-17 Dave Love <fx@gnu.org>
1278
1279 * texi/url.txi: Start making it vaguely useful.
1280
1281 * texi/Makefile.in (install): Cope with Debian install-info.
1282 From Kai.Grossjohann@CS.Uni-Dortmund.DE (Kai Grossjohann).
1283
1284 2002-04-22 Dave Love <fx@gnu.org>
1285
1286 * lisp/url-misc.el (man): Autoload to avoid warning.
1287 (url-man): Don't require man here.
1288 (url-data): Generalize in line with the RFC.
1289
1290 * lisp/url-gw.el (url-open-stream): Remove obsolete `tcp' case.
1291
1292 * lisp/url-vars.el: Doc fixes.
1293 (url-mime-charset-string): New function.
1294 (url-mime-charset-string): Use it to set the variable.
1295 (url-set-mime-charset-string): New function.
1296 (set-language-environment-hook): Use it.
1297 (url-vars-unload-hook): New function.
1298
1299 * lisp/url-cookie.el (url-header-comparison): Delete.
1300 (url-cookie-handle-set-cookie): Use assoc-ignore-case to avoid assoc*.
1301 (url-cookie-save-interval): Make value agree with doc.
1302
1303 * lisp/url.el: Doc fixes.
1304 (url-mm-callback): Don't call mm-destroy-parts immediately for
1305 external viewing -- set up a process sentinel.
1306
1307 2002-02-02 William M. Perry <wmperry@gnu.org>
1308
1309 * lisp/Makefile.in (SOURCES): Remove mule-sysdp.el from the build rules.
1310
1311 2001-12-12 William M. Perry <wmperry@gnu.org>
1312
1313 * lisp/url-vars.el (url-nonrelative-link): Patch from Stefan
1314 Monnier to use ` instead of ^ to match the relative link.
1315
1316 2001-12-10 William M. Perry <wmperry@gnu.org>
1317
1318 * lisp/url-dav.el (url-dav-file-attributes): Fix bad call to
1319 plist-get (reversed args).
1320
1321 * lisp/url-file.el (url-file-build-filename): Make sure that we
1322 have a parsed URL in this function.
1323
1324 2002-01-22 Dave Love <fx@gnu.org>
1325
1326 * lisp/url-cache.el (url-cache-file-writable-p): Doc fix.
1327
1328 * lisp/url-imap.el (url-imap): Maybe disable multibyte.
1329 Bind coding-system-for-read. Require mm-util.
1330
1331 * lisp/url.el (url-do-setup): Use (featurep 'xemacs).
1332
1333 * lisp/mule-sysdp.el: Removed (obsolete).
1334
1335 2001-12-09 William M. Perry <wmperry@gnu.org>
1336
1337 * lisp/url-dav.el (url-dav-delete-something): Utility macro to
1338 remove an arbitrary resource.
1339 (url-dav-delete-directory): Use it.
1340 (url-dav-delete-file): Ditto.
1341 (url-dav-make-directory): New function.
1342 (url-dav-rename-file): New function.
1343 (url-dav-register-handler): New function to easily register a
1344 WebDAV-specific file-name-handler operation.
1345 (url-dav-file-name-all-completions, url-dav-file-name-completion):
1346 New functions that allow file-name completion for WebDAV resources.
1347
1348 2001-12-08 William M. Perry <wmperry@gnu.org>
1349
1350 * lisp/url-dav.el (url-dav-directory-files): New function to
1351 mimic `directory-files' for WebDAV.
1352 (url-dav-delete-directory): New function to mimic
1353 `delete-directory' for WebDAV.
1354
1355 2001-12-06 William M. Perry <wmperry@gnu.org>
1356
1357 * lisp/url-dav.el (url-dav-process-DAV:locktoken): Parse the
1358 DAV:locktoken hrefs into a usable format.
1359 (url-dav-process-response): Use an unwind-protect to make sure
1360 that we clean up the buffer, even if there is a parsing error.
1361 (url-dav-request): New function to act as the main entry point for
1362 making DAV requests. Takes care of building the XML document with
1363 appropriate namespaces, depth, etc, and parses the results.
1364 (url-dav-get-properties): Use new url-dav-request function.
1365 This is now just a thin wrapper around that to use PROPFIND and set any
1366 extra properties we are looking for.
1367 (url-dav-unlock-resource): New function to release a lock given a
1368 URL and a lock-token.
1369 (url-dav-process-DAV:getlastmodified)
1370 (url-dav-process-DAV:creationdate)
1371 (url-dav-process-DAV:iscollection)
1372 (url-dav-process-DAV:ishidden): Fix typos! Its url-dav-*, not
1373 url-dave-*!
1374 (url-dav-active-locks): New function to get a list of all the
1375 active locks for a resource.
1376 (url-dav-save-resource): New function to actually save a resource
1377 using the PUT method. I can now successfully save files to an
1378 HTTP server with some manual steps from a lisp-interaction buffer.
1379
1380 * lisp/url-http.el (url-http-wait-for-headers-change-function):
1381 Special case the 204/205 response codes. Some servers do not
1382 send back a 0 content-length for these, and we would hang.
1383 (url-http-parse-headers): Mark 204/205 response codes as
1384 'successful' so that the callbacks get activated.
1385 (url-http-options): Fix unbound variable usage.
1386
1387 * lisp/url-dav.el: Added full copyright information.
1388 (url-dav-process-response): Make sure that we create a DAV:status
1389 property when parsing a singleton response.
1390 (url-dav-file-attributes): If the properties returned did not have
1391 a successful HTTP response code, then ignore them and use the
1392 HEAD-based attributes.
1393
1394 * lisp/vc-dav.el: Added full copyright information.
1395
1396 * lisp/url-dav.el (url-dav-process-supportedlock-property):
1397 Deal with text nodes in DAV:supportedlock nodes.
1398 (url-dav-file-attributes-mode-string): This now gets the entire
1399 property list instead of just the DAV:supportedlock node.
1400 (url-dav-file-attributes): Make sure to pass the whole list in.
1401 (url-dav-file-attributes-mode-string): Now properly sets do 'd' mode.
1402 (url-dav-file-attributes-mode-string): Now uses the Apache mod_dav
1403 'executable' bit to set the 'x' mode. See `mod_dav's custom
1404 properties' at http://www.webdav.org/mod_dav/ for more details.
1405 (url-dav-find-parser): New function to find the proper parser for
1406 a node-type. Looks for
1407 url-dav-process-XXX (url-dav-process-DAV:prop), otherwise falls
1408 back to using url-dav-node-text. Caches the results on the nodes
1409 symbol name.
1410 (url-dav-dispatch-node): Utility routine to call a nodes handler easily.
1411 (url-dav-process-*): Rename most of the handlers and made them
1412 use url-dav-dispatch-node where appropriate.
1413 (url-dav-process-DAV:prop): Instead of using the dav-data-type
1414 property to dispatch the node, now uses dav-dispatch-node so that
1415 it is easy to add parsers for special nodes.
1416 (url-dav-process-DAV:depth, url-dav-process-DAV:resourcetype)
1417 (url-dav-process-DAV:locktype, url-dav-process-DAV:lockscope)
1418 (url-dav-process-DAV:getcontentlength)
1419 (url-dave-process-DAV:getlastmodified)
1420 (url-dave-process-DAV:creationdate)
1421 (url-dave-process-DAV:iscollection)
1422 (url-dave-process-DAV:ishidden): Aliases for the generic
1423 url-dav-process-foo-property routines.
1424 (url-dav-process-DAV:activelock)
1425 (url-dav-process-DAV:lockdiscovery): Can now correctly parse
1426 DAV:lockdiscovery nodes, so that we can find out who has a
1427 resource locked and properly parse the reponse to a LOCK request.
1428 (url-dav-process-DAV:status): Now parses out the numeric status
1429 from the HTTP response line.
1430 (url-dav-process-response): New function to handle all the
1431 parsing of an XML response from WebDAV. This handles all the
1432 logic of checking the response content-type to make sure it is
1433 XML, parses the tree, and interprets the tree.
1434 (url-dav-process-response): Make sure that all responses look
1435 like a DAV:multistatus response, even if we get a singleton
1436 response back. This will just make the upper layer logic simpler.
1437 (url-dav-get-properties): New optional argument NAMESPACES that
1438 specifies what namespaces to use in the XML request.
1439 (url-dav-get-properties): Got rid of the D: namespace in
1440 requests. It doesn't save that much space. Just use DAV:
1441 (url-dav-lock-identifier): New variable that should hold a URI
1442 pointing to contact information for the user. This will be used
1443 as the contents of the DAV:owner/DAV:href tag to identify the
1444 owner of a LOCK when requesting it. This will be shown to other
1445 users when the DAV:lockdiscovery property is requested, so make
1446 sure you are comfortable with it leaking to the outside world.
1447 (url-dav-lock-resource): New function to LOCK a dav resource.
1448
1449 2001-12-05 William M. Perry <wmperry@gnu.org>
1450
1451 * lisp/url-dav.el (url-dav-get-properties): New argument
1452 ATTRIBUTES that allows you to ask for specific properties instead
1453 of getting all properties via DAV:allprop.
1454
1455 * lisp/url-http.el (url-http-real-basic-auth-storage):
1456 New variable for normal HTTP basic authentication.
1457 (url-http-proxy-basic-auth-storage): New variable for HTTP proxy
1458 basic authentication.
1459 (url-http-handle-authentication): Follow new semantics for
1460 url-basic-auth-storage.
1461
1462 * lisp/url-auth.el (url-basic-auth-storage): Change meaning of
1463 this variable. It is now a symbol pointing to where we really
1464 want to store the authorization information. This fixes proxy
1465 auth and normal basic auth because of some local bindings that were
1466 making it impossible to store the credentials in the global binding.
1467 (url-basic-auth): Make sure we dereference url-basic-auth-storage
1468 everywhere.
1469
1470 * lisp/url-util.el (url-debug): Add new types 'dav and
1471 'retrieval to the customization list.
1472
1473 * lisp/url.el (url-retrieve-synchronously): Put in some debugging
1474 statements.
1475
1476 * lisp/url-http.el (url-http-head-file-attributes): Rename old
1477 url-http-file-attributes so that we can have a smarter one that
1478 tries WebDAV first, then HEAD.
1479 (url-http-file-attributes): New smart version that tries WebDAV first.
1480 (url-http-options): New function that returns information gleaned
1481 from an OPTIONS request for a URL. Returns a property list
1482 returning the methods supported for the resource, what DAV and
1483 DASL levels are supported, p3p information, and whether
1484 byte-ranges are supported or not.
1485 (url-http-wait-for-headers-change-function): If we got a 0-byte
1486 content-length, activate the callback immediately.
1487 (url-http-wait-for-headers-change-function): For content-length
1488 responses with actual body-data in the chunk we are handling, call
1489 url-http-content-length-after-change-function with the remaining
1490 data. Otherwise we can deadlock if the headers and the entire
1491 body exist arrive in one chunk.
1492
1493 * lisp/url-dav.el: New file to contain the WebDAV
1494 (http://www.webdav.org/) implementation.
1495 (url-dav-supported-p): Cheap way to figure out whether we will be
1496 able to do DAV at all. We rely on the XML parser expanding
1497 namespaces for us, and currently you need a patched version of
1498 xml.el to do this. Patch sent to author for consideration.
1499 (url-dav-file-attributes): Much more complete version of
1500 `file-attributes' using the WebDAV PROPFIND method. Now correctly
1501 finds out whether something is a directory (a WebDAV collection),
1502 the last modification time, and permissions (based on the
1503 DAV:supportedlock information).
1504 (url-dav-get-properties): Generic interface to get WebDAV
1505 properties for a URL. Can specify an optional `depth' parameter
1506 to tell the web server how many directory (collection) levels to
1507 recurse when retrieving the property lists. Returns an assoc
1508 list keyed off of the resource, the cdr of which is a property list.
1509 (url-dav-datatype-attribute): We support the XML-Data note
1510 (http://www.w3.org/TR/1998/NOTE-XML-data) to figure out what the
1511 datatypes of attributes are. Currently only date, dateTime, int,
1512 number, float, boolean, and uri are supported.
1513
1514 2001-12-04 William M. Perry <wmperry@gnu.org>
1515
1516 * lisp/url-handlers.el (file-name-absolute-p): New hooked
1517 version. If the filename matches our regexp, then it is always
1518 absolute, so just return `t'.
1519 (expand-file-name): New hooked version. If the fragment is an
1520 absolute file or URL, then expand it relative to '/'.
1521 (url-handler-regexp): New regexp for specific schemes that we
1522 want the file-name-handlers to work off of.
1523 (url-setup-file-name-handlers): Use it when installing the handlers.
1524
1525 * lisp/url-http.el (url-http-find-free-connection): Better logging
1526 about whether we are reusing an existing connection or not.
1527
1528 * lisp/url-methods.el (url-scheme-register-proxy): Fix bad call
1529 to string-match instead of match-string (and with reversed
1530 arguments even).
1531
1532 * lisp/url-http.el (url-http-debug): Change to now use the
1533 generic url-debug function to do the actual logging. Still a
1534 separate function so that we can do our magic on the network
1535 connection if the user quits while we are downloading.
1536
1537 * lisp/url-handlers.el (url-file-handler): Now logs the result of
1538 the hooked or real call.
1539
1540 * lisp/url-util.el (url-debug): New function for generic debug logging.
1541
1542 2001-11-28 William M. Perry <wmperry@gnu.org>
1543
1544 * lisp/url-imap.el (url-imap-open-host): Use backquote.
1545 (url-imap): Now switches to 'login as the imap authenticator if
1546 the URL provides a username and password.
1547
1548 * lisp/url-handlers.el (url-setup-file-name-handlers): Use cl &
1549 push to replace some strange logic in here.
1550 (url-run-real-handler): New function to run the real hooks in
1551 case we get a false positive or an operation that we do not
1552 support. The old way disabled _ALL_ file-name-handlers when
1553 we hit something we didn't understand - this disables JUST us.
1554 (url-file-handler): Remove the logic about removing the leading
1555 '/' off of the first argument... it may not be safe to always
1556 assume that the first argument is the one we are acting on -
1557 `default' is the second argument for expand-file-name for example.
1558 (url-setup-file-name-handlers): Use url-nonrelative-link
1559 directly. This means that you must type in the URL directly
1560 without prefixing it with a '/'.
1561
1562 (gnus-cache-articles-in-group "nnml+mail:comp.emacs-devel")
1563
1564 Ends up calling (expand-file-name "nnml+mail:comp.emacs-devel" ...)
1565 which activates us (because 'nnml+mail' _is_ a valid scheme name
1566 for a URI). We get thoroughly confused and end up returning
1567 `nil' when we shouldn't.
1568
1569 2001-11-26 William M. Perry <wmperry@gnu.org>
1570
1571 * lisp/url-handlers.el (file-writable-p): Add NULL handler for
1572 this so that visiting a URL directly will work.
1573 (file-symlink-p): Ditto.
1574 (url-insert-file-contents): If `visit' is non-nil then make sure
1575 we set buffer-file-name. After these changes you can visit
1576 http://www.gnu.org/ directly from the minibuffer.
1577 (url-insert-file-contents): When inserting the file contents,
1578 use a save-excursion so that we behave just like the original.
1579
1580 2001-11-25 William M. Perry <wmperry@gnu.org>
1581
1582 * lisp/url-util.el (url-hexify-string): Fix bad use of mapconcat.
1583
1584 2001-11-24 William M. Perry <wmperry@gnu.org>
1585
1586 * lisp/url-about.el (url-about): New loader scheme to handle
1587 about:foo URLs. Automatically tries to find a `url-about-foo'
1588 function to display the actual data.
1589 (url-about-protocols): Implement about:protocols.
1590
1591 * lisp/url-http.el (url-http): Make sure that we signal an error
1592 when we cannot open a network connection for whatever reason.
1593 Before, it would just silently clean up after itself and the user
1594 got absolutely no indication that an error had occurred. If the
1595 error should truly be ignored, the caller should do that for us.
1596 (url-http-chunked-encoding-after-change-function): Doh! Need to
1597 user marker-position in some log messages now that
1598 url-http-chunked-start is a marker.
1599
1600 2001-11-22 William M. Perry <wmperry@gnu.org>
1601
1602 * lisp/url-https.el: Fixed definition of url-https - was using the
1603 wrong signature. Too much cut & paste.
1604 (url-https-create-secure-wrapper): Fix so that url-https works
1605 at all. Was not taking a null `method' into account when calling
1606 the wrapped function so url-https tried to call url-http-nil. *sigh*
1607
1608 * lisp/url-http.el
1609 (url-http-chunked-encoding-after-change-function): Add some
1610 feedback when not debugging about what content-type and chunk # we
1611 are reading.
1612 (url-http-chunked-encoding-after-change-function): Use a marker
1613 for url-http-chunked-start so that we can safely delete the
1614 chunk-tokens instead of just marking them as invisible.
1615 (url-http-chunked-encoding-after-change-function): Actually delete
1616 the chunk-tokens. Now that we are not run from 'real'
1617 after-change functions, this is safe, and the right thing to do.
1618 Otherwise the HTML parser still saw them and inferred all sorts of
1619 bad things about the document (ie: nothing had a title!)
1620
1621 2001-11-21 William M. Perry <wmperry@gnu.org>
1622
1623 * lisp/url-http.el (url-http-debug): Document this variable.
1624 People other than I might want to use it.
1625 (url-http-debug): Put some code in here to check quit-flag
1626 directly. When the chunked encoding went into a tight spin, your
1627 Emacs would be wedged forever. This short-circuits all the
1628 after-change functions and signals an error.
1629 (url-http-debug): If url-http-debug is non-nil and non-t, then log
1630 the debug messages using `message' as well as sending them to the
1631 buffer.
1632 (url-http-chunked-encoding-after-change-function): Got rid of the
1633 no-initial-crlf. Had an epiphany and I can just infer this from
1634 url-http-chunked-counter being 0.
1635 (url-http-chunked-encoding-after-change-function): Move the debug
1636 statement about reading chunk #foo into the loop so that each
1637 chunk will have a log message associated with it.
1638 (url-http-chunked-encoding-after-change-function): Make sure to
1639 set read-next-chunk to nil when the regular expression match fails
1640 to fire. Otherwise we could loop forever.
1641 (url-http-chunked-encoding-after-change-function): Tweak the
1642 regular expression to be a little less greedy when looking for a chunk.
1643 (url-http-wait-for-headers-change-function): Remove the last
1644 argument when calling
1645 url-http-chunked-encoding-after-change-function. It is no longer
1646 needed. I should use my brain sometime.
1647
1648 * lisp/url-vars.el (and): Fix feature test for xemacs and
1649 coding-system-list behavior.
1650
1651 * lisp/url-http.el
1652 (url-http-chunked-encoding-after-change-function): Add optional
1653 no-initial-crlf flag that modifies the regular expression.
1654 This is only set from url-http-wait-for-headers-change-function so that
1655 the initial CRLF in the HTTP headers is not swallowed.
1656 (url-http-chunked-encoding-after-change-function): Fix a few
1657 off-by-one errors by using (match-end 0) instead of 1.
1658 (url-http-chunked-encoding-after-change-function): Add a few
1659 url-http-debug calls to help track down problems in the chunked
1660 encoding.
1661 (url-http-chunked-encoding-after-change-function): The chunk
1662 reading in here is now in a while loop so that if Emacs feeds us a
1663 chunk of data that happens to contain more than one 'chunk'
1664 delimiter, we behave correctly.
1665 (url-http-wait-for-headers-change-function): Make sure that we
1666 pass no-initial-crlf to
1667 url-http-chunked-encoding-after-change-function when passing
1668 initial data to the decoder.
1669 (url-http-generic-filter): url-http-debug statement so we can tell
1670 when/where our after-change-functions are being called.
1671
1672 2001-10-11 Dave Love <fx@gnu.org>
1673
1674 * lisp/url-handlers.el: Doc fixes.
1675 (string-match): Use (featurep 'xemacs).
1676
1677 * lisp/url-methods.el (url-scheme-get-property): Avoid `mapc'.
1678
1679 * lisp/url-proxy.el (url-find-proxy-for-url): Avoid `pop'.
1680
1681 * lisp/url-vars.el (url-running-xemacs): Delete.
1682 (url-gateway-unplugged): New variable.
1683
1684 * lisp/url-gw.el (url-open-stream): Use url-gateway-unplugged.
1685 Comment out OS/2 stuff.
1686
1687 2001-10-05 Dave Love <fx@gnu.org>
1688
1689 * lisp/url-mailto.el (url-mailto): Don't send auto-generated mail
1690 without confirmation.
1691
1692 2001-10-02 Dave Love <fx@gnu.org>
1693
1694 * lisp/url-http.el (url-http-create-request): Check cache for
1695 proxy-obj, if defined, rather than url.
1696 (url-http): Use dolist, not mapc (runtime cl dependency).
1697
1698 * lisp/url-methods.el: Maybe require cl at runtime.
1699 (url-scheme-register-proxy): Fix fetching from environment.
1700 Don't concat a number.
1701
1702 2001-10-01 Dave Love <fx@gnu.org>
1703
1704 * lisp/url-parse.el: Use modern backquote syntax.
1705
1706 * lisp/url-vars.el (url-uncompressor-alist): Add bzip2.
1707 (url-mail-command): Prefer compose-mail.
1708 (tcp-binary-process-input-services): Comment out.
1709 (url-working-buffer): New constant.
1710
1711 * lisp/url-util.el (url-extract-mime-headers): New function.
1712
1713 * lisp/url-mailto.el (url-mailto): Set source-url. Don't add
1714 User-Agent.
1715
1716 2001-09-20 Dave Love <fx@gnu.org>
1717
1718 * lisp/url-http.el (url-http-create-request): Don't concat a number.
1719
1720 2001-06-05 Dave Love <fx@gnu.org>
1721
1722 * lisp/url.el (url-do-setup): Doc fix. Don't try to frob
1723 tcp-binary-process-input-services. Remove function wrapper for lambda.
1724 (url-retrieve): Barf with sensible message if url-type is null.
1725
1726 * lisp/url-http.el (url-http): Don't try to set process
1727 coding-system here -- done in url-gw.
1728
1729 * lisp/url-gw.el (url-gw-inhibit-code-conversion): Remove.
1730 (url-open-stream): Bind coding-system-for{read,write} when setting
1731 up the connexion. Don't call url-gw-inhibit-code-conversion.
1732
1733 2001-05-24 William M. Perry <wmperry@gnu.org>
1734
1735 * lisp/url.el (url-retrieve-synchronously): Avoid accept-process-output
1736 in url-retrieve-synchronously.
1737
1738 2001-05-23 William M. Perry <wmperry@gnu.org>
1739
1740 * lisp/url.el (url-retrieve-synchronously): Don't put a timeout on
1741 accept-process-output. This is evidently causing hangs in Emacs
1742 21 when viewing complex pages with images or stylesheets.
1743 www.yahoo.com is now viewable.
1744
1745 * lisp/url-gw.el (url-open-stream): Avoid using mule-sysdp
1746 (mule-inhibit-code-conversion) and just have a local function that
1747 does this minimal cruft.
1748 (url-gw-inhibit-code-conversion): New function to turn off code
1749 conversion in a process.
1750
1751 2001-05-22 William M. Perry <wmperry@gnu.org>
1752
1753 * lisp/url.el (url-retrieve-synchronously): Use lexical-let so
1754 that we can allow multiple asynch retrievals to happen at once.
1755 (url-retrieve-synchronously): Use a much smaller timeout when
1756 doing the accept-process-output. This gets rid of the long delays
1757 if you are on a fast net connection and retrieve small documents
1758 that finish asynchronously before the first accept-process-output
1759 can be run. All hail broadband and 100Mb in the house!
1760 (url-retrieve-synchronously): Add documentation for this function.
1761 (url-retrieve): Ditto.
1762 (url-mm-url): Ditto.
1763
1764 * lisp/url-vars.el: Replaced `HTTP/1.0' with just `HTTP' in some
1765 documentation strings. Ok, so I'm anal.
1766
1767 * lisp/url-methods.el (url-scheme-methods): Add default methods
1768 for file-directory-p and file-truename.
1769
1770 2001-05-22 Dave Love <fx@gnu.org>
1771
1772 * lisp/url-auth.el (url-warn): Autoload.
1773
1774 * lisp/url-proxy.el (url-warn): Autoload.
1775
1776 * lisp/url-nfs.el: Fix `file-truname' typo.
1777
1778 * lisp/url-news.el: Require cl when compiling.
1779 (url-warn, gnus-group-read-ephemeral-group): Autoload.
1780 (url-nntp-default-port, url-news-default-port, url-nntp): Delete.
1781 (url-news-fetch-newsgroup): Declare gnus-group-buffer special.
1782
1783 * lisp/url-util.el (mule-decode-string): Don't autoload.
1784 (url-hexify-string): Just barf on multibyte characters.
1785 (url-generate-unique-filename): New function.
1786
1787 * lisp/url-file.el (url-file): Use url-generate-unique-filename,
1788 not mm-generate-unique-filename.
1789
1790 * lisp/url-http.el: Declare things special in various places.
1791 (url-http-activate-callback): Don't set
1792 url-http-real-after-change-function.
1793
1794 2001-05-22 William M. Perry <wmperry@gnu.org>
1795
1796 * lisp/url-http.el (url-http-attempt-keepalives): New variable to
1797 control whether we try to do keep-alives for our connections.
1798 (url-http-version): New variable to control whether we advertise
1799 ourselves as an HTTP/1.1 client or not. This can be useful for
1800 avoiding chunked encoding, and other 1.1 features we may not have
1801 fully implemented yet.
1802 (url-http-create-request): Honor the new variables.
1803
1804 2001-05-21 Dave Love <fx@gnu.org>
1805
1806 * lisp/url-vars.el (mm-mime-mule-charset-alist): Don't readjust it
1807 in XEmacs.
1808 (url-mime-charset-string): Don't reverse the list before sorting.
1809
1810 2001-05-17 William M. Perry <wmperry@gnu.org>
1811
1812 * lisp/url-http.el (url-http-generic-filter): Avoid using
1813 after-change-functions natively. There are just too many ways
1814 that this screws up in Emacs 21. Use a filter function on the
1815 process instead, and call the hook on
1816 url-http-after-change-function manually. [Actually, it will work
1817 in Emacs 21, but one problem that has been fixed in Emacs 21
1818 exists in Emacs 20. -- fx]
1819
1820 * lisp/url-vars.el (url-mime-charset-string): sort-coding-systems
1821 does not exist on older versions of Emacs, or any version of
1822 XEmacs. Do not call it unless it is bound.
1823
1824 2001-05-17 Dave Love <fx@gnu.org>
1825
1826 * lisp/url-http.el (url-http-create-request): Fix non-GET requests.
1827
1828 2001-05-16 Dave Love <fx@gnu.org>
1829
1830 * lisp/url-vars.el: Doc fixes. Require mm-util.
1831 (url-mime-charset-string): New variable.
1832
1833 * lisp/url-http.el: Doc fixes.
1834 (url-http-create-request): Rearrange how we assemble the request.
1835 Avoid generating bogus requests with an empty real-fname.
1836 (url-http-handle-authentication): Declare status and success special.
1837 (url-http): Call mm-disable-multibyte. Set process buffer's
1838 coding systems to binary.
1839
1840 * lisp/url-misc.el (url-data): Call mm-disable-multibyte.
1841
1842 * lisp/url-file.el: Don't require mule-sysdp. Fix `file-truname' typo.
1843 (url-file-find-possibly-compressed-file): Doc fix.
1844 (url-file): Bind coding-system-for-read. Call mm-disable-multibyte.
1845
1846 * lisp/url-cache.el: Don't require mule-sysdp.
1847 (url-store-in-cache): Avoid mule-write-region-no-coding-system.
1848
1849 * lisp/url.el: Don't require mule-sysdp.
1850 (url-retrieve): Only set text properties if url is a string.
1851
1852 2001-05-14 Dave Love <fx@gnu.org>
1853
1854 * lisp/url-http.el (url-http-create-request):
1855 Declare proxy-object, proxy-info special.
1856 (url-http-handle-authentication): Declare success special.
1857
1858 2001-05-12 Dave Love <fx@gnu.org>
1859
1860 * lisp/url-http.el: Revert last change.
1861
1862 2001-05-10 Dave Love <fx@gnu.org>
1863
1864 * lisp/url-http.el (url-http-generic-after-change-function):
1865 Make it permanent-local.
1866
1867 2001-05-05 Dave Love <fx@gnu.org>
1868
1869 * lisp/url-http.el: Autoload some functions.
1870 (cl): Require when compiling.
1871 (url-http-extra-headers): Defvar when compiling.
1872 (url-http): Treat after-change-functions as a local hook.
1873
1874 * lisp/url-history.el (url-parse): Require.
1875 (url-do-setup): Autoload.
1876
1877 * lisp/url-gw.el: Require url-vars. Autoload some functions.
1878
1879 * lisp/url-file.el: Require mailcap. Require cl when compiling.
1880 Use (featurep 'xemacs).
1881 (url-file-build-filename): Bind pos-index.
1882 (url-file): Call url-find-file-dired, not url-dired-find-file.
1883
1884 * lisp/url-dired.el: Add copyright notice. Autoload some functions.
1885 (url-dired-minor-mode-map): Use (featurep 'xemacs).
1886 (url-dired-find-file-mouse): Use mouse-set-point, not event-point.
1887 (url-find-file-dired): Rename from one version of url-dired-find-file.
1888
1889 * lisp/url-cid.el: Don't require widget. Require mm-decode
1890 unconditionally.
1891
1892 * lisp/url-util.el: Autoload mule-decode-string,
1893 timezone-parse-date, timezone-make-date-arpa-standard.
1894 (url-unreserved-chars): Fix list per RFC 2396.
1895 (url-hexify-string): Maybe string-make-unibyte.
1896
1897 * lisp/url-news.el: Require nntp.
1898
1899 * lisp/url-imap.el: Require cl when compiling. Require nnimap
1900 unconditionally.
1901
1902 2001-05-04 Dave Love <fx@gnu.org>
1903
1904 * lisp/url-handlers.el (url-file-local-copy): Use make-temp-file,
1905 not non-existent mailcap-generate-unique-filename.
1906
1907 * lisp/url-privacy.el: Require url-vars. Require cl when compiling.
1908
1909 * lisp/url-parse.el: Require url-vars.
1910 Autoload url-scheme-get-property.
1911
1912 * lisp/url-nfs.el: Require cl when compiling. Test for XEmacs
1913 with featurep.
1914
1915 * lisp/url-mailto.el: Require cl when compiling.
1916
1917 * lisp/url-cookie.el (url-cookie-handle-set-cookie):
1918 Call url-parse-args, not url-util-parse-args.
1919
1920 * lisp/url-cache.el (url-cache-expired): Remove bogus `return'.
1921
1922 2001-04-09 Dave Love <fx@gnu.org>
1923
1924 * lisp/mule-sysdp.el (mule-detect-coding-version)
1925 (mule-code-convert-region, mule-inhibit-code-conversion)
1926 (mule-write-region-no-coding-system, mule-encode-string)
1927 (mule-decode-string, mule-truncate-string)
1928 (mule-find-charset-region, mule-coding-system-name)
1929 (mule-find-coding-system, mule-make-iso-character): Grok Mule 5.0.
1930 [There must be a better way.]
1931 (mule-coding-system-p, string-width): Use defalias.
1932
1933 2001-01-03 Sam Steingold <sds@gnu.org>
1934
1935 * lisp/url-http.el (url-http-wait-for-headers-change-function):
1936 set `url-http-end-of-headers' to 0 for HTTP 0.9.
1937
1938 2001-01-02 Sam Steingold <sds@gnu.org>
1939
1940 * lisp/url-auth.el (provide): `url-auth', not `urlauth'.
1941
1942 2000-12-22 Dave Love <fx@gnu.org>
1943
1944 * lisp/url-history.el (url): Don't require (to avoid recursion).
1945 (cl): Require when compiling.
1946
1947 * lisp/url-http.el (url-auth): Require.
1948 (url-http-handle-authentication): Fix typo.
1949
1950 * lisp/url-cookie.el (url-cookie-setup-save-timer): Fix typo.
1951
1952 2000-12-20 Dave Love <fx@gnu.org>
1953
1954 * lisp/url.el: Require mm-decode, mm-view when compiling.
1955 <not (fboundp 'puthash)>: Define puthash and
1956 autoload other has functions rather than using cl-...hash.
1957 (url-warn): Define.
1958
1959 * lisp/url-ns.el, lisp/url-methods.el, lisp/url-http.el:
1960 Avoid cl-...hash functions.
1961
1962 * lisp/url-history.el: Avoid cl-...hash functions.
1963 (url): Require.
1964
1965 * lisp/url-gw.el, lisp/url-cookie.el: Require cl only when compiling.
1966
1967 2000-10-03 William M. Perry <wmperry@aventail.com>
1968
1969 * lisp/url-util.el (url-get-url-at-point): Guard against 'url'
1970 getting set to nil due to bad string matching. Subsequent matches
1971 would then choke because we passed string-match a nil.
1972
1973 * lisp/url-http.el (url-http-parse-headers): Need to make the
1974 connection as 'free' when we get a 304 response (found in cache),
1975 or when a keep-alive connection timed out, it would re-parse the
1976 headers and dispatch to the callback again. Eek.
1977
1978 2000-10-02 William M. Perry <wmperry@aventail.com>
1979
1980 * lisp/url-http.el (url-http-chunked-encoding-after-change-function):
1981 implement chunked transfer-coding.
1982 (url-http-create-request): We can now advertise ourselves as a 1.1
1983 compliant browser!
1984
1985 2000-07-28 Sam Steingold <sds@gnu.org>
1986
1987 * lisp/url-methods.el (url-scheme-default-loader): `callback' and
1988 `cbargs' are optional args (for calling from w3).
1989 (url-scheme-register-proxy): Typos fixes: `url-match' replaced
1990 with `string-match' and `protocol' with `scheme'.
1991
1992 2000-07-18 Sam Steingold <sds@gnu.org>
1993
1994 * lisp/url-handlers.el (require 'url): For url-retrieve-synchronously.
1995 * lisp/url-history.el (url-history-save-interval): Avoid circularity.
1996
1997 2000-07-10 William M. Perry <wmperry@aventail.com>
1998
1999 * lisp/mule-sysdp.el (mule-make-iso-character): If we are not in
2000 mule, and the character requested is > 255, then return "~"
2001 instead of letting whoever call us signal an error when they try
2002 to insert the character.
2003 (mule-make-iso-character): Also wrap the whole thing in a
2004 condition case and return "~" on error, in case make-char bombs on us.
2005
2006 * lisp/url-cid.el (url-cid): Fix stupid mistake in the loader
2007 for cid parts.
2008
2009 * lisp/url-util.el (url-display-percentage): New routine that uses
2010 the progress bar under XEmacs if available. Looks very sexy under
2011 XEmacs/GTK hacked to use the GNOME statusbar.
2012
2013 * lisp/url-http.el
2014 (url-http-content-length-after-change-function): Use new function
2015 url-display-percentage instead of url-lazy-message.
2016
2017 2000-01-27 William M. Perry <wmperry@aventail.com>
2018
2019 * lisp/url-file.el (url-file-build-filename): Work around for
2020 differences in ange-ftp / efs handling of port numbers other than 21.
2021
2022 1999-12-24 William M. Perry <wmperry@aventail.com>
2023
2024 * lisp/url-irc.el: Added pointer to draft specification for the
2025 IRC URL so people don't think I'm crazy.
2026
2027 * configure.in: Checks to make sure that Gnus was found, since we
2028 HAVE to have it now. Removed conditional compilation of url-cid.el.
2029
2030 1999-12-16 Eric Marsden <emarsden@mail.dotcom.fr>
2031
2032 * lisp/url-util.el (url-get-url-at-point): Allow URLs wrapped in
2033 () to have periods at the end of the chunk.
2034
2035 1999-12-14 William M. Perry <wmperry@aventail.com>
2036
2037 * lisp/url-misc.el (url-man): Implement `man' URL types.
2038 (url-info): Autoload.
2039 (url-man): Ditto.
2040 (url-rlogin): Ditto.
2041 (url-telnet): Ditto.
2042 (url-tn3270): Ditto.
2043 (url-generic-emulator-loader): Ditto.
2044
2045 * lisp/url-https.el (url-https-create-secure-wrapper): New macro
2046 to wrap arbitrary `http' methods with the appropriate magic to
2047 turn SSL on.
2048 (file-exists-p): Use it.
2049 (file-readable-p): Use it.
2050 (file-attributes): Use it.
2051
2052 * lisp/url-news.el (url-news-fetch-newsgroup): When building the
2053 server spec for Gnus, make sure we set
2054 nntp-open-connection-function directly, so that other news-related
2055 functions above us can set it.
2056 (url-snews): Implement `snews' URLs using `nntp-open-ssl-stream'.
2057 (url-nntp): Autoload.
2058 (url-snews): Ditto.
2059 (url-news): Ditto.
2060
2061 1999-12-12 William M. Perry <wmperry@aventail.com>
2062
2063 * lisp/url-http.el (url-http-parse-response): New function to
2064 parse just the HTTP response code out of the buffer, without
2065 taking any other actions.
2066 (url-http-wait-for-headers-change-function): Use it here when we
2067 know we have an HTTP/1.x response.
2068 (url-http-wait-for-headers-change-function): Special case a
2069 response code of '304' or there could be some delays waiting for
2070 keep-alives to time out on cached documents with no known
2071 content-length on the server.
2072
2073 1999-12-11 William M. Perry <wmperry@aventail.com>
2074
2075 * aclocal.m4 (AC_CHECK_CUSTOMLOADS): Don't use $(EMACS) in here -
2076 the Makefile does that for us. We just need to provide what files
2077 to load/functions to run.
2078
2079 * lisp/url-imap.el (url-imap-open-host): Need to bind
2080 nnimap-server-buffer or `nnimap-open-server' chokes trying to use
2081 the current buffer as the IMAP server buffer, which fails miserably.
2082
2083 1999-12-11 Simon Josefsson <jas@pdc.kth.se>
2084
2085 * lisp/url-imap.el: Initial (rough) implementation for IMAP urls.
2086
2087 1999-12-11 William M. Perry <wmperry@aventail.com>
2088
2089 * lisp/url-file.el (url-file-asynch-callback): Make the checks for
2090 ange-ftp vs. efs calling semantics consistent, so that if someone
2091 has NEITHER of them loaded, everything should still work.
2092
2093 * lisp/url-handlers.el (url-copy-file): Autoload.
2094 (url-file-local-copy): Ditto.
2095 (url-insert-file-contents): Ditto.
2096 (url-setup-file-name-handlers): Ditto.
2097
2098 1999-12-10 William M. Perry <wmperry@aventail.com>
2099
2100 * lisp/url-http.el (mail-parse): Since we use functions from here,
2101 we should require it, eh?
2102
2103 1999-12-10 Shenghuo ZHU <zsh@cs.rochester.edu>
2104
2105 * lisp/url-cookie.el (url-cookie-multiple-line): One line cookie
2106 if nil.
2107 (url-cookie-generate-header-lines): Use it.
2108
2109 1999-12-06 William M. Perry <wmperry@aventail.com>
2110
2111 * lisp/mule-sysdp.el (mule-code-convert-region): Deal with Mule
2112 4.1 gracefully.
2113
2114 * lisp/url-news.el: Reimplemented news and nntp URL support.
2115 No longer bothers to check for outdated Gnus versions, since this
2116 will not work without them anyway.
2117
2118 1999-12-05 Dave Love <fx@gnu.org>
2119
2120 * lisp/url-methods.el, lisp/url-proxy.el, lisp/url-util.el,
2121 lisp/url.el:
2122 Require url-parse.
2123
2124 1999-12-05 William M. Perry <wmperry@aventail.com>
2125
2126 * lisp/url-http.el (url-http-find-free-connection): Spit out a
2127 message when we have to contact a host so the user always gets
2128 at least some feedback.
2129
2130 * lisp/url-expand.el (url-expander-remove-relative-links): Moved and
2131 renamed function.
2132 (url-default-expander): Use it.
2133
2134 * lisp/url-file.el (url-file-asynch-callback): Deal with just efs-auto
2135 as well as efs.
2136 (url-file): Add default content-type of application/octet-stream if
2137 none known.
2138 (url-file): Correct bad call to url-host-is-local-p.
2139
2140 * lisp/url-handlers.el (url-insert-file-contents): Emacs doesn't
2141 like buffer-substring with nil arguments.
2142 (url-copy-file): Use mm-destroy-parts instead of just killing
2143 the buffer. Use defined interfaces when available!
2144 (url-insert-file-contents): Ditto.
2145
2146 * lisp/url-http.el (url-http-create-request): Lots of changes to
2147 get proxying working.
2148
2149 * lisp/url-methods.el (url-scheme-register-proxy): New function to
2150 find and register a proxy for a specific scheme.
2151 (url-scheme-get-property): Use it when we load a URL scheme for
2152 the first time.
2153
2154 * lisp/url-util.el (url-get-url-at-point): Re-integrated.
2155
2156 1999-12-04 William M. Perry <wmperry@aventail.com>
2157
2158 * lisp/url-file.el (url-file): Signal an error if
2159 url-file-build-filename could not find the filename.
2160
2161 1999-12-01 William M. Perry <wmperry@aventail.com>
2162
2163 * lisp/url.el (url-retrieve): Use url-history-update-url instead
2164 of manipulating the hash table directly.
2165
2166 * lisp/url-history.el (url-completion-function): New function to
2167 use for reading a URL with completion.
2168 (url-history-update-url): New function to hide the hashtable
2169 implementation from people inserting things into the history.
2170
2171 1999-11-30 William M. Perry <wmperry@aventail.com>
2172
2173 * lisp/url-proxy.el (url-proxy): Minor tweaks to get proxy support
2174 working.
2175
2176 * lisp/url-parse.el (url-generic-parse-url): Fix bad call to
2177 url-parse-args, which had changed the type of arguments it expects.
2178
2179 * lisp/url-handlers.el (url-insert-file-contents): Ditto.
2180 (url-copy-file): Ditto.
2181
2182 * lisp/url.el (url-mm-callback): Use mm-destroy-parts instead of
2183 just killing the buffer. Use defined interfaces when available!
2184
2185 * aclocal.m4 (AC_EMACS_LISP): Correctly redirect things out to
2186 AC_FD_CC so they show up in config.log
2187 (AC_EMACS_CHECK_LIB): Duh, fixed stupid mistake that would make
2188 this always return 't' instead of 'yes' on successfully finding
2189 the library.
2190
2191 * lisp/url-http.el (url-http-parse-headers): Add some
2192 DAV-specific error codes.
2193
2194 * lisp/url.el (url-retrieve): Allow pre-parsed URLs to be passed in.
2195 (url-retrieve-synchronously): Duh, make this function actually
2196 work again. Numerous problems with it, including variable name
2197 collisions - I love dynamically scoped lisps!
2198
2199 * lisp/url-nfs.el (url-nfs-create-wrapper): New function to create
2200 wrappers onto the appropriate file-based URLs for file-name-handlers.
2201
2202 * lisp/url-ftp.el: Moved the FTP stuff into it's own file - it
2203 might get messy with file-name-handlers and things.
2204
2205 * lisp/url-http.el (url-http-clean-headers): Fix problem when
2206 using 'HEAD' requests. Thou shalt not change the length of the
2207 region during an after-change-function.
2208
2209 * lisp/url-methods.el (url-scheme-methods): New variable that
2210 holds a list of the methods/variables we look for in a URL scheme.
2211 (url-scheme-get-property): Use it.
2212
2213 1999-11-29 William M. Perry <wmperry@aventail.com>
2214
2215 * lisp/url-http.el (url-http-file-attributes): Reimplement.
2216 (url-http-file-exists-p): Ditto.
2217
2218 * lisp/url-nfs.el: Reimplemented the `nfs' URL scheme.
2219
2220 * lisp/url-file.el (url-file-create-wrapper): New macro to create
2221 file-name-handler stubs for all the FTP/FILE stuff.
2222
2223 * lisp/url-handlers.el: New file to handle file-name-handler-alist
2224 cruft. Generic interface on top of functions that each URL
2225 loader provides, if capable.
2226
2227 1999-11-27 William M. Perry <wmperry@aventail.com>
2228
2229 * lisp/url-https.el: Implemented HTTPS support.
2230
2231 1999-11-26 William M. Perry <wmperry@aventail.com>
2232
2233 * url-privacy.el (url-setup-privacy-info): Don't rely on
2234 device-type being defined. Not going to bother redistributing
2235 devices.el for just one function.
2236
2237 * url-methods.el (url-scheme-get-property): Emacs does not have
2238 the 3rd-argument to plist-get to specify the default. *sigh*
2239
2240 * url-dired.el (add-minor-mode): Add definition for Emacs.
2241
2242 * url-http.el (url-http-generic-after-change-function):
2243 New function, since Emacs does not allow you to change the
2244 after-change-functions variable from within a function run by
2245 said hook. This just hands it off to the REAL function.
2246 Side-effect is that this now works on Emacs at all. :)
2247
2248 * Initial checkin of rewritten URL library.
2249
2250 ;; Local variables:
2251 ;; coding: utf-8
2252 ;; add-log-time-zone-rule: t
2253 ;; End:
2254
2255 Copyright (C) 1999, 2001, 2002, 2004, 2005,
2256 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
2257
2258 This file is part of GNU Emacs.
2259
2260 GNU Emacs is free software: you can redistribute it and/or modify
2261 it under the terms of the GNU General Public License as published by
2262 the Free Software Foundation, either version 3 of the License, or
2263 (at your option) any later version.
2264
2265 GNU Emacs is distributed in the hope that it will be useful,
2266 but WITHOUT ANY WARRANTY; without even the implied warranty of
2267 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2268 GNU General Public License for more details.
2269
2270 You should have received a copy of the GNU General Public License
2271 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
2272
2273 ;; arch-tag: ac117078-3091-4533-be93-098162ac2926