changeset 93820:7c273495693a

Merge from gnus--devo--0 Revision: emacs@sv.gnu.org/emacs--devo--0--patch-1110
author Miles Bader <miles@gnu.org>
date Mon, 07 Apr 2008 13:08:33 +0000
parents 06a28dc5b518
children 882bd14c76fc
files lisp/ChangeLog lisp/gnus/ChangeLog lisp/gnus/gnus-sum.el lisp/gnus/nnimap.el lisp/net/imap.el
diffstat 5 files changed, 41 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Mon Apr 07 11:11:28 2008 +0000
+++ b/lisp/ChangeLog	Mon Apr 07 13:08:33 2008 +0000
@@ -913,7 +913,16 @@
 
 	* simple.el (beginning-of-buffer, end-of-buffer, goto-line, undo)
 	(copy-region-as-kill, kill-ring-save, use-region-p, mark-word)
-	(keyboard-escape-quit): Check region-active-p i.s.o transient-mark-mode.
+	(keyboard-escape-quit): Check region-active-p i.s.o
+	transient-mark-mode.
+
+2008-04-02  Simon Josefsson  <simon@josefsson.org>
+
+	* net/imap.el (imap-enable-exchange-bug-workaround): New variable.
+	(imap-message-copyuid-1): Use it.
+	(imap-message-appenduid-1): Likewise.  Based on patch by Nathan
+	J. Williams in
+	<http://permalink.gmane.org/gmane.emacs.gnus.general/65855>.
 
 2008-04-02  Alan Mackenzie  <acm@muc.de>
 
--- a/lisp/gnus/ChangeLog	Mon Apr 07 11:11:28 2008 +0000
+++ b/lisp/gnus/ChangeLog	Mon Apr 07 13:08:33 2008 +0000
@@ -30,6 +30,20 @@
 	* gnus-win.el (gnus-configure-frame, gnus-all-windows-visible-p):
 	Fix last change in case the element is not even a symbol.
 
+2008-04-02  Simon Josefsson  <simon@josefsson.org>
+
+	* nnimap.el (nnimap-enable-minmax-bug-workaround): Remove, replaced by
+	imap-enable-exchange-bug-workaround.
+	(nnimap-find-minmax-uid): Use imap-enable-exchange-bug-workaround.
+
+2008-04-01  Simon Josefsson  <simon@josefsson.org>
+
+	* nnimap.el (nnimap-find-minmax-uid): Revert last fix, the "fix" turns
+	a 100 byte status-checks into a 2-3MB transfer for each group.
+	(nnimap-enable-minmax-bug-workaround): New variable to toggle whether
+	to enable bug workaround or not.
+	(nnimap-find-minmax-uid): Only enable workaround conditionally.
+
 2008-03-31  Glenn Morris  <rgm@gnu.org>
 
 	* message.el (mml2015-use): Declare for compiler.
@@ -46,6 +60,10 @@
 	(nntp-open-netcat-stream): New function.
 	(nntp-open-via-rlogin-and-netcat): Don't use a pty.
 
+2008-03-29  Sven Joachim  <svenjoac@gmx.de>
+
+	* gnus-sum.el (gnus-summary-make-menu-bar): Add missing dots.
+
 2008-03-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 
 	* message.el (message-make-in-reply-to): Use mm-with-multibyte-buffer.
--- a/lisp/gnus/gnus-sum.el	Mon Apr 07 11:11:28 2008 +0000
+++ b/lisp/gnus/gnus-sum.el	Mon Apr 07 13:08:33 2008 +0000
@@ -2262,7 +2262,7 @@
 	  ["Set mark below..." gnus-score-set-mark-below t]
 	  ["Set expunge below..." gnus-score-set-expunge-below t]
 	  ["Edit current score file" gnus-score-edit-current-scores t]
-	  ["Edit score file" gnus-score-edit-file t]
+	  ["Edit score file..." gnus-score-edit-file t]
 	  ["Trace score" gnus-score-find-trace t]
 	  ["Find words" gnus-score-find-favourite-words t]
 	  ["Rescore buffer" gnus-summary-rescore t]
--- a/lisp/gnus/nnimap.el	Mon Apr 07 11:11:28 2008 +0000
+++ b/lisp/gnus/nnimap.el	Mon Apr 07 13:08:33 2008 +0000
@@ -555,7 +555,8 @@
 	      (imap-mailbox-select group examine))
       (let (minuid maxuid)
 	(when (> (imap-mailbox-get 'exists) 0)
-	  (imap-fetch "1:*" "UID" nil 'nouidfetch)
+	  (imap-fetch (if imap-enable-exchange-bug-workaround "1,*:*" "1,*")
+		      "UID" nil 'nouidfetch)
 	  (imap-message-map (lambda (uid Uid)
 			      (setq minuid (if minuid (min minuid uid) uid)
 				    maxuid (if maxuid (max maxuid uid) uid)))
--- a/lisp/net/imap.el	Mon Apr 07 11:11:28 2008 +0000
+++ b/lisp/net/imap.el	Mon Apr 07 13:08:33 2008 +0000
@@ -440,6 +440,12 @@
 The function should take two arguments, the first the IMAP tag and the
 second the status (OK, NO, BAD etc) of the command.")
 
+(defvar imap-enable-exchange-bug-workaround nil
+  "Send FETCH UID commands as *:* instead of *.
+Enabling this appears to be required for some servers (e.g.,
+Microsoft Exchange) which otherwise would trigger a response 'BAD
+The specified message set is invalid.'.")
+
 
 ;; Utility functions:
 
@@ -1774,7 +1780,8 @@
 	  (imap-message-data (make-vector 2 0)))
       (when (imap-mailbox-examine-1 mailbox)
 	(prog1
-	    (and (imap-fetch "*" "UID")
+	    (and (imap-fetch
+		  (if imap-enable-exchange-bug-workaround "*:*" "*") "UID")
 		 (list (imap-mailbox-get-1 'uidvalidity mailbox)
 		       (apply 'max (imap-message-map
 				    (lambda (uid prop) uid) 'UID))))
@@ -1818,7 +1825,8 @@
 	  (imap-message-data (make-vector 2 0)))
       (when (imap-mailbox-examine-1 mailbox)
 	(prog1
-	    (and (imap-fetch "*" "UID")
+	    (and (imap-fetch
+		  (if imap-enable-exchange-bug-workaround "*:*" "*") "UID")
 		 (list (imap-mailbox-get-1 'uidvalidity mailbox)
 		       (apply 'max (imap-message-map
 				    (lambda (uid prop) uid) 'UID))))