Skip to content

Commit

Permalink
tools: fixup icutrim.py use of string and bytes objects
Browse files Browse the repository at this point in the history
PR-URL: #31659
Reviewed-By: Christian Clauss <cclauss@me.com>
Reviewed-By: Sam Roberts <vieuxtech@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
  • Loading branch information
jmercier-lbi authored and jasnell committed Mar 18, 2020
1 parent 509a184 commit 5f0af2a
Showing 1 changed file with 8 additions and 9 deletions.
17 changes: 8 additions & 9 deletions tools/icu/icutrim.py
Expand Up @@ -13,6 +13,7 @@

from __future__ import print_function

import io
import json
import optparse
import os
Expand Down Expand Up @@ -159,9 +160,8 @@ def runcmd(tool, cmd, doContinue=False):
return rc

## STEP 0 - read in json config
fi= open(options.filterfile, "rb")
config=json.load(fi)
fi.close()
with io.open(options.filterfile, encoding='utf-8') as fi:
config = json.load(fi)

if options.locales:
config["variables"] = config.get("variables", {})
Expand Down Expand Up @@ -285,10 +285,9 @@ def addTreeByType(tree, mytree):
# read in the resource list for the tree
treelistfile = os.path.join(options.tmpdir,"%s.lst" % tree)
runcmd("iculslocs", "-i %s -N %s -T %s -l > %s" % (outfile, dataname, tree, treelistfile))
fi = open(treelistfile, 'rb')
treeitems = fi.readlines()
trees[tree]["locs"] = [treeitems[i].strip() for i in range(len(treeitems))]
fi.close()
with io.open(treelistfile, 'r', encoding='utf-8') as fi:
treeitems = fi.readlines()
trees[tree]["locs"] = [line.strip() for line in treeitems]
if tree not in config.get("trees", {}):
print(" Warning: filter file %s does not mention trees.%s - will be kept as-is" % (options.filterfile, tree))
else:
Expand Down Expand Up @@ -317,12 +316,12 @@ def removeList(count=0):
erritems = fi.readlines()
fi.close()
#Item zone/zh_Hant_TW.res depends on missing item zone/zh_Hant.res
pat = re.compile("""^Item ([^ ]+) depends on missing item ([^ ]+).*""")
pat = re.compile(bytes(r"^Item ([^ ]+) depends on missing item ([^ ]+).*", 'utf-8'))

This comment has been minimized.

Copy link
@srl295

srl295 Sep 24, 2021

Member

Didn't work on my mac: #40209

for i in range(len(erritems)):
line = erritems[i].strip()
m = pat.match(line)
if m:
toDelete = m.group(1)
toDelete = m.group(1).decode("utf-8")
if(options.verbose > 5):
print("<< %s added to delete" % toDelete)
remove.add(toDelete)
Expand Down

0 comments on commit 5f0af2a

Please sign in to comment.