Skip to content

ES6: Clarify difference between --es_staging vs --harmony flags #694

Closed

Description

@fhemberger

Quoting @williamkapke #674 (comment)

I guess there could be more clarification on the difference of the --es_staging vs --harmony flags. From the existing page, I concluded they were the aliases of each other. I guess that isn't true:
See: compat-table/node-compat-table#1 (comment)

I've never used those flags myself, can someone explain the difference?
/cc @nodejs/collaborators

Activity

  1. bnoordhuis commented on Apr 27, 2016

    @bnoordhuis
    Member

    In v4 and v5, they're synonyms for beta-level features: considered complete but not battle-tested yet; can still have bugs.

    In v6, --es_staging is --harmony plus a few alpha-level features; currently --harmony_regexp_lookbehind and --harmony_tailcalls but that can change at any time.

  2. ChALkeR commented on May 3, 2016

    @ChALkeR
    Member

    Note that --es-staging is labeled as «for internal use only» and exposes more unstable features, while the change that got landed promotes --es-staging over --harmony.

      --es_staging (enable test-worthy harmony features (for internal use only))
      --harmony (enable all completed harmony features)
    
  3. fhemberger commented on May 3, 2016

    @fhemberger
    ContributorAuthor

    @ChALkeR Good catch, the "for internal use" remark was not present in Node.js 4.3.1. So we should rather document the --harmony flag only and leave out --es_staging?

  4. ChALkeR commented on May 3, 2016

    @ChALkeR
    Member

    @fhemberger In Node.js 4.3.1 those two were equivalent.

    So we should rather document the --harmony flag only and leave out --es_staging?

    /cc @nodejs/documentation

  5. fhemberger commented on May 3, 2016

    @fhemberger
    ContributorAuthor

    @ChALkeR Yes, but in Node.js 6.0 they are not and --es_staging is flagged "for internal use". But in all versions --harmony does the same, so we should use this flag in our documentation and omit the internal flag --es_staging.

  6. ChALkeR commented on May 3, 2016

    @ChALkeR
    Member

    But in all versions --harmony does the same,

    … except for 0.10/0.12.

  7. lpinca commented on May 3, 2016

    @lpinca
    Member

    so we should use this flag in our documentation and omit the internal flag --es_staging.

    I agree.

  8. fhemberger commented on May 3, 2016

    @fhemberger
    ContributorAuthor

    Fixed on 139393e.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions