Jeremy Ashkenas
f26d33d418
Merge pull request #4079 from lydell/v1.10.0
...
CoffeeScript 1.10.0
1.10.0
2015-09-03 15:45:13 -04:00
Simon Lydell
cea773ec81
CoffeeScript 1.10.0
2015-09-03 20:10:18 +02:00
Jeremy Ashkenas
98dd1bf8e8
Merge pull request #4073 from lydell/issue-3926
...
Fix #3926 : Disallow implicit objects as parameter destructuring
2015-09-01 15:03:29 -04:00
Jeremy Ashkenas
56d75baac7
Merge pull request #4075 from lydell/documentation-improvements
...
Documentation improvements
2015-09-01 13:16:55 -04:00
Simon Lydell
0872c3d13d
Git rid of the deprecated <tt> tag in the docs
...
Replaced with `<code>` tags.
2015-08-30 12:41:47 +02:00
Simon Lydell
5095e02b62
Remove unnecessary blank lines at EOF in examples
...
On less wide screens, where the CoffeeScript is above the JavaScript, those
lines resulted in an unnecessarily high box of CoffeeScript code.
2015-08-30 12:41:47 +02:00
Simon Lydell
874628b1d0
Improve the documentation site on smaller screens
...
"Smaller screens" means screens smaller than 820px wide. That's the smallest
width that the current design looks good at.
I tried to not change the current design in any way and to make as few changes
as possible.
This is what happens on smaller screens:
- The navigation bar is no longer fixed to the viewport, but always at the top
of the page.
- The navigation bar is vertical rather than horizontal.
- CoffeeScript code is above the compiled JavaScript rather than having them
side by side.
This allows for a larger text size, which is more compfortable to read, and no
horizontal scrolling, which many find difficult to use.
2015-08-30 12:41:36 +02:00
Michael Ficarra
ff9d5117f9
Merge pull request #4074 from lydell/destructuring-defaults-docs
...
Document destructuring defaults
2015-08-29 10:33:44 -07:00
Simon Lydell
10aca2a38e
Document destructuring defaults
2015-08-29 19:18:44 +02:00
Simon Lydell
2c4d437e98
Fix #3926 : Disallow implicit objects as parameter destructuring
2015-08-28 23:11:47 +02:00
Jeremy Ashkenas
c0c13c1977
Merge pull request #4069 from lydell/destructuring-defaults
...
Implement ES2015-like destructuring defaults
2015-08-27 17:50:33 -04:00
Simon Lydell
6d9553a016
Implement ES2015-like destructuring defaults
...
This let's you do things like:
fullName = ({first = 'John', last = 'Doe'}) -> "#{first} #{last}"
Note: CoffeeScrits treats `undefined` and `null` the same, and that's true in
the case of destructuring defaults as well, as opposed to ES2015 which only uses
the default value if the target is `undefined`. A similar ES2015 difference
already exists for function parameter defaults. It is important for CoffeeScript
to be consistent with itself.
fullName2 = (first = 'John', last = 'Doe') -> "#{first} #{last}"
assert fullName('Bob', null) is fullName2(first: 'Bob', last: null)
Fixes #1558 , #3288 and #4005 .
2015-08-27 22:16:13 +02:00
Jeremy Ashkenas
66716cd730
Merge pull request #4071 from lydell/lone-expansion
...
Fix #4070 : Improve error message for lone expansion
2015-08-27 13:09:54 -04:00
Simon Lydell
f588ecb288
Fix #4070 : Improve error message for lone expansion
2015-08-26 22:30:55 +02:00
Michael Ficarra
dc3e177811
Merge pull request #4068 from lydell/issue-1192
...
Fix #1192 : Assignment starting with object literals
2015-08-22 07:24:23 -07:00
Simon Lydell
2eef667916
Fix #1192 : Assignment starting with object literals
2015-08-22 16:21:35 +02:00
Jeremy Ashkenas
617a932e89
Merge pull request #4059 from BrunoBernardino/hotfix/4036-try-variable-improvement
...
Closes #4036 : "Try catch" optimisation
2015-08-19 14:33:11 -04:00
Bruno Bernardino
beac56d4d5
Updated compile
2015-08-16 21:34:22 +01:00
Bruno Bernardino
cc98e99070
Removing unnecessary assignment
2015-08-16 21:33:58 +01:00
Bruno Bernardino
93e4eeafed
Removing the unnecessary underscore now :)
2015-08-16 21:32:16 +01:00
Bruno Bernardino
efdc67241a
Improved the tests and removed the hardcoded variable, according to suggestions.
2015-08-16 21:27:28 +01:00
Bruno Bernardino
24e8f1c98f
Closes #4036 : "Try catch" optimisation
...
Let me know if there's something I should be doing differently as this is my first contribution to coffeescript.
I fixed the reported issue where a generated variable could clash with a user-defined one in a try/catch block.
I added a test for a few scenarios with different variable names for a try/catch, to confirm the fix and avoid regressions.
2015-08-16 20:47:04 +01:00
Michael Ficarra
2d1a6fa6ec
Merge pull request #4029 from yjerem/reset-seenfor
...
Reset @seenFor in lexer before tokenizing
2015-07-07 21:31:23 -07:00
Jeremy Ruten
3d7d68a766
Reset @seenFor in lexer before tokenizing
2015-07-07 22:23:26 -06:00
Michael Ficarra
342b395b0a
Merge pull request #4019 from rvagg/master
...
Don't copy arguments or caller from require
2015-06-22 06:33:07 -07:00
Rod Vagg
75ae45e2bb
don't copy arguments or caller from require
...
causes an error in io.js where strict-mode is set on internal modules
Fixes: https://github.com/jashkenas/coffeescript/issues/3810
2015-06-22 22:51:39 +10:00
Michael Ficarra
1f197fcc1b
Merge pull request #3985 from ide/array-check
...
Replace "instanceof Array" in transformer with "[object Array]" comparison
2015-06-05 09:40:02 -07:00
Jeremy Ashkenas
e339f5f2da
correct release date
2015-05-27 13:04:12 -04:00
Jeremy Ashkenas
c37f284771
redoc
1.9.3
2015-05-27 11:57:31 -04:00
Jeremy Ashkenas
585298dc17
Merge pull request #3980 from lydell/v1.9.3
...
CoffeeScript 1.9.3
2015-05-27 11:51:32 -04:00
James Ide
2087923163
Replace "instanceof Array" in transformer with "[object Array]" comparison
...
Testing with `'[object Array]' is Object::toString.call element` allows arrays from another JS context to be properly handled. The specific use case here is to support jest, which sets up JS contexts using Node/io.js's "vm" module. This approach works in ES3 environments in contrast with ES5's `Array.isArray`.
2015-05-20 21:06:36 -07:00
Simon Lydell
b58772e8a7
CoffeeScript 1.9.3
2015-05-14 11:24:39 +02:00
Michael Ficarra
769f02ec05
Merge pull request #3979 from lydell/herecomments-formatting
...
Fix formatting of `#`-only lines in herecomments
2015-05-13 09:02:34 -07:00
Simon Lydell
52b1749d57
Fix formatting of #-only lines in herecomments
...
Before:
$ ./bin/coffee -bpe '###
> # paragraph 1
> #
> # paragraph 2
> ###'
/*
* paragraph 1
#
* paragraph 2
*/
After:
$ ./bin/coffee -bpe '###
# paragraph 1
#
# paragraph 2
###'
/*
* paragraph 1
*
* paragraph 2
*/
This does not re-break #3638 :
$ ./bin/coffee -bpe '###
> #/
> ###'
/*
#/
*/
2015-05-13 17:50:09 +02:00
Simon Lydell
ba85a38cb0
Commit compiled code that should have been in commit 378a04e4
2015-05-13 17:50:02 +02:00
Michael Ficarra
c0d44b1abd
Merge pull request #3966 from davidbau/simplesourcemaps
...
Fix #3965 , sourcemaps for bare programs.
2015-05-08 07:52:58 -07:00
Michael Ficarra
0262322400
Merge pull request #3974 from carlsmith/issue3958
...
Improved try/catch/finally to explain the options better.
2015-05-02 09:06:49 -07:00
Carl Smith
8e8f6d13bd
Improved try/catch/finally to explain the options better.
2015-05-01 22:38:25 +01:00
Michael Ficarra
b6667f0735
Merge pull request #3970 from lydell/docs
...
Document a few undocumented things
2015-05-01 08:12:53 -07:00
Simon Lydell
99ea1c7a39
Document a for [b..c]
2015-05-01 17:01:05 +02:00
Simon Lydell
27fd65390a
Document yield from and yield return
...
Fixes #3825 .
2015-05-01 17:01:05 +02:00
Simon Lydell
79a6d89849
Document interpolation in object keys
...
Fixes #3962 .
2015-05-01 17:01:05 +02:00
Simon Lydell
6fb5833843
Improve modulo documentation
...
Fixes #3959 .
2015-05-01 17:00:58 +02:00
Simon Lydell
5494ac13ee
Document extra try/catch features
...
Fixes #3958 .
2015-05-01 16:59:34 +02:00
Michael Ficarra
300faf401c
Merge pull request #3968 from lydell/nodes-tokens-errors
...
Fix `CoffeeScript.nodes(tokens)`; fix the repl
2015-05-01 07:51:17 -07:00
Michael Ficarra
f2c6066103
Merge pull request #3967 from lydell/implicit-call-implicit-obj
...
Fix #3935 : Implicit calls + obj key interpolation
2015-05-01 07:48:59 -07:00
Michael Ficarra
2a5320fd2b
Merge pull request #3969 from lydell/alias-origin
...
Save alias names in the origin of tokens
2015-05-01 07:41:14 -07:00
Simon Lydell
36695540fc
Save alias names in the origin of tokens
...
... and use it for "reserved word can't be assigned" errors. Fixes #2306 .
2015-05-01 14:33:11 +02:00
Simon Lydell
fc0c4fdd5f
Fix CoffeeScript.nodes(tokens); fix the repl
...
If you passed an array of tokens (as opposed to a string of code) to
`CoffeeScript.nodes`, its attempts to prettify error messages would break. Now
it does not attempt to prettify error messages in that case anymore (because it
is not possible to prettify the errors without a string of code).
The repl was affected by the above bug.
Fixes #3887 .
2015-05-01 13:43:04 +02:00
Simon Lydell
ebc172d1ee
Fix #3935 : Implicit calls + obj key interpolation
...
Allow implicit calls when the first key of an implicit object has interpolation.
2015-05-01 12:02:03 +02:00