Skip to content

Commit 35de5c7

Browse files
tidoustxfq
authored andcommitted
[data] impl updates and features creation (w3c#274)
See w3c#271. Major pass through all the data files to: - complete the references to the different status platforms; - add references to MDN Browser Compatibility data in particular; - create subfeatures when needed; - move the URL to the first line; - use `url` consistently throughout the data files Note the update also fixes a couple of bugs in `extract-impl-data.js`.
1 parent 3e47040 commit 35de5c7

File tree

230 files changed

+1193
-649
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

230 files changed

+1193
-649
lines changed

README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ Depending on the advancement of the underlying specification, the JSON object ca
5858
* `url`: should point to the URL of the latest version of the specification. This URL will be used to collect additional data about the spec (standardization status, Working Groups that produce it, editors draft, etc) and as target of links that reference the feature. URL may contain a fragment to point to a specific section in a specification. If the `url` property is not specified, the framework assumes that the underlying specification is a W3C specification, that the filename is its short name, and that the URL of the spec is `https://www.w3.org/TR/[filename]/`.
5959
* `impl`: for specifications for which browser implementations are expected, the `impl` property explains where to look for implementation info. Described below in [Describing implementation status](#describing-implementation-status).
6060
* `polyfills`: for specifications for which there are polyfills available that would be worth reporting, the `polyfills` property lists these polyfills. It should be an array of objects that have a `url` property that links to the polyfill's home page on the Web, and a `label` property with the name of polyfill.
61-
* `features`: in case the reference to the specification would benefit from being more specific than the specification as a whole, and/or in case available implementation information is more fine-grained than the spec level, the `features` property makes it possible to list features in the spec. It must be an array of objects, each object describing a feature through the following properties:
61+
* `features`: in case the reference to the specification would benefit from being more specific than the specification as a whole, and/or in case available implementation information is more fine-grained than the spec level, the `features` property makes it possible to list features in the spec. It must be an object whose keys are an internal feature ID, and whose values are an object describing the feature with the following properties:
6262
* `title`: a label for the feature. Property is mandatory.
6363
* `url`: a URL to the feature in the spec. Fragments such as `#my-feature` are allowed. Property is optional.
6464
* `impl`: where to look for implementation info. Described below in [Describing implementation status](#describing-implementation-status).
@@ -83,7 +83,7 @@ Here is an example of a JSON file that describes the "Intersection Observer" spe
8383
"chromestatus": 5695342691483648,
8484
"webkitstatus": "specification-intersection-observer",
8585
"edgestatus": "Intersection Observer",
86-
"mdn": "api/IntersectionObserver"
86+
"mdn": "api.IntersectionObserver"
8787
},
8888
"polyfills": [
8989
{

data/3dcamera.json

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
2+
"url": "https://www.w3.org/TR/mediacapture-depth/",
23
"impl": {
34
"caniuse": null,
45
"chromestatus": 5713419084759040,
5-
"mozstatus": null,
6+
"mdn": null,
67
"edgestatus": null,
78
"webkitstatus": null
8-
},
9-
"TR": "https://www.w3.org/TR/mediacapture-depth/"
9+
}
1010
}

data/accelerometer.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
2-
"TR": "https://www.w3.org/TR/accelerometer/",
2+
"url": "https://www.w3.org/TR/accelerometer/",
33
"impl": {
4+
"caniuse": "accelerometer",
45
"chromestatus": 5698781827825664
56
},
67
"polyfills": [

data/ambientlight.json

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
{
2-
"TR": "https://www.w3.org/TR/ambient-light/",
2+
"url": "https://www.w3.org/TR/ambient-light/",
33
"impl": {
44
"caniuse": "ambient-light",
55
"edgestatus": "Ambient Light Sensor API",
6+
"mdn": "api.ambientlightsensor",
67
"chromestatus": 5298357018820608,
8+
"edgestatus": "Ambient Light Sensor API",
79
"other": [
810
{
911
"ua": "firefox",

data/animation-frames.json

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
{
2-
"TR": "https://www.w3.org/TR/html52/webappapis.html#animation-frames",
2+
"url": "https://www.w3.org/TR/html52/webappapis.html#animation-frames",
33
"impl": {
44
"caniuse": "requestanimationframe",
55
"chromestatus": 5233400470306816,
6-
"edgestatus": "requestAnimationFrame()"
6+
"edgestatus": "requestAnimationFrame()",
7+
"mdn": "api.Window.requestAnimationFrame"
78
},
89
"feature": "requestAnimationFrame"
910
}

data/annotation-model.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"TR": "https://www.w3.org/TR/annotation-model/",
2+
"url": "https://www.w3.org/TR/annotation-model/",
33
"wgs": [
44
{
55
"label": "Web Annotation Working Group",

data/appcache.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"TR": "https://www.w3.org/TR/html51/obsolete.html#application-caches",
2+
"url": "https://www.w3.org/TR/html51/obsolete.html#application-caches",
33
"feature": "ApplicationCache",
44
"impl": {
55
"caniuse": "offline-apps",

data/appmanifest.json

+38-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,45 @@
11
{
2-
"TR": "https://www.w3.org/TR/appmanifest/",
2+
"url": "https://www.w3.org/TR/appmanifest/",
33
"impl": {
44
"caniuse": "web-app-manifest",
55
"chromestatus": 6488656873259008,
66
"webkitstatus": "specification-web-app-manifest"
7+
},
8+
"features": {
9+
"background_color": {
10+
"title": "background_color member",
11+
"url": "#background_color-member",
12+
"impl": {
13+
"chromestatus": 5651543017652224
14+
}
15+
},
16+
"install": {
17+
"title": "Installation events",
18+
"url": "#installation-events",
19+
"impl": {
20+
"chromestatus": 5674968658477056
21+
}
22+
},
23+
"purpose": {
24+
"title": "purpose member",
25+
"url": "#purpose-member",
26+
"impl": {
27+
"chromestatus": 6690807302062080
28+
}
29+
},
30+
"related_applications": {
31+
"title": "related_applications member",
32+
"url": "#related_applications-member",
33+
"impl": {
34+
"chromestatus": 4754986680451072
35+
}
36+
},
37+
"theme_color": {
38+
"title": "theme_color member",
39+
"url": "#theme_color-member",
40+
"impl": {
41+
"chromestatus": 5709006190411776
42+
}
43+
}
744
}
845
}

data/atag20.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"TR": "https://www.w3.org/TR/ATAG20/"
2+
"url": "https://www.w3.org/TR/ATAG20/"
33
}

data/audio-output.json

+19-3
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,25 @@
22
"impl": {
33
"caniuse": null,
44
"chromestatus": 4621603249848320,
5-
"mozstatus": null,
6-
"edgestatus": null,
5+
"edgestatus": "Audio Output Devices API",
76
"webkitstatus": null
87
},
9-
"TR": "https://www.w3.org/TR/audio-output/"
8+
"url": "https://www.w3.org/TR/audio-output/",
9+
"features": {
10+
"sinkId": {
11+
"title": "ID of the audio device",
12+
"url": "#dom-htmlmediaelement-sinkid",
13+
"impl" : {
14+
"mdn": "api.HTMLMediaElement.sinkId"
15+
}
16+
},
17+
"setSinkId": {
18+
"title": "Method to set the ID of the audio device",
19+
"url": "#dom-htmlmediaelement-setsinkid",
20+
"impl" : {
21+
"mdn": "api.HTMLMediaElement.setSinkId"
22+
}
23+
}
24+
},
25+
"featuresCoverage": "full"
1026
}

data/audio.json

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
{
2+
"url": "https://www.w3.org/TR/html52/semantics-embedded-content.html#the-audio-element",
3+
"feature": "audio element",
24
"impl": {
3-
"caniuse": "audio"
4-
},
5-
"TR": "https://www.w3.org/TR/html52/semantics-embedded-content.html#the-audio-element",
6-
"feature": "audio element"
5+
"caniuse": "audio",
6+
"mdn": "api.HTMLAudioElement"
7+
}
78
}

data/autocomplete.json

+14-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,16 @@
11
{
2-
"impl": {},
3-
"TR": "https://www.w3.org/TR/html52/sec-forms.html#autofilling-form-controls-the-autocomplete-attribute",
4-
"feature": "autocomplete attribute"
2+
"url": "https://www.w3.org/TR/html52/sec-forms.html#autofilling-form-controls-the-autocomplete-attribute",
3+
"feature": "autocomplete attribute",
4+
"impl": {
5+
"chromestatus": 5680387573415936
6+
},
7+
"features": {
8+
"on-off": {
9+
"title": "On and Off values",
10+
"url": "#autofilling-form-controls-the-autocomplete-attribute",
11+
"impl": {
12+
"caniuse": "input-autocomplete-onoff"
13+
}
14+
}
15+
}
516
}

data/background-sync.json

+8-5
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
{
2-
"title": "Web Background Synchronization",
3-
"editors": "https://wicg.github.io/BackgroundSync/spec/",
4-
"impl": {
5-
"chromestatus": 6170807885627392
6-
}
2+
"url": "https://wicg.github.io/BackgroundSync/spec/",
3+
"title": "Web Background Synchronization",
4+
"impl": {
5+
"caniuse": "background-sync",
6+
"chromestatus": 6170807885627392,
7+
"edgestatus": "Background Sync API",
8+
"mdn": "api.SyncManager"
9+
}
710
}

data/barometer.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"editors": "https://kenchris.github.io/barometer/",
2+
"url": "https://kenchris.github.io/barometer/",
33
"title": "Ambient Atmospheric Pressure (Barometric) Sensor",
44
"wgs": [
55
{

data/battery.json

+6-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
{
2-
"TR": "https://www.w3.org/TR/battery-status",
2+
"url": "https://www.w3.org/TR/battery-status",
33
"impl": {
4-
"caniuse": "battery-status"
4+
"caniuse": "battery-status",
5+
"chromestatus": 4537134732017664,
6+
"edgestatus": "Battery Status API",
7+
"mdn": "api.BatteryManager",
8+
"webkitstatus": "specification-battery-status-api"
59
}
610
}

data/beacon.json

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
{
2-
"TR": "https://www.w3.org/TR/beacon/",
2+
"url": "https://www.w3.org/TR/beacon/",
33
"impl": {
44
"caniuse": "beacon",
55
"chromestatus": 5517433905348608,
6+
"edgestatus": "Beacon",
7+
"mdn": "api.Navigator.sendBeacon",
68
"webkitstatus": "specification-beacon-api"
79
}
810
}

data/canvas.json

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
{
2+
"url": "https://www.w3.org/TR/2dcontext/",
23
"impl": {
34
"caniuse": "canvas",
45
"chromestatus": 5100084685438976,
56
"edgestatus": "Canvas",
7+
"mdn": "api.CanvasRenderingContext2D",
68
"webkitstatus": null
7-
},
8-
"TR": "https://www.w3.org/TR/2dcontext/"
9+
}
910
}

data/cloud-browser-arch.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"TR": "https://www.w3.org/TR/cloud-browser-arch/"
2+
"url": "https://www.w3.org/TR/cloud-browser-arch/"
33
}

data/color-canvas.json

+5-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
{
2+
"url": "https://github.com/junov/CanvasColorSpace/blob/master/CanvasColorSpaceProposal.md",
3+
"title": "Color managing canvas contents",
24
"wgs": [],
3-
"impl": {},
4-
"editors": "https://github.com/junov/CanvasColorSpace/blob/master/CanvasColorSpaceProposal.md",
5-
"title": "Color managing canvas contents"
5+
"impl": {
6+
"chromestatus": 5701580166791168
7+
}
68
}

data/color-gamut.json

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
{
2-
"TR": "https://www.w3.org/TR/mediaqueries-4/#color-gamut",
2+
"url": "https://www.w3.org/TR/mediaqueries-4/#color-gamut",
33
"feature": "color-gamut media query",
44
"impl": {
5-
"chromestatus": 5354410980933632
5+
"chromestatus": 5354410980933632,
6+
"mdn": "css.at-rules.media.color-gamut"
67
}
78
}

data/contacts-sys.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
{
22
"impl": {},
3-
"TR": "https://www.w3.org/TR/contacts-manager-api/"
3+
"url": "https://www.w3.org/TR/contacts-manager-api/"
44
}

data/core-aam11.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"TR": "https://www.w3.org/TR/core-aam-1.1/"
2+
"url": "https://www.w3.org/TR/core-aam-1.1/"
33
}

data/cors.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"TR": "https://www.w3.org/TR/cors/",
2+
"url": "https://www.w3.org/TR/cors/",
33
"impl": {
44
"caniuse": "cors"
55
}

data/credential-management.json

+21-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,25 @@
11
{
2-
"TR": "https://www.w3.org/TR/credential-management-1/",
2+
"url": "https://www.w3.org/TR/credential-management-1/",
33
"impl": {
44
"caniuse": "credential-management",
5-
"chromestatus": 5026422640869376
6-
}
5+
"chromestatus": 5026422640869376,
6+
"edgestatus": "Credential Management API"
7+
},
8+
"features": {
9+
"Credential": {
10+
"title": "The Credential interface",
11+
"url": "#the-credential-interface",
12+
"impl": {
13+
"mdn": "api.Credential"
14+
}
15+
},
16+
"credentials": {
17+
"title": "navigator.credentials",
18+
"url": "#framework-credential-management",
19+
"impl": {
20+
"mdn": "api.Navigator.credentials"
21+
}
22+
}
23+
},
24+
"featuresCoverage": "full"
725
}

data/crypto.json

+5-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
{
2-
"TR": "https://www.w3.org/TR/WebCryptoAPI/",
2+
"url": "https://www.w3.org/TR/WebCryptoAPI/",
33
"impl": {
44
"caniuse": "cryptography",
5-
"chromestatus": 5030265697075200
5+
"chromestatus": 5030265697075200,
6+
"edgestatus": "Web Crypto API",
7+
"mdn": "api.Window.crypto",
8+
"webkitstatus": "specification-web-cryptography-api"
69
}
710
}

data/cryptokey.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
{
2-
"TR": "https://www.w3.org/TR/webcrypto-key-discovery/",
2+
"url": "https://www.w3.org/TR/webcrypto-key-discovery/",
33
"impl": {}
44
}

data/csp.json

+13-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,18 @@
11
{
2-
"TR": "https://www.w3.org/TR/CSP2/",
2+
"url": "https://www.w3.org/TR/CSP2/",
33
"impl": {
44
"caniuse": "contentsecuritypolicy2",
5-
"chromestatus": 4957003285790720
5+
"chromestatus": 4957003285790720,
6+
"edgestatus": "Content Security Policy Level 2",
7+
"webkitstatus": "specification-content-security-policy-level-2"
8+
},
9+
"features": {
10+
"securityPolicyViolation": {
11+
"title": "SecurityPolicyViolation event",
12+
"url": "#securitypolicyviolationevent-interface",
13+
"impl": {
14+
"mdn": "api.SecurityPolicyViolationEvent"
15+
}
16+
}
617
}
718
}

0 commit comments

Comments
 (0)