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
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
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
Demian Ferreiro
c0d1f22487
Add test for compiler errors on require()d files
2013-03-21 03:11:31 -03:00
Hao-kang Den
b2d6997eff
encode unicode src, test added
2013-03-21 09:04:23 +08:00
Jeremy Ashkenas
78d10f30a0
removing sourceColumn reset
2013-03-18 21:50:40 +08:00
Jeremy Ashkenas
6786bab2ba
Big refactor of SourceMap class. Literate CoffeeScript. Purdy.
2013-03-18 19:23:05 +08:00
Jeremy Ashkenas
4f815ea978
Fixes #2737 , fix fork() for both .js and .coffee, revised.
2013-03-18 11:46:54 +08:00
Jeremy Ashkenas
2f5b11b295
Fixes #2555
2013-03-17 19:27:16 +08:00
Marc Häfner
44c2b4aa7f
Test case for literal mode: Code blocks must be preceded by blank line.
2013-03-15 03:23:09 +01:00
Demian Ferreiro
45bcd9fa2f
Keep REPL running on runtime errors
2013-03-11 23:58:00 -03:00
Michael Ficarra
20d98c7106
@epidemian typo
2013-03-11 21:48:21 -05:00
Demian Ferreiro
119ec16e5e
Add REPL scoping tests
2013-03-11 20:16:48 -03:00
Demian Ferreiro
f0fcf4aee0
Merge branch 'master' of git://github.com/jashkenas/coffee-script into improved-error-messages
...
Conflicts:
lib/coffee-script/coffee-script.js
lib/coffee-script/command.js
lib/coffee-script/helpers.js
lib/coffee-script/lexer.js
lib/coffee-script/nodes.js
lib/coffee-script/repl.js
src/coffee-script.coffee
src/command.coffee
src/helpers.coffee
src/lexer.coffee
src/nodes.coffee
test/helpers.coffee
2013-03-10 20:29:36 -03:00
Jeremy Ashkenas
dbb99f31a7
Reverting #2490
2013-03-10 07:21:00 +08:00
Jeremy Ashkenas
13fae12f69
Fixes #2490 -- adding guard-style if blocks
2013-03-09 10:40:37 +08:00
Jason Walton
c4f50b52d7
Merge remote-tracking branch 'upstream/master'
...
Conflicts:
lib/coffee-script/helpers.js
test/helpers.coffee
2013-03-08 10:17:47 -05:00
Jason Walton
242f397bfa
Remove dead variables.
2013-03-07 21:30:04 -05:00
Jason Walton
f85d19b459
Rework API for sourcemap filenames and paths.
2013-03-07 21:26:09 -05:00
Jeremy Ashkenas
8f7f3627e0
Fixes #2796 , by adding a test for it.
2013-03-07 23:13:22 +13:00
Jeremy Ashkenas
8b134cf348
Add an additonal test, courtesy @matehat
2013-03-07 23:10:39 +13:00
Jeremy Ashkenas
67de35ff29
Fixes #2781 , fixes #2782 . Reverting to old method of instance method binding.
2013-03-07 23:09:32 +13:00
Jeremy Ashkenas
774ee6a554
merge
2013-03-07 22:59:23 +13:00
Fahad Ibnay Heylaal
18fec7e202
tests for baseFileName helper for files with only coffee-script extensions as the file name.
2013-03-07 10:23:36 +06:00