Back to Coffeescript

2.0.0 Beta5

documentation/sections/changelog/2.0.0-beta5.md

2.7.02.1 KB
Original Source
releaseHeader('2017-09-02', '2.0.0-beta5', '2.0.0-beta4')
  • Node 6 is now supported, and we will try to maintain that as the minimum required version for CoffeeScript 2 via the coffee command or Node API. Older versions of Node, or non-evergreen browsers, can compile via the legacy browser compiler.
  • The command line --output flag now allows you to specify an output filename, not just an output folder.
  • The command line --require flag now properly handles filenames or module names that are invalid identifiers (like an NPM module with a hyphen in the name).
  • Object.assign, output when object destructuring is used, is polyfilled using the same polyfill that Babel outputs. This means that polyfills shouldn’t be required unless support for Internet Explorer 8 or below is desired (or your own code uses a feature that requires a polyfill). See ES2015+ Output.
  • A string or JSX interpolation that contains only a comment ("a#{### comment ###}b" or <div>{### comment ###}</div>) is now output (`a$b`)
  • Interpolated strings (ES2015 template literals) that contain quotation marks no longer have the quotation marks escaped: `say "${message}"`
  • It is now possible to chain after a function literal (for example, to define a function and then call .call on it).
  • The results of the async tests are included in the output when you run cake test.
  • Bugfixes for object destructuring; expansions in function parameters; generated reference variables in function parameters; chained functions after do; splats after existential operator soaks in arrays ([a?.b...]); trailing if with splat in arrays or function parameters ([a if b...]); attempting to throw an if, for, switch, while or other invalid construct.
  • Bugfixes for syntactical edge cases: semicolons after = and other “mid-expression” tokens; spaces after ::; and scripts that begin with : or *.
  • Bugfixes for source maps generated via the Node API; and stack trace line numbers when compiling CoffeeScript via the Node API from within a .coffee file.