Uploaded image for project: 'Titanium SDK/CLI'
  1. Titanium SDK/CLI
  2. TIMOB-19834

Support ES6 for Titanium Application Development

    Details

    • Type: Epic
    • Status: In Progress
    • Priority: None
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
    • Epic Name:
      Support ES6 for Titanium Application Development

      Description

      ES6 is the new standard for JavaScript that introduces a ton of feature improvements to the language structure. These include Classes, Generators, Modules, syntax improvements and much much more!

      Areas of Focus will be:

      • Titanium
      • Alloy
      • Arrow (should work now with Node 4.x+ support but need to verify)

        Issue Links

          Issues in Epic

            Activity

            Hide
            mdelmarter Matthew Delmarter added a comment -

            Yes please.

            Show
            mdelmarter Matthew Delmarter added a comment - Yes please.
            Hide
            ygbr Ygor Lemos added a comment -

            JS native Classes and Template Strings / Interpolation on Ti Classic would make dreams come true.

            Show
            ygbr Ygor Lemos added a comment - JS native Classes and Template Strings / Interpolation on Ti Classic would make dreams come true.
            Hide
            cwilliams Chris Williams added a comment -

            So I think here are a few "layers" where we're broken for ES6

            • Does the JS engine support ES6?
              • TiCore on iOS does not, jsCore does (so basically you need to edit your tiapp.xml to switch over). Android v8 as of our Ti 6+ does. I believe Windows' JSCore port always has.
            • Does our CLI build choke on ES6?
              • Currently, yes - when we parse JS files, scan for Ti API usage, and minify we fail. This is because we use Uglify which still doesn't support ES6. Moving to babel would fix that.
            • Does our encryption choke on ES6?
              • Not sure, but probably.
            • Does Alloy choke on ES6?
              • I haven't tested, but am 100% sure it does. Again this is due to using uglify to parse JS files and transforms the AST. This can now be done with babel instead. Not sure of the extent of the changes.
            Show
            cwilliams Chris Williams added a comment - So I think here are a few "layers" where we're broken for ES6 Does the JS engine support ES6? TiCore on iOS does not, jsCore does (so basically you need to edit your tiapp.xml to switch over). Android v8 as of our Ti 6+ does. I believe Windows' JSCore port always has. Does our CLI build choke on ES6? Currently, yes - when we parse JS files, scan for Ti API usage, and minify we fail. This is because we use Uglify which still doesn't support ES6. Moving to babel would fix that. Does our encryption choke on ES6? Not sure, but probably. Does Alloy choke on ES6? I haven't tested, but am 100% sure it does. Again this is due to using uglify to parse JS files and transforms the AST. This can now be done with babel instead. Not sure of the extent of the changes.

              People

              • Assignee:
                cwilliams Chris Williams
                Reporter:
                bgrantges@appcelerator.com Bert Grantges (Inactive)
              • Watchers:
                30 Start watching this issue

                Dates

                • Created:
                  Updated:

                  Development

                    Poker Sessions

                    This issue is currently not assigned to any Poker Session.

                      Git Source Code