Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docs headings and changelog refactor #5067

Merged
merged 5 commits into from
May 20, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 4 additions & 12 deletions Cakefile
Original file line number Diff line number Diff line change
Expand Up @@ -182,18 +182,10 @@ buildDocs = (watch = no) ->

# Helpers
releaseHeader = (date, version, prevVersion) ->
monthNames = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']

formatDate = (date) ->
date.replace /^(\d\d\d\d)-(\d\d)-(\d\d)$/, (match, $1, $2, $3) ->
"#{monthNames[$2 - 1]} #{+$3}, #{$1}"

"""
<div class="anchor" id="#{version}"></div>
<h2 class="header">
#{prevVersion and "<a href=\"https://github.com/jashkenas/coffeescript/compare/#{prevVersion}...#{version}\">#{version}</a>" or version}
<span class="timestamp"> &mdash; <time datetime="#{date}">#{formatDate date}</time></span>
</h2>
<h3>#{prevVersion and "<a href=\"https://github.com/jashkenas/coffeescript/compare/#{prevVersion}...#{version}\">#{version}</a>" or version}
<span class="timestamp"> &mdash; <time datetime="#{date}">#{date}</time></span>
</h3>
"""

codeFor = require "./documentation/site/code.coffee"
Expand Down Expand Up @@ -224,7 +216,7 @@ buildDocs = (watch = no) ->
"<blockquote class=\"uneditable-code-block\">#{defaultFence.apply @, arguments}</blockquote>"

(file, bookmark) ->
md = fs.readFileSync "#{sectionsSourceFolder}/#{file}.md", 'utf-8'
md = fs.readFileSync "#{sectionsSourceFolder}/#{file.replace /\//g, path.sep}.md", 'utf-8'
md = md.replace /<%= releaseHeader %>/g, releaseHeader
md = md.replace /<%= majorVersion %>/g, majorVersion
md = md.replace /<%= fullVersion %>/g, CoffeeScript.VERSION
Expand Down
985 changes: 537 additions & 448 deletions docs/v2/index.html

Large diffs are not rendered by default.

750 changes: 0 additions & 750 deletions documentation/sections/changelog.md

Large diffs are not rendered by default.

5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.1.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2009-12-24', '0.1.0', '8e9d637985d2dc9b44922076ad54ffef7fa8e9c2')
```

Initial CoffeeScript release.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.1.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2009-12-24', '0.1.1', '0.1.0')
```

Added `instanceof` and `typeof` as operators.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.1.2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2009-12-24', '0.1.2', '0.1.1')
```

Fixed a bug with calling `super()` through more than one level of inheritance, with the re-addition of the `extends` keyword. Added experimental [Narwhal](http://narwhaljs.org/) support (as a Tusk package), contributed by [Tom Robinson](http://blog.tlrobinson.net/), including **bin/cs** as a CoffeeScript REPL and interpreter. New `--no-wrap` option to suppress the safety function wrapper.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.1.3.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2009-12-25', '0.1.3', '0.1.2')
```

The `coffee` command now includes `--interactive`, which launches an interactive CoffeeScript session, and `--run`, which directly compiles and executes a script. Both options depend on a working installation of Narwhal. The `aint` keyword has been replaced by `isnt`, which goes together a little smoother with `is`. Quoted strings are now allowed as identifiers within object literals: eg. `{"5+5": 10}`. All assignment operators now use a colon: `+:`, `-:`, `*:`, etc.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.1.4.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2009-12-25', '0.1.4', '0.1.3')
```

The official CoffeeScript extension is now `.coffee` instead of `.cs`, which properly belongs to [C#](https://en.wikipedia.org/wiki/C_Sharp_(programming_language)). Due to popular demand, you can now also use `=` to assign. Unlike JavaScript, `=` can also be used within object literals, interchangeably with `:`. Made a grammatical fix for chained function calls like `func(1)(2)(3)(4)`. Inheritance and super no longer use `__proto__`, so they should be IE-compatible now.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.1.5.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2009-12-26', '0.1.5', '0.1.4')
```

Array slice literals and array comprehensions can now both take Ruby-style ranges to specify the start and end. JavaScript variable declaration is now pushed up to the top of the scope, making all assignment statements into expressions. You can use `\` to escape newlines. The `coffeescript` command is now called `coffee`.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.1.6.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2009-12-27', '0.1.6', '0.1.5')
```

Bugfix for running `coffee --interactive` and `--run` from outside of the CoffeeScript directory. Bugfix for nested function/if-statements.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.2.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-01-05', '0.2.0', '0.1.6')
```

Major release. Significant whitespace. Better statement-to-expression conversion. Splats. Splice literals. Object comprehensions. Blocks. The existential operator. Many thanks to all the folks who posted issues, with special thanks to [Liam O’Connor-Davis](https://github.com/liamoc) for whitespace and expression help.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.2.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-01-05', '0.2.1', '0.2.0')
```

