* spam.el: Delete duplicate `provide'.
(spam-unload-hook): Set as a variable with add-hook.
+2004-10-15 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * pop3.el (pop3-leave-mail-on-server): Describe possible problems
+ in the doc string.
+
+ * message.el (message-ignored-news-headers)
+ (message-ignored-supersedes-headers)
+ (message-ignored-resent-headers)
+ (message-forward-ignored-headers): Improve custom type.
+
+2004-10-15 Simon Josefsson <jas@extundo.com>
+
+ * pop3.el (top-level): Don't require nnheader.
+ (pop3-read-timeout): Add.
+ (pop3-accept-process-output): Add.
+ (pop3-read-response, pop3-retr): Use it.
+
2004-10-13 Katsumi Yamaoka <yamaoka@jpl.org>
* message.el (message-tokenize-header): Fix 2004-09-06 change
(tls-certificate-information): New function, based on
ssl-certificate-information.
+2004-10-11 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * message.el (message-bury): Use `window-dedicated-p'.
+
2004-10-10 Reiner Steib <Reiner.Steib@gmx.de>
* gnus-sum.el: Mention that multibyte characters don't work as marks.
:group 'message-news
:group 'message-headers
:link '(custom-manual "(message)Message Headers")
- :type 'regexp)
+ :type '(repeat :value-to-internal (lambda (widget value)
+ (custom-split-regexp-maybe value))
+ :match (lambda (widget value)
+ (or (stringp value)
+ (widget-editable-list-match widget value)))
+ regexp))
(defcustom message-ignored-mail-headers
"^[GF]cc:\\|^Resent-Fcc:\\|^Xref:\\|^X-Draft-From:\\|^X-Gnus-Agent-Meta-Information:"
any confusion."
:group 'message-interface
:link '(custom-manual "(message)Superseding")
- :type 'regexp)
+ :type '(repeat :value-to-internal (lambda (widget value)
+ (custom-split-regexp-maybe value))
+ :match (lambda (widget value)
+ (or (stringp value)
+ (widget-editable-list-match widget value)))
+ regexp))
(defcustom message-subject-re-regexp
"^[ \t]*\\([Rr][Ee]\\(\\[[0-9]*\\]\\)*:[ \t]*\\)*[ \t]*"
"*All headers that match this regexp will be deleted when resending a message."
:group 'message-interface
:link '(custom-manual "(message)Resending")
- :type 'regexp)
+ :type '(repeat :value-to-internal (lambda (widget value)
+ (custom-split-regexp-maybe value))
+ :match (lambda (widget value)
+ (or (stringp value)
+ (widget-editable-list-match widget value)))
+ regexp))
(defcustom message-forward-ignored-headers "^Content-Transfer-Encoding:\\|^X-Gnus"
"*All headers that match this regexp will be deleted when forwarding a message."
:version "21.1"
:group 'message-forwarding
- :type '(choice (const :tag "None" nil)
+ :type '(repeat :value-to-internal (lambda (widget value)
+ (custom-split-regexp-maybe value))
+ :match (lambda (widget value)
+ (or (stringp value)
+ (widget-editable-list-match widget value)))
regexp))
(defcustom message-ignored-cited-headers "."
:group 'pop3)
(defcustom pop3-leave-mail-on-server nil
- "*Non-nil if the mail is to be left on the POP server after fetching."
+ "*Non-nil if the mail is to be left on the POP server after fetching.
+
+If the `pop3-leave-mail-on-server' is non-`nil' the mail is to be
+left on the POP server after fetching. Note that POP servers
+maintain no state information between sessions, so what the
+client believes is there and what is actually there may not match
+up. If they do not, then the whole thing can fall apart and
+leave you with a corrupt mailbox."
:version "21.4" ;; Oort Gnus
:type 'boolean
:group 'pop3)
(defvar pop3-read-point nil)
(defvar pop3-debug nil)
+;; Borrowed from nnheader-accept-process-output in nnheader.el.
+(defvar pop3-read-timeout
+ (if (string-match "windows-nt\\|os/2\\|emx\\|cygwin"
+ (symbol-name system-type))
+ ;; http://thread.gmane.org/v9655t3pjo.fsf@marauder.physik.uni-ulm.de
+ ;;
+ ;; IIRC, values lower than 1.0 didn't/don't work on Windows/DOS.
+ ;;
+ ;; There should probably be a runtime test to determine the timing
+ ;; resolution, or a primitive to report it. I don't know off-hand
+ ;; what's possible. Perhaps better, maybe the Windows/DOS primitive
+ ;; could round up non-zero timeouts to a minimum of 1.0?
+ 1.0
+ 0.1)
+ "How long pop3 should wait between checking for the end of output.
+Shorter values mean quicker response, but are more CPU intensive.")
+
+;; Borrowed from nnheader-accept-process-output in nnheader.el.
+(defun pop3-accept-process-output (process)
+ (accept-process-output
+ process
+ (truncate pop3-read-timeout)
+ (truncate (* (- pop3-read-timeout
+ (truncate pop3-read-timeout))
+ 1000))))
+
(defun pop3-movemail (&optional crashbox)
"Transfer contents of a maildrop to the specified CRASHBOX."
(or crashbox (setq crashbox (expand-file-name "~/.crashbox")))
(goto-char pop3-read-point)
(while (and (memq (process-status process) '(open run))
(not (search-forward "\r\n" nil t)))
- (nnheader-accept-process-output process)
+ (pop3-accept-process-output process)
(goto-char pop3-read-point))
(setq match-end (point))
(goto-char pop3-read-point)
(save-excursion
(set-buffer (process-buffer process))
(while (not (re-search-forward "^\\.\r\n" nil t))
- ;; Fixme: Shouldn't depend on nnheader.
- (nnheader-accept-process-output process)
+ (pop3-accept-process-output process)
(goto-char start))
(setq pop3-read-point (point-marker))
;; this code does not seem to work for some POP servers...
+2004-10-15 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * gnus.texi (New Features): Add 5.11.
+
+ * message.texi (Resending): Remove wrong default value.
+
+ * gnus.texi (Mail Source Specifiers): Describe possible problems
+ of `pop3-leave-mail-on-server'. Add `pop3-movemail' and
+ `pop3-leave-mail-on-server' to the index.
+
+2004-10-15 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * message.texi (Canceling News): Add how to set a password.
+
2004-10-12 Reiner Steib <Reiner.Steib@gmx.de>
* gnus-faq.texi ([5.9]): Improve code for reply-in-news.
* Red Gnus:: Third time best---Gnus 5.4/5.5.
* Quassia Gnus:: Two times two is four, or Gnus 5.6/5.7.
* Pterodactyl Gnus:: Pentad also starts with P, AKA Gnus 5.8/5.9.
-* Oort Gnus:: It's big. It's far out. Gnus 5.10.
+* Oort Gnus:: It's big. It's far out. Gnus 5.10/5.11.
Customization
@end table
+@vindex pop3-movemail
+@vindex pop3-leave-mail-on-server
If the @code{:program} and @code{:function} keywords aren't specified,
@code{pop3-movemail} will be used. If the
@code{pop3-leave-mail-on-server} is non-@code{nil} the mail is to be
-left on the POP server after fetching.
+left on the @acronym{POP} server after fetching when using
+@code{pop3-movemail}. Note that POP servers maintain no state
+information between sessions, so what the client believes is there and
+what is actually there may not match up. If they do not, then the whole
+thing can fall apart and leave you with a corrupt mailbox.
Here are some examples. Fetch from the default @acronym{POP} server,
using the default user name, and default fetcher:
* Red Gnus:: Third time best---Gnus 5.4/5.5.
* Quassia Gnus:: Two times two is four, or Gnus 5.6/5.7.
* Pterodactyl Gnus:: Pentad also starts with P, AKA Gnus 5.8/5.9.
-* Oort Gnus:: It's big. It's far out. Gnus 5.10.
+* Oort Gnus:: It's big. It's far out. Gnus 5.10/5.11.
@end menu
These lists are, of course, just @emph{short} overviews of the
is that if you lose your @file{.emacs} file (which is where Gnus
stores the secret cancel lock password (which is generated
automatically the first time you use this feature)), you won't be
-able to cancel your message.
+able to cancel your message. If you yourself want to manage a password,
+you can put something like the following in your @file{~/.gnus.el} file:
+
+@lisp
+(setq canlock-password "Salam Shalom"
+ canlock-password-for-verify canlock-password)
+@end lisp
Whether to insert the header or not is controlled by the
@code{message-insert-canlock} variable.
@vindex message-ignored-resent-headers
Headers that match the @code{message-ignored-resent-headers} regexp will
-be removed before sending the message. The default is
-@samp{^Return-receipt}.
+be removed before sending the message.
@node Bouncing