Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(37)

Side by Side Diff: third_party/apk-patch-size-estimator/apk_patch_size_estimator.py

Issue 2764923002: Revert of Android: Add APK patch size estimates to resource_sizes.py. (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/apk-patch-size-estimator/README.chromium ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/python 1 #!/usr/bin/python
2 # 2 #
3 # Copyright 2016 Google Inc. All Rights Reserved. 3 # Copyright 2016 Google Inc. All Rights Reserved.
4 # 4 #
5 # Licensed under the Apache License, Version 2.0 (the "License"); 5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License. 6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at 7 # You may obtain a copy of the License at
8 # 8 #
9 # http://www.apache.org/licenses/LICENSE-2.0 9 # http://www.apache.org/licenses/LICENSE-2.0
10 # 10 #
(...skipping 18 matching lines...) Expand all
29 29
30 """ 30 """
31 31
32 import sys 32 import sys
33 import argparse 33 import argparse
34 import locale 34 import locale
35 import math 35 import math
36 import os 36 import os
37 import subprocess 37 import subprocess
38 38
39 _FILEBYFILE_JAR_PATH = os.path.abspath(
40 os.path.join(os.path.dirname(__file__), 'lib', 'file-by-file-tools.jar'))
41
42 bsdiff_path = None 39 bsdiff_path = None
43 gzip_path = None 40 gzip_path = None
44 head_path = None 41 head_path = None
45 tail_path = None 42 tail_path = None
46 bunzip2_path = None 43 bunzip2_path = None
47 java_path = None 44 java_path = None
48 45
49 46
50 def find_bins_or_die(): 47 def find_bins_or_die():
51 """Checks that all the binaries needed are available. 48 """Checks that all the binaries needed are available.
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 else: 252 else:
256 filebyfile_patch_path = temp_path + '.filebyfile' 253 filebyfile_patch_path = temp_path + '.filebyfile'
257 gzipped_filebyfile_patch_path = filebyfile_patch_path + '.gz' 254 gzipped_filebyfile_patch_path = filebyfile_patch_path + '.gz'
258 if os.path.exists(gzipped_filebyfile_patch_path): 255 if os.path.exists(gzipped_filebyfile_patch_path):
259 os.remove(gzipped_filebyfile_patch_path) 256 os.remove(gzipped_filebyfile_patch_path)
260 257
261 # file by file patch 258 # file by file patch
262 # We use a jar from https://github.com/andrewhayden/archive-patcher 259 # We use a jar from https://github.com/andrewhayden/archive-patcher
263 if os.path.exists(filebyfile_patch_path): os.remove(filebyfile_patch_path) 260 if os.path.exists(filebyfile_patch_path): os.remove(filebyfile_patch_path)
264 p = subprocess.Popen( 261 p = subprocess.Popen(
265 [java_path, '-jar', _FILEBYFILE_JAR_PATH, '--generate', '--old', old_file, 262 [java_path, '-jar', 'lib/file-by-file-tools.jar', '--generate',
266 '--new', new_file, '--patch', filebyfile_patch_path], 263 '--old', old_file, '--new', new_file, '--patch', filebyfile_patch_path],
267 shell=False) 264 shell=False)
268 ret_code = p.wait() 265 ret_code = p.wait()
269 if ret_code != 0: raise Exception( 266 if ret_code != 0: raise Exception(
270 'Problem creating file by file patch, returned code: %s' % ret_code) 267 'Problem creating file by file patch, returned code: %s' % ret_code)
271 268
272 # gzip file by file patch and get its size 269 # gzip file by file patch and get its size
273 subprocess.check_output([gzip_path, '-9', filebyfile_patch_path]) 270 subprocess.check_output([gzip_path, '-9', filebyfile_patch_path])
274 gzipped_filebyfile_patch_size = os.stat(gzipped_filebyfile_patch_path).st_size 271 gzipped_filebyfile_patch_size = os.stat(gzipped_filebyfile_patch_path).st_size
275 # Clean temp files 272 # Clean temp files
276 if os.path.exists(temp_path): os.remove(temp_path) 273 if os.path.exists(temp_path): os.remove(temp_path)
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
344 341
345 print '\nEstimated download size for updates from the old APK,' 342 print '\nEstimated download size for updates from the old APK,'
346 print ' using File-by-File:' 343 print ' using File-by-File:'
347 print (' File-by-File patch (gzipped) size: %s bytes [%s]\n' 344 print (' File-by-File patch (gzipped) size: %s bytes [%s]\n'
348 % (locale.format('%d', gzipped_filebyfile_patch_size, grouping=True), 345 % (locale.format('%d', gzipped_filebyfile_patch_size, grouping=True),
349 human_file_size(gzipped_filebyfile_patch_size))) 346 human_file_size(gzipped_filebyfile_patch_size)))
350 347
351 348
352 if __name__ == '__main__': 349 if __name__ == '__main__':
353 main() 350 main()
OLDNEW
« no previous file with comments | « third_party/apk-patch-size-estimator/README.chromium ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698