From 6091ce54653509a1d15a893077d12f2aaf3866ea Mon Sep 17 00:00:00 2001 From: Alexis Deveria Date: Sun, 16 Sep 2012 17:26:37 -0700 Subject: [PATCH] data update with new contributable feature files --- Contributing.md | 59 ++++++++ features-json/apng.json | 149 ++++++++++++++++++++ features-json/audio-api.json | 141 +++++++++++++++++++ features-json/audio.json | 155 +++++++++++++++++++++ features-json/background-img-opts.json | 139 ++++++++++++++++++ features-json/blobbuilder.json | 137 ++++++++++++++++++ features-json/bloburls.json | 133 ++++++++++++++++++ features-json/border-image.json | 133 ++++++++++++++++++ features-json/border-radius.json | 145 +++++++++++++++++++ features-json/calc.json | 137 ++++++++++++++++++ features-json/canvas-text.json | 138 ++++++++++++++++++ features-json/canvas.json | 152 ++++++++++++++++++++ features-json/classlist.json | 138 ++++++++++++++++++ features-json/contenteditable.json | 141 +++++++++++++++++++ features-json/cors.json | 145 +++++++++++++++++++ features-json/css-animation.json | 137 ++++++++++++++++++ features-json/css-boxshadow.json | 154 ++++++++++++++++++++ features-json/css-canvas.json | 133 ++++++++++++++++++ features-json/css-counters.json | 137 ++++++++++++++++++ features-json/css-filters.json | 142 +++++++++++++++++++ features-json/css-fixed.json | 142 +++++++++++++++++++ features-json/css-gencontent.json | 139 ++++++++++++++++++ features-json/css-gradients.json | 137 ++++++++++++++++++ features-json/css-grid.json | 133 ++++++++++++++++++ features-json/css-hyphens.json | 137 ++++++++++++++++++ features-json/css-masks.json | 133 ++++++++++++++++++ features-json/css-mediaqueries.json | 143 +++++++++++++++++++ features-json/css-opacity.json | 133 ++++++++++++++++++ features-json/css-reflections.json | 133 ++++++++++++++++++ features-json/css-regions.json | 137 ++++++++++++++++++ features-json/css-repeating-gradients.json | 137 ++++++++++++++++++ features-json/css-resize.json | 133 ++++++++++++++++++ features-json/css-sel2.json | 141 +++++++++++++++++++ features-json/css-sel3.json | 141 +++++++++++++++++++ features-json/css-table.json | 139 ++++++++++++++++++ features-json/css-textshadow.json | 143 +++++++++++++++++++ features-json/css-transitions.json | 146 +++++++++++++++++++ features-json/css3-boxsizing.json | 143 +++++++++++++++++++ features-json/css3-colors.json | 145 +++++++++++++++++++ features-json/datalist.json | 141 +++++++++++++++++++ features-json/dataset.json | 141 +++++++++++++++++++ features-json/datauri.json | 141 +++++++++++++++++++ features-json/details.json | 141 +++++++++++++++++++ features-json/deviceorientation.json | 133 ++++++++++++++++++ features-json/dragndrop.json | 143 +++++++++++++++++++ features-json/eot.json | 137 ++++++++++++++++++ features-json/eventsource.json | 139 ++++++++++++++++++ features-json/fileapi.json | 133 ++++++++++++++++++ features-json/filereader.json | 133 ++++++++++++++++++ features-json/filesystem.json | 133 ++++++++++++++++++ features-json/flexbox.json | 147 +++++++++++++++++++ features-json/font-feature.json | 137 ++++++++++++++++++ features-json/fontface.json | 147 +++++++++++++++++++ features-json/form-validation.json | 132 ++++++++++++++++++ features-json/forms.json | 139 ++++++++++++++++++ features-json/fullscreen.json | 141 +++++++++++++++++++ features-json/geolocation.json | 135 ++++++++++++++++++ features-json/getcomputedstyle.json | 143 +++++++++++++++++++ features-json/getelementsbyclassname.json | 139 ++++++++++++++++++ features-json/hashchange.json | 146 +++++++++++++++++++ features-json/history.json | 147 +++++++++++++++++++ features-json/html5semantic.json | 141 +++++++++++++++++++ features-json/iframe-sandbox.json | 137 ++++++++++++++++++ features-json/indexeddb.json | 137 ++++++++++++++++++ features-json/inline-block.json | 137 ++++++++++++++++++ features-json/input-color.json | 137 ++++++++++++++++++ features-json/input-datetime.json | 137 ++++++++++++++++++ features-json/input-number.json | 137 ++++++++++++++++++ features-json/input-placeholder.json | 137 ++++++++++++++++++ features-json/input-range.json | 141 +++++++++++++++++++ features-json/json.json | 137 ++++++++++++++++++ features-json/matchesselector.json | 134 ++++++++++++++++++ features-json/matchmedia.json | 142 +++++++++++++++++++ features-json/mathml.json | 149 ++++++++++++++++++++ features-json/menu.json | 137 ++++++++++++++++++ features-json/minmaxwh.json | 139 ++++++++++++++++++ features-json/mpeg4.json | 137 ++++++++++++++++++ features-json/multibackgrounds.json | 139 ++++++++++++++++++ features-json/multicolumn.json | 139 ++++++++++++++++++ features-json/namevalue-storage.json | 141 +++++++++++++++++++ features-json/nav-timing.json | 138 ++++++++++++++++++ features-json/notifications.json | 137 ++++++++++++++++++ features-json/object-fit.json | 133 ++++++++++++++++++ features-json/offline-apps.json | 143 +++++++++++++++++++ features-json/ogv.json | 133 ++++++++++++++++++ features-json/png-alpha.json | 139 ++++++++++++++++++ features-json/pointer-events.json | 135 ++++++++++++++++++ features-json/progressmeter.json | 141 +++++++++++++++++++ features-json/queryselector.json | 141 +++++++++++++++++++ features-json/rem.json | 133 ++++++++++++++++++ features-json/requestanimationframe.json | 137 ++++++++++++++++++ features-json/ruby.json | 137 ++++++++++++++++++ features-json/script-async.json | 138 ++++++++++++++++++ features-json/script-defer.json | 134 ++++++++++++++++++ features-json/sharedworkers.json | 137 ++++++++++++++++++ features-json/spdy.json | 137 ++++++++++++++++++ features-json/sql-storage.json | 133 ++++++++++++++++++ features-json/stream.json | 134 ++++++++++++++++++ features-json/svg-css.json | 139 ++++++++++++++++++ features-json/svg-filters.json | 139 ++++++++++++++++++ features-json/svg-fonts.json | 137 ++++++++++++++++++ features-json/svg-html.json | 141 +++++++++++++++++++ features-json/svg-html5.json | 138 ++++++++++++++++++ features-json/svg-img.json | 142 +++++++++++++++++++ features-json/svg-smil.json | 139 ++++++++++++++++++ features-json/svg.json | 149 ++++++++++++++++++++ features-json/testfeat.json | 133 ++++++++++++++++++ features-json/text-overflow.json | 141 +++++++++++++++++++ features-json/text-stroke.json | 137 ++++++++++++++++++ features-json/touch.json | 147 +++++++++++++++++++ features-json/transforms2d.json | 149 ++++++++++++++++++++ features-json/transforms3d.json | 137 ++++++++++++++++++ features-json/ttf.json | 130 +++++++++++++++++ features-json/typedarrays.json | 138 ++++++++++++++++++ features-json/use-strict.json | 137 ++++++++++++++++++ features-json/video.json | 145 +++++++++++++++++++ features-json/viewport-units.json | 133 ++++++++++++++++++ features-json/wai-aria.json | 149 ++++++++++++++++++++ features-json/webgl.json | 149 ++++++++++++++++++++ features-json/webm.json | 141 +++++++++++++++++++ features-json/websockets.json | 141 +++++++++++++++++++ features-json/webworkers.json | 141 +++++++++++++++++++ features-json/woff.json | 133 ++++++++++++++++++ features-json/word-break.json | 133 ++++++++++++++++++ features-json/wordwrap.json | 137 ++++++++++++++++++ features-json/x-doc-messaging.json | 141 +++++++++++++++++++ features-json/xhr2.json | 144 +++++++++++++++++++ features-json/xhtml.json | 137 ++++++++++++++++++ features-json/xhtmlsmil.json | 137 ++++++++++++++++++ 129 files changed, 17877 insertions(+) create mode 100644 Contributing.md create mode 100644 features-json/apng.json create mode 100644 features-json/audio-api.json create mode 100644 features-json/audio.json create mode 100644 features-json/background-img-opts.json create mode 100644 features-json/blobbuilder.json create mode 100644 features-json/bloburls.json create mode 100644 features-json/border-image.json create mode 100644 features-json/border-radius.json create mode 100644 features-json/calc.json create mode 100644 features-json/canvas-text.json create mode 100644 features-json/canvas.json create mode 100644 features-json/classlist.json create mode 100644 features-json/contenteditable.json create mode 100644 features-json/cors.json create mode 100644 features-json/css-animation.json create mode 100644 features-json/css-boxshadow.json create mode 100644 features-json/css-canvas.json create mode 100644 features-json/css-counters.json create mode 100644 features-json/css-filters.json create mode 100644 features-json/css-fixed.json create mode 100644 features-json/css-gencontent.json create mode 100644 features-json/css-gradients.json create mode 100644 features-json/css-grid.json create mode 100644 features-json/css-hyphens.json create mode 100644 features-json/css-masks.json create mode 100644 features-json/css-mediaqueries.json create mode 100644 features-json/css-opacity.json create mode 100644 features-json/css-reflections.json create mode 100644 features-json/css-regions.json create mode 100644 features-json/css-repeating-gradients.json create mode 100644 features-json/css-resize.json create mode 100644 features-json/css-sel2.json create mode 100644 features-json/css-sel3.json create mode 100644 features-json/css-table.json create mode 100644 features-json/css-textshadow.json create mode 100644 features-json/css-transitions.json create mode 100644 features-json/css3-boxsizing.json create mode 100644 features-json/css3-colors.json create mode 100644 features-json/datalist.json create mode 100644 features-json/dataset.json create mode 100644 features-json/datauri.json create mode 100644 features-json/details.json create mode 100644 features-json/deviceorientation.json create mode 100644 features-json/dragndrop.json create mode 100644 features-json/eot.json create mode 100644 features-json/eventsource.json create mode 100644 features-json/fileapi.json create mode 100644 features-json/filereader.json create mode 100644 features-json/filesystem.json create mode 100644 features-json/flexbox.json create mode 100644 features-json/font-feature.json create mode 100644 features-json/fontface.json create mode 100644 features-json/form-validation.json create mode 100644 features-json/forms.json create mode 100644 features-json/fullscreen.json create mode 100644 features-json/geolocation.json create mode 100644 features-json/getcomputedstyle.json create mode 100644 features-json/getelementsbyclassname.json create mode 100644 features-json/hashchange.json create mode 100644 features-json/history.json create mode 100644 features-json/html5semantic.json create mode 100644 features-json/iframe-sandbox.json create mode 100644 features-json/indexeddb.json create mode 100644 features-json/inline-block.json create mode 100644 features-json/input-color.json create mode 100644 features-json/input-datetime.json create mode 100644 features-json/input-number.json create mode 100644 features-json/input-placeholder.json create mode 100644 features-json/input-range.json create mode 100644 features-json/json.json create mode 100644 features-json/matchesselector.json create mode 100644 features-json/matchmedia.json create mode 100644 features-json/mathml.json create mode 100644 features-json/menu.json create mode 100644 features-json/minmaxwh.json create mode 100644 features-json/mpeg4.json create mode 100644 features-json/multibackgrounds.json create mode 100644 features-json/multicolumn.json create mode 100644 features-json/namevalue-storage.json create mode 100644 features-json/nav-timing.json create mode 100644 features-json/notifications.json create mode 100644 features-json/object-fit.json create mode 100644 features-json/offline-apps.json create mode 100644 features-json/ogv.json create mode 100644 features-json/png-alpha.json create mode 100644 features-json/pointer-events.json create mode 100644 features-json/progressmeter.json create mode 100644 features-json/queryselector.json create mode 100644 features-json/rem.json create mode 100644 features-json/requestanimationframe.json create mode 100644 features-json/ruby.json create mode 100644 features-json/script-async.json create mode 100644 features-json/script-defer.json create mode 100644 features-json/sharedworkers.json create mode 100644 features-json/spdy.json create mode 100644 features-json/sql-storage.json create mode 100644 features-json/stream.json create mode 100644 features-json/svg-css.json create mode 100644 features-json/svg-filters.json create mode 100644 features-json/svg-fonts.json create mode 100644 features-json/svg-html.json create mode 100644 features-json/svg-html5.json create mode 100644 features-json/svg-img.json create mode 100644 features-json/svg-smil.json create mode 100644 features-json/svg.json create mode 100644 features-json/testfeat.json create mode 100644 features-json/text-overflow.json create mode 100644 features-json/text-stroke.json create mode 100644 features-json/touch.json create mode 100644 features-json/transforms2d.json create mode 100644 features-json/transforms3d.json create mode 100644 features-json/ttf.json create mode 100644 features-json/typedarrays.json create mode 100644 features-json/use-strict.json create mode 100644 features-json/video.json create mode 100644 features-json/viewport-units.json create mode 100644 features-json/wai-aria.json create mode 100644 features-json/webgl.json create mode 100644 features-json/webm.json create mode 100644 features-json/websockets.json create mode 100644 features-json/webworkers.json create mode 100644 features-json/woff.json create mode 100644 features-json/word-break.json create mode 100644 features-json/wordwrap.json create mode 100644 features-json/x-doc-messaging.json create mode 100644 features-json/xhr2.json create mode 100644 features-json/xhtml.json create mode 100644 features-json/xhtmlsmil.json diff --git a/Contributing.md b/Contributing.md new file mode 100644 index 0000000000..ef8f3d5841 --- /dev/null +++ b/Contributing.md @@ -0,0 +1,59 @@ +# Contributing to the caniuse data + +The features-json directory includes JSON files for every feature found on the caniuse.com website. Through GitHub it provides a method for anyone interested in updating or contributing to the support data on the site. + +## How it works + +The data on the site is stored in a database. This data is periodically exported to the JSON files on GitHub. Once a change or new file here has been approved, it is integrated back into the database and the subsequent export files should be the same as the imported ones. Not too confusing, I hope. :) + +## Supported changes + +Currently the following feature information can be modified: +* "title" Feature title +* "description" Brief description of feature +* "spec" Spec URL +* "status" Spec status, one of the following: + * rec (W3C Recommendation) + * pr (W3C Proposed Recommendation) + * cr (W3C Candidate Recommendation) + * wd (W3C Working Draft) + * other (Non-W3C, but reputable) + * unoff (Unofficial or W3C "Note") +* "links" Array of "link" objects consisting of URL and short description of link +* "bugs" Array of "bug" objects consisting of a bug description +* "categories" Array of categories, any of the following: + * HTML5 + * CSS + * CSS2 + * CSS3 + * SVG + * PNG + * JS API + * Canvas + * Other + * DOM +* "stats" The collection of support data for a given set of browsers/versions. Only the support value strings can be modified. Values are space-separated characters with these meanings: + * y - (Y)es, supported + * a - (A)lmost supported (aka Partial support) + * n - (N)o support + * p - No support, but has (P)olyfill + * u - Support (u)nknown + * x - Requires prefi(x) to work +* "notes" Notes on feature support, often to explain what partial support refers to +* "ucprefix" Prefix should start with an uppercase letter +* "parent" ID of parent feature +* "keywords" Comma separated words that will match the feature in a search +* "shown" Whether or not feature is ready to be shown on the site. This can be left as false if the support data or information for other fields is still being collected + +## Adding a feature + +To add a feature, simply add another JSON file to the directory with the base file name as the feature ID (only alphanumeric characters and hyphens please). If you want to submit a feature but don't have all information available for it yet, make sure you set the "shown" flag to false. + +## Unsupported changes + +Currently it is not possible to: +* Add a new browser or browser version (this will be made possible later) +* Add a test for any given feature (should also come later) +* Add any object properties not already defined above +* Modify the "usage\_perc\_y" or "usage\_perc\_a" values (these values are generated) + diff --git a/features-json/apng.json b/features-json/apng.json new file mode 100644 index 0000000000..a384b82dfc --- /dev/null +++ b/features-json/apng.json @@ -0,0 +1,149 @@ +{ + "title":"Animated PNG (APNG)", + "description":"Like animated GIFs, but allowing 24-bit colors and alpha transparency", + "spec":"https:\/\/wiki.mozilla.org\/APNG_Specification", + "status":"unoff", + "links":[ + { + "url":"http:\/\/en.wikipedia.org\/wiki\/APNG", + "title":"Wikipedia" + }, + { + "url":"http:\/\/www.truekolor.net\/learn-how-to-create-an-animated-png\/", + "title":"APNG tutorial" + }, + { + "url":"http:\/\/animatedpng.com\/", + "title":"An APNG editor" + }, + { + "url":"https:\/\/github.com\/davidmz\/apng-canvas", + "title":"Polyfill using canvas" + }, + { + "url":"https:\/\/chrome.google.com\/webstore\/detail\/ehkepjiconegkhpodgoaeamnpckdbblp", + "title":"Chrome extension providing support" + } + ], + "bugs":[ + + ], + "categories":[ + "PNG" + ], + "stats":{ + "ie":{ + "5.5":"n", + "6":"n", + "7":"n", + "8":"n", + "9":"n", + "10":"u" + }, + "firefox":{ + "2":"n", + "3":"y", + "3.5":"y", + "3.6":"y", + "4":"y", + "5":"y", + "6":"y", + "7":"y", + "8":"y", + "9":"y", + "10":"y", + "11":"y", + "12":"y", + "13":"y", + "14":"y", + "15":"y", + "16":"y", + "17":"y" + }, + "chrome":{ + "4":"n", + "5":"n", + "6":"n", + "7":"n", + "8":"n", + "9":"n", + "10":"n", + "11":"n", + "12":"n", + "13":"n", + "14":"n", + "15":"n", + "16":"n", + "17":"n", + "18":"n", + "19":"n", + "20":"n", + "21":"n", + "22":"u", + "23":"u" + }, + "safari":{ + "3.1":"n", + "3.2":"n", + "4":"n", + "5":"n", + "5.1":"n", + "6":"n" + }, + "opera":{ + "9":"n", + "9.5-9.6":"y", + "10.0-10.1":"y", + "10.5":"y", + "10.6":"y", + "11":"y", + "11.1":"y", + "11.5":"y", + "11.6":"y", + "12":"y", + "12.1":"y", + "12.5":"y" + }, + "ios_saf":{ + "3.2":"n", + "4.0-4.1":"n", + "4.2-4.3":"n", + "5.0-5.1":"n", + "6":"u" + }, + "op_mini":{ + "5.0-7.0":"n" + }, + "android":{ + "2.1":"n", + "2.2":"n", + "2.3":"n", + "3":"n", + "4":"n" + }, + "bb":{ + "7":"n", + "10":"n" + }, + "op_mob":{ + "10":"y", + "11":"y", + "11.1":"y", + "11.5":"y", + "12":"y" + }, + "and_chr":{ + "0":"n" + }, + "and_ff":{ + "0":"y" + } + }, + "notes":"Where support for APNG is missing, only the first frame is displayed", + "usage_perc_y":21.63, + "usage_perc_a":0, + "ucprefix":false, + "parent":"", + "keywords":"", + "shown":true +} \ No newline at end of file diff --git a/features-json/audio-api.json b/features-json/audio-api.json new file mode 100644 index 0000000000..5b4c99c4fa --- /dev/null +++ b/features-json/audio-api.json @@ -0,0 +1,141 @@ +{ + "title":"Audio API", + "description":"High-level JavaScript API for processing and synthesizing audio", + "spec":"http:\/\/www.w3.org\/TR\/audioproc\/", + "status":"wd", + "links":[ + { + "url":"http:\/\/www.w3.org\/TR\/streamproc\/", + "title":"MediaStream Processing API" + }, + { + "url":"http:\/\/www.w3.org\/TR\/webaudio\/", + "title":"Web Audio API by Google" + }, + { + "url":"https:\/\/github.com\/corbanbrook\/audionode.js", + "title":"Polyfill to support Web Audio API in Firefox" + } + ], + "bugs":[ + + ], + "categories":[ + "JS API" + ], + "stats":{ + "ie":{ + "5.5":"n", + "6":"n", + "7":"n", + "8":"n", + "9":"n", + "10":"u" + }, + "firefox":{ + "2":"n", + "3":"n", + "3.5":"n", + "3.6":"n", + "4":"a x", + "5":"a x", + "6":"a x", + "7":"a x", + "8":"a x", + "9":"a x", + "10":"a x", + "11":"a x", + "12":"a x", + "13":"a x", + "14":"a x", + "15":"a x", + "16":"a x", + "17":"a x" + }, + "chrome":{ + "4":"n", + "5":"n", + "6":"n", + "7":"n", + "8":"n", + "9":"n", + "10":"a x", + "11":"a x", + "12":"a x", + "13":"a x", + "14":"a x", + "15":"a x", + "16":"a x", + "17":"a x", + "18":"a x", + "19":"a x", + "20":"a x", + "21":"a x", + "22":"a x", + "23":"a x" + }, + "safari":{ + "3.1":"n", + "3.2":"n", + "4":"n", + "5":"n", + "5.1":"n", + "6":"a x" + }, + "opera":{ + "9":"n", + "9.5-9.6":"n", + "10.0-10.1":"n", + "10.5":"n", + "10.6":"n", + "11":"n", + "11.1":"n", + "11.5":"n", + "11.6":"n", + "12":"n", + "12.1":"n", + "12.5":"n" + }, + "ios_saf":{ + "3.2":"n", + "4.0-4.1":"n", + "4.2-4.3":"n", + "5.0-5.1":"n", + "6":"u" + }, + "op_mini":{ + "5.0-7.0":"n" + }, + "android":{ + "2.1":"n", + "2.2":"n", + "2.3":"n", + "3":"n", + "4":"n" + }, + "bb":{ + "7":"n", + "10":"n" + }, + "op_mob":{ + "10":"n", + "11":"n", + "11.1":"n", + "11.5":"n", + "12":"n" + }, + "and_chr":{ + "0":"a x" + }, + "and_ff":{ + "0":"a x" + } + }, + "notes":"Current support in Gecko\/WebKit is based on two different proposals.", + "usage_perc_y":0, + "usage_perc_a":49.21, + "ucprefix":false, + "parent":"", + "keywords":"", + "shown":true +} \ No newline at end of file diff --git a/features-json/audio.json b/features-json/audio.json new file mode 100644 index 0000000000..0d85d45ad1 --- /dev/null +++ b/features-json/audio.json @@ -0,0 +1,155 @@ +{ + "title":"Audio element", + "description":"Method of playing sound on webpages (without requiring a plug-in)", + "spec":"http:\/\/www.whatwg.org\/specs\/web-apps\/current-work\/multipage\/video.html#audio", + "status":"wd", + "links":[ + { + "url":"http:\/\/html5doctor.com\/native-audio-in-the-browser\/", + "title":"HTML5 Doctor article" + }, + { + "url":"http:\/\/dev.opera.com\/articles\/view\/everything-you-need-to-know-about-html5-video-and-audio\/", + "title":"Detailed article on video\/audio elements" + }, + { + "url":"http:\/\/www.jplayer.org\/latest\/demos\/", + "title":"Demos of audio player that uses