*** empty log message ***
authorLars Magne Ingebrigtsen <larsi@gnus.org>
Sat, 12 Apr 1997 21:31:21 +0000 (21:31 +0000)
committerLars Magne Ingebrigtsen <larsi@gnus.org>
Sat, 12 Apr 1997 21:31:21 +0000 (21:31 +0000)
lisp/ChangeLog
lisp/gnus-msg.el
lisp/gnus-sum.el
lisp/gnus.el
lisp/message.el
texi/gnus.texi
texi/message.texi
todo

index e55dfce..f3d6d7f 100644 (file)
@@ -1,3 +1,22 @@
+Sat Apr 12 23:28:30 1997  Lars Magne Ingebrigtsen  <larsi@menja.ifi.uio.no>
+
+       * gnus.el: Gnus v5.4.45 is released.
+
+Sat Apr 12 02:00:51 1997  Lars Magne Ingebrigtsen  <larsi@ifi.uio.no>
+
+       * gnus-sum.el (gnus-summary-update-article-line): Insert the
+       subject. 
+
+       * gnus-msg.el (gnus-post-news): Use it.
+
+       * message.el (message-wide-reply): Accept ignore-reply-to.
+
+       * gnus-sum.el (gnus-thread-loop-p): Don't recurse; use a stack.
+
+       * message.el (message-generate-headers): Don't insert incomlete
+       Senders in mail-only messages.
+       (message-check-news-header-syntax): Check subject first.
+
 Sat Apr 12 01:42:42 1997  Lars Magne Ingebrigtsen  <larsi@menja.ifi.uio.no>
 
        * gnus.el: Gnus v5.4.44 is released.
 Sat Apr 12 01:42:42 1997  Lars Magne Ingebrigtsen  <larsi@menja.ifi.uio.no>
 
        * gnus.el: Gnus v5.4.44 is released.
index d02c135..6289778 100644 (file)
@@ -415,7 +415,9 @@ header line with the old Message-ID."
                  (push (list 'gnus-inews-add-to-address pgroup)
                        message-send-actions)))
            (set-buffer gnus-article-copy)
                  (push (list 'gnus-inews-add-to-address pgroup)
                        message-send-actions)))
            (set-buffer gnus-article-copy)
-           (message-wide-reply to-address)))
+           (message-wide-reply to-address
+                               (gnus-group-find-parameter
+                                gnus-newsgroup-name 'broken-reply-to))))
        (when yank
          (gnus-inews-yank-articles yank))))))
 
        (when yank
          (gnus-inews-yank-articles yank))))))
 
index 4c59788..b08be06 100644 (file)
@@ -2759,26 +2759,29 @@ If NO-DISPLAY, don't generate a summary buffer."
 
 (defun gnus-thread-loop-p (root thread)
   "Say whether ROOT is in THREAD."
 
 (defun gnus-thread-loop-p (root thread)
   "Say whether ROOT is in THREAD."
-  (let ((th (cdr thread)))
-    (while (and th
-               (not (eq (caar th) root)))
-      (pop th))
-    (if th
-       ;; We have found a loop.
-       (let (ref-dep)
-         (setcdr thread (delq (car th) (cdr thread)))
-         (if (boundp (setq ref-dep (intern "none"
-                                           gnus-newsgroup-dependencies)))
-             (setcdr (symbol-value ref-dep)
-                     (nconc (cdr (symbol-value ref-dep))
-                            (list (car th))))
-           (set ref-dep (list nil (car th))))
-         1)
-      ;; Recurse down into the sub-threads and look for loops.
-      (apply '+
-            (mapcar
-             (lambda (thread) (gnus-thread-loop-p root thread))
-             (cdr thread))))))
+  (let ((stack (list thread))
+       (infloop 0)
+       th)
+    (while (setq thread (pop stack))
+      (setq th (cdr thread))
+      (while (and th
+                 (not (eq (caar th) root)))
+       (pop th))
+      (if th
+         ;; We have found a loop.
+         (let (ref-dep)
+           (setcdr thread (delq (car th) (cdr thread)))
+           (if (boundp (setq ref-dep (intern "none"
+                                             gnus-newsgroup-dependencies)))
+               (setcdr (symbol-value ref-dep)
+                       (nconc (cdr (symbol-value ref-dep))
+                              (list (car th))))
+             (set ref-dep (list nil (car th))))
+           (setq infloop 1
+                 stack nil))
+       ;; Push all the subthreads onto the stack.
+       (push (cdr thread) stack)))
+    infloop))
 
 (defun gnus-make-threads ()
   "Go through the dependency hashtb and find the roots.         Return all threads."
 
 (defun gnus-make-threads ()
   "Go through the dependency hashtb and find the roots.         Return all threads."
@@ -2950,10 +2953,10 @@ If NO-DISPLAY, don't generate a summary buffer."
                    article
                    (gnus-data-list t)))))
              ;; Error on the side of excessive subjects.
                    article
                    (gnus-data-list t)))))
              ;; Error on the side of excessive subjects.
