1500 Commits

Author SHA1 Message Date
Adam Miskiewicz
c1960dbe02 Make Babel resolve plugins relative to where they were specified.
Given the following `.babelrc`:

```
{
  "plugins": ["./myPluginDir/somePlugin.js"]
}
```

Babel should resolve that plugin relative to the directory that contains the `.babelrc` file.

Currently, Babel is resolving the plugin relative to the current `process.cwd()`, as you can see in this test case: https://github.com/skevy/babel-plugin-resolution-test-case

This is occurring because the "fake" `Module` that we're creating in the `resolve` helper doesn't have an `id` and `filename`. Therefore, Node builds an array of paths that contains a number of node_module paths as well as `.`, and doesn't contain the path in which we'd actually like to look up the plugin. `.` of course resolves to the current `process.cwd()`, and thus makes the Babel plugin resolution mechanism quite fragile. The relevant code in Node.JS can be found here (tagged at the v5.4.1 release): ff99203724/lib/module.js (L236-L242).

This PR adds `id` and `filename` to that fake `Module` in order to resolve this issue.
2016-02-11 11:13:57 -05:00
Logan Smyth
ff2bf2642b Merge pull request #3326 from eetulatja/master
Fix spread to work with super method calls
2016-02-10 22:49:02 -07:00
Logan Smyth
b53864c569 Merge pull request #3334 from loganfsmyth/bind-callee-ref
Check BindExpression callee for reference - fixes T6984
2016-02-10 22:42:50 -07:00
Logan Smyth
18fd06cf4a Merge pull request #3332 from loganfsmyth/revert-prop-semi
Revert to standard ASI behavior for class properties
2016-02-10 22:40:44 -07:00
Logan Smyth
2f0c646364 Don't preferGlobal on the babel package. 2016-02-08 08:33:23 -08:00
Sebastian McKenzie
a0fdb77413 v6.5.1 2016-02-08 02:18:10 +00:00
Sebastian McKenzie
bc2f84f371 Fix API change that e7187faea64b64d65a17c57d6578903f1fff27d6 introduced that wasn't changed in babel-register. Also use an object rather than a long ass list of arguments. 2016-02-08 02:17:09 +00:00
Amjad Masad
ba40f6979b Merge pull request #3333 from loganfsmyth/improve-cli-error
Improve the error messaging for using the wrong CLI script.
2016-02-07 14:37:15 -08:00
Henry Zhu
24c759a229 Merge pull request #3329 from loganfsmyth/export-specifier-validator
Fix export specifier validator.
2016-02-07 09:27:09 -05:00
Logan Smyth
c67905ac93 Add tests for class property ASI. 2016-02-06 23:01:38 -08:00
Logan Smyth
b13be640fa Check BindExpression callee for reference - fixes T6984 2016-02-06 22:17:46 -08:00
Henry Zhu
f3fca16838 Merge pull request #3330 from loganfsmyth/recommend-nonglobal
Remove global install recommendation.
2016-02-06 22:19:41 -05:00
Logan Smyth
256cb18656 Improve the error messaging for using the wrong CLI script. 2016-02-06 19:09:14 -08:00
Logan Smyth
63b328ce87 Revert "babylon: throw parse error if class properties do not have a semicolon (fixes T6873)"
This reverts commit 976edfc06740e434d1d5b136e28996a77f909403.
2016-02-06 18:36:31 -08:00
Logan Smyth
89ae1dc258 Revert "babylon: fix error location for class properties with a missing semicolon"
This reverts commit f31099f383b52cf4fe1786188f6421529dea865b.
2016-02-06 18:36:22 -08:00
Henry Zhu
f9f8ad6eff v6.5.0 2016-02-06 19:06:41 -05:00
Logan Smyth
50e9016002 Remove global install recommendation. 2016-02-06 13:53:42 -08:00
Logan Smyth
ccf3875a67 Fix export specifier validator. 2016-02-06 13:49:34 -08:00
Eetu Latja
9d5184ffb2 Fix spread to work with super method calls 2016-02-06 19:31:42 +02:00
Amjad Masad
e24be1a051 Merge pull request #3305 from jviereck/T7052
Fix: Arrow functions with trailing comma + return type are throwing an error when parsing
2016-02-05 13:50:57 -08:00
Henry Zhu
4e619db873 Merge pull request #3324 from zjmiller/master
Parenthize "in" in for-loop init, even when init has nested for-loop
2016-02-05 15:50:11 -05:00
Henry Zhu
a757e26005 Merge pull request #3312 from erikdesjardins/hoist-async
Fix T6882 (async functions are not hoisted)
2016-02-05 15:32:26 -05:00
Zachary Miller
33b4ef5d52 Parenthize "in" in for-loop init, even when init has nested for-loop 2016-02-05 14:28:01 -06:00
Jeff Morrison
e6951e99f0 Add support for leading pipes in Flow type alias RHS syntax 2016-02-05 13:23:55 -05:00
Amjad Masad
bcc32da0d9 Merge pull request #3316 from forivall/babel-generator-simplify-node
Simplify babel-generator/node/index.js
2016-02-04 14:10:16 -08:00
Henry Zhu
f8036c7230 Merge pull request #3311 from babel/object-body
[T7047] Consider arrow functions when parenthesizing object expressions
2016-02-04 14:44:22 -05:00
Henry Zhu
807e190728 Merge pull request #3186 from hzoo/add-some-flow
add some more flow types
2016-02-04 11:10:02 -05:00
Henry Zhu
c2d7e95e1a add some more flow types 2016-02-04 11:07:03 -05:00
Henry Zhu
9182fcd71b make a test for #3303 2016-02-04 10:54:14 -05:00
Henry Zhu
26cd517932 Merge pull request #3303 from BlackGlory/patch-1
Throw a TypeError when falsy value found in plugins
2016-02-04 10:50:38 -05:00
Jordan Klassen
8fd329a2f4 Remove "Node" class from generator, just use module
The Node class was unused as a class
2016-02-03 16:51:10 -08:00
Amjad Masad
6bb7eb0c78 Merge pull request #3300 from gzzhanghao/gen-fix
Fix generators with default args
2016-02-03 15:46:39 -08:00
guybedford
5a0d5dc500 babel-template clearNode fix to not remove existing sourceMaps (T6903) 2016-02-04 01:31:18 +02:00
Sebastian McKenzie
35e8250b57 add a top level analyze method for path marking sugar 2016-02-03 21:29:47 +00:00
Henry Zhu
e1867f75e2 Merge pull request #3304 from jamestalmage/fix-T7046
[babel-template][T7046]: Add optional babylon options argument.
2016-02-03 14:26:56 -05:00
Erik Desjardins
84af53d356 Async function will be hoisted above some imports
...but it's still below `exports.foo = undefined;`, so the test is intact
2016-02-03 12:11:14 -05:00
Erik Desjardins
4142003bbd Hoist initial exports.foo = undefined and __esModule declarations above hoisted async functions 2016-02-03 12:11:11 -05:00
Erik
e759b5f835 Add exec test for T6882 (async function hoisting) 2016-02-03 12:11:08 -05:00
Jason
523a9d1d00 [traverse] nit 2016-02-03 17:46:34 +08:00
Erik
ec61bd9386 Revert "Don't mark async functions as hoist"
This reverts commit d34cb69912ee5789c7d1029c3be75d22d13e7bf8.
2016-02-02 22:13:26 -05:00
Amjad Masad
7428654c19 Merge pull request #3290 from AgentME/exportAsyncTest
Add test for T3026
2016-02-02 16:55:58 -08:00
Amjad Masad
430607fc1d Merge pull request #3298 from babel/hzoo-T7010
Set NOT_LOCAL_BINDING on all inferred function names
2016-02-02 16:46:35 -08:00
Amjad Masad
9aac73e70b Merge pull request #3299 from robcolburn/multibyte-test
Ensure that we do not break mutli-byte handling
2016-02-02 16:45:50 -08:00
Amjad Masad
3d3b30eb45 [T7047]Consider arrow functions when parenthesizing object expressions 2016-02-02 16:26:31 -08:00
Joshua Peek
005c4cb7a8 Show specific error message when chokidar can't be loaded 2016-02-01 19:24:08 -08:00
Joshua Peek
f81d9e1274 Mark chokidar as optional dependency 2016-02-01 17:03:37 -08:00
Joshua Peek
0878685a5a Defer requiring chokidar dependency until --watch flag is passed 2016-02-01 17:03:13 -08:00
Julian Viereck
624a811885 Fix and tests 2016-01-31 01:22:31 +01:00
CrocoDillon
1ba81153a7 Use this.options.babelrc instead of opts.babelrc 2016-01-30 12:11:33 -05:00
CrocoDillon
f4093a552f Use the babelrc option in babel-register
Which can be used to ignore `.babelrc` files by setting this to false, currently ignored in babel-register.
2016-01-30 12:09:49 -05:00