Arguments objects are now converted into real arrays when referenced.
10 changes: 10 additions & 0 deletions documentation/sections/changelog/0.2.2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
```
releaseHeader('2010-01-10', '0.2.2', '0.2.1')
```

When performing a comprehension over an object, use `ino`, instead of `in`, which helps us generate smaller, more efficient code at compile time.
Added `::` as a shorthand for saying `.prototype.`
The “splat” symbol has been changed from a prefix asterisk `*`, to a postfix ellipsis `...`
Added JavaScript’s `in` operator, empty `return` statements, and empty `while` loops.
Constructor functions that start with capital letters now include a safety check to make sure that the new instance of the object is returned.
The `extends` keyword now functions identically to `goog.inherits` in Google’s Closure Library.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.2.3.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-01-11', '0.2.3', '0.2.2')
```

Axed the unsatisfactory `ino` keyword, replacing it with `of` for object comprehensions. They now look like: `for prop, value of object`.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.2.4.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-01-12', '0.2.4', '0.2.3')
```

Added ECMAScript Harmony style destructuring assignment, for dealing with extracting values from nested arrays and objects. Added indentation-sensitive heredocs for nicely formatted strings or chunks of code.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.2.5.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-01-13', '0.2.5', '0.2.4')
```

The conditions in switch statements can now take multiple values at once — If any of them are true, the case will run. Added the long arrow `==>`, which defines and immediately binds a function to `this`. While loops can now be used as expressions, in the same way that comprehensions can. Splats can be used within pattern matches to soak up the rest of an array.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.2.6.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-01-17', '0.2.6', '0.2.5')
```

Added Python-style chained comparisons, the conditional existence operator `?=`, and some examples from _Beautiful Code_. Bugfixes relating to statement-to-expression conversion, arguments-to-array conversion, and the TextMate syntax highlighter.
10 changes: 10 additions & 0 deletions documentation/sections/changelog/0.3.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
```
releaseHeader('2010-01-26', '0.3.0', '0.2.6')
```

CoffeeScript 0.3 includes major syntax changes:
The function symbol was changed to `->`, and the bound function symbol is now `=>`.
Parameter lists in function definitions must now be wrapped in parentheses.
Added property soaking, with the `?.` operator.
Made parentheses optional, when invoking functions with arguments.
Removed the obsolete block literal syntax.
6 changes: 6 additions & 0 deletions documentation/sections/changelog/0.3.2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
```
releaseHeader('2010-02-08', '0.3.2', '0.3.0')
```

`@property` is now a shorthand for `this.property`.
Switched the default JavaScript engine from Narwhal to Node.js. Pass the `--narwhal` flag if you’d like to continue using it.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.5.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-02-21', '0.5.0', '0.3.2')
```

CoffeeScript 0.5.0 is a major release, While there are no language changes, the Ruby compiler has been removed in favor of a self-hosting compiler written in pure CoffeeScript.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.5.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-02-24', '0.5.1', '0.5.0')
```

Improvements to null soaking with the existential operator, including soaks on indexed properties. Added conditions to `while` loops, so you can use them as filters with `when`, in the same manner as comprehensions.
6 changes: 6 additions & 0 deletions documentation/sections/changelog/0.5.2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
```
releaseHeader('2010-02-25', '0.5.2', '0.5.1')
```

Added a compressed version of the compiler for inclusion in web pages as
`/v<%= majorVersion %>/browser-compiler/coffeescript.js`. It’ll automatically run any script tags with type `text/coffeescript` for you. Added a `--stdio` option to the `coffee` command, for piped-in compiles.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.5.3.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-02-27', '0.5.3', '0.5.2')
```

CoffeeScript now has a syntax for defining classes. Many of the core components (Nodes, Lexer, Rewriter, Scope, Optparse) are using them. Cakefiles can use `optparse.coffee` to define options for tasks. `--run` is now the default flag for the `coffee` command, use `--compile` to save JavaScripts. Bugfix for an ambiguity between RegExp literals and chained divisions.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.5.4.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-03-03', '0.5.4', '0.5.3')
```

Bugfix that corrects the Node.js global constants `__filename` and `__dirname`. Tweaks for more flexible parsing of nested function literals and improperly-indented comments. Updates for the latest Node.js API.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.5.5.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-03-08', '0.5.5', '0.5.4')
```

String interpolation, contributed by [Stan Angeloff](https://github.com/StanAngeloff). Since `--run` has been the default since **0.5.3**, updating `--stdio` and `--eval` to run by default, pass `--compile` as well if you’d like to print the result.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.5.6.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-03-23', '0.5.6', '0.5.5')
```