-             (error (mail-header-subject header)))
+             (error ""))
            (mail-header-subject header))
            (mail-header-subject header))
-          (mail-header-subject header)
-        "")
+          ""
+        (mail-header-subject header))
        nil (cdr (assq article gnus-newsgroup-scored))
        (memq article gnus-newsgroup-processable))
       (when length
        nil (cdr (assq article gnus-newsgroup-scored))
        (memq article gnus-newsgroup-processable))
       (when length
index 523b990..c9eb8a6 100644 (file)
@@ -226,7 +226,7 @@ is restarted, and sometimes reloaded."
   :link '(custom-manual "(gnus)Exiting Gnus")
   :group 'gnus)
 
   :link '(custom-manual "(gnus)Exiting Gnus")
   :group 'gnus)
 
-(defconst gnus-version-number "5.4.44"
+(defconst gnus-version-number "5.4.45"
   "Version number for this version of Gnus.")
 
 (defconst gnus-version (format "Gnus v%s" gnus-version-number)
   "Version number for this version of Gnus.")
 
 (defconst gnus-version (format "Gnus v%s" gnus-version-number)
index ecd5690..72f16fd 100644 (file)
@@ -2032,6 +2032,16 @@ to find out how to use this."
 
 (defun message-check-news-header-syntax ()
   (and
 
 (defun message-check-news-header-syntax ()
   (and
+   ;; Check the Subject header.
+   (message-check 'subject
+     (let* ((case-fold-search t)
+           (subject (message-fetch-field "subject")))
+       (or
+       (and subject
+            (not (string-match "\\`[ \t]*\\'" subject)))
+       (ignore
+        (message
+         "The subject field is empty or missing.  Posting is denied.")))))
    ;; Check for commands in Subject.
    (message-check 'subject-cmsg
      (if (string-match "^cmsg " (message-fetch-field "subject"))
    ;; Check for commands in Subject.
    (message-check 'subject-cmsg
      (if (string-match "^cmsg " (message-fetch-field "subject"))
@@ -2105,16 +2115,6 @@ to find out how to use this."
           (y-or-n-p
            (format "The Message-ID looks strange: \"%s\".  Really post? "
                    message-id)))))
           (y-or-n-p
            (format "The Message-ID looks strange: \"%s\".  Really post? "
                    message-id)))))
-   ;; Check the Subject header.
-   (message-check 'subject
-     (let* ((case-fold-search t)
-           (subject (message-fetch-field "subject")))
-       (or
-       (and subject
-            (not (string-match "\\`[ \t]*\\'" subject)))
-       (ignore
-        (message
-         "The subject field is empty or missing.  Posting is denied.")))))
    ;; Check the Newsgroups & Followup-To headers.
    (message-check 'existing-newsgroups
      (let* ((case-fold-search t)
    ;; Check the Newsgroups & Followup-To headers.
    (message-check 'existing-newsgroups
      (let* ((case-fold-search t)
@@ -2708,7 +2708,9 @@ Headers already prepared in the buffer are not modified."
            (beginning-of-line)
            (insert "Original-")
            (beginning-of-line))
            (beginning-of-line)
            (insert "Original-")
            (beginning-of-line))
-         (insert "Sender: " secure-sender "\n"))))))
+         (when (or (message-news-p)
+                   (string-match "^[^@]@.+\\..+" secure-sender))
+           (insert "Sender: " secure-sender "\n")))))))
 
 (defun message-insert-courtesy-copy ()
   "Insert a courtesy message in mail copies of combined messages."
 
 (defun message-insert-courtesy-copy ()
   "Insert a courtesy message in mail copies of combined messages."
@@ -3072,10 +3074,10 @@ Headers already prepared in the buffer are not modified."
      cur)))
 
 ;;;###autoload
      cur)))
 
 ;;;###autoload
