summaryrefslogtreecommitdiff
path: root/lisp/gnus
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2013-07-12 18:44:13 -0600
committerTom Tromey <tromey@redhat.com>2013-07-12 18:44:13 -0600
commitb34a529f177a6ea32da5cb1254f91bf9d71838db (patch)
tree477131abc15d3107b30b635223d87a22550b480b /lisp/gnus
parente6f63071a3f7721f55220514b6d9a8ee8c1232d8 (diff)
parent5e301d7651c0691bb2bc7f3fbe711fdbe26ac471 (diff)
downloademacs-b34a529f177a6ea32da5cb1254f91bf9d71838db.tar.gz
Merge from trunk
Diffstat (limited to 'lisp/gnus')
-rw-r--r--lisp/gnus/ChangeLog44
-rw-r--r--lisp/gnus/gnus-art.el3
-rw-r--r--lisp/gnus/gnus-msg.el1
-rw-r--r--lisp/gnus/gnus-registry.el23
-rw-r--r--lisp/gnus/gnus-start.el5
-rw-r--r--lisp/gnus/gnus.el4
-rw-r--r--lisp/gnus/message.el2
-rw-r--r--lisp/gnus/mm-view.el22
-rw-r--r--lisp/gnus/nnir.el6
-rw-r--r--lisp/gnus/nnml.el5
10 files changed, 95 insertions, 20 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index 34eb28f0965..006b415b180 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,47 @@
+2013-07-10 David Engster <deng@randomsample.de>
+
+ * gnus-start.el (gnus-clean-old-newsrc): Always remove 'unexist' marks
+ if `gnus-newsrc-file-version' does not match `gnus-version'. This
+ fixes a bug in Emacs trunk where the 'unexist' marks were always
+ removed at startup because "Gnus v5.13" was considered smaller than "Ma
+ Gnus v0.03".
+
+2013-07-10 Tassilo Horn <tsdh@gnu.org>
+
+ * gnus.el (gnus-summary-line-format): Reference
+ `gnus-user-date-format-alist' for the &user-date; format, not
+ `gnus-summary-user-date-format-alist'.
+
+2013-07-08 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * nnml.el (nnml-request-compact-group): Don't bug out if we can't
+ delete files (bug#13481).
+
+2013-07-08 Tassilo Horn <tsdh@gnu.org>
+
+ * gnus-registry.el (gnus-registry-remove-extra-data): New function.
+
+2013-07-06 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-art.el (gnus-block-private-groups): Allow `global' methods to
+ display images.
+
+ * gnus.el (gnus-valid-select-methods): Mark nnrss as global.
+
+ * message.el (message-cancel-news): According to
+ <mailman.216.1372942181.12400.help-gnu-emacs@gnu.org>, "cancel" is
+ preferred over "cmsg cancel" in the Subject.
+
+ * nnir.el (nnir-engines): Note that the group specs are regexps
+ (bug#13238).
+
+ * gnus-msg.el (gnus-copy-article-buffer): If the article buffer has
+ gotten read-only text properties, ensure that those aren't heeded when
+ copying stuff over (bug#13434).
+
+ * mm-view.el (mm-inline-text-html): Don't bug out on multipart messages
+ (bug#13762).
+
2013-07-05 David Kastrup <dak@gnu.org>
* auth-source.el (auth-source-netrc-parse-one): Allow empty strings in
diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el
index 5840aacd7a3..b41ff9c0550 100644
--- a/lisp/gnus/gnus-art.el
+++ b/lisp/gnus/gnus-art.el
@@ -6947,7 +6947,8 @@ If given a prefix, show the hidden text instead."
(set-buffer buf))))))
(defun gnus-block-private-groups (group)
- (if (gnus-news-group-p group)
+ (if (or (gnus-news-group-p group)
+ (gnus-member-of-valid 'global group))
;; Block nothing in news groups.
nil
;; Block everything anywhere else.
diff --git a/lisp/gnus/gnus-msg.el b/lisp/gnus/gnus-msg.el
index fce9a3633c2..e3f18662af4 100644
--- a/lisp/gnus/gnus-msg.el
+++ b/lisp/gnus/gnus-msg.el
@@ -920,6 +920,7 @@ header line with the old Message-ID."
(with-current-buffer article-buffer
(let ((gnus-newsgroup-charset (or gnus-article-charset
gnus-newsgroup-charset))
+ (inhibit-read-only t)
(gnus-newsgroup-ignored-charsets
(or gnus-article-ignored-charsets
gnus-newsgroup-ignored-charsets)))
diff --git a/lisp/gnus/gnus-registry.el b/lisp/gnus/gnus-registry.el
index 5a7dfd82d28..6f2fe78c3d8 100644
--- a/lisp/gnus/gnus-registry.el
+++ b/lisp/gnus/gnus-registry.el
@@ -1186,6 +1186,29 @@ data stored in the registry."
(gnus-select-group-with-message-id group message-id) t)
(throw 'found t))))))))
+(defun gnus-registry-remove-extra-data (extra)
+ "Remove tracked EXTRA data from the gnus registry.
+EXTRA is a list of symbols. Valid symbols are those contained in
+the docs of `gnus-registry-track-extra'. This command is useful
+when you stop tracking some extra data and now want to purge it
+from your existing entries."
+ (interactive (list (mapcar 'intern
+ (completing-read-multiple
+ "Extra data: "
+ '("subject" "sender" "recipient")))))
+ (when extra
+ (let ((db gnus-registry-db))
+ (registry-reindex db)
+ (loop for k being the hash-keys of (oref db :data)
+ using (hash-value v)
+ do (let ((newv (delq nil (mapcar #'(lambda (entry)
+ (unless (member (car entry) extra)
+ entry))
+ v))))
+ (registry-delete db (list k) nil)
+ (gnus-registry-insert db k newv)))
+ (registry-reindex db))))
+
;; TODO: a few things
(provide 'gnus-registry)
diff --git a/lisp/gnus/gnus-start.el b/lisp/gnus/gnus-start.el
index 084af884930..94803800e0b 100644
--- a/lisp/gnus/gnus-start.el
+++ b/lisp/gnus/gnus-start.el
@@ -2314,8 +2314,9 @@ If FORCE is non-nil, the .newsrc file is read."
(gnus-info-set-marks
info (delete exist (gnus-info-marks info))))))
(when (or force
- (< (gnus-continuum-version gnus-newsrc-file-version)
- (gnus-continuum-version "Ma Gnus v0.03")))
+ (not (string= gnus-newsrc-file-version gnus-version)))
+ (message (concat "Removing unexist marks because newsrc "
+ "version does not match Gnus version."))
;; Remove old `exist' marks from old nnimap groups.
(dolist (info (cdr gnus-newsrc-alist))
(let ((exist (assoc 'unexist (gnus-info-marks info))))
diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el
index 9a927a1cfab..8741a03b54d 100644
--- a/lisp/gnus/gnus.el
+++ b/lisp/gnus/gnus.el
@@ -1628,7 +1628,7 @@ slower."
("nnfolder" mail respool address)
("nngateway" post-mail address prompt-address physical-address)
("nnweb" none)
- ("nnrss" none)
+ ("nnrss" none global)
("nnagent" post-mail)
("nnimap" post-mail address prompt-address physical-address respool
server-marks)
@@ -3007,7 +3007,7 @@ with some simple extensions.
summary just like information from any other summary
specifier.
&user-date; Age sensitive date format. Various date format is
- defined in `gnus-summary-user-date-format-alist'.
+ defined in `gnus-user-date-format-alist'.
The %U (status), %R (replied) and %z (zcore) specs have to be handled
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index c6f5d904677..b35eb9dca12 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -7145,7 +7145,7 @@ If ARG, allow editing of the cancellation message."
(erase-buffer)
(insert "Newsgroups: " newsgroups "\n"
"From: " from "\n"
- "Subject: cmsg cancel " message-id "\n"
+ "Subject: cancel " message-id "\n"
"Control: cancel " message-id "\n"
(if distribution
(concat "Distribution: " distribution "\n")
diff --git a/lisp/gnus/mm-view.el b/lisp/gnus/mm-view.el
index b1cba27c335..9512a411d81 100644
--- a/lisp/gnus/mm-view.el
+++ b/lisp/gnus/mm-view.el
@@ -419,16 +419,18 @@
(buffer-string)))))
(defun mm-inline-text-html (handle)
- (let* ((func mm-text-html-renderer)
- (entry (assq func mm-text-html-renderer-alist))
- (inhibit-read-only t))
- (if entry
- (setq func (cdr entry)))
- (cond
- ((functionp func)
- (funcall func handle))
- (t
- (apply (car func) handle (cdr func))))))
+ (if (stringp (car handle))
+ (mapcar 'mm-inline-text-html (cdr handle))
+ (let* ((func mm-text-html-renderer)
+ (entry (assq func mm-text-html-renderer-alist))
+ (inhibit-read-only t))
+ (if entry
+ (setq func (cdr entry)))
+ (cond
+ ((functionp func)
+ (funcall func handle))
+ (t
+ (apply (car func) handle (cdr func)))))))
(defun mm-inline-text-vcard (handle)
(let ((inhibit-read-only t))
diff --git a/lisp/gnus/nnir.el b/lisp/gnus/nnir.el
index 22dee30e8fa..4dd123bf2c7 100644
--- a/lisp/gnus/nnir.el
+++ b/lisp/gnus/nnir.el
@@ -548,15 +548,15 @@ that it is for notmuch, not Namazu."
(gmane nnir-run-gmane
((gmane-author . "Gmane Author: ")))
(swish++ nnir-run-swish++
- ((swish++-group . "Swish++ Group spec: ")))
+ ((swish++-group . "Swish++ Group spec (regexp): ")))
(swish-e nnir-run-swish-e
- ((swish-e-group . "Swish-e Group spec: ")))
+ ((swish-e-group . "Swish-e Group spec (regexp): ")))
(namazu nnir-run-namazu
())
(notmuch nnir-run-notmuch
())
(hyrex nnir-run-hyrex
- ((hyrex-group . "Hyrex Group spec: ")))
+ ((hyrex-group . "Hyrex Group spec (regexp): ")))
(find-grep nnir-run-find-grep
((grep-options . "Grep options: "))))
"Alist of supported search engines.
diff --git a/lisp/gnus/nnml.el b/lisp/gnus/nnml.el
index 64e1ee11977..05d0c902340 100644
--- a/lisp/gnus/nnml.el
+++ b/lisp/gnus/nnml.el
@@ -1094,7 +1094,10 @@ Use the nov database for the current group if available."
(concat group ":" new-number-string)))
;; Save to the new file:
(nnmail-write-region (point-min) (point-max) newfile))
- (funcall nnmail-delete-file-function oldfile))
+ (condition-case ()
+ (funcall nnmail-delete-file-function oldfile)
+ (file-error
+ (message "Couldn't delete %s" oldfile))))
;; 2/ Update all marks for this article:
;; #### NOTE: it is possible that the new article number
;; #### already belongs to a range, whereas the corresponding