emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r102685: Merge changes made in Gnus t


From: Katsumi Yamaoka
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r102685: Merge changes made in Gnus trunk.
Date: Fri, 17 Dec 2010 22:45:16 +0000
User-agent: Bazaar (2.0.3)

------------------------------------------------------------
revno: 102685
author: Gnus developers
committer: Katsumi Yamaoka <address@hidden>
branch nick: trunk
timestamp: Fri 2010-12-17 22:45:16 +0000
message:
  Merge changes made in Gnus trunk.
  
  nnir.el (nnir-get-active): Ignore nnir-ignored-newsgroups if null.
  gnus-sum.el (gnus-summary-refer-thread): Simplify code. Restore 
gnus-use-agent.
   (gnus-get-newsgroup-headers): Avoid unwanted spaces at eol.
  gravatar.el (gravatar-retrieve-synchronously): New function.
   (gravatar-get-data): Make more robust.
  gnus-util.el (gnus-rescale-image): Allow to resize images even if they are 
from file. Can also scale up.
  nnimap.el (nnimap-retrieve-headers): Remove CRLF from the headers.
  nnir.el (nnir-mode): Make sure 'gnus-registry-install is bound.
  gnus-sum.el (gnus-get-newsgroup-headers): Revert the last change here, since 
it's up to the backends to do CRLF removal if their protocol has it.
  gnus-group.el (gnus-group-delete-articles): New command.
modified:
  lisp/gnus/ChangeLog
  lisp/gnus/gnus-gravatar.el
  lisp/gnus/gnus-group.el
  lisp/gnus/gnus-sum.el
  lisp/gnus/gnus-util.el
  lisp/gnus/gravatar.el
  lisp/gnus/nnimap.el
  lisp/gnus/nnir.el
=== modified file 'lisp/gnus/ChangeLog'
--- a/lisp/gnus/ChangeLog       2010-12-16 23:18:57 +0000
+++ b/lisp/gnus/ChangeLog       2010-12-17 22:45:16 +0000
@@ -1,3 +1,37 @@
+2010-12-17  Lars Magne Ingebrigtsen  <address@hidden>
+
+       * gnus-group.el (gnus-group-delete-articles): New command.
+
+2010-12-17  Andrew Cohen  <address@hidden>
+
+       * nnir.el (nnir-mode): Make sure 'gnus-registry-install is bound.
+
+2010-12-17  Lars Magne Ingebrigtsen  <address@hidden>
+
+       * gnus-sum.el (gnus-get-newsgroup-headers): Revert the last change
+       here, since it's up to the backends to do CRLF removal if their
+       protocol has it.
+
+       * nnimap.el (nnimap-retrieve-headers): Remove CRLF from the headers.
+
+2010-12-17  Julien Danjou  <address@hidden>
+
+       * gnus-util.el (gnus-rescale-image): Allow to resize images even if
+       they are from file. Can also scale up.
+
+2010-12-17  Andrew Cohen  <address@hidden>
+
+       * gnus-sum.el (gnus-summary-refer-thread): Simplify code. Restore
+       gnus-use-agent.
+       (gnus-get-newsgroup-headers): Avoid unwanted spaces at eol.
+
+       * nnir.el (nnir-get-active): Ignore nnir-ignored-newsgroups if null.
+
+2010-12-17  Julien Danjou  <address@hidden>
+
+       * gravatar.el (gravatar-retrieve-synchronously): New function.
+       (gravatar-get-data): Make more robust.
+
 2010-12-16  Lars Magne Ingebrigtsen  <address@hidden>
 
        * nnimap.el (nnimap-wait-for-response): Fix the end-point calculation

=== modified file 'lisp/gnus/gnus-gravatar.el'
--- a/lisp/gnus/gnus-gravatar.el        2010-12-11 01:27:14 +0000
+++ b/lisp/gnus/gnus-gravatar.el        2010-12-17 22:45:16 +0000
@@ -56,7 +56,7 @@
     (let* ((mail-extr-disable-voodoo t)
           (addresses (mail-extract-address-components
                       (or (mail-fetch-field header) "") t))
-          (gravatar-size gnus-gravatar-size)
+          (gravatar-size (or gnus-gravatar-size gravatar-size))
           name)
       (dolist (address addresses)
        (when (and (setq name (car address))

=== modified file 'lisp/gnus/gnus-group.el'
--- a/lisp/gnus/gnus-group.el   2010-12-16 22:22:28 +0000
+++ b/lisp/gnus/gnus-group.el   2010-12-17 22:45:16 +0000
@@ -2734,6 +2734,15 @@
        (lambda (group)
          (gnus-group-delete-group group nil t))))))
 