-(defun message-wide-reply (&optional to-address)
+(defun message-wide-reply (&optional to-address ignore-reply-to)
   "Make a \"wide\" reply to the message in the current buffer."
   (interactive)
   "Make a \"wide\" reply to the message in the current buffer."
   (interactive)
-  (message-reply to-address t))
+  (message-reply to-address t ignore-reply-to))
 
 ;;;###autoload
 (defun message-followup (&optional to-newsgroups)
 
 ;;;###autoload
 (defun message-followup (&optional to-newsgroups)
index 18aef52..25d25c9 100644 (file)
@@ -1,7 +1,7 @@
 \input texinfo                  @c -*-texinfo-*-
 
 @setfilename gnus
 \input texinfo                  @c -*-texinfo-*-
 
 @setfilename gnus
-@settitle Gnus 5.4.44 Manual
+@settitle Gnus 5.4.45 Manual
 @synindex fn cp
 @synindex vr cp
 @synindex pg cp
 @synindex fn cp
 @synindex vr cp
 @synindex pg cp
@@ -287,7 +287,7 @@ into another language, under the above conditions for modified versions.
 @tex
 
 @titlepage
 @tex
 
 @titlepage
-@title Gnus 5.4.44 Manual
+@title Gnus 5.4.45 Manual
 
 @author by Lars Magne Ingebrigtsen
 @page
 
 @author by Lars Magne Ingebrigtsen
 @page
@@ -323,7 +323,7 @@ can be gotten by any nefarious means you can think of---@sc{nntp}, local
 spool or your mbox file.  All at the same time, if you want to push your
 luck.
 
 spool or your mbox file.  All at the same time, if you want to push your
 luck.
 
-This manual corresponds to Gnus 5.4.44.
+This manual corresponds to Gnus 5.4.45.
 
 @end ifinfo
 
 
 @end ifinfo
 
index 3a69b9d..5af1c69 100644 (file)
@@ -1,7 +1,7 @@
 \input texinfo                  @c -*-texinfo-*-
 
 @setfilename message
 \input texinfo                  @c -*-texinfo-*-
 
 @setfilename message
-@settitle Message 5.4.44 Manual
+@settitle Message 5.4.45 Manual
 @synindex fn cp
 @synindex vr cp
 @synindex pg cp
 @synindex fn cp
 @synindex vr cp
 @synindex pg cp
@@ -39,7 +39,7 @@ into another language, under the above conditions for modified versions.
 @tex
 
 @titlepage
 @tex
 
 @titlepage
-@title Message 5.4.44 Manual
+@title Message 5.4.45 Manual
 
 @author by Lars Magne Ingebrigtsen
 @page
 
 @author by Lars Magne Ingebrigtsen
 @page
@@ -79,7 +79,7 @@ buffers.
 * Key Index::         List of Message mode keys.
 @end menu
 
 * Key Index::         List of Message mode keys.
 @end menu
 
-This manual corresponds to Message 5.4.44.  Message is distributed with
+This manual corresponds to Message 5.4.45.  Message is distributed with
 the Gnus distribution bearing the same version number as this manual
 has. 
 
 the Gnus distribution bearing the same version number as this manual
 has. 
 
diff --git a/todo b/todo
index e9fe2ec..c59b949 100644 (file)
--- a/todo
+++ b/todo
@@ -636,3 +636,5 @@ database such as specifying start and end dates, subject, author,
 and/or newsgroup name.
 
 * new Date header scoring type -- older, newer
 and/or newsgroup name.
 
 * new Date header scoring type -- older, newer
+
+* use the summary toolbar in the article buffer.