guix-commits
[Top][All Lists]
Advanced

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

02/06: teams: Add 'cc-members-header-cmd' action.


From: guix-commits
Subject: 02/06: teams: Add 'cc-members-header-cmd' action.
Date: Mon, 1 May 2023 12:40:09 -0400 (EDT)

apteryx pushed a commit to branch master
in repository guix.

commit 0eddeb9896985e4139f412e41991ac5633a104ba
Author: Maxim Cournoyer <maxim.cournoyer@gmail.com>
AuthorDate: Sat Apr 22 23:35:59 2023 -0400

    teams: Add 'cc-members-header-cmd' action.
    
    * etc/teams.scm.in (patch->teams): New procedure.
    (main): Use it.  Add a new "cc-members-header-cmd" command; document it.
---
 etc/teams.scm.in | 20 +++++++++++++++-----
 1 file changed, 15 insertions(+), 5 deletions(-)

diff --git a/etc/teams.scm.in b/etc/teams.scm.in
index 37a3c8e191..408db8b7d5 100644
--- a/etc/teams.scm.in
+++ b/etc/teams.scm.in
@@ -5,7 +5,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2022, 2023 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2022 Mathieu Othacehe <othacehe@gnu.org>
-;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -696,6 +696,12 @@ and REV-END, two git revision strings."
          (rev-start (string-append rev-end "^")))
     (list rev-start rev-end)))
 
+(define (patch->teams patch-file)
+  "Return the name of the teams in scope for the changes in PATCH-FILE."
+  (map (compose symbol->string team-id)
+       (find-team-by-scope (apply diff-revisions
+                                  (git-patch->revisions patch-file)))))
+
 
 (define (main . args)
   (match args
@@ -708,11 +714,13 @@ and REV-END, two git revision strings."
     (("cc-members" rev-start rev-end)
      (apply cc (find-team-by-scope
                 (diff-revisions rev-start rev-end))))
+    (("cc-members-header-cmd" patch-file)
+     (for-each (lambda (team-name)
+                 (list-members (find-team team-name) (current-output-port)
+                               "X-Debbugs-Cc: "))
+               (patch->teams patch-file)))
     (("get-maintainer" patch-file)
-     (apply main "list-members"
-            (map (compose symbol->string team-id)
-                 (find-team-by-scope (apply diff-revisions
-                                            (git-patch->revisions 
patch-file))))))
+     (apply main "list-members" (patch->teams patch-file)))
     (("list-teams" . args)
      (list-teams))
     (("list-members" . team-names)
@@ -729,6 +737,8 @@ Commands:
       get git send-email flags for cc-ing <team-name>
   cc-members <start> <end> | patch
       cc teams related to files changed between revisions or in a patch file
+  cc-members-header-cmd <patch>
+      cc-members variant for use with 'git send-email --header-cmd'
   list-teams
       list teams and their members
   list-members <team-name>



reply via email to

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