1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-09-27 13:31:16 +02:00

patman: Drop unicode helper functions

We don't need these now that everything uses Python 3. Remove them and
the extra code in GetBytes() and ToBytes() too.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2020-11-08 20:36:18 -07:00
parent 5ea9dccf02
commit fc0056e8d5
8 changed files with 17 additions and 63 deletions

View File

@@ -52,7 +52,7 @@ class Entry_fmap(Entry):
if pos is not None: if pos is not None:
pos -= entry.section.GetRootSkipAtStart() pos -= entry.section.GetRootSkipAtStart()
areas.append(fmap_util.FmapArea(pos or 0, entry.size or 0, areas.append(fmap_util.FmapArea(pos or 0, entry.size or 0,
tools.FromUnicode(entry.name), 0)) entry.name, 0))
entries = self.GetImage().GetEntries() entries = self.GetImage().GetEntries()
areas = [] areas = []

View File

@@ -111,8 +111,7 @@ def EncodeFmap(image_size, name, areas):
ConvertName(names, params) ConvertName(names, params)
return struct.pack(fmt, *params) return struct.pack(fmt, *params)
values = FmapHeader(FMAP_SIGNATURE, 1, 0, 0, image_size, values = FmapHeader(FMAP_SIGNATURE, 1, 0, 0, image_size, name, len(areas))
tools.FromUnicode(name), len(areas))
blob = _FormatBlob(FMAP_HEADER_FORMAT, FMAP_HEADER_NAMES, values) blob = _FormatBlob(FMAP_HEADER_FORMAT, FMAP_HEADER_NAMES, values)
for area in areas: for area in areas:
blob += _FormatBlob(FMAP_AREA_FORMAT, FMAP_AREA_NAMES, area) blob += _FormatBlob(FMAP_AREA_FORMAT, FMAP_AREA_NAMES, area)

View File

@@ -109,7 +109,8 @@ def get_value(ftype, value):
if ftype == fdt.Type.INT: if ftype == fdt.Type.INT:
return '%#x' % fdt_util.fdt32_to_cpu(value) return '%#x' % fdt_util.fdt32_to_cpu(value)
elif ftype == fdt.Type.BYTE: elif ftype == fdt.Type.BYTE:
return '%#x' % tools.ToByte(value[0]) ch = value[0]
return '%#x' % ord(ch) if type(ch) == str else ch
elif ftype == fdt.Type.STRING: elif ftype == fdt.Type.STRING:
# Handle evil ACPI backslashes by adding another backslash before them. # Handle evil ACPI backslashes by adding another backslash before them.
# So "\\_SB.GPO0" in the device tree effectively stays like that in C # So "\\_SB.GPO0" in the device tree effectively stays like that in C

View File

@@ -237,27 +237,26 @@ class TestFunctional(unittest.TestCase):
if 'Cc:' not in prev: if 'Cc:' not in prev:
break break
self.assertEqual('To: u-boot@lists.denx.de', prev) self.assertEqual('To: u-boot@lists.denx.de', prev)
self.assertEqual('Cc: %s' % tools.FromUnicode(stefan), next(lines)) self.assertEqual('Cc: %s' % stefan, next(lines))
self.assertEqual('Version: 3', next(lines)) self.assertEqual('Version: 3', next(lines))
self.assertEqual('Prefix:\t RFC', next(lines)) self.assertEqual('Prefix:\t RFC', next(lines))
self.assertEqual('Cover: 4 lines', next(lines)) self.assertEqual('Cover: 4 lines', next(lines))
self.assertEqual(' Cc: %s' % self.fred, next(lines)) self.assertEqual(' Cc: %s' % self.fred, next(lines))
self.assertEqual(' Cc: %s' % tools.FromUnicode(self.leb), self.assertEqual(' Cc: %s' % self.leb,
next(lines)) next(lines))
self.assertEqual(' Cc: %s' % tools.FromUnicode(mel), next(lines)) self.assertEqual(' Cc: %s' % mel, next(lines))
self.assertEqual(' Cc: %s' % rick, next(lines)) self.assertEqual(' Cc: %s' % rick, next(lines))
expected = ('Git command: git send-email --annotate ' expected = ('Git command: git send-email --annotate '
'--in-reply-to="%s" --to "u-boot@lists.denx.de" ' '--in-reply-to="%s" --to "u-boot@lists.denx.de" '
'--cc "%s" --cc-cmd "%s send --cc-cmd %s" %s %s' '--cc "%s" --cc-cmd "%s send --cc-cmd %s" %s %s'
% (in_reply_to, stefan, sys.argv[0], cc_file, cover_fname, % (in_reply_to, stefan, sys.argv[0], cc_file, cover_fname,
' '.join(args))) ' '.join(args)))
self.assertEqual(expected, tools.ToUnicode(next(lines))) self.assertEqual(expected, next(lines))
self.assertEqual(('%s %s\0%s' % (args[0], rick, stefan)), self.assertEqual(('%s %s\0%s' % (args[0], rick, stefan)), cc_lines[0])
tools.ToUnicode(cc_lines[0]))
self.assertEqual( self.assertEqual(
'%s %s\0%s\0%s\0%s' % (args[1], self.fred, self.leb, rick, stefan), '%s %s\0%s\0%s\0%s' % (args[1], self.fred, self.leb, rick, stefan),
tools.ToUnicode(cc_lines[1])) cc_lines[1])
expected = ''' expected = '''
This is a test of how the cover This is a test of how the cover

View File

