Add User Timing to the feature status page
[WebKit-https.git] / Source / WebCore / features.json
1 {
2     "specification": [
3     {
4         "name": "CSS Grid Layout Level 1",
5         "status": {
6             "status": "In Development",
7             "enabled-by-default": true
8         },
9         "url": "http://dev.w3.org/csswg/css-grid/",
10         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=60731",
11         "keywords": ["css grid layout", "css grid", "grid"],
12         "category": "css",
13         "contact": {
14             "name": "Sergio Villar Senin",
15             "email": "svillar@igalia.com"
16         }
17     },
18     {
19         "name": "CSS Image Values and Replaced Content Module Level 4",
20         "url": "https://www.w3.org/TR/css4-images/",
21         "keywords": ["css image values","css","image values"],
22         "category": "css"
23     },
24     {
25         "name": "CSS Inline Layout Module Level 3",
26         "status": {
27             "status": "In Development",
28             "enabled-by-default": true
29         },
30         "url": "http://dev.w3.org/csswg/css-inline/",
31         "keywords": ["css inline layout", "css inline", "inline"],
32         "category": "css"
33     },
34     {
35         "name": "CSS Media Queries Level 4",
36         "url": "http://dev.w3.org/csswg/mediaqueries-4/",
37         "keywords": ["css media queries", "media queries"],
38         "category": "css"
39     },
40     {
41         "name": "CSS Painting API Level 1",
42         "status": {
43             "status": "Under Consideration"
44         },
45         "url": "https://drafts.css-houdini.org/css-paint-api/",
46         "keywords": ["css", "houdini"],
47         "category": "css"
48     },
49     {
50         "name": "CSS Positioned Layout Module Level 3",
51         "url": "http://dev.w3.org/csswg/css-position/",
52         "keywords": ["css positioning"],
53         "category": "css"
54     },
55     {
56         "name": "CSS Properties and Values API Level 1",
57         "status": {
58             "status": "Under Consideration"
59         },
60         "url": "https://drafts.css-houdini.org/css-properties-values-api/",
61         "keywords": ["css", "houdini"],
62         "category": "css"
63     },
64     {
65         "name": "CSS Scroll Snap Points Module Level 1",
66         "status": {
67             "status": "In Development",
68             "enabled-by-default": true
69         },
70         "url": "http://dev.w3.org/csswg/css-snappoints/",
71         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=134283",
72         "keywords": ["css scroll snap points", "scroll snap", "snap points"],
73         "category": "css",
74         "contact": {
75             "name": "Brent Fulgham",
76             "email": "bfulgham@apple.com"
77         }
78     },
79     {
80         "name": "CSS Selectors Level 4",
81         "url": "http://dev.w3.org/csswg/selectors-4/",
82         "keywords": ["css selectors", "selectors"],
83         "category": "css",
84         "contact": {
85             "name": "Benjamin Poulain",
86             "twitter": "@awfulben",
87             "email": "benjamin@webkit.org"
88         }
89     },
90     {
91         "name": "CSS Variables",
92         "status": {
93             "status": "Done",
94             "enabled-by-default": true
95         },
96         "url": "https://www.w3.org/TR/css-variables/",
97         "keywords": ["css variable", "css custom property"],
98         "category": "css",
99         "description": "Allows developers to define reusable custom property values.",
100         "contact": {
101             "name": "Jon Davis",
102             "twitter": "@jonathandavis",
103             "email": "web-evangelist@apple.com"
104         }
105     },
106     {
107         "name": "CSS Will Change",
108         "status": {
109             "status": "Done",
110             "enabled-by-default": true
111         },
112         "url": "https://drafts.csswg.org/css-will-change/",
113         "keywords": ["css willchange", "css will-change"],
114         "category": "css",
115         "contact": {
116             "name": "Simon Fraser",
117             "twitter": "@smfr"
118         }
119     },
120     {
121         "name": "Content Security Policy Level 2",
122         "status": {
123             "status": "Done",
124             "enabled-by-default": true
125         },
126         "url": "https://w3c.github.io/webappsec-csp/2/",
127         "keywords": ["csp", "cross-site scripting", "xss", "injection", "header"],
128         "category": "webapps",
129         "description": "A mechanism that web applications can use to mitigate content injection vulnerabilities, such as cross-site scripting (XSS). Developers can declare a CSP policy to prohibit their web application from loading content or executing scripts that have not been whitelisted among other capabilities.",
130         "contact": {
131             "name": "Daniel Bates",
132             "email": "dbates@webkit.org"
133         }
134     },
135     {
136         "name": "Content Security Policy Level 3",
137         "status": {
138             "status": "Partial Support",
139             "enabled-by-default": true
140         },
141         "url": "https://w3c.github.io/webappsec-csp/",
142         "keywords": ["csp", "cross-site scripting", "xss", "injection", "header"],
143         "category": "webapps",
144         "contact": {
145             "name": "Daniel Bates",
146             "email": "dbates@webkit.org"
147         }
148     },
149     {
150         "name": "DOM",
151         "url": "https://dom.spec.whatwg.org",
152         "keywords": ["dom", "dom4"],
153         "category": "html"
154     },
155     {
156         "name": "Fetch API",
157         "status": {
158             "status": "In Development"
159         },
160         "url": "https://fetch.spec.whatwg.org",
161         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=151937",
162         "keywords": ["fetch", "http", "cors", "request", "response", "header"],
163         "category": "webapps",
164         "description": "An underlying unified architecture for making resource requests.",
165         "contact": {
166             "name": "Jon Davis",
167             "twitter": "@jonathandavis",
168             "email": "web-evangelist@apple.com"
169         }
170     },
171     {
172         "name": "Filter Effects Module Level 2",
173         "url": "http://dev.w3.org/fxtf/filters-2/",
174         "keywords": ["css filters", "filter effects", "filters"],
175         "category": "css"
176     },
177     {
178         "name": "HTML5",
179         "url": "https://html.spec.whatwg.org",
180         "keywords": ["html", "html5", "html5.1"],
181         "category": "html"
182     },
183     {
184         "name": "IndexedDB",
185         "status": {
186             "status": "Done"
187         },
188         "url": "http://www.w3.org/TR/IndexedDB/",
189         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=149117",
190         "keywords": ["indexeddb", "index db", "indexed db", "indexed database", "idb"],
191         "description": "A standard interface to a browser database of records for simple values and objects. IndexedDB currently matches the W3C recommended spec (version 1). We are participating in development of version 2 of the spec and plan to implement new features as they stabilize.",
192         "contact": {
193             "name": "Brady Eidson",
194             "twitter": "@bradeeoh",
195             "email": "beidson@webkit.org"
196         }
197     },
198     {
199         "name": "Preload",
200         "status": {
201             "status": "In Development",
202             "enabled-by-default": false
203         },
204         "url": "http://w3c.github.io/preload/",
205         "webkit-url": "https://webkit.org/b/158720",
206         "keywords": ["preload"],
207         "description": "Provides a declarative fetch primitive that initiates an early fetch and separates fetching from resource execution.",
208         "contact": {
209             "name": "Yoav Weiss",
210             "email": "yoav@yoav.ws",
211             "twitter": "@yoavweiss"
212         }
213     },
214     {
215         "name": "Resource Timing",
216         "status": {
217             "status": "In Development",
218             "enabled-by-default": false
219         },
220         "url": "http://www.w3.org/TR/resource-timing/",
221         "webkit-url": "https://webkit.org/b/61138",
222         "keywords": ["resourcetiming","resource timing","rsrc"],
223         "description": "Provides detailed timing information to JavaScript for sub-resources loaded by the page.",
224         "contact": {
225             "name": "Jonathan Davis",
226             "email": "web-evangelist@apple.com",
227             "twitter": "@jonathandavis"
228         }
229     },
230     {
231         "name": "Service Workers",
232         "status": {
233             "status": "Under Consideration"
234         },
235         "url": "http://www.w3.org/TR/2015/WD-service-workers-20150625/",
236         "keywords": ["service workers"],
237         "category": "webapps",
238         "description": "A method for browsers to run JavaScript in the background to handle network requests and manage cached responses. Service Workers offers a replacement for Application Cache.",
239         "contact": {
240             "name": "Jon Davis",
241             "twitter": "@jonathandavis",
242             "email": "web-evangelist@apple.com"
243         }
244     },
245     {
246         "name": "Streams",
247         "url": "https://streams.spec.whatwg.org",
248         "keywords": ["streams api"],
249         "category": "webapps"
250     },
251     {
252         "name": "User Timing",
253         "status": {
254             "status": "In Development",
255             "enabled-by-default": false
256         },
257         "url": "http://www.w3.org/TR/user-timing/",
258         "keywords": ["usertiming","user timing"],
259         "description": "Provides high precision timestamp marking APIs.",
260         "contact": {
261             "name": "Jonathan Davis",
262             "email": "web-evangelist@apple.com",
263             "twitter": "@jonathandavis"
264         }
265     },
266     {
267         "name": "WOFF File Format 2.0",
268         "status": {
269             "status": "Done"
270         },
271         "url": "https://www.w3.org/TR/WOFF2/",
272         "keywords": ["woff"],
273         "category": "css",
274         "description": "Improves compression to reduce bandwidth with content-aware preprocessing.",
275         "contact": {
276             "name": "Jonathan Davis",
277             "email": "web-evangelist@apple.com",
278             "twitter": "@jonathandavis"
279         }
280     },
281     {
282         "name": "Web Animations",
283         "status": {
284             "status": "Under Consideration"
285         },
286         "url": "https://www.w3.org/TR/web-animations-1/",
287         "keywords": ["web animations"],
288         "description": "An API to synchronize with the timing for presentation changes of a web page.",
289         "contact": {
290             "name": "Jonathan Davis",
291             "email": "web-evangelist@apple.com",
292             "twitter": "@jonathandavis"
293         }
294     },
295     {
296         "name": "Web Components",
297         "url": "http://www.w3.org/wiki/WebComponents/",
298         "keywords": ["web components", "shadow dom", "html imports", "custom elements", "template element"],
299         "category": "webapps",
300         "description": "A collection of technologies to improve modularization of DOM subtrees.",
301         "contact": {
302             "name": "Ryosuke Niwa",
303             "twitter": "@RyosukeNiwa",
304             "email": "rniwa@webkit.org"
305         }
306     },
307     {
308         "name": "WebCrypto",
309         "status": {
310             "status": "Partial Support",
311             "enabled-by-default": true
312         },
313         "url": "http://www.w3.org/TR/WebCryptoAPI/",
314         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=122679",
315         "keywords": ["webcrypto"],
316         "category": "webapps",
317         "description": "A JavaScript API for web applications to perform cryptographic operations.",
318         "contact": {
319             "name": "Jon Davis",
320             "twitter": "@jonathandavis",
321             "email": "web-evangelist@apple.com"
322         }
323     },
324     {
325         "name": "WebGL 1",
326         "status": {
327             "status": "Done",
328             "enabled-by-default": true
329         },
330         "url": "https://www.khronos.org/registry/webgl/specs/1.0/",
331         "keywords": ["webgl"],
332         "category": "html"
333     },
334     {
335         "name": "WebGL 2",
336         "status": {
337             "status": "In Development",
338             "enabled-by-default": true
339         },
340         "url": "https://www.khronos.org/registry/webgl/specs/latest/2.0/",
341         "keywords": ["webgl"],
342         "category": "html"
343     },
344     {
345         "name": "WebRTC",
346         "status": {
347             "status": "In Development"
348         },
349         "url": "http://www.w3.org/TR/webrtc/",
350         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=124288",
351         "keywords": ["webrtc"],
352         "category": "webapps",
353         "description": "An API to facilitate real-time communication for browser-to-browser applications.",
354         "contact": {
355             "name": "Jon Davis",
356             "twitter": "@jonathandavis",
357             "email": "web-evangelist@apple.com"
358         }
359     }
360     ],
361
362     "features": [
363     {
364         "name": "CSS Selector :any-link",
365         "status": {
366             "status": "Done",
367             "enabled-by-default": true
368         },
369         "url": "http://dev.w3.org/csswg/selectors-4/#the-any-link-pseudo",
370         "specification": "CSS Selectors Level 4",
371         "description": "The pseudo class :any-link matches any element that would match :link or :visisted.",
372         "comment": "A prefix version :-webkit-any-link has been available for a while but it was not 100% compliant to the specification.",
373         "contact": {
374             "name": "Benjamin Poulain",
375             "twitter": "@awfulben",
376             "email": "benjamin@webkit.org"
377         }
378     },
379     {
380         "name": "CSS Selector :focus-within",
381         "status": {
382             "status": "Done",
383             "enabled-by-default": true
384         },
385         "url": "https://drafts.csswg.org/selectors-4/#the-focus-within-pseudo",
386         "webkit-url": "https://trac.webkit.org/changeset/202358",
387         "specification": "CSS Selectors Level 4",
388         "description": "The selector :focus-within matches an element if the element or a descendant has the focus.",
389         "contact": {
390             "name": "Benjamin Poulain",
391             "twitter": "@awfulben",
392             "email": "benjamin@webkit.org"
393         }
394     },
395     {
396         "name": "CSS Selector :lang() level 4",
397         "status": {
398             "status": "Done",
399             "enabled-by-default": true
400         },
401         "url": "http://dev.w3.org/csswg/selectors-4/#the-lang-pseudo",
402         "specification": "CSS Selectors Level 4",
403         "description": "The selector :lang() is extended in level 4 to support a list of language range, each range can contain a wildcard. For example: p:lang(\"*-be\", \"en\")."
404     },
405     {
406         "name": "CSS Selector :matches()",
407         "status": {
408             "status": "Done",
409             "enabled-by-default": true
410         },
411         "url": "http://dev.w3.org/csswg/selectors-4/#matches",
412         "specification": "CSS Selectors Level 4",
413         "description": "The selector :matches() takes a selector list as argument and matches an element if any of them matches (e.g. :matches(article > section, #target)). When used for styling, the specificity of :matches() is the higest specificity of all selectors in the selector list.",
414         "comment": "The pseudo classes <em>:visited</em> and <em>:link</em> are not supported inside :matches().",
415         "contact": {
416             "name": "Benjamin Poulain",
417             "twitter": "@awfulben",
418             "email": "benjamin@webkit.org"
419         }
420     },
421     {
422         "name": "CSS Selector :not() level 4",
423         "status": {
424             "status": "Done",
425             "enabled-by-default": true
426         },
427         "url": "http://dev.w3.org/csswg/selectors-4/#negation",
428         "specification": "CSS Selectors Level 4",
429         "description": "The selector :not() in level 4 supports full selector lists as argument. For example: :not(:any-link >> img, :any-link >> picture).",
430         "comment": "The pseudo classes <em>:visited</em> and <em>:link</em> are not supported inside :not().",
431         "contact": {
432             "name": "Benjamin Poulain",
433             "twitter": "@awfulben",
434             "email": "benjamin@webkit.org"
435         }
436     },
437     {
438         "name": "CSS Selector :nth-child(An+B of selector list) and :nth-last-child(An+B of selector list)",
439         "status": {
440             "status": "Done",
441             "enabled-by-default": true
442         },
443         "url": "http://dev.w3.org/csswg/selectors-4/#the-nth-child-pseudo",
444         "specification": "CSS Selectors Level 4",
445         "description": "The pseudo classes :nth-child() and :nth-last-child() now supports a selector list that filters what to count. For example: \":nth-child(even of .visible)\".",
446         "comment": "The pseudo classes <em>:visited</em> and <em>:link</em> are not supported inside :nth-child() and :nth-last-child().",
447         "contact": {
448             "name": "Benjamin Poulain",
449             "twitter": "@awfulben",
450             "email": "benjamin@webkit.org"
451         }
452     },
453     {
454         "name": "CSS Selector :placeholder-shown",
455         "status": {
456             "status": "Done",
457             "enabled-by-default": true
458         },
459         "url": "http://dev.w3.org/csswg/selectors-4/#placeholder",
460         "specification": "CSS Selectors Level 4",
461         "description": "The selector :placeholder-shown matches any input element that has a visible placeholder.",
462         "comment": "Styling the placeholder can be done through the WebKit pseudo-element \"::placeholder\".",
463         "contact": {
464             "name": "Benjamin Poulain",
465             "twitter": "@awfulben",
466             "email": "benjamin@webkit.org"
467         }
468     },
469     {
470         "name": "CSS Shapes Level 1",
471         "status": {
472             "status": "In Development",
473             "enabled-by-default": true
474         },
475         "url": "http://www.w3.org/TR/css-shapes-1/",
476         "description": "CSS Shapes describe geometric shapes for use in CSS. For Level 1, CSS Shapes can be applied to floats.",
477         "comment": "The implementation is feature complete and shipping, but is -webkit prefixed."
478     },
479     {
480         "name": "Case-insensitive attribute selectors",
481         "status": {
482             "status": "Done",
483             "enabled-by-default": true
484         },
485         "url": "http://dev.w3.org/csswg/selectors-4/#attribute-case",
486         "specification": "CSS Selectors Level 4",
487         "description": "Any attribute selector that test a value can take a flag \"i\" to use case insensitive checks. For example: input[type=number i] test the value \"number\" case-insensitively.",
488         "contact": {
489             "name": "Benjamin Poulain",
490             "twitter": "@awfulben",
491             "email": "benjamin@webkit.org"
492         }
493     },
494     {
495         "name": "Conic Gradients",
496         "status": {
497             "status": "Under Consideration"
498         },
499         "url": "https://www.w3.org/TR/css4-images/#conic-gradients",
500         "specification": "CSS Image Values and Replaced Content Module Level 4",
501         "description": "Defines gradients wrapped around a central point.",
502         "contact": {
503             "name": "Jonathan Davis",
504             "email": "web-evangelist@apple.com",
505             "twitter": "@jonathandavis"
506         }
507     },
508     {
509         "name": "Custom Elements",
510         "status": {
511             "status": "In Development"
512         },
513         "url": "http://w3c.github.io/webcomponents/spec/custom/",
514         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=150225",
515         "specification": "Web Components",
516         "description": "Define a custom HTML tag and associate it with an ES6 class.",
517         "contact": {
518             "name": "Ryosuke Niwa",
519             "twitter": "@RyosukeNiwa",
520             "email": "rniwa@webkit.org"
521         }
522     },
523     {
524         "name": "Download Attribute",
525         "status": {
526             "status": "In Development"
527         },
528         "url": "https://html.spec.whatwg.org/multipage/semantics.html#downloading-resources",
529         "webkit-url": "https://webkit.org/b/102914",
530         "specification": "HTML5",
531         "description": "An attribute to an anchor or area element to indicate that a resource is intended to be downloaded for use later rather than immediately.",
532         "contact": {
533             "name": "Brent Fulgham",
534             "email": "bfulgham@apple.com",
535             "twitter": "@bfulgham"
536         }
537     },
538     {
539         "name": "Element.closest()",
540         "status": {
541             "status": "Done",
542             "enabled-by-default": true
543         },
544         "url": "https://dom.spec.whatwg.org/#dom-element-closest",
545         "documentation-url": "https://developer.mozilla.org/en-US/docs/Web/API/Element/closest",
546         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=137418",
547         "specification": "DOM",
548         "description": "Find the closest ancestor matching the selector passed as argument. The element itself is returned if it matches the selector.",
549         "contact": {
550             "name": "Benjamin Poulain",
551             "twitter": "@awfulben",
552             "email": "benjamin@webkit.org"
553         }
554     },
555     {
556         "name": "Filter Effects backdrop-filter propery",
557         "status": {
558             "status": "Done",
559             "enabled-by-default": true
560         },
561         "url": "http://dev.w3.org/fxtf/filters-2/#propdef-backdrop-filter",
562         "specification": "Filter Effects Module Level 2",
563         "description": "This property specifies styling for filters applied to the backdrop of an element."
564     },
565     {
566         "name": "Force Click Events",
567         "status": {
568             "status": "Prototyping",
569             "enabled-by-default": true
570         },
571         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=142836",
572         "description": "Provide the events necessary to handle force click events in the page, overriding the default behavior."
573     },
574     {
575         "name": "HTML imports",
576         "status": {
577             "status": "Not Considering"
578         },
579         "url": "http://w3c.github.io/webcomponents/spec/imports/",
580         "specification": "Web Components",
581         "description": "Includes resusable HTML documents in other HTML documents.",
582         "comment": "There are concerns about the disconnect between this specification and ES6 Modules. WebKit has no intent to support the current specification.",
583         "contact": {
584             "name": "Jon Davis",
585             "twitter": "@jonathandavis",
586             "email": "web-evangelist@apple.com"
587         }
588     },
589     {
590         "name": "ImageBitmap",
591         "status": {
592             "status": "Under Consideration"
593         },
594         "url": "https://html.spec.whatwg.org/multipage/webappapis.html#imagebitmap",
595         "webkit-url": "https://webkit.org/b/",
596         "specification": "HTML5",
597         "description": "An interface for drawing bitmap images to a <canvas> without undue latency.",
598         "contact": {
599             "name": "Jonathan Davis",
600             "email": "web-evangelist@apple.com",
601             "twitter": "@jonathandavis"
602         }
603     },
604     {
605         "name": "Initial Letter",
606         "status": {
607             "status": "Done",
608             "enabled-by-default": true
609         },
610         "url": "http://dev.w3.org/csswg/css-inline/#propdef-initial-letter",
611         "specification": "CSS Inline Layout Module Level 3",
612         "description": "This property specifies styling for dropped, raised, and sunken initial letters."
613     },
614     {
615         "name": "Interaction Media Features (pointer, hover, any-pointer, any-hover)",
616         "status": {
617             "status": "Done",
618             "enabled-by-default": true
619         },
620         "url": "http://dev.w3.org/csswg/mediaqueries-4/#mf-interaction",
621         "specification": "CSS Media Queries Level 4",
622         "description": "The \"pointer\" media defines how percise the pointing device is. The \"hover\" media defines the ability of the poiting device to hover elements."
623     },
624     {
625         "name": "MicroData",
626         "status": {
627             "status": "Removed"
628         },
629         "url": "https://html.spec.whatwg.org/multipage/microdata.html",
630         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=119480",
631         "specification": "HTML5",
632         "comment": "WebKit used to support MicroData. The feature never gained any traction and was eventually removed to clean up the codebase."
633     },
634     {
635         "name": "Navigator.hardwareConcurrency",
636         "status": {
637             "status": "Done",
638             "enabled-by-default": true
639         },
640         "url": "https://wiki.whatwg.org/wiki/Navigator_HW_Concurrency",
641         "webkit-url": "http://trac.webkit.org/changeset/169017",
642         "description": "Navigator.hardwareConcurrency provides the total number of logical processors available to the user agent."
643     },
644     {
645         "name": "Picture element",
646         "status": {
647             "status": "Done",
648             "enabled-by-default": false
649         },
650         "url": "https://html.spec.whatwg.org/multipage/embedded-content.html#the-picture-element",
651         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=116963",
652         "specification": "HTML5",
653         "description": "Enable handling the art-direction responsive images use-case by defining multiple image sources in markup",
654         "contact": {
655             "name": "Yoav Weiss",
656             "twitter": "@yoavweiss",
657             "email": "yoav@yoav.ws"
658         }
659     },
660     {
661         "name": "Position: sticky",
662         "status": {
663             "status": "Done",
664             "enabled-by-default": true
665         },
666         "url": "http://dev.w3.org/csswg/css-position/#sticky-pos",
667         "specification": "CSS Positioned Layout Module Level 3",
668         "description": "Sticky positioning provides a way to position element out of the normal flow when scrolling. Unlike solutions based on JavaScript, the change of position is synchronized with scrolling.",
669         "comment": "The feature is prefixed with <em>-webkit-</em>. There are some remaining issues to resolve in the specification."
670     },
671     {
672         "name": "Preload",
673         "status": {
674             "status": "In Development",
675             "enabled-by-default": false
676         },
677         "url": "http://w3c.github.io/preload/",
678         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=158720",
679         "specification": "Preload",
680         "description": "Provides a declarative fetch primitive that initiates an early fetch and separates fetching from resource execution.",
681         "contact": {
682             "name": "Yoav Weiss",
683             "twitter": "@yoavweiss",
684             "email": "yoav@yoav.ws"
685         }
686     },
687     {
688         "name": "Readable Streams",
689         "status": {
690             "status": "In Development",
691             "enabled-by-default": true
692         },
693         "url": "https://streams.spec.whatwg.org/#rs",
694         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=138967",
695         "specification": "Streams",
696         "comment": "The implementation does not support ReadableStreamBYOBReader."
697     },
698     {
699         "name": "Shadow DOM",
700         "status": {
701             "status": "In Development"
702         },
703         "url": "http://w3c.github.io/webcomponents/spec/shadow/",
704         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=148695",
705         "specification": "Web Components",
706         "description": "Functional encapsulation of HTML and CSS for Web Components.",
707         "contact": {
708             "name": "Ryosuke Niwa",
709             "twitter": "@RyosukeNiwa",
710             "email": "rniwa@webkit.org"
711         }
712     },
713     {
714         "name": "Shared Web Workers",
715         "status": {
716             "status": "Removed"
717         },
718         "url": "https://html.spec.whatwg.org/multipage/workers.html#shared-workers-introduction",
719         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=140344",
720         "specification": "HTML5",
721         "comment": "The implementation of Shared Web Workers was imposing undesirable constraints on the engine. The feature never gained any adoption and was eventually removed from the engine."
722     },
723     {
724         "name": "Srcset w descriptor and related sizes attribute",
725         "status": {
726             "status": "Done",
727             "enabled-by-default": true
728         },
729         "url": "https://html.spec.whatwg.org/multipage/embedded-content.html#the-img-element",
730         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=133620",
731         "specification": "HTML5",
732         "description": "Enable handling the variable width responsive images use-case by defining multiple image resources in markup",
733         "contact": {
734             "name": "Yoav Weiss",
735             "twitter": "@yoavweiss",
736             "email": "yoav@yoav.ws"
737         }
738     },
739     {
740         "name": "Srcset x descriptor",
741         "status": {
742             "status": "Done",
743             "enabled-by-default": true
744         },
745         "url": "https://html.spec.whatwg.org/multipage/embedded-content.html#the-img-element",
746         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=110252",
747         "specification": "HTML5",
748         "description": "Enable handling the fixed width responsive images use-case by defining multiple image resources in markup",
749         "contact": {
750             "name": "Yoav Weiss",
751             "twitter": "@yoavweiss",
752             "email": "yoav@yoav.ws"
753         }
754     },
755     {
756         "name": "Subresource Integrity",
757         "status": {
758             "status": "Under Consideration"
759         },
760         "url": "https://w3c.github.io/webappsec-subresource-integrity/",
761         "description": "Extends script and link elements with an integrity attribute that contains a cryptographic hash of the representation of the resource the author expects to load.",
762         "contact": {
763             "name": "Jonathan Davis",
764             "email": "web-evangelist@apple.com",
765             "twitter": "@jonathandavis"
766         }
767     },
768     {
769         "name": "Template Element",
770         "status": {
771             "status": "Done",
772             "enabled-by-default": true
773         },
774         "url": "http://www.w3.org/TR/html5/scripting-1.html#the-template-element",
775         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=124637",
776         "documentation-url": "https://developer.mozilla.org/en-US/docs/Web/HTML/Element/template",
777         "specification": "Web Components",
778         "description": "Declares HTML fragments that can be cloned and inserted into the document by a script."
779     }
780     ]
781 }