Interpolation can now be used within regular expressions and heredocs, as well as strings. Added the `<-` bind operator. Allowing assignment to half-expressions instead of special `||=`-style operators. The arguments object is no longer automatically converted into an array. After requiring `coffeescript`, Node.js can now directly load `.coffee` files, thanks to **registerExtension**. Multiple splats can now be used in function calls, arrays, and pattern matching.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.6.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-04-03', '0.6.0', '0.5.6')
```

Trailing commas are now allowed, a-la Python. Static properties may be assigned directly within class definitions, using `@property` notation.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.6.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-04-12', '0.6.1', '0.6.0')
```

Upgraded CoffeeScript for compatibility with the new Node.js **v0.1.90** series.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.6.2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-05-15', '0.6.2', '0.6.1')
```

The `coffee` command will now preserve directory structure when compiling a directory full of scripts. Fixed two omissions that were preventing the CoffeeScript compiler from running live within Internet Explorer. There’s now a syntax for block comments, similar in spirit to CoffeeScript’s heredocs. ECMA Harmony DRY-style pattern matching is now supported, where the name of the property is the same as the name of the value: `{name, length}: func`. Pattern matching is now allowed within comprehension variables. `unless` is now allowed in block form. `until` loops were added, as the inverse of `while` loops. `switch` statements are now allowed without switch object clauses. Compatible with Node.js **v0.1.95**.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.7.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-06-28', '0.7.0', '0.6.2')
```

Official CoffeeScript variable style is now camelCase, as in JavaScript. Reserved words are now allowed as object keys, and will be quoted for you. Range comprehensions now generate cleaner code, but you have to specify `by -1` if you’d like to iterate downward. Reporting of syntax errors is greatly improved from the previous release. Running `coffee` with no arguments now launches the REPL, with Readline support. The `<-` bind operator has been removed from CoffeeScript. The `loop` keyword was added, which is equivalent to a `while true` loop. Comprehensions that contain closures will now close over their variables, like the semantics of a `forEach`. You can now use bound function in class definitions (bound to the instance). For consistency, `a in b` is now an array presence check, and `a of b` is an object-key check. Comments are no longer passed through to the generated JavaScript.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.7.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-07-11', '0.7.1', '0.7.0')
```

Block-style comments are now passed through and printed as JavaScript block comments – making them useful for licenses and copyright headers. Better support for running coffee scripts standalone via hashbangs. Improved syntax errors for tokens that are not in the grammar.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.7.2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-07-12', '0.7.2', '0.7.1')
```

Quick bugfix (right after 0.7.1) for a problem that prevented `coffee` command-line options from being parsed in some circumstances.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.9.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-08-04', '0.9.0', '0.7.2')
```

The CoffeeScript **0.9** series is considered to be a release candidate for **1.0**; let’s give her a shakedown cruise. **0.9.0** introduces a massive backwards-incompatible change: Assignment now uses `=`, and object literals use `:`, as in JavaScript. This allows us to have implicit object literals, and YAML-style object definitions. Half assignments are removed, in favor of `+=`, `or=`, and friends. Interpolation now uses a hash mark `#` instead of the dollar sign `$` — because dollar signs may be part of a valid JS identifier. Downwards range comprehensions are now safe again, and are optimized to straight for loops when created with integer endpoints. A fast, unguarded form of object comprehension was added: `for all key, value of object`. Mentioning the `super` keyword with no arguments now forwards all arguments passed to the function, as in Ruby. If you extend class `B` from parent class `A`, if `A` has an `extended` method defined, it will be called, passing in `B` — this enables static inheritance, among other things. Cleaner output for functions bound with the fat arrow. `@variables` can now be used in parameter lists, with the parameter being automatically set as a property on the object — useful in constructors and setter functions. Constructor functions can now take splats.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.9.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-08-11', '0.9.1', '0.9.0')
```

Bugfix release for **0.9.1**. Greatly improves the handling of mixed implicit objects, implicit function calls, and implicit indentation. String and regex interpolation is now strictly `#{ … }` (Ruby style). The compiler now takes a `--require` flag, which specifies scripts to run before compilation.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.9.2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-08-23', '0.9.2', '0.9.1')
```

Specifying the start and end of a range literal is now optional, eg. `array[3..]`. You can now say `a not instanceof b`. Fixed important bugs with nested significant and non-significant indentation (Issue #637). Added a `--require` flag that allows you to hook into the `coffee` command. Added a custom `jsl.conf` file for our preferred JavaScriptLint setup. Sped up Jison grammar compilation time by flattening rules for operations. Block comments can now be used with JavaScript-minifier-friendly syntax. Added JavaScript’s compound assignment bitwise operators. Bugfixes to implicit object literals with leading number and string keys, as the subject of implicit calls, and as part of compound assignment.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.9.3.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-09-16', '0.9.3', '0.9.2')
```

CoffeeScript `switch` statements now compile into JS `switch` statements — they previously compiled into `if/else` chains for JavaScript 1.3 compatibility. Soaking a function invocation is now supported. Users of the RubyMine editor should now be able to use `--watch` mode.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.9.4.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-09-21', '0.9.4', '0.9.3')
```

CoffeeScript now uses appropriately-named temporary variables, and recycles their references after use. Added `require.extensions` support for **Node.js 0.3**. Loading CoffeeScript in the browser now adds just a single `CoffeeScript` object to global scope. Fixes for implicit object and block comment edge cases.
7 changes: 7 additions & 0 deletions documentation/sections/changelog/0.9.5.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
```
releaseHeader('2010-11-21', '0.9.5', '0.9.4')
```

0.9.5 should be considered the first release candidate for CoffeeScript 1.0. There have been a large number of internal changes since the previous release, many contributed from **satyr**’s [Coco](https://github.com/satyr/coco) dialect of CoffeeScript. Heregexes (extended regexes) were added. Functions can now have default arguments. Class bodies are now executable code. Improved syntax errors for invalid CoffeeScript. `undefined` now works like `null`, and cannot be assigned a new value. There was a precedence change with respect to single-line comprehensions: `result = i for i in list`
used to parse as `result = (i for i in list)` by default … it now parses as
`(result = i) for i in list`.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/0.9.6.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-12-06', '0.9.6', '0.9.5')
```

The REPL now properly formats stacktraces, and stays alive through asynchronous exceptions. Using `--watch` now prints timestamps as files are compiled. Fixed some accidentally-leaking variables within plucked closure-loops. Constructors now maintain their declaration location within a class body. Dynamic object keys were removed. Nested classes are now supported. Fixes execution context for naked splatted functions. Bugfix for inversion of chained comparisons. Chained class instantiation now works properly with splats.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/1.0.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2010-12-24', '1.0.0', '0.9.6')
```

CoffeeScript loops no longer try to preserve block scope when functions are being generated within the loop body. Instead, you can use the `do` keyword to create a convenient closure wrapper. Added a `--nodejs` flag for passing through options directly to the `node` executable. Better behavior around the use of pure statements within expressions. Fixed inclusive slicing through `-1`, for all browsers, and splicing with arbitrary expressions as endpoints.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/1.0.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2011-01-31', '1.0.1', '1.0.0')
```

Fixed a lexer bug with Unicode identifiers. Updated REPL for compatibility with Node.js 0.3.7\. Fixed requiring relative paths in the REPL. Trailing `return` and `return undefined` are now optimized away. Stopped requiring the core Node.js `util` module for back-compatibility with Node.js 0.2.5\. Fixed a case where a conditional `return` would cause fallthrough in a `switch` statement. Optimized empty objects in destructuring assignment.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/1.1.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2011-05-01', '1.1.0', '1.0.1')
```

When running via the `coffee` executable, `process.argv` and friends now report `coffee` instead of `node`. Better compatibility with **Node.js 0.4.x** module lookup changes. The output in the REPL is now colorized, like Node’s is. Giving your concatenated CoffeeScripts a name when using `--join` is now mandatory. Fix for lexing compound division `/=` as a regex accidentally. All `text/coffeescript` tags should now execute in the order they’re included. Fixed an issue with extended subclasses using external constructor functions. Fixed an edge-case infinite loop in `addImplicitParentheses`. Fixed exponential slowdown with long chains of function calls. Globals no longer leak into the CoffeeScript REPL. Splatted parameters are declared local to the function.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/1.1.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2011-05-10', '1.1.1', '1.1.0')
```

Bugfix release for classes with external constructor functions, see issue #1182.
5 changes: 5 additions & 0 deletions documentation/sections/changelog/1.1.2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
```
releaseHeader('2011-08-04', '1.1.2', '1.1.1')
```

Fixes for block comment formatting, `?=` compilation, implicit calls against control structures, implicit invocation of a try/catch block, variadic arguments leaking from local scope, line numbers in syntax errors following heregexes, property access on parenthesized number literals, bound class methods and super with reserved names, a REPL overhaul, consecutive compiled semicolons, block comments in implicitly called objects, and a Chrome bug.
Loading