@@ -383,7 +383,6 @@ def BuildEmailList(in_list, tag=None, alias=None, raise_on_error=True):
raw += LookupEmail(item, alias, raise_on_error=raise_on_error) raw += LookupEmail(item, alias, raise_on_error=raise_on_error)
result = [] result = []
for item in raw: for item in raw:
item = tools.FromUnicode(item)
if not item in result: if not item in result:
result.append(item) result.append(item)
if tag: if tag:
@@ -494,7 +493,7 @@ send --cc-cmd cc-fname" cover p1 p2'
if smtp_server: if smtp_server:
cmd.append('--smtp-server=%s' % smtp_server) cmd.append('--smtp-server=%s' % smtp_server)
if in_reply_to: if in_reply_to:
cmd.append('--in-reply-to="%s"' % tools.FromUnicode(in_reply_to)) cmd.append('--in-reply-to="%s"' % in_reply_to)
if thread: if thread:
cmd.append('--thread') cmd.append('--thread')

View File

@@ -272,7 +272,6 @@ class Series(dict):
for x in set(cc) & set(settings.bounces): for x in set(cc) & set(settings.bounces):
print(col.Color(col.YELLOW, 'Skipping "%s"' % x)) print(col.Color(col.YELLOW, 'Skipping "%s"' % x))
cc = set(cc) - set(settings.bounces) cc = set(cc) - set(settings.bounces)
cc = [tools.FromUnicode(m) for m in cc]
if limit is not None: if limit is not None:
cc = cc[:limit] cc = cc[:limit]
all_ccs += cc all_ccs += cc
@@ -281,11 +280,10 @@ class Series(dict):
if cover_fname: if cover_fname:
cover_cc = gitutil.BuildEmailList(self.get('cover_cc', '')) cover_cc = gitutil.BuildEmailList(self.get('cover_cc', ''))
cover_cc = [tools.FromUnicode(m) for m in cover_cc]
cover_cc = list(set(cover_cc + all_ccs)) cover_cc = list(set(cover_cc + all_ccs))
if limit is not None: if limit is not None:
cover_cc = cover_cc[:limit] cover_cc = cover_cc[:limit]
cc_list = '\0'.join([tools.ToUnicode(x) for x in sorted(cover_cc)]) cc_list = '\0'.join([x for x in sorted(cover_cc)])
print(cover_fname, cc_list, file=fd) print(cover_fname, cc_list, file=fd)
fd.close() fd.close()

View File

@@ -112,7 +112,7 @@ class _ProjectConfigParser(ConfigParser.SafeConfigParser):
val = ConfigParser.SafeConfigParser.get( val = ConfigParser.SafeConfigParser.get(
self, section, option, *args, **kwargs self, section, option, *args, **kwargs
) )
return tools.ToUnicode(val) return val
def items(self, section, *args, **kwargs): def items(self, section, *args, **kwargs):
"""Extend SafeConfigParser to add project_section to section. """Extend SafeConfigParser to add project_section to section.
@@ -147,8 +147,7 @@ class _ProjectConfigParser(ConfigParser.SafeConfigParser):
item_dict = dict(top_items) item_dict = dict(top_items)
item_dict.update(project_items) item_dict.update(project_items)
return {(tools.ToUnicode(item), tools.ToUnicode(val)) return {(item, val) for item, val in item_dict.items()}
for item, val in item_dict.items()}
def ReadGitAliases(fname): def ReadGitAliases(fname):
"""Read a git alias file. This is in the form used by git: """Read a git alias file. This is in the form used by git:

View File

@@ -414,8 +414,6 @@ def WriteFile(fname, data, binary=True):
def GetBytes(byte, size): def GetBytes(byte, size):
"""Get a string of bytes of a given size """Get a string of bytes of a given size
This handles the unfortunate different between Python 2 and Python 2.
Args: Args:
byte: Numeric byte value to use byte: Numeric byte value to use
size: Size of bytes/string to return size: Size of bytes/string to return
@@ -423,43 +421,7 @@ def GetBytes(byte, size):
Returns: Returns:
A bytes type with 'byte' repeated 'size' times A bytes type with 'byte' repeated 'size' times
""" """
if sys.version_info[0] >= 3: return bytes([byte]) * size
data = bytes([byte]) * size
else:
data = chr(byte) * size
return data
def ToUnicode(val):
"""Make sure a value is a unicode string
This allows some amount of compatibility between Python 2 and Python3. For
the former, it returns a unicode object.
Args:
val: string or unicode object
Returns:
unicode version of val
"""
if sys.version_info[0] >= 3:
return val
return val if isinstance(val, unicode) else val.decode('utf-8')
def FromUnicode(val):
"""Make sure a value is a non-unicode string
This allows some amount of compatibility between Python 2 and Python3. For
the former, it converts a unicode object to a string.
Args:
val: string or unicode object
Returns:
non-unicode version of val
"""
if sys.version_info[0] >= 3:
return val
return val if isinstance(val, str) else val.encode('utf-8')
def ToByte(ch): def ToByte(ch):
"""Convert a character to an ASCII value """Convert a character to an ASCII value
@@ -506,12 +468,9 @@ def ToBytes(string):
string: string to convert string: string to convert
Returns: Returns:
Python 3: A bytes type A bytes type
Python 2: A string type
""" """
if sys.version_info[0] >= 3:
return string.encode('utf-8') return string.encode('utf-8')
return string
def ToString(bval): def ToString(bval):
"""Convert a bytes type into a str type """Convert a bytes type into a str type