CS2 Discussion: Project: Progress as of August 2017: 2.0.0-beta4! #87
Description
Hey everyone,
CoffeeScript 2.0.0-beta4 is released! Install it via: npm install coffeescript@next
Since the last update, as of 2017-08-04 the following has been merged into the jashkenas/coffeescript 2
branch and released in 2.0.0-beta4:
- Line comments (starting with
#
) are now output in the generated JavaScript, thanks to @GeoffreyBooth. You can see them in the examples in the docs. - Block comments (delimited by
###
) are now allowed anywhere, including inline where they previously weren’t possible, thanks to @GeoffreyBooth. This provides support for static type annotations using Flow’s comments-based syntax. Closes CS2 Discussion: Features: Type Annotations #12 (at least, via this implementation; feel free to open new issues for other static type solutions you’d like to suggest). - Spread syntax (
...
for objects) is now supported in JSX tags:<div {props...} />
, thanks to @zdenko. - Argument parsing for scripts run via
coffee
is improved, thanks to @cosmicexplorer. See breaking changes. This PR was started in 2015! - CLI: Propagate
SIGINT
andSIGTERM
signals when node is forked, thanks to @Gobie. await
in the REPL is now allowed without requiring a wrapper function, thanks to @connec.do super
is now allowed, thanks to @zdenko.- Multiple accesses of
super
likesuper.x.y
orsuper['x'].y
now work, thanks to @helixbass. - Splat/spread syntax triple dots are now allowed on either the left or the right (so
props...
or...props
are both valid), thanks to @zdenko. - Tagged template literals are recognized as callable functions, thanks to @helixbass.
- Bugfixes for object spread syntax in nested properties, thanks to @zdenko.
- Bugfixes for destructured function parameter default values, thanks to @zdenko.
- Fix regressions related to chained function calls and indented
return
andthrow
arguments, thanks to @helixbass. - The REPL no longer warns about assigning to
_
, thanks to @xixixao.
There are no breaking-change pull requests in the pipeline. This means that unless people report any showstopper bugs with this release, this could be the last beta before 2.0.0 is released. So please try it in your projects and let us know if it’s ready. The sooner we get feedback saying that all is well (or that there are bugs we need to address) the sooner we can release 2.0.0.
If you encounter any issues, after first reviewing the breaking changes, please open an issue with “[CS2]“ in the title. Please don’t comment bug reports on this thread. Thanks!