diff --git a/features/accessor-methods.yml b/features/accessor-methods.yml new file mode 100644 index 00000000000..239ae0eff1a --- /dev/null +++ b/features/accessor-methods.yml @@ -0,0 +1,16 @@ +name: Accessor methods +description: The `__defineGetter__()` and `__defineSetter__()` methods of objects bind a function to a property, which is called on setting or reading the property. +spec: https://tc39.es/ecma262/multipage/fundamental-objects.html#sec-object.prototype-legacy-accessor-methods +discouraged: + according_to: + - https://tc39.es/ecma262/multipage/additional-ecmascript-features-for-web-browsers.html#sec-additional-ecmascript-features-for-web-browsers + # No `alternatives` because it would be `alternatives: + # [object-object, functions]`. In the future it'd be nice to have an + # internal reference to the object defineProperty method and the function + # get/set syntax. + # See: https://github.com/web-platform-dx/web-features/issues/2676 +compat_features: + - javascript.builtins.Object.defineGetter + - javascript.builtins.Object.defineSetter + - javascript.builtins.Object.lookupGetter + - javascript.builtins.Object.lookupSetter diff --git a/features/accessor-methods.yml.dist b/features/accessor-methods.yml.dist new file mode 100644 index 00000000000..179d572c0a9 --- /dev/null +++ b/features/accessor-methods.yml.dist @@ -0,0 +1,18 @@ +# Generated from: accessor-methods.yml +# Do not edit this file by hand. Edit the source file instead! + +status: + baseline: false + support: + chrome: "1" + chrome_android: "18" + edge: "12" + firefox: "1" + firefox_android: "4" + safari: "3" + safari_ios: "1" +compat_features: + - javascript.builtins.Object.defineGetter + - javascript.builtins.Object.defineSetter + - javascript.builtins.Object.lookupGetter + - javascript.builtins.Object.lookupSetter diff --git a/features/date-get-year-set-year.yml b/features/date-get-year-set-year.yml new file mode 100644 index 00000000000..bfed0819dd1 --- /dev/null +++ b/features/date-get-year-set-year.yml @@ -0,0 +1,14 @@ +name: getYear() and setYear() +description: The `getYear()` and `setYear()` methods of `Date` objects get and set the year as an offset to 1900. +spec: https://tc39.es/ecma262/multipage/additional-ecmascript-features-for-web-browsers.html#sec-date.prototype.getyear +group: javascript +discouraged: + according_to: + - https://tc39.es/ecma262/multipage/additional-ecmascript-features-for-web-browsers.html#sec-additional-ecmascript-features-for-web-browsers + # No `alternatives` because it would be `alternatives: [date]`. In the future + # it'd be nice to have an internal reference to getFullYear() and + # setFullYear() instead. + # See: https://github.com/web-platform-dx/web-features/issues/2676 +compat_features: + - javascript.builtins.Date.getYear + - javascript.builtins.Date.setYear diff --git a/features/date-get-year-set-year.yml.dist b/features/date-get-year-set-year.yml.dist new file mode 100644 index 00000000000..e99853bb88a --- /dev/null +++ b/features/date-get-year-set-year.yml.dist @@ -0,0 +1,16 @@ +# Generated from: date-get-year-set-year.yml +# Do not edit this file by hand. Edit the source file instead! + +status: + baseline: false + support: + chrome: "1" + chrome_android: "18" + edge: "12" + firefox: "1" + firefox_android: "4" + safari: "1" + safari_ios: "1" +compat_features: + - javascript.builtins.Date.getYear + - javascript.builtins.Date.setYear diff --git a/features/date-to-gmt-string.yml b/features/date-to-gmt-string.yml new file mode 100644 index 00000000000..ffc9335c809 --- /dev/null +++ b/features/date-to-gmt-string.yml @@ -0,0 +1,12 @@ +name: toGMTString() +description: The `toGMTSTring()` method of `Date` objects is an alias to the `toUTCString()` method. +spec: https://tc39.es/ecma262/multipage/additional-ecmascript-features-for-web-browsers.html#sec-date.prototype.togmtstring +discouraged: + according_to: + - https://tc39.es/ecma262/multipage/additional-ecmascript-features-for-web-browsers.html#sec-additional-ecmascript-features-for-web-browsers + # No `alternatives` because it would be `alternatives: [date]`. In the future + # it'd be nice to have an internal reference to the `toUTCString()` method + # instead. + # See: https://github.com/web-platform-dx/web-features/issues/2676 +compat_features: + - javascript.builtins.Date.toGMTString diff --git a/features/date-to-gmt-string.yml.dist b/features/date-to-gmt-string.yml.dist new file mode 100644 index 00000000000..b4f246110ed --- /dev/null +++ b/features/date-to-gmt-string.yml.dist @@ -0,0 +1,15 @@ +# Generated from: date-to-gmt-string.yml +# Do not edit this file by hand. Edit the source file instead! + +status: + baseline: false + support: + chrome: "1" + chrome_android: "18" + edge: "12" + firefox: "1" + firefox_android: "4" + safari: "1" + safari_ios: "1" +compat_features: + - javascript.builtins.Date.toGMTString diff --git a/features/escape-unescape.yml b/features/escape-unescape.yml new file mode 100644 index 00000000000..5ac841c28b9 --- /dev/null +++ b/features/escape-unescape.yml @@ -0,0 +1,14 @@ +name: escape() and unescape() +description: The `escape()` and `unescape()` built-in Javascript methods encode and unencode strings using percent encoding, where certain characters are replaced by hexidecimal escape sequences. +spec: https://tc39.es/ecma262/multipage/additional-ecmascript-features-for-web-browsers.html#sec-escape-string +group: javascript +discouraged: + according_to: + - https://tc39.es/ecma262/multipage/additional-ecmascript-features-for-web-browsers.html#sec-additional-ecmascript-features-for-web-browsers + # No `alternatives` because it would be `alternatives: [javascript]`. In the + # future it'd be nice to have an internal reference to encodeURI(), + # decodeURI(), encodeURIComponent(), and decodeURIComponent() instead. + # See: https://github.com/web-platform-dx/web-features/issues/2676 +compat_features: + - javascript.builtins.escape + - javascript.builtins.unescape diff --git a/features/escape-unescape.yml.dist b/features/escape-unescape.yml.dist new file mode 100644 index 00000000000..5e46b0917f2 --- /dev/null +++ b/features/escape-unescape.yml.dist @@ -0,0 +1,16 @@ +# Generated from: escape-unescape.yml +# Do not edit this file by hand. Edit the source file instead! + +status: + baseline: false + support: + chrome: "1" + chrome_android: "18" + edge: "12" + firefox: "1" + firefox_android: "4" + safari: "1" + safari_ios: "1" +compat_features: + - javascript.builtins.escape + - javascript.builtins.unescape diff --git a/features/html-wrapper-methods.yml b/features/html-wrapper-methods.yml new file mode 100644 index 00000000000..45ac41987f9 --- /dev/null +++ b/features/html-wrapper-methods.yml @@ -0,0 +1,24 @@ +name: HTML wrapper methods +description: JavaScript built-in methods such as, `String.bold()` and `String.italics()`, wrap strings in (often historic) HTML. +spec: https://tc39.es/ecma262/multipage/additional-ecmascript-features-for-web-browsers.html#sec-additional-properties-of-the-string.prototype-object +group: javascript +discouraged: + according_to: + - https://tc39.es/ecma262/multipage/additional-ecmascript-features-for-web-browsers.html#sec-additional-ecmascript-features-for-web-browsers + alternatives: + - dom +compat_features: + - javascript.builtins.String.anchor + - javascript.builtins.String.big + - javascript.builtins.String.blink + - javascript.builtins.String.bold + - javascript.builtins.String.fixed + - javascript.builtins.String.fontcolor + - javascript.builtins.String.fontsize + - javascript.builtins.String.italics + - javascript.builtins.String.link + - javascript.builtins.String.small + - javascript.builtins.String.strike + - javascript.builtins.String.sub + - javascript.builtins.String.substr + - javascript.builtins.String.sup diff --git a/features/html-wrapper-methods.yml.dist b/features/html-wrapper-methods.yml.dist new file mode 100644 index 00000000000..a4c6ea216c9 --- /dev/null +++ b/features/html-wrapper-methods.yml.dist @@ -0,0 +1,28 @@ +# Generated from: html-wrapper-methods.yml +# Do not edit this file by hand. Edit the source file instead! + +status: + baseline: false + support: + chrome: "1" + chrome_android: "18" + edge: "12" + firefox: "1" + firefox_android: "4" + safari: "1" + safari_ios: "1" +compat_features: + - javascript.builtins.String.anchor + - javascript.builtins.String.big + - javascript.builtins.String.blink + - javascript.builtins.String.bold + - javascript.builtins.String.fixed + - javascript.builtins.String.fontcolor + - javascript.builtins.String.fontsize + - javascript.builtins.String.italics + - javascript.builtins.String.link + - javascript.builtins.String.small + - javascript.builtins.String.strike + - javascript.builtins.String.sub + - javascript.builtins.String.substr + - javascript.builtins.String.sup diff --git a/features/proto.yml b/features/proto.yml new file mode 100644 index 00000000000..6315909a6b1 --- /dev/null +++ b/features/proto.yml @@ -0,0 +1,12 @@ +name: __proto__ +description: The `__proto__` property of objects partially exposes the prototype of an object. +spec: https://tc39.es/ecma262/multipage/fundamental-objects.html#sec-object.prototype.__proto__ +discouraged: + according_to: + - https://tc39.es/ecma262/multipage/additional-ecmascript-features-for-web-browsers.html#sec-additional-ecmascript-features-for-web-browsers + # No `alternatives` because it would be `alternatives: [object]`. In the + # future it'd be nice to have an internal reference to `getPrototypeOf()` and + # `setPrototypeOf()` instead. + # See: https://github.com/web-platform-dx/web-features/issues/2676 +compat_features: + - javascript.builtins.Object.proto diff --git a/features/proto.yml.dist b/features/proto.yml.dist new file mode 100644 index 00000000000..8def5e653c7 --- /dev/null +++ b/features/proto.yml.dist @@ -0,0 +1,15 @@ +# Generated from: proto.yml +# Do not edit this file by hand. Edit the source file instead! + +status: + baseline: false + support: + chrome: "1" + chrome_android: "18" + edge: "12" + firefox: "1" + firefox_android: "4" + safari: "3" + safari_ios: "1" +compat_features: + - javascript.builtins.Object.proto diff --git a/features/regexp-compile.yml b/features/regexp-compile.yml new file mode 100644 index 00000000000..f363a0776b7 --- /dev/null +++ b/features/regexp-compile.yml @@ -0,0 +1,12 @@ +name: RegExp compile() +description: The `compile()` method of `RegExp` objects recompiles an existing regular expression object using a new pattern and flags. +spec: https://tc39.es/ecma262/multipage/additional-ecmascript-features-for-web-browsers.html#sec-regexp.prototype.compile +discouraged: + according_to: + - https://tc39.es/ecma262/multipage/additional-ecmascript-features-for-web-browsers.html#sec-additional-ecmascript-features-for-web-browsers + # No `alternatives` because it would be `alternatives: [regexp]`. In the + # future it'd be nice to have an internal reference to the RegExp() + # constructor instead. + # See: https://github.com/web-platform-dx/web-features/issues/2676 +compat_features: + - javascript.builtins.RegExp.compile diff --git a/features/regexp-compile.yml.dist b/features/regexp-compile.yml.dist new file mode 100644 index 00000000000..871d9e763f6 --- /dev/null +++ b/features/regexp-compile.yml.dist @@ -0,0 +1,15 @@ +# Generated from: regexp-compile.yml +# Do not edit this file by hand. Edit the source file instead! + +status: + baseline: false + support: + chrome: "1" + chrome_android: "18" + edge: "12" + firefox: "1" + firefox_android: "4" + safari: "3.1" + safari_ios: "2" +compat_features: + - javascript.builtins.RegExp.compile