Skip to content

Commit 519248f

Browse files
2.7.0 (#5412)
1 parent 6b4f166 commit 519248f

File tree

23 files changed

+48
-26
lines changed

23 files changed

+48
-26
lines changed

docs/v2/browser-compiler-legacy/coffeescript.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/v2/browser-compiler-modern/coffeescript.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/v2/index.html

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -703,7 +703,7 @@
703703
<section id="introduction">
704704
<p><strong>CoffeeScript is a little language that compiles into JavaScript.</strong> Underneath that awkward Java-esque patina, JavaScript has always had a gorgeous heart. CoffeeScript is an attempt to expose the good parts of JavaScript in a simple way.</p>
705705
<p>The golden rule of CoffeeScript is: <em>“It’s just JavaScript.”</em> The code compiles one-to-one into the equivalent JS, and there is no interpretation at runtime. You can use any existing JavaScript library seamlessly from CoffeeScript (and vice-versa). The compiled output is readable, pretty-printed, and tends to run as fast or faster than the equivalent handwritten JavaScript.</p>
706-
<p><strong>Latest Version:</strong> <a href="https://github.com/jashkenas/coffeescript/tarball/2.6.1">2.6.1</a></p>
706+
<p><strong>Latest Version:</strong> <a href="https://github.com/jashkenas/coffeescript/tarball/2.7.0">2.7.0</a></p>
707707
<blockquote class="uneditable-code-block"><pre><code class="language-bash"><span class="comment"># Install locally for a project:</span>
708708
npm install --save-dev coffeescript
709709

@@ -5037,7 +5037,7 @@ <h2>Web Chat (IRC)</h2>
50375037
</section>
50385038
<section id="annotated-source">
50395039
<h2>Annotated Source</h2>
5040-
<p>You can browse the CoffeeScript 2.6.1 source in readable, annotated form <a href="annotated-source/">here</a>. You can also jump directly to a particular source file:</p>
5040+
<p>You can browse the CoffeeScript 2.7.0 source in readable, annotated form <a href="annotated-source/">here</a>. You can also jump directly to a particular source file:</p>
50415041
<ul>
50425042
<li><a href="annotated-source/grammar.html">Grammar Rules — src/grammar</a></li>
50435043
<li><a href="annotated-source/lexer.html">Lexing Tokens — src/lexer</a></li>
@@ -5715,6 +5715,17 @@ <h3>Argument parsing and shebang (<code>#!</code>) lines</h3>
57155715
<section id="changelog">
57165716
<h2>Changelog</h2>
57175717

5718+
<section id="2.7.0">
5719+
<h3><a href="https://github.com/jashkenas/coffeescript/compare/2.6.1...2.7.0">2.7.0</a>
5720+
<span class="timestamp"> &mdash; <time datetime="2022-04-23">2022-04-23</time></span>
5721+
</h3><ul>
5722+
<li>The <a href="https://github.com/tc39/proposal-import-assertions">import assertions syntax</a> is now supported. This allows statements like <code>export { version } from './package.json' assert { type: 'json' }</code> or expressions like <code>import('./calendar.json', { assert { type: 'json' } })</code>.</li>
5723+
<li>CoffeeScript no longer always patches Node’s error stack traces. This patching, where the line and column numbers are adjusted to match the source CoffeeScript rather than the generated JavaScript, caused conflicts with other libraries and is unnecessary when Node’s new <a href="https://nodejs.org/docs/latest/api/cli.html#--enable-source-maps"><code>--enable-source-maps</code> flag</a> is passed. The patching will now occur only when <code>--enable-source-maps</code> is not set, no other library has already patched the stack traces, and <code>require('coffeescript/register')</code> is used. The patching can be enabled explicitly via <code>require('coffeescript').patchStackTrace()</code> or <code>import { patchStackTrace } from 'coffeescript'; patchStackTrace()</code>.</li>
5724+
<li>Bugfix for an issue where block (triple-quoted) strings weren’t getting transpiled correctly into a JSX expression container wrapping the template literal (such as <code>&lt;div a={`...`} /&gt;</code>).</li>
5725+
<li>Bugfixes for line continuations not behaving as expected for a nonempty first line of an explicit <code>[</code> array or <code>{</code> object literal.</li>
5726+
</ul>
5727+
5728+
</section>
57185729
<section id="2.6.1">
57195730
<h3><a href="https://github.com/jashkenas/coffeescript/compare/2.6.0...2.6.1">2.6.1</a>
57205731
<span class="timestamp"> &mdash; <time datetime="2021-10-03">2021-10-03</time></span>
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
```
2+
releaseHeader('2022-04-23', '2.7.0', '2.6.1')
3+
```
4+
5+
* The [import assertions syntax](https://github.com/tc39/proposal-import-assertions) is now supported. This allows statements like `export { version } from './package.json' assert { type: 'json' }` or expressions like `import('./calendar.json', { assert { type: 'json' } })`.
6+
* CoffeeScript no longer always patches Node’s error stack traces. This patching, where the line and column numbers are adjusted to match the source CoffeeScript rather than the generated JavaScript, caused conflicts with other libraries and is unnecessary when Node’s new [`--enable-source-maps` flag](https://nodejs.org/docs/latest/api/cli.html#--enable-source-maps) is passed. The patching will now occur only when `--enable-source-maps` is not set, no other library has already patched the stack traces, and `require('coffeescript/register')` is used. The patching can be enabled explicitly via `require('coffeescript').patchStackTrace()` or `import { patchStackTrace } from 'coffeescript'; patchStackTrace()`.
7+
* Bugfix for an issue where block (triple-quoted) strings weren’t getting transpiled correctly into a JSX expression container wrapping the template literal (such as ``<div a={`...`} />``).
8+
* Bugfixes for line continuations not behaving as expected for a nonempty first line of an explicit `[` array or `{` object literal.

documentation/site/body.html

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,9 @@
225225
</section>
226226
<section id="changelog">
227227
<%= htmlFor('changelog') %>
228+
<section id="2.7.0">
229+
<%= htmlFor('changelog/2.7.0') %>
230+
</section>
228231
<section id="2.6.1">
229232
<%= htmlFor('changelog/2.6.1') %>
230233
</section>

lib/coffeescript-browser-compiler-legacy/coffeescript.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/coffeescript-browser-compiler-modern/coffeescript.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/coffeescript/browser.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/coffeescript/cake.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/coffeescript/coffeescript.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)