Skip to content

DISCUSS: Should the default output language be NO_TRANSPILE? #3256

@brad4d

Description

@brad4d

It is now possible to output ES_2017 code, and in future we would really prefer to stay more on top of the output language level.

Currently the default output language level is still ES5 to support the most possible browsers by default.
Would it now make sense to make the default NO_TRANSPILE, so you get the same language level out as you get in unless you specify otherwise?

Note that we're still almost certain to support new language levels as input before they are supported for output (just with a much smaller gap between). In such cases NO_TRANSPILE wouldn't work and we'd need to generate an error if the output language weren't explicitly specified.

Or would we default to the highest possible? That seems dangerous, since a new release of the compiler that silently switches the output from, say, ES_2019 to ES_2020 would break projects that were unintentionally relying on the fact that the default was ES_2019 just because we hadn't yet added support for ES_2020

Metadata

Metadata

Assignees

No one assigned

    Labels

    internal-issue-createdAn internal Google issue has been created to track this GitHub issuetriage-doneHas been reviewed by someone on triage rotation.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions