summaryrefslogtreecommitdiff
path: root/tools/patman/series.py
diff options
context:
space:
mode:
authorDoug Anderson <dianders@chromium.org>2012-12-03 14:40:42 +0000
committerSimon Glass <sjg@chromium.org>2013-01-31 15:23:39 -0800
commitd94566a1115d35f87db793d2daaa79823528937c (patch)
tree26cba53979275ad5e15661c8540ac188ed081a88 /tools/patman/series.py
parentd96ef37df78eac5c636866d8f226991a5d96e6bb (diff)
downloadu-boot-imx-d94566a1115d35f87db793d2daaa79823528937c.zip
u-boot-imx-d94566a1115d35f87db793d2daaa79823528937c.tar.gz
u-boot-imx-d94566a1115d35f87db793d2daaa79823528937c.tar.bz2
patman: Cache the CC list from MakeCcFile() for use in ShowActions()
Currently we go through and generate the CC list for patches twice. This gets slow when (in a future CL) we add a call to get_maintainer.pl on Linux. Instead of doing things twice, just cache the CC list when it is first generated. Signed-off-by: Doug Anderson <dianders@chromium.org> Acked-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'tools/patman/series.py')
-rw-r--r--tools/patman/series.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/tools/patman/series.py b/tools/patman/series.py
index d2971f4..ad8288d 100644
--- a/tools/patman/series.py
+++ b/tools/patman/series.py
@@ -46,6 +46,11 @@ class Series(dict):
self.notes = []
self.changes = {}
+ # Written in MakeCcFile()
+ # key: name of patch file
+ # value: list of email addresses
+ self._generated_cc = {}
+
# These make us more like a dictionary
def __setattr__(self, name, value):
self[name] = value
@@ -109,10 +114,7 @@ class Series(dict):
for upto in range(len(args)):
commit = self.commits[upto]
print col.Color(col.GREEN, ' %s' % args[upto])
- cc_list = []
- if process_tags:
- cc_list += gitutil.BuildEmailList(commit.tags)
- cc_list += gitutil.BuildEmailList(commit.cc_list)
+ cc_list = list(self._generated_cc[commit.patch])
# Skip items in To list
if 'to' in self:
@@ -202,6 +204,8 @@ class Series(dict):
def MakeCcFile(self, process_tags):
"""Make a cc file for us to use for per-commit Cc automation
+ Also stores in self._generated_cc to make ShowActions() faster.
+
Args:
process_tags: Process tags as if they were aliases
Return:
@@ -216,6 +220,7 @@ class Series(dict):
list += gitutil.BuildEmailList(commit.tags)
list += gitutil.BuildEmailList(commit.cc_list)
print >>fd, commit.patch, ', '.join(list)
+ self._generated_cc[commit.patch] = list
fd.close()
return fname