Andreas Lubbe
9d29a830df
entire generator test file is now ignored if generators are not available
2013-11-30 12:26:32 -08:00
Andreas Lubbe
74a92db173
improved readability of generator test
2013-11-30 11:45:19 -08:00
Andreas Lubbe
7906a2b6c1
removed yield from the reserved words
2013-11-29 20:58:43 -08:00
Andreas Lubbe
f11ca9888f
added a test for generators
2013-11-29 20:58:26 -08:00
Marc Häfner
592aa33577
Fixes #2367 -- super in for-loop
2013-11-15 06:35:04 +01:00
Marc Häfner
aea0f2533b
Fixes #3232 -- Tag all class properties static
...
(and remove duplicate `context` assigment)
2013-11-15 03:44:26 +01:00
Marc Häfner
138c25fe5f
Cleanup and extend METHOD_DEF
...
* Fixes #2949 : Detect reserved names (not only for instance methods)
* Don't assign names which might result in incorrect `super` calls
2013-11-12 16:53:09 +01:00
Marc Häfner
1df8abf1cb
Refactor closure compilation
...
* Break up `Closure` and merge `Closure.wrap` into `Base.compileClosure`
* Construct class closure directly in `Class.compileNode`
* Reuse `isLiteralArguments` in `Range.compileArray`
* Move all helpers to bottom of file
* Add test for #3063
2013-10-31 23:25:11 +01:00
Marc Häfner
9ba1d41ec8
Fix: __extends helper above directive prologue
2013-10-26 06:54:54 +02:00
Marc Häfner
fa76e2dd21
Escapable linebreaks in heregexes
2013-10-24 00:36:46 +02:00
Marc Häfner
91ac3fa031
Escaped whitespace and slashes in Heregexes
...
* Resolves #3059 : Don't remove escaped whitespace.
* Fixes #2238 : Prevent escaping slashes that are already escaped.
* Fix detection of end of heregex with escaped slashes.
2013-10-22 18:08:17 +02:00
Jeremy Ashkenas
351c875576
merged in stricter noncallables
2013-10-20 18:49:30 -03:00
Marc Häfner
4cc2c305a4
Fixes #2181 -- conditional assignment as subexpression
...
* Parenthesize compilation of `||=` and `&&=` (when needed).
* Fix variable caching for `?=`
2013-10-20 22:59:01 +02:00
Jeremy Ashkenas
d5a25d138d
Fixes #3089 -- don't mutate options passed in to compile()
2013-10-20 16:21:06 -03:00
Jeremy Ashkenas
a7ecd80c92
Merge pull request #3096 from marchaefner/issue2994
...
Disallow single-line `IF expr ELSE` without `THEN`
2013-10-20 12:13:39 -07:00
Stephan Jorek
89f5f9d59d
added more block-comment related tests for single-line block-comments and jsdoc-like @doctags-comments.
2013-09-17 18:09:15 +02:00
Caitlin Potter
1b7491d63d
Fixes #3132 - Improve rendering of block-comments
2013-08-23 20:53:18 -04:00
Demian Ferreiro
9e716b310d
Avoid using a getter for the compiler error's "stack" property
...
Instead, set the "stack" property manually when the error gets updated on re-throws.
2013-08-02 01:52:36 -03:00
Demian Ferreiro
2b4a37296f
Override the SyntaxError's "stack" property instead of deleting it
...
This makes the "stack" property more useful when it's shown on other Node.js applications that compile CoffeeScript (e.g. testing libraries) and should fix #3023 . A minimal example:
$ node -e 'require("coffee-script").compile("class class")'
/usr/lib/node_modules/coffee-script/lib/coffee-script/coffee-script.js:41
throw err;
^
[stdin]:1:7: error: unexpected CLASS
class class
^^^^^
2013-07-31 09:24:43 -03:00
Demian Ferreiro
3f9cdcf1fa
Change how error messages are shown
...
Instead of throwing the syntax errors with their source file location and needing to then catch them and call a `prettyErrorMessage` function in order to get the formatted error message, now syntax errors know how to pretty-print themselves (their `toString` method gets overridden).
An intermediate `catch` & re-`throw` is needed at the level of `CoffeeScript.compile` and friends. But the benefit of this approach is that now libraries that use the `CoffeeScript` object directly don't need to bother catching the possible compilation errors and calling a special function in order to get the nice error messages; they can just print the error itself (or let it bubble up) and the error will know how to pretty-print itself.
2013-07-31 08:27:49 -03:00
Marc Häfner
4342bedd2f
Fix multi-line if-else in single-line expression.
...
* When searching for the closing token of a single-line expression, ignore TERMINATORS that will subsequently be removed.
* Add a test.
2013-07-31 12:18:50 +02:00
Marc Häfner
fdd5796f5e
Disallow single-line IF expr ELSE without THEN
...
* Supplement missing block before `ELSE` token only for multi-line `if`.
* Don't prematurely remove `TERMINATOR` before `ELSE` (so we can differentiate single- and multi-line forms).
* Cleanup: Remove `WHEN` from `EXPRESSION_CLOSE`. (Only `LEADING_WHEN` tokens are preceded by a `TERMINATOR`.)
* Cleanup: Remove really old, inapplicable text from comment.
2013-07-30 19:31:46 +02:00
Marc Häfner
13024e6911
Fix path separator issues in tests.
2013-06-22 14:57:23 +02:00
Jeremy Ashkenas
7250fdd576
Merge pull request #3031 from alexgorbatchev/stack-trace-patch-optimizations-2
...
Stack trace patch optimizations
2013-06-16 02:37:33 -07:00
Marc Häfner
4fd5e9a3ab
Better handling of initial indent at file start.
...
* Detect initial indentation before the first token and enforce it.
* Don't add `INDENT` token (or the matching `OUTDENT, TERMINATOR`).
2013-06-14 00:28:45 +02:00
Alex Gorbatchev
3785996c44
Made stack patch test less brittle.
2013-06-13 13:50:05 -07:00
Alex Gorbatchev
3d761e73e3
Removed unnecessary source map generation during require() and made stack line number patching on by default.
2013-06-13 12:54:20 -07:00
Demian Ferreiro
8e90aaefc1
Merge branch 'master' into issue2849
...
Conflicts:
lib/coffee-script/coffee-script.js
src/coffee-script.coffee
2013-06-09 02:40:53 -03:00
Jeremy Ashkenas
2e408648aa
renaming import test files to avoid risking the disfavor of .gitignore
2013-06-02 10:57:18 +04:00
Jeremy Ashkenas
bd451800bf
Merge pull request #3000 from sgentle/require-extensions
...
Patch module.prototype.load to enable multiple extensions like .coffee.md
2013-06-01 21:44:02 -07:00
Michael Ficarra
0f5ae54014
Merge pull request #2930 from marchaefner/Issue1057
...
Fixes #1057 : Allow catch/finally in single line functions.
2013-05-31 14:56:04 -07:00
Jeremy Ashkenas
f038d0514a
Merge pull request #2984 from xixixao/literatetest
...
Fixes tabbed code test in literate
2013-05-26 04:08:01 -07:00
Nami-Doc
b3ffd25339
Disallowed for own in
2013-05-26 00:29:26 +02:00
Sam Gentle
46a0dc6dce
Didn't mean to commit testsymlink
2013-05-26 02:33:11 +10:00
Sam Gentle
e7d01b903f
New tests for module importing
2013-05-26 02:09:52 +10:00
Sam Gentle
9b1bdd4b36
Add test for .coffee.md loading
2013-05-25 23:06:44 +10:00
Michal Srb
fd47920c63
Fixes tabbed code test in literate
2013-05-15 10:30:20 +01:00
Marc Häfner
05b74f3743
Merge remote-tracking branch 'refs/remotes/upstream/master'
2013-04-29 05:27:13 +02:00
Marc Häfner
40d2761bd8
Fixes #2916 -- implicit calls with preceding herecomment
2013-04-28 10:30:03 +02:00
Michal Srb
e7ebdce60f
Fix #2953 . Method calls on splice endpoints
2013-04-23 05:42:37 +02:00
Michal Srb
fd61476106
Fix #1069 . Non-callable literals shouldn't compile
2013-04-23 04:28:45 +02:00
Nami-Doc
1917bb69ed
Fix #2944
2013-04-21 12:33:00 +02:00
Marc Häfner
69d66a1d4d
Fixes #1057 : Allow catch/finally in single line functions.
...
* Don't end single-line functions at `catch` or `finally`.
* Remove unused `IMPLICIT_BLOCK` and superfluous test for `IF`.
2013-04-15 20:20:52 +02:00
Marc Häfner
cf07fcb4b1
#2900 -- parameter-less catch clause.
...
Plus some minor cleanup after f8c6b494aa
2013-04-12 17:50:45 +02:00
Jeremy Ashkenas
170f311101
Merge branch 'master' of https://github.com/jashkenas/coffee-script
2013-04-06 09:31:30 +08:00
Jeremy Ashkenas
0cadcdc097
Fix regression with executable class bodies and prototypal attachment.
2013-04-06 09:31:24 +08:00
Jeremy Ashkenas
8be65dee93
Merge pull request #2886 from danielgtaylor/repl-history
...
Add history to the coffee interactive interpreter that persists between ...
2013-03-27 15:55:15 -07:00
Nami-Doc
53a5f26430
fix #2846
2013-03-25 18:56:24 +01:00
Daniel G. Taylor
a1ff4ae7b8
Use separate variable for fd used to read history file; use string interpolation to print code lines; do not use unit test to remove temporary file and instead use a process exit event handler
2013-03-25 09:49:59 -07:00
Daniel G. Taylor
3251efa9c6
Add unit test to read and run a line from the interpreter history file and remove the dummy history file after tests have completed.
2013-03-25 08:47:34 -07:00