summaryrefslogtreecommitdiff
path: root/build.py
diff options
context:
space:
mode:
authorMartin Fischer <martin@push-f.com>2021-12-10 10:36:00 +0100
committerMartin Fischer <martin@push-f.com>2021-12-10 10:36:00 +0100
commit950ab4cba9cc05b5446aaf889568cfc270d2139c (patch)
treec8a61ce97eaf95fd9c5e69f89ce4ad3de37e5fec /build.py
parent8be7aa457cc8907acccb75bf5efcdc26c5b952ee (diff)
split lib from non-lib features
Diffstat (limited to 'build.py')
-rwxr-xr-xbuild.py26
1 files changed, 25 insertions, 1 deletions
diff --git a/build.py b/build.py
index 16ba007..928f3b3 100755
--- a/build.py
+++ b/build.py
@@ -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')