+(defun gnus-group-delete-articles (group)
+  "Delete all articles in the current group."
+  (interactive (list (gnus-group-group-name)))
+  (let ((articles (gnus-uncompress-range (gnus-active group))))
+    (when (gnus-yes-or-no-p
+          (format "Do you really want to delete these %d articles forever? "
+                  (length articles)))
+      (gnus-request-expire-articles articles group 'force))))
+
 (defun gnus-group-delete-group (group &optional force no-prompt)
   "Delete the current group.  Only meaningful with editable groups.
 If FORCE (the prefix) is non-nil, all the articles in the group will

=== modified file 'lisp/gnus/gnus-sum.el'
--- a/lisp/gnus/gnus-sum.el     2010-12-16 22:22:28 +0000
+++ b/lisp/gnus/gnus-sum.el     2010-12-17 22:45:16 +0000
@@ -8868,30 +8868,27 @@
 variable."
   (interactive "P")
   (gnus-warp-to-article)
-  (let ((id (mail-header-id (gnus-summary-article-header)))
-       (gnus-inhibit-demon t)
-       (gnus-agent nil)
-       (gnus-summary-ignore-duplicates t)
-       (gnus-read-all-available-headers t)
-       (limit (if limit (prefix-numeric-value limit)
-                gnus-refer-thread-limit)))
+  (let* ((header (gnus-summary-article-header))
+        (id (mail-header-id header))
+        (gnus-inhibit-demon t)
+        (gnus-summary-ignore-duplicates t)
+        (gnus-read-all-available-headers t)
+        (limit (if limit (prefix-numeric-value limit)
+                 gnus-refer-thread-limit)))
     (setq gnus-newsgroup-headers
          (gnus-merge
           'list gnus-newsgroup-headers
           (if (gnus-check-backend-function
                'request-thread gnus-newsgroup-name)
-              (gnus-request-thread (gnus-summary-article-header))
+              (gnus-request-thread header)
             (let* ((last (if (numberp limit)
-                             (min (+ (mail-header-number
-                                      (gnus-summary-article-header))
+                             (min (+ (mail-header-number header)
                                      limit)
                                   gnus-newsgroup-highest)
                            gnus-newsgroup-highest))
                    (subject (gnus-simplify-subject
-                             (mail-header-subject
-                              (gnus-summary-article-header))))
-                   (refs (split-string (or (mail-header-references
-                                            (gnus-summary-article-header))
+                             (mail-header-subject header)))
+                   (refs (split-string (or (mail-header-references header)
                                            "")))
                    (gnus-parse-headers-hook
                     (lambda () (goto-char (point-min))

=== modified file 'lisp/gnus/gnus-util.el'
--- a/lisp/gnus/gnus-util.el    2010-12-05 23:29:50 +0000
+++ b/lisp/gnus/gnus-util.el    2010-12-17 22:45:16 +0000
@@ -1983,21 +1983,16 @@
   "Rescale IMAGE to SIZE if possible.
 SIZE is in format (WIDTH . HEIGHT). Return a new image.
 Sizes are in pixels."
-  (if (or (not (fboundp 'imagemagick-types))
-         (not (get-buffer-window (current-buffer))))
-      image
+  (when (fboundp 'imagemagick-types)
     (let ((new-width (car size))
           (new-height (cdr size)))
-      (when (> (cdr (image-size image t)) new-height)
-        (setq image (or (create-image (plist-get (cdr image) :data) 
'imagemagick t
-                                      :height new-height)
-                        image)))
-      (when (> (car (image-size image t)) new-width)
-        (setq image (or
-                   (create-image (plist-get (cdr image) :data) 'imagemagick t
-                                 :width new-width)
-                   image)))
-      image)))
+      (unless (= (cdr (image-size image t)) new-height)
+        (setcdr image (plist-put (cdr image) :type 'imagemagick))
+        (setcdr image (plist-put (cdr image) :height new-height)))
+      (unless (= (car (image-size image t)) new-width)
+        (setcdr image (plist-put (cdr image) :type 'imagemagick))
+        (setcdr image (plist-put (cdr image) :width new-width)))))
+  image)
 
 (defun gnus-list-memq-of-list (elements list)
   "Return non-nil if any of the members of ELEMENTS are in LIST."

=== modified file 'lisp/gnus/gravatar.el'
--- a/lisp/gnus/gravatar.el     2010-10-04 22:26:51 +0000
+++ b/lisp/gnus/gravatar.el     2010-12-17 22:45:16 +0000
@@ -78,10 +78,11 @@
 
 (defun gravatar-get-data ()
   "Get data from current buffer."
-  (when (string-match "^HTTP/.+ 200 OK$"
-                      (buffer-substring (point-min) (line-end-position)))
-    (when (search-forward "\n\n" nil t)
-      (buffer-substring (point) (point-max)))))
+  (save-excursion
+    (goto-char (point-min))
+    (when (re-search-forward "^HTTP/.+ 200 OK$" nil (line-end-position))
+      (when (search-forward "\n\n" nil t)
+        (buffer-substring (point) (point-max))))))
 
 (eval-and-compile
   (cond ((featurep 'xemacs)
@@ -98,7 +99,7 @@
 If no image available, return 'error."
   (let ((data (gravatar-get-data)))
     (if data
-       (gravatar-create-image data  nil t)
+       (gravatar-create-image data nil t)
       'error)))
 
 ;;;###autoload
@@ -117,6 +118,23 @@
                  (gravatar-data->image))
                cbargs))))
 
+;;;###autoload
+(defun gravatar-retrieve-synchronously (mail-address)
+  "Retrieve MAIL-ADDRESS gravatar and returns it."
+  (let ((url (gravatar-build-url mail-address)))
+    (if (gravatar-cache-expired url)
+        (with-current-buffer (url-retrieve-synchronously url)
+          (when gravatar-automatic-caching
+            (url-store-in-cache (current-buffer)))
+          (let ((data (gravatar-data->image)))
+            (kill-buffer (current-buffer))
+            data))
+      (with-temp-buffer
+        (mm-disable-multibyte)
+        (url-cache-extract (url-cache-create-filename url))
+        (gravatar-data->image)))))
+
+
 (defun gravatar-retrieved (status cb &optional cbargs)
   "Callback function used by `gravatar-retrieve'."
   ;; Store gravatar?

=== modified file 'lisp/gnus/nnimap.el'
--- a/lisp/gnus/nnimap.el       2010-12-16 23:18:57 +0000
+++ b/lisp/gnus/nnimap.el       2010-12-17 22:45:16 +0000
@@ -167,7 +167,8 @@
          (nnimap-article-ranges (gnus-compress-sequence articles))
          (nnimap-header-parameters))
         t)
-       (nnimap-transform-headers))
+       (nnimap-transform-headers)
+       (nnheader-remove-cr-followed-by-lf))
       (insert-buffer-substring
        (nnimap-find-process-buffer (current-buffer))))
     'headers))
@@ -1568,7 +1569,7 @@
                                     (min
                                      (- (point) 500)
                                      (save-excursion
-                                       (forward-line -1)
+                                       (forward-line -3)
                                        (point))))
                              (point-min))
                            t)))

=== modified file 'lisp/gnus/nnir.el'
--- a/lisp/gnus/nnir.el 2010-12-16 22:22:28 +0000
+++ b/lisp/gnus/nnir.el 2010-12-17 22:45:16 +0000
@@ -1543,7 +1543,8 @@
       (let ((cur (current-buffer))
            name)
        (goto-char (point-min))
-       (unless (string= nnir-ignored-newsgroups "")
+       (unless (or (null nnir-ignored-newsgroups)
+                   (string= nnir-ignored-newsgroups ""))
          (delete-matching-lines nnir-ignored-newsgroups))
        (if (eq (car method) 'nntp)
            (while (not (eobp))
@@ -1589,7 +1590,8 @@
   (when (eq (car (gnus-find-method-for-group gnus-newsgroup-name)) 'nnir)
     (setq gnus-summary-line-format
          (or nnir-summary-line-format gnus-summary-line-format))
-    (when (eq gnus-registry-install t)
+    (when (and (boundp 'gnus-registry-install)
+                      (eq gnus-registry-install t))
       (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)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]