comparison lisp/gnus/ChangeLog @ 107427:ecbe0edc4f69

Stop message.el from loading about 40 libraries it doesn't always need. The general approach is to autoload rather than require, and to require in the specific functions rather than the file. (Bug#5642) * url/url.el: Move mailcap require earlier in the file. * gnus/gmm-utils.el: Don't require wid-edit. (widget-create-child-value, widget-convert, widget-default-get): Autoload. * gnus/gnus-util.el: Don't require time-date, netrc. (message-fetch-field, gnus-group-name-decode): Declare rather than autoloading. (gnus-fetch-field): Require message. (gnus-decode-newsgroups): Require gnus-group. * gnus/ietf-drums.el: Don't require time-date. * gnus/message.el: Don't require hashcash, canlock, ecomplete. Do require mail-utils. Require nnheader only when compiling. (smtpmail-default-smtp-server): Remove declaration. (message-send-mail-function): Check smtpmail-default-smtp-server is bound rather than requiring smtpmail. (message-auto-save-directory, message-insert-signature): Use expand-file-name rather than nnheader-concat. (nnheader-insert-file-contents): Autoload. (hashcash-wait-async): Declare. (message-send-mail): Only call gnus-setup-posting-charset if gnus-group-posting-charset-alist is bound. Require hashcash if needed. (message-send-mail-with-sendmail): Require sendmail. (canlock-password, canlock-password-for-verify): Declare. (message-canlock-password): Require canlock. (nnheader-get-report): Autoload. (gnus-setup-posting-charset): Declare. (message-send-news): Require gnus-msg. (message-make-references, message-make-in-reply-to): Use mail-header-id rather than the alias mail-header-message-id. (ecomplete-add-item, ecomplete-save): Declare. (message-put-addresses-in-ecomplete): Require ecomplete. (ecomplete-display-matches): Autoload. * gnus/mm-decode.el: Don't require mailcap, gnus-util. (gnus-map-function, gnus-replace-in-string, gnus-read-shell-command) (message-fetch-field, mailcap-parse-mailcaps, mailcap-mime-info): Autoload. (mailcap-mime-extensions): Declare. * gnus/mm-encode.el: Don't require mailcap. (mailcap-extension-to-mime): Autoload. * gnus/mml-sec.el: Don't require password-cache. * gnus/mml.el (gnus-setup-posting-charset): Declare rather than autoload. (mailcap-parse-mimetypes, mailcap-mime-types): Declare. (mml-minibuffer-read-type): Require mailcap. (mml-preview): Require gnus-msg. * gnus/mml1991.el: Require password-cache. (password-cache-expiry): Remove declaration. * gnus/mml2015.el: Require password-cache. (password-cache-expiry): Remove declaration. * gnus/nneething.el (mailcap): Require mailcap. * gnus/nnheader.el: (declare-function): Add compatibility stub. (message-remove-header): Declare rather than autoload. (nnheader-replace-header): Require message. * gnus/nnimap.el (declare-function): Add compatibility stub. (netrc-parse, netrc-machine-user-or-password): Declare. (nnimap-open-connection): Require netrc. * gnus/nntp.el (declare-function): Add compatibility stub. (netrc-parse, netrc-machine, netrc-get): Declare. (nntp-send-authinfo): Require netrc. * gnus/rfc2047.el: Don't require qp. (quoted-printable-encode-region, quoted-printable-decode-string): Autoload. * gnus/sieve-mode.el: Don't require easymenu. (easy-menu-add-item): Autoload it. * gnus/spam-stat.el (time-to-number-of-days): Autoload it. * password-cache.el (password-cache, password-cache-expiry): Autoload.
author Glenn Morris <rgm@gnu.org>
date Thu, 18 Mar 2010 19:55:37 -0700
parents e003508e60b1
children 02eb32da1fbb
comparison
equal deleted inserted replaced
107426:e3c196b081c6 107427:ecbe0edc4f69
1 2010-03-19 Glenn Morris <rgm@gnu.org>
2
3 Stop message.el from loading about 40 libraries it doesn't always need.
4 The general approach is to autoload rather than require, and to
5 require in the specific functions rather than the file. (Bug#5642)
6
7 * gmm-utils.el: Don't require wid-edit.
8 (widget-create-child-value, widget-convert, widget-default-get):
9 Autoload.
10
11 * gnus-util.el: Don't require time-date, netrc.
12 (message-fetch-field, gnus-group-name-decode): Declare rather than
13 autoloading.
14 (gnus-fetch-field): Require message.
15 (gnus-decode-newsgroups): Require gnus-group.
16
17 * ietf-drums.el: Don't require time-date.
18
19 * message.el: Don't require hashcash, canlock, ecomplete.
20 Do require mail-utils. Require nnheader only when compiling.
21 (smtpmail-default-smtp-server): Remove declaration.
22 (message-send-mail-function): Check smtpmail-default-smtp-server
23 is bound rather than requiring smtpmail.
24 (message-auto-save-directory, message-insert-signature): Use
25 expand-file-name rather than nnheader-concat.
26 (nnheader-insert-file-contents): Autoload.
27 (hashcash-wait-async): Declare.
28 (message-send-mail): Only call gnus-setup-posting-charset if
29 gnus-group-posting-charset-alist is bound. Require hashcash if needed.
30 (message-send-mail-with-sendmail): Require sendmail.
31 (canlock-password, canlock-password-for-verify): Declare.
32 (message-canlock-password): Require canlock.
33 (nnheader-get-report): Autoload.
34 (gnus-setup-posting-charset): Declare.
35 (message-send-news): Require gnus-msg.
36 (message-make-references, message-make-in-reply-to): Use mail-header-id
37 rather than the alias mail-header-message-id.
38 (ecomplete-add-item, ecomplete-save): Declare.
39 (message-put-addresses-in-ecomplete): Require ecomplete.
40 (ecomplete-display-matches): Autoload.
41
42 * mm-decode.el: Don't require mailcap, gnus-util.
43 (gnus-map-function, gnus-replace-in-string, gnus-read-shell-command)
44 (message-fetch-field, mailcap-parse-mailcaps, mailcap-mime-info):
45 Autoload.
46 (mailcap-mime-extensions): Declare.
47
48 * mm-encode.el: Don't require mailcap.
49 (mailcap-extension-to-mime): Autoload.
50
51 * mml-sec.el: Don't require password-cache.
52
53 * mml.el (gnus-setup-posting-charset): Declare rather than autoload.
54 (mailcap-parse-mimetypes, mailcap-mime-types): Declare.
55 (mml-minibuffer-read-type): Require mailcap.
56 (mml-preview): Require gnus-msg.
57
58 * mml1991.el: Require password-cache.
59 (password-cache-expiry): Remove declaration.
60
61 * mml2015.el: Require password-cache.
62 (password-cache-expiry): Remove declaration.
63
64 * nneething.el (mailcap): Require mailcap.
65
66 * nnheader.el: (declare-function): Add compatibility stub.
67 (message-remove-header): Declare rather than autoload.
68 (nnheader-replace-header): Require message.
69
70 * nnimap.el (declare-function): Add compatibility stub.
71 (netrc-parse, netrc-machine-user-or-password): Declare.
72 (nnimap-open-connection): Require netrc.
73
74 * nntp.el (declare-function): Add compatibility stub.
75 (netrc-parse, netrc-machine, netrc-get): Declare.
76 (nntp-send-authinfo): Require netrc.
77
78 * rfc2047.el: Don't require qp.
79 (quoted-printable-encode-region, quoted-printable-decode-string):
80 Autoload.
81
82 * sieve-mode.el: Don't require easymenu.
83 (easy-menu-add-item): Autoload it.
84
85 * spam-stat.el (time-to-number-of-days): Autoload it.
86
1 2010-03-17 Kevin Ryde <user42@zip.com.au> 87 2010-03-17 Kevin Ryde <user42@zip.com.au>
2 88
3 * mml.el (mml-read-tag): Unquote values with `read' to reverse 89 * mml.el (mml-read-tag): Unquote values with `read' to reverse
4 prin1 in mml-insert-tag (just stripping the quotes gave wrong 90 prin1 in mml-insert-tag (just stripping the quotes gave wrong
5 value if any backslash escapes). 91 value if any backslash escapes).