diff options
Diffstat (limited to 'build.py')
-rwxr-xr-x | build.py | 26 |
1 files changed, 25 insertions, 1 deletions
@@ -62,10 +62,26 @@ def get_features(dirname): features[key] = data - return dict( + features = dict( sorted(features.items(), key=lambda t: t[1]['title'].replace('`', '').lower()) ) + lib_features = {} + non_lib_features = {} + + for key, data in features.items(): + if ('flag' in data and data['flag'] in library_flags) or 'impl for' in data[ + 'title' + ]: + lib_features[key] = data + else: + non_lib_features[key] = data + + return dict(lib_features=lib_features, non_lib_features=non_lib_features) + + +with open('lib_feats.txt') as f: + library_flags = set([l.strip() for l in f]) with open('caniuse.rs/data/versions.toml') as f: versions = toml.load(f) @@ -91,6 +107,14 @@ with open('target/data.json', 'w') as f: def write_features(f, id, features): + if features['non_lib_features']: + write_feature_list(f, id + '-non-lib', features['non_lib_features']) + if features['lib_features']: + f.write('<h3 id="{}">library</h3>'.format(id + '-lib')) + write_feature_list(f, id + '-lib', features['lib_features']) + + +def write_feature_list(f, id, features): f.write('<ul id={}-list'.format(id)) if len(features) > 5: f.write(' class=columns') |