projects
/
platform
/
kernel
/
u-boot.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge tag 'u-boot-rockchip-20200501' of https://gitlab.denx.de/u-boot/custodians...
[platform/kernel/u-boot.git]
/
tools
/
patman
/
gitutil.py
diff --git
a/tools/patman/gitutil.py
b/tools/patman/gitutil.py
index
bb7c9e0
..
770a051
100644
(file)
--- a/
tools/patman/gitutil.py
+++ b/
tools/patman/gitutil.py
@@
-1,18
+1,18
@@
+# SPDX-License-Identifier: GPL-2.0+
# Copyright (c) 2011 The Chromium OS Authors.
#
# Copyright (c) 2011 The Chromium OS Authors.
#
-# SPDX-License-Identifier: GPL-2.0+
-#
-import command
import re
import os
import re
import os
-import series
import subprocess
import sys
import subprocess
import sys
-import terminal
-import checkpatch
-import settings
+from patman import checkpatch
+from patman import command
+from patman import series
+from patman import settings
+from patman import terminal
+from patman import tools
# True to use --no-decorate - we check this in Setup()
use_no_decorate = True
# True to use --no-decorate - we check this in Setup()
use_no_decorate = True
@@
-23,7
+23,7
@@
def LogCmd(commit_range, git_dir=None, oneline=False, reverse=False,
Args:
commit_range: Range expression to use for log, None for none
Args:
commit_range: Range expression to use for log, None for none
- git_dir: Path to git reposit
i
ory (None to use default)
+ git_dir: Path to git repository (None to use default)
oneline: True to use --oneline, else False
reverse: True to reverse the log (--reverse)
count: Number of commits to list, or None for no limit
oneline: True to use --oneline, else False
reverse: True to reverse the log (--reverse)
count: Number of commits to list, or None for no limit
@@
-139,7
+139,7
@@
def GetUpstream(git_dir, branch):
leaf = merge.split('/')[-1]
return '%s/%s' % (remote, leaf), None
else:
leaf = merge.split('/')[-1]
return '%s/%s' % (remote, leaf), None
else:
- raise ValueError
,
("Cannot determine upstream branch for branch "
+ raise ValueError("Cannot determine upstream branch for branch "
"'%s' remote='%s', merge='%s'" % (branch, remote, merge))
"'%s' remote='%s', merge='%s'" % (branch, remote, merge))
@@
-166,7
+166,7
@@
def CountCommitsInRange(git_dir, range_expr):
git_dir: Directory containing git repo
range_expr: Range to check
Return:
git_dir: Directory containing git repo
range_expr: Range to check
Return:
- Number of patches that exist in the supplied range
m
or None if none
+ Number of patches that exist in the supplied range or None if none
were found
"""
pipe = [LogCmd(range_expr, git_dir=git_dir, oneline=True)]
were found
"""
pipe = [LogCmd(range_expr, git_dir=git_dir, oneline=True)]
@@
-224,7
+224,7
@@
def Checkout(commit_hash, git_dir=None, work_tree=None, force=False):
result = command.RunPipe([pipe], capture=True, raise_on_error=False,
capture_stderr=True)
if result.return_code != 0:
result = command.RunPipe([pipe], capture=True, raise_on_error=False,
capture_stderr=True)
if result.return_code != 0:
- raise OSError
, 'git checkout (%s): %s' % (pipe, result.stderr
)
+ raise OSError
('git checkout (%s): %s' % (pipe, result.stderr)
)
def Clone(git_dir, output_dir):
"""Checkout the selected commit for this build
def Clone(git_dir, output_dir):
"""Checkout the selected commit for this build
@@
-236,7
+236,7
@@
def Clone(git_dir, output_dir):
result = command.RunPipe([pipe], capture=True, cwd=output_dir,
capture_stderr=True)
if result.return_code != 0:
result = command.RunPipe([pipe], capture=True, cwd=output_dir,
capture_stderr=True)
if result.return_code != 0:
- raise OSError
, 'git clone: %s' % result.stderr
+ raise OSError
('git clone: %s' % result.stderr)
def Fetch(git_dir=None, work_tree=None):
"""Fetch from the origin repo
def Fetch(git_dir=None, work_tree=None):
"""Fetch from the origin repo
@@
-252,7
+252,7
@@
def Fetch(git_dir=None, work_tree=None):
pipe.append('fetch')
result = command.RunPipe([pipe], capture=True, capture_stderr=True)
if result.return_code != 0:
pipe.append('fetch')
result = command.RunPipe([pipe], capture=True, capture_stderr=True)
if result.return_code != 0:
- raise OSError
, 'git fetch: %s' % result.stderr
+ raise OSError
('git fetch: %s' % result.stderr)
def CreatePatches(start, count, series):
"""Create a series of patches from the top of the current branch.
def CreatePatches(start, count, series):
"""Create a series of patches from the top of the current branch.
@@
-326,6
+326,7
@@
def BuildEmailList(in_list, tag=None, alias=None, raise_on_error=True):
raw += LookupEmail(item, alias, raise_on_error=raise_on_error)
result = []
for item in raw:
raw += LookupEmail(item, alias, raise_on_error=raise_on_error)
result = []
for item in raw:
+ item = tools.FromUnicode(item)
if not item in result:
result.append(item)
if tag:
if not item in result:
result.append(item)
if tag:
@@
-333,7
+334,8
@@
def BuildEmailList(in_list, tag=None, alias=None, raise_on_error=True):
return result
def EmailPatches(series, cover_fname, args, dry_run, raise_on_error, cc_fname,
return result
def EmailPatches(series, cover_fname, args, dry_run, raise_on_error, cc_fname,
- self_only=False, alias=None, in_reply_to=None, thread=False):
+ self_only=False, alias=None, in_reply_to=None, thread=False,
+ smtp_server=None):
"""Email a patch series.
Args:
"""Email a patch series.
Args:
@@
-349,6
+351,7
@@
def EmailPatches(series, cover_fname, args, dry_run, raise_on_error, cc_fname,
Should be a message ID that this is in reply to.
thread: True to add --thread to git send-email (make
all patches reply to cover-letter or first patch in series)
Should be a message ID that this is in reply to.
thread: True to add --thread to git send-email (make
all patches reply to cover-letter or first patch in series)
+ smtp_server: SMTP server to use to send patches
Returns:
Git command that was/would be run
Returns:
Git command that was/would be run
@@
-394,11
+397,11
@@
def EmailPatches(series, cover_fname, args, dry_run, raise_on_error, cc_fname,
git_config_to = command.Output('git', 'config', 'sendemail.to',
raise_on_error=False)
if not git_config_to:
git_config_to = command.Output('git', 'config', 'sendemail.to',
raise_on_error=False)
if not git_config_to:
- print
("No recipient.\n"
-
"Please add something like this to a commit\n"
-
"Series-to: Fred Bloggs <f.blogs@napier.co.nz>\n"
-
"Or do something like this\n"
-
"git config sendemail.to u-boot@lists.denx.de")
+ print("No recipient.\n"
+ "Please add something like this to a commit\n"
+ "Series-to: Fred Bloggs <f.blogs@napier.co.nz>\n"
+ "Or do something like this\n"
+ "git config sendemail.to u-boot@lists.denx.de")
return
cc = BuildEmailList(list(set(series.get('cc')) - set(series.get('to'))),
'--cc', alias, raise_on_error)
return
cc = BuildEmailList(list(set(series.get('cc')) - set(series.get('to'))),
'--cc', alias, raise_on_error)
@@
-406,8
+409,10
@@
def EmailPatches(series, cover_fname, args, dry_run, raise_on_error, cc_fname,
to = BuildEmailList([os.getenv('USER')], '--to', alias, raise_on_error)
cc = []
cmd = ['git', 'send-email', '--annotate']
to = BuildEmailList([os.getenv('USER')], '--to', alias, raise_on_error)
cc = []
cmd = ['git', 'send-email', '--annotate']
+ if smtp_server:
+ cmd.append('--smtp-server=%s' % smtp_server)
if in_reply_to:
if in_reply_to:
- cmd.append('--in-reply-to="%s"' %
in_reply_to
)
+ cmd.append('--in-reply-to="%s"' %
tools.FromUnicode(in_reply_to)
)
if thread:
cmd.append('--thread')
if thread:
cmd.append('--thread')
@@
-417,10
+422,10
@@
def EmailPatches(series, cover_fname, args, dry_run, raise_on_error, cc_fname,
if cover_fname:
cmd.append(cover_fname)
cmd += args
if cover_fname:
cmd.append(cover_fname)
cmd += args
- str = ' '.join(cmd)
+
cmd
str = ' '.join(cmd)
if not dry_run:
if not dry_run:
- os.system(str)
- return str
+ os.system(
cmd
str)
+ return
cmd
str
def LookupEmail(lookup_name, alias=None, raise_on_error=True, level=0):
def LookupEmail(lookup_name, alias=None, raise_on_error=True, level=0):
@@
-489,18
+494,18
@@
def LookupEmail(lookup_name, alias=None, raise_on_error=True, level=0):
if level > 10:
msg = "Recursive email alias at '%s'" % lookup_name
if raise_on_error:
if level > 10:
msg = "Recursive email alias at '%s'" % lookup_name
if raise_on_error:
- raise OSError
, msg
+ raise OSError
(msg)
else:
else:
- print
col.Color(col.RED, msg
)
+ print
(col.Color(col.RED, msg)
)
return out_list
if lookup_name:
if not lookup_name in alias:
msg = "Alias '%s' not found" % lookup_name
if raise_on_error:
return out_list
if lookup_name:
if not lookup_name in alias:
msg = "Alias '%s' not found" % lookup_name
if raise_on_error:
- raise ValueError
, msg
+ raise ValueError
(msg)
else:
else:
- print
col.Color(col.RED, msg
)
+ print
(col.Color(col.RED, msg)
)
return out_list
for item in alias[lookup_name]:
todo = LookupEmail(item, alias, raise_on_error, level + 1)
return out_list
for item in alias[lookup_name]:
todo = LookupEmail(item, alias, raise_on_error, level + 1)
@@
-508,7
+513,7
@@
def LookupEmail(lookup_name, alias=None, raise_on_error=True, level=0):
if not new_item in out_list:
out_list.append(new_item)
if not new_item in out_list:
out_list.append(new_item)
- #print
"No match for alias '%s'" % lookup_name
+ #print
("No match for alias '%s'" % lookup_name)
return out_list
def GetTopLevel():
return out_list
def GetTopLevel():