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

Side by Side Diff: tools/polymer/txt_to_polymer_grdp.py

Issue 1215543002: Remove Polymer 0.5. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase on license fix Created 5 years, 5 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
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright 2015 The Chromium Authors. All rights reserved. 2 # Copyright 2015 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 from __future__ import with_statement 6 from __future__ import with_statement
7 import string 7 import string
8 import sys 8 import sys
9 9
10 10
11 FILE_TEMPLATE = \ 11 FILE_TEMPLATE = \
12 """<?xml version="1.0" encoding="utf-8"?> 12 """<?xml version="1.0" encoding="utf-8"?>
13 <!-- 13 <!--
14 This file is generated. 14 This file is generated.
15 Please use 'src/tools/polymer/polymer_grdp_to_txt.py' and 15 Please use 'src/tools/polymer/polymer_grdp_to_txt.py' and
16 'src/tools/polymer/txt_to_polymer_grdp.py' to modify it, if possible. 16 'src/tools/polymer/txt_to_polymer_grdp.py' to modify it, if possible.
17 17
18 'polymer_grdp_to_txt.py' converts 'polymer_resources.grdp' to a plane list of 18 'polymer_grdp_to_txt.py' converts 'polymer_resources.grdp' to a plane list of
19 used Polymer components. v1.0 elements are marked with 'v1.0 ' prefix: 19 used Polymer components. v1.0 elements are marked with 'v1.0 ' prefix:
dzhioev (left Google) 2015/06/26 05:52:41 Records are not prepended by 'v1.0' as far as I ca
michaelpg 2015/06/26 07:36:46 Done.
20 ... 20 ...
21 core-animation/core-animation.html
22 core-animation/web-animations.html
23 core-collapse/core-collapse-extracted.js
24 core-collapse/core-collapse.css
25 core-collapse/core-collapse.html
26 core-dropdown/core-dropdown-base-extracted.js
27 ...
28 v1.0 iron-iron-iconset/iron-iconset-extracted.js 21 v1.0 iron-iron-iconset/iron-iconset-extracted.js
dzhioev (left Google) 2015/06/26 05:52:41 ditto
michaelpg 2015/06/26 07:36:46 Done.
29 v1.0 iron-iron-iconset/iron-iconset.html 22 v1.0 iron-iron-iconset/iron-iconset.html
30 ... 23 ...
31 24
32 'txt_to_polymer_grdp.py' converts list back to GRDP file. 25 'txt_to_polymer_grdp.py' converts list back to GRDP file.
33 26
34 Usage: 27 Usage:
35 $ polymer_grdp_to_txt.py polymer_resources.grdp > /tmp/list.txt 28 $ polymer_grdp_to_txt.py polymer_resources.grdp > /tmp/list.txt
36 $ vim /tmp/list.txt 29 $ vim /tmp/list.txt
37 $ txt_to_polymer_grdp.py /tmp/list.txt > polymer_resources.grdp 30 $ txt_to_polymer_grdp.py /tmp/list.txt > polymer_resources.grdp
38 --> 31 -->
39 <grit-part> 32 <grit-part>
40 <!-- Polymer 0.5 (TODO: Remove by M45 branch point) -->
41 %(v_0_5)s
42
43 <!-- Polymer 1.0 --> 33 <!-- Polymer 1.0 -->
44 %(v_1_0)s 34 %(v_1_0)s
45 <structure name="IDR_POLYMER_1_0_WEB_ANIMATIONS_JS_WEB_ANIMATIONS_NEXT_LITE_MI N_JS" 35 <structure name="IDR_POLYMER_1_0_WEB_ANIMATIONS_JS_WEB_ANIMATIONS_NEXT_LITE_MI N_JS"
46 file="../../../third_party/web-animations-js/sources/web-animations -next-lite.min.js" 36 file="../../../third_party/web-animations-js/sources/web-animations -next-lite.min.js"
47 type="chrome_html" /> 37 type="chrome_html" />
48 </grit-part> 38 </grit-part>
49 """ 39 """
50 40
51 41
52 DEFINITION_TEMPLATE_0_5 = \
53 """ <structure name="%s"
54 file="../../../third_party/polymer/components-chromium/%s"
55 type="chrome_html" />"""
56
57 DEFINITION_TEMPLATE_1_0 = \ 42 DEFINITION_TEMPLATE_1_0 = \
58 """ <structure name="%s" 43 """ <structure name="%s"
59 file="../../../third_party/polymer/v1_0/components-chromium/%s" 44 file="../../../third_party/polymer/v1_0/components-chromium/%s"
60 type="chrome_html" />""" 45 type="chrome_html" />"""
61 46
62 47
63 def PathToGritId(path, is_1_0): 48 def PathToGritId(path):
64 table = string.maketrans(string.lowercase + '/.-', string.uppercase + '___') 49 table = string.maketrans(string.lowercase + '/.-', string.uppercase + '___')
65 return 'IDR_POLYMER_' + ('1_0_' if is_1_0 else '') + path.translate(table) 50 return 'IDR_POLYMER_1_0_' + path.translate(table)
66 51
67 def SortKey(record): 52 def SortKey(record):
68 return (record[1], PathToGritId(record[0], record[1])) 53 return (record, PathToGritId(record))
69 54
70 55
71 def ParseRecord(record): 56 def ParseRecord(record):
72 record = record.strip() 57 return record.strip()
73 v_1_0_prefix = 'v1.0 '
74 if record.startswith(v_1_0_prefix):
75 return (record[len(v_1_0_prefix):], True)
76 else:
77 return (record, False)
78 58
79 def main(argv): 59 def main(argv):
80 with open(argv[1]) as f: 60 with open(argv[1]) as f:
81 records = [ParseRecord(r) for r in f if not r.isspace()] 61 records = [ParseRecord(r) for r in f if not r.isspace()]
82 lines = { 'v_0_5': [], 'v_1_0': [] } 62 lines = { 'v_1_0': [] }
83 for (path, is_1_0) in sorted(set(records), key=SortKey): 63 for path in sorted(set(records), key=SortKey):
84 template = DEFINITION_TEMPLATE_1_0 if is_1_0 else DEFINITION_TEMPLATE_0_5 64 template = DEFINITION_TEMPLATE_1_0
85 lines['v_1_0' if is_1_0 else 'v_0_5'].append( 65 lines['v_1_0'].append(
86 template % (PathToGritId(path, is_1_0), path)) 66 template % (PathToGritId(path), path))
87 print FILE_TEMPLATE % { 'v_0_5': '\n'.join(lines['v_0_5']), 67 print FILE_TEMPLATE % { 'v_1_0': '\n'.join(lines['v_1_0']) }
88 'v_1_0': '\n'.join(lines['v_1_0']) }
89 68
90 if __name__ == '__main__': 69 if __name__ == '__main__':
91 sys.exit(main(sys.argv)) 70 sys.exit(main(sys.argv))
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698