Mercurial > emacs
changeset 111872:a264bb877bc7
Merge changes made in Gnus trunk.
nnir.el (nnir-request-expire-articles): Only allow article deletion.
message.el (message-bogus-recipient-p): Set address to "" if nil.
gnus-gravatar.el (gnus-gravatar-transform-address): Fix error when email address is nil.
proto-stream.el (proto-stream-open-network-only): New function to have a way to specify non-STARTTLS upgrade connections.
author | Katsumi Yamaoka <yamaoka@jpl.org> |
---|---|
date | Sat, 11 Dec 2010 01:27:14 +0000 |
parents | d21197a7fc63 |
children | 2e087a5593f8 |
files | doc/misc/gnus.texi lisp/gnus/ChangeLog lisp/gnus/gnus-gravatar.el lisp/gnus/message.el lisp/gnus/nnir.el lisp/gnus/nntp.el lisp/gnus/proto-stream.el |
diffstat | 7 files changed, 66 insertions(+), 32 deletions(-) [+] |
line wrap: on
line diff
--- a/doc/misc/gnus.texi Fri Dec 10 23:42:17 2010 +0100 +++ b/doc/misc/gnus.texi Sat Dec 11 01:27:14 2010 +0000 @@ -14445,6 +14445,9 @@ connection will be upgraded to an encrypted @acronym{STARTTLS} connection automatically. +@item network-only +The same as the above, but don't do automatic @acronym{STARTTLS} upgrades. + @findex nntp-open-tls-stream @item nntp-open-tls-stream Opens a connection to a server over a @dfn{secure} channel. To use
--- a/lisp/gnus/ChangeLog Fri Dec 10 23:42:17 2010 +0100 +++ b/lisp/gnus/ChangeLog Sat Dec 11 01:27:14 2010 +0000 @@ -1,3 +1,21 @@ +2010-12-10 Lars Magne Ingebrigtsen <larsi@gnus.org> + + * proto-stream.el (proto-stream-open-network-only): New function to + have a way to specify non-STARTTLS upgrade connections. + +2010-12-10 Julien Danjou <julien@danjou.info> + + * gnus-gravatar.el (gnus-gravatar-transform-address): Fix error when + email address is nil. + + * message.el (message-bogus-recipient-p): Set address to "" if nil. + +2010-12-10 Andrew Cohen <cohen@andy.bu.edu> + + * nnir.el (nnir-request-expire-articles): Ignore expiry except for + deletion. + (nnir-run-imap): Only need to parse list once. + 2010-12-09 Lars Magne Ingebrigtsen <larsi@gnus.org> * shr.el (shr-tag-script): Ignore <script>.
--- a/lisp/gnus/gnus-gravatar.el Fri Dec 10 23:42:17 2010 +0100 +++ b/lisp/gnus/gnus-gravatar.el Sat Dec 11 01:27:14 2010 +0000 @@ -65,7 +65,7 @@ (when (or force (not (and gnus-gravatar-too-ugly (or (string-match gnus-gravatar-too-ugly - (cadr address)) + (or (cadr address) "")) (and name (string-match gnus-gravatar-too-ugly name))))))
--- a/lisp/gnus/message.el Fri Dec 10 23:42:17 2010 +0100 +++ b/lisp/gnus/message.el Sat Dec 11 01:27:14 2010 +0000 @@ -4261,9 +4261,10 @@ ;; FIXME: How about "foo@subdomain", when the MTA adds ".domain.tld"? (let (found) (mapc (lambda (address) - (setq address (cadr address)) + (setq address (or (cadr address) "")) (when - (or (not + (or (string= "" address) + (not (or (not (string-match "@" address)) (string-match @@ -4277,7 +4278,7 @@ "\\|") message-bogus-addresses))) (string-match re address)))) - (push address found))) + (push address found))) ;; (mail-extract-address-components recipients t)) found))
--- a/lisp/gnus/nnir.el Fri Dec 10 23:42:17 2010 +0100 +++ b/lisp/gnus/nnir.el Sat Dec 11 01:27:14 2010 +0000 @@ -688,23 +688,25 @@ (gnus-group-real-name to-newsgroup))))) (deffoo nnir-request-expire-articles (articles group &optional server force) - (let ((articles-by-group (nnir-categorize - articles nnir-article-group nnir-article-ids)) - not-deleted) - (while (not (null articles-by-group)) - (let* ((group-articles (pop articles-by-group)) - (artgroup (car group-articles)) - (articleids (cadr group-articles)) - (artlist (sort (mapcar 'cdr articleids) '<))) - (unless (gnus-check-backend-function 'request-expire-articles - artgroup) - (error "The group %s does not support article deletion" artgroup)) - (unless (gnus-check-server (gnus-find-method-for-group artgroup)) - (error "Couldn't open server for group %s" artgroup)) - (push (gnus-request-expire-articles - artlist artgroup force) - not-deleted))) - (sort (delq nil not-deleted) '<))) + (if force + (let ((articles-by-group (nnir-categorize + articles nnir-article-group nnir-article-ids)) + not-deleted) + (while (not (null articles-by-group)) + (let* ((group-articles (pop articles-by-group)) + (artgroup (car group-articles)) + (articleids (cadr group-articles)) + (artlist (sort (mapcar 'cdr articleids) '<))) + (unless (gnus-check-backend-function 'request-expire-articles + artgroup) + (error "The group %s does not support article deletion" artgroup)) + (unless (gnus-check-server (gnus-find-method-for-group artgroup)) + (error "Couldn't open server for group %s" artgroup)) + (push (gnus-request-expire-articles + artlist artgroup force) + not-deleted))) + (sort (delq nil not-deleted) '<)) + articles)) (deffoo nnir-warp-to-article () (let* ((cur (if (> (gnus-summary-article-number) 0) @@ -792,12 +794,13 @@ (nnir-imap-make-query criteria qstring))))) (mapc - (lambda (artnum) (push (vector group artnum 100) artlist) - (setq arts (1+ arts))) - (and (car result) - (delete 0 (mapcar #'string-to-number - (cdr (assoc "SEARCH" - (cdr result))))))) + (lambda (artnum) + (let ((artn (string-to-number artnum))) + (when (> artn 0) + (push (vector group artn 100) + artlist) + (setq arts (1+ arts))))) + (and (car result) (cdr (assoc "SEARCH" (cdr result))))) (message "Searching %s... %d matches" group arts))) (message "Searching %s...done" group)) (quit nil)) @@ -1581,8 +1584,10 @@ (or nnir-summary-line-format gnus-summary-line-format)) (remove-hook 'gnus-summary-article-delete-hook 'gnus-registry-action t) (remove-hook 'gnus-summary-article-move-hook 'gnus-registry-action t) + (remove-hook 'gnus-summary-article-expire-hook 'gnus-registry-action t) (add-hook 'gnus-summary-article-delete-hook 'nnir-registry-action t t) - (add-hook 'gnus-summary-article-move-hook 'nnir-registry-action t t))) + (add-hook 'gnus-summary-article-move-hook 'nnir-registry-action t t) + (add-hook 'gnus-summary-article-expire-hook 'nnir-registry-action t t)))
--- a/lisp/gnus/nntp.el Fri Dec 10 23:42:17 2010 +0100 +++ b/lisp/gnus/nntp.el Sat Dec 11 01:27:14 2010 +0000 @@ -87,6 +87,8 @@ Direct connections: - `nntp-open-network-stream' (the default), +- `network-only' (the same as the above, but don't do automatic + STARTTLS upgrades). - `nntp-open-ssl-stream', - `nntp-open-tls-stream', - `nntp-open-netcat-stream'. @@ -1267,6 +1269,7 @@ (let ((coding-system-for-read nntp-coding-system-for-read) (coding-system-for-write nntp-coding-system-for-write) (map '((nntp-open-network-stream network) + (network-only network-only) (nntp-open-ssl-stream tls) (nntp-open-tls-stream tls)))) (if (assoc nntp-open-connection-function map)
--- a/lisp/gnus/proto-stream.el Fri Dec 10 23:42:17 2010 +0100 +++ b/lisp/gnus/proto-stream.el Sat Dec 11 01:27:14 2010 +0000 @@ -75,10 +75,11 @@ The PARAMETERS is a keyword list that can have the following values: -:type -- either `network', `tls', `shell' or `starttls'. If -omitted, the default is `network'. `network' will be -opportunistically upgraded to STARTTLS if both the server and -Emacs supports it. +:type -- either `network', `network-only, `tls', `shell' or +`starttls'. If omitted, the default is `network'. `network' +will be opportunistically upgraded to STARTTLS if both the server +and Emacs supports it. If you don't want STARTTLS upgrades, use +`network-only'. :end-of-command -- a regexp saying what the end of a command is. This defaults to \"\\n\". @@ -109,6 +110,9 @@ stream) greeting capabilities)))) +(defun proto-stream-open-network-only (name buffer host service parameters) + (open-network-stream name buffer host service)) + (defun proto-stream-open-network (name buffer host service parameters) (let* ((start (with-current-buffer buffer (point))) (stream (open-network-stream name buffer host service))