emacs-diffs
[Top][All Lists]
Advanced

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

master 3cfc553 2/2: Add new function lm-maintainers (bug#48592)


From: Jonas Bernoulli
Subject: master 3cfc553 2/2: Add new function lm-maintainers (bug#48592)
Date: Wed, 30 Jun 2021 13:56:59 -0400 (EDT)

branch: master
commit 3cfc5532021357ef2e1284323e6936fafce484e5
Author: Jonas Bernoulli <jonas@bernoul.li>
Commit: Jonas Bernoulli <jonas@bernoul.li>

    Add new function lm-maintainers (bug#48592)
    
    * doc/lispref/tips.texi (Library Headers): Improve wording.
    * lisp/emacs-lisp/lisp-mnt.el (lm-maintainers): New function.
    (lm-maintainer): Make obsolete in favor of lm-maintainer.
    (lm-verify): Use lm-maintainers.
    (lm-report-bug): Use lm-maintainers.
---
 doc/lispref/tips.texi       |  6 +++---
 lisp/emacs-lisp/lisp-mnt.el | 22 +++++++++++++++-------
 2 files changed, 18 insertions(+), 10 deletions(-)

diff --git a/doc/lispref/tips.texi b/doc/lispref/tips.texi
index 36c68ee..54cafff 100644
--- a/doc/lispref/tips.texi
+++ b/doc/lispref/tips.texi
@@ -1034,7 +1034,7 @@ the conventional possibilities for @var{header-name}:
 
 @table @samp
 @item Author
-This line states the name and email address of at least the principal
+This header states the name and email address of at least the principal
 author of the library.  If there are multiple authors, list them on
 continuation lines led by @code{;;} and a tab or at least two spaces.
 We recommend including a contact email address, of the form
@@ -1053,8 +1053,8 @@ This header has the same format as the Author header.  It 
lists the
 person(s) who currently maintain(s) the file (respond to bug reports,
 etc.).
 
-If there is no maintainer line, the person(s) in the Author field
-is/are presumed to be the maintainers.  Some files in Emacs use
+If there is no Maintainer header, the person(s) in the Author header
+is/are presumed to be the maintainer(s).  Some files in Emacs use
 @samp{emacs-devel@@gnu.org} for the maintainer, which means the author is
 no longer responsible for the file, and that it is maintained as part
 of Emacs.
diff --git a/lisp/emacs-lisp/lisp-mnt.el b/lisp/emacs-lisp/lisp-mnt.el
index 11a0440..83da495 100644
--- a/lisp/emacs-lisp/lisp-mnt.el
+++ b/lisp/emacs-lisp/lisp-mnt.el
@@ -378,14 +378,22 @@ the cdr is an email address."
     (let ((authorlist (lm-header-multiline "author")))
       (mapcar #'lm-crack-address authorlist))))
 
+(defun lm-maintainers (&optional file)
+  "Return the maintainer list of file FILE, or current buffer if FILE is nil.
+If the maintainers are unspecified, then return the authors.
+Each element of the list is a cons; the car is the full name,
+the cdr is an email address."
+  (lm-with-file file
+    (mapcar #'lm-crack-address
+            (or (lm-header-multiline "maintainer")
+                (lm-header-multiline "author")))))
+
 (defun lm-maintainer (&optional file)
   "Return the maintainer of file FILE, or current buffer if FILE is nil.
+If the maintainer is unspecified, then return the author.
 The return value has the form (NAME . ADDRESS)."
-  (lm-with-file file
-    (let ((maint (lm-header "maintainer")))
-      (if maint
-         (lm-crack-address maint)
-       (car (lm-authors))))))
+  (declare (obsolete lm-maintainers "28.1"))
+  (car (lm-maintainers file)))
 
 (defun lm-creation-date (&optional file)
   "Return the created date given in file FILE, or current buffer if FILE is 
nil."
@@ -545,7 +553,7 @@ copyright notice is allowed."
                "Can't find package name")
               ((not (lm-authors))
                "`Author:' tag missing")
-              ((not (lm-maintainer))
+              ((not (lm-maintainers))
                "`Maintainer:' tag missing")
               ((not (lm-summary))
                "Can't find the one-line summary description")
@@ -613,7 +621,7 @@ Prompts for bug subject TOPIC.  Leaves you in a mail 
buffer."
   (interactive "sBug Subject: ")
   (require 'emacsbug)
   (let ((package (lm-get-package-name))
-       (addr (lm-maintainer))
+       (addr (car (lm-maintainers)))
        (version (lm-version)))
     (compose-mail (if addr
                      (concat (car addr) " <" (cdr addr) ">")



reply via email to

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