Reland of Deduplicate Monochrome locale .paks
Instead of using system webview's resource whitelist, now uses a
generated list of resource IDs that are actually packed into
Webview's locale paks. This fixes the missing strings issue.
Original issue:
https://codereview.chromium.org/2980773002/
TBR=agrieve@chromium.org,dpranke@chromium.org,thestig@chromium.org,sadrul@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days
ago.
BUG=724110, 742388
Review-Url: https://codereview.chromium.org/2977993002
Cr-Original-Commit-Position: refs/heads/master@{#487176}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 368afac85d2ca5e22efcbb2271c0d379b2fc22ab
diff --git a/pak_util.py b/pak_util.py
index ec43f33..e98f9bd 100755
--- a/pak_util.py
+++ b/pak_util.py
@@ -62,6 +62,12 @@
print line.encode('utf-8')
+def _ListMain(args):
+ resources, _ = data_pack.ReadDataPack(args.pak_file)
+ for resource_id in sorted(resources.keys()):
+ args.output.write('%d\n' % resource_id)
+
+
def main():
parser = argparse.ArgumentParser(
description=__doc__, formatter_class=argparse.RawTextHelpFormatter)
@@ -88,6 +94,14 @@
help='Prints all pak IDs and contents. Useful for diffing.')
sub_parser.add_argument('pak_file')
sub_parser.set_defaults(func=_PrintMain)
+
+ sub_parser = sub_parsers.add_parser('list-id',
+ help='Outputs all resource IDs to a file.')
+ sub_parser.add_argument('pak_file')
+ sub_parser.add_argument('--output', type=argparse.FileType('w'),
+ default=sys.stdout,
+ help='The resource list path to write (default stdout)')
+ sub_parser.set_defaults(func=_ListMain)
if len(sys.argv) == 1:
parser.print_help()