Changeset 190889 in webkit


Ignore:
Timestamp:
Oct 12, 2015, 2:31:28 PM (10 years ago)
Author:
sbarati@apple.com
Message:

Update JSC features.json
https://bugs.webkit.org/show_bug.cgi?id=150043

Reviewed by Mark Lam.

There were a lot of things implemented that weren't in
the list. We should be better about updating the list
as we land patches for new ES6 features.

  • features.json:
Location:
trunk/Source/JavaScriptCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r190888 r190889  
     12015-10-12  Saam barati  <sbarati@apple.com>
     2
     3        Update JSC features.json
     4        https://bugs.webkit.org/show_bug.cgi?id=150043
     5
     6        Reviewed by Mark Lam.
     7
     8        There were a lot of things implemented that weren't in
     9        the list. We should be better about updating the list
     10        as we land patches for new ES6 features.
     11
     12        * features.json:
     13
    1142015-10-12  Joseph Pecoraro  <pecoraro@apple.com>
    215
  • trunk/Source/JavaScriptCore/features.json

    r189054 r190889  
    44        "name": "ES6",
    55        "url": "http://wiki.ecmascript.org/doku.php?id=harmony:specification_drafts",
    6         "keywords": ["es6", "es2015", "ecmascript"]
     6        "keywords": ["es6", "es2015", "ecmascript"],
     7        "contact": {
     8            "name": "Saam Barati",
     9            "email": "sbarati@apple.com",
     10            "twitter": "@saambarati"
     11        }
    712    },
    813    {
     
    1419        "name": "Internationalization API",
    1520        "status": {
    16             "status": "Work in progress"
     21            "status": "In Development"
    1722        },
    1823        "url": "http://ecma-international.org/publications/standards/Ecma-402.htm",
     
    3338        "name": "ASM.js",
    3439        "status": {
    35             "status": "Continuously improving",
     40            "status": "In Development",
    3641            "enabled-by-default": true
    3742        },
     
    6772    },
    6873    {
     74        "name": "Arrow Functions",
     75        "status": {
     76            "status": "In Development",
     77            "enabled-by-default": true
     78        },
     79        "url": "http://www.ecma-international.org/ecma-262/6.0/index.html#sec-arrow-function-definitions",
     80        "documentation-url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions",
     81        "description": "Arrow functions are a new type of function expression in ES6 that lexically binds this, new.target, arguments, and super.",
     82        "specification": "ES6"
     83    },
     84    {
     85        "name": "Block Scoping",
     86        "status": {
     87            "status": "In Development",
     88            "enabled-by-default": true
     89        },
     90        "url": "http://www.ecma-international.org/ecma-262/6.0/#sec-let-and-const-declarations",
     91        "documentation-url": "http://www.2ality.com/2015/02/es6-scoping.html",
     92        "description": "Block Scoping let/const/class variables are a new way of declaring variables that are local to the block they're defined in. They have clearer scoping semantics than var variables.",
     93        "specification": "ES6"
     94    },
     95    {
    6996        "name": "Classes",
    7097        "status": {
    71             "status": "Done",
    72             "enabled-by-default": true
    73         },
    74         "url": "https://people.mozilla.org/~jorendorff/es6-draft.html#sec-class-definitions",
     98            "status": "In Development",
     99            "enabled-by-default": true
     100        },
     101        "url": "http://www.ecma-international.org/ecma-262/6.0/#sec-class-definitions",
    75102        "documentation-url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes",
    76         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=142774",
    77         "specification": "ES6",
    78         "description": "The new class syntax of ES6 provides a new syntax to define and extend JavaScript objects. The class syntax is a new notation, objects still use prototypal inheritance."
    79     },
    80     {
    81         "name": "Generators (ES6)",
     103        "description": "Classes are a way to write object oriented code in JavaScript with standard syntax and semantics.",
     104        "specification": "ES6"
     105    },
     106    {
     107        "name": "Default Parameter Values",
     108        "status": {
     109            "status": "Done",
     110            "enabled-by-default": true
     111        },
     112        "url": "http://www.ecma-international.org/ecma-262/6.0/#sec-function-definitions",
     113        "documentation-url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Default_parameters",
     114        "description": "Default parameter values are a convenient way to specify expressions that parameters should evaluate to when undefined (or nothing) is passed in as a function argument.",
     115        "specification": "ES6"
     116    },
     117    {
     118        "name": "Destructuring Syntax",
     119        "status": {
     120            "status": "Done",
     121            "enabled-by-default": true
     122        },
     123        "url": "http://www.ecma-international.org/ecma-262/6.0/#sec-destructuring-assignment",
     124        "documentation-url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment",
     125        "description": "Destructuring syntax is a shorthand form that allows you to easily assign local variables to the values of an object or array's properties.",
     126        "specification": "ES6"
     127    },
     128    {
     129        "name": "for...of Loops",
     130        "status": {
     131            "status": "Done",
     132            "enabled-by-default": true
     133        },
     134        "url": "http://people.mozilla.org/~jorendorff/es6-draft.html#sec-for-in-and-for-of-statements",
     135        "documentation-url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...of",
     136        "description": "The for...of loops iterate over the values provided by the iterator of the target object.",
     137        "specification": "ES6",
     138        "comment": "Older versions of WebKit only supported iterating JavaScript arrays."
     139    },
     140    {
     141        "name": "Generators",
    82142        "status": {
    83143            "status": "No active development"
     
    93153    },
    94154    {
    95         "name": "Map data structure",
     155        "name": "Map Data Structure",
    96156        "status": {
    97157            "status": "Done",
     
    105165    },
    106166    {
    107         "name": "Number extensions (ES6)",
     167        "name": "Modules",
     168        "status": {
     169            "status": "In Development",
     170            "enabled-by-default": true
     171        },
     172        "url": "http://www.ecma-international.org/ecma-262/6.0/index.html#sec-modules",
     173        "documentation-url": "https://hacks.mozilla.org/2015/08/es6-in-depth-modules/",
     174        "description": "Modules make modularizing code and splitting it across different files easy because the syntax and semantics are now standard in the JavaScript langauge.",
     175        "specification": "ES6"
     176    },
     177    {
     178        "name": "new.target",
     179        "status": {
     180            "status": "Done",
     181            "enabled-by-default": true
     182        },
     183        "url": "http://www.ecma-international.org/ecma-262/6.0/#sec-built-in-function-objects",
     184        "documentation-url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/new.target",
     185        "description": "new.target allows you to detect if a function or constructor was instantiated with the new operator, or if instead it was called using normal function calling syntax.",
     186        "specification": "ES6"
     187    },
     188    {
     189        "name": "Number Object Extensions",
    108190        "status": {
    109191            "status": "Done",
     
    114196        "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=131707",
    115197        "specification": "ES6",
    116         "description": "ES6 extend Number with the methods Number.isFinite(), Number.isInteger(), Number.isSafeInteger(), Number.isNaN() and the attributes Number.EPSILON, Number.MIN_SAFE_INTEGER, Number.MAX_SAFE_INTEGER."
    117     },
    118     {
    119         "name": "Octal and binary literals",
     198        "description": "Extend Number with the methods Number.isFinite(), Number.isInteger(), Number.isSafeInteger(), Number.isNaN() and the attributes Number.EPSILON, Number.MIN_SAFE_INTEGER, Number.MAX_SAFE_INTEGER."
     199    },
     200    {
     201        "name": "Octal and Binary Literals",
    120202        "status": {
    121203            "status": "Done",
     
    140222    },
    141223    {
    142         "name": "Proxy Objects (ES6)",
     224        "name": "Proxy Objects",
    143225        "status": {
    144226            "status": "No active development"
     
    154236    },
    155237    {
    156         "name": "Set data structure",
     238        "name": "Reflect API",
     239        "status": {
     240            "status": "In Development",
     241            "enabled-by-default": true
     242        },
     243        "url": "http://www.ecma-international.org/ecma-262/6.0/#sec-reflect-object",
     244        "documentation-url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Reflect",
     245        "description": "The Reflect API is a way to set properties and call methods on certain objects that can be intercepted by ES6 Proxies.",
     246        "specification": "ES6"
     247    },
     248    {
     249        "name": "Set Data Structure",
    157250        "status": {
    158251            "status": "Done",
     
    181274    },
    182275    {
    183         "name": "Tagged templates",
     276        "name": "Tagged Templates",
    184277        "status": {
    185278            "status": "Done",
     
    197290    },
    198291    {
    199         "name": "Template literals",
     292        "name": "Tail Calls",
     293        "status": {
     294            "status": "In Development",
     295            "enabled-by-default": true
     296        },
     297        "url": "http://www.ecma-international.org/ecma-262/6.0/index.html#sec-tail-position-calls",
     298        "documentation-url": "http://www.2ality.com/2015/06/tail-call-optimization.html",
     299        "description": "Tail Calls allow you to make function calls that are in tail position without growing the stack. It is commonly used to write loops using function calls instead of for or while syntax.",
     300        "specification": "ES6"
     301    },
     302    {
     303        "name": "Template Literals",
    200304        "status": {
    201305            "status": "Done",
     
    239343            "email": "utatane.tea@gmail.com"
    240344        }
    241     },
    242     {
    243         "name": "for...of loops",
    244         "status": {
    245             "status": "Done",
    246             "enabled-by-default": true
    247         },
    248         "url": "http://people.mozilla.org/~jorendorff/es6-draft.html#sec-for-in-and-for-of-statements",
    249         "documentation-url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...of",
    250         "description": "The for...of loops iterate over the values provided by the iterator of the target object.",
    251         "specification": "ES6",
    252         "comment": "Older versions of WebKit only supported iterating JavaScript arrays."
    253345    }
    254346    ]
Note: See TracChangeset for help on using the changeset viewer.