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