1946 Commits

Author SHA1 Message Date
Daniel Tschinder
71dff8c834 Allow overwritting of sourceRoot (#3685)
Also replaces lodash/extend with Object.assign
2016-09-03 12:12:34 -04:00
Henry Zhu
e5961592c4 babel-code-frame: babel-runtime not necessary (#3699) 2016-09-03 12:03:34 -04:00
Bo Borgerson
8f790ceeed Satisfy the "space-infix-ops" eslint rule (#3696)
Future proofing against https://github.com/babel/eslint-config-babel/pull/1.

Only one violation, even without enforcement!
2016-09-02 18:50:03 -04:00
Henry Zhu
6d7417ba1b Update babel-types docs, contributing, babel-cli [skip ci]
Closes gh-3684
2016-09-01 16:15:32 -04:00
Henry Zhu
b3dca4fb5a v6.15.0 2016-09-01 11:03:06 -04:00
Ben Briggs
c94abcc170 Add support for preserving comments in babel-template. (#3689)
* Add support for preserving comments in babel-template.

* Add an API section to babel-template.
2016-09-01 10:50:25 -04:00
Ryan Biwer
23ea626241 Fix block scope remapping (fixes T7525) (#3662) 2016-09-01 10:48:32 -04:00
Boopathi Rajaa
953dd1df48 Fix toExpression converting arrow functions to function expressions without block body (#3687) 2016-08-31 17:01:59 -04:00
Henry Zhu
174e44f656 fix broken test from old PR 2016-08-31 14:55:38 -04:00
Boopathi Rajaa
477a72a975 Fix bug undefined reference for export declaration (#3629)
+ (Fix https://phabricator.babeljs.io/T7534)
+ Export declaration class/function/var ids now add the export
declaration path as the referenced one.
2016-08-31 14:42:33 -04:00
Stanislav Sysoev
33da726638 Not null check in babel-helper-builder-binary-assignment-operator-visitor (#3647)
Fix: T7537 — https://phabricator.babeljs.io/T7537

When transforming super call in class constructor, part of ast is replaced using method "replaceWithMultiple" here:
https://github.com/babel/babel/blob/master/packages/babel-plugin-transform-es2015-classes/src/vanilla.js#L379

It leads to removing the node (replacing it with null) here:
https://github.com/babel/babel/blob/master/packages/babel-traverse/src/path/replacement.js#L51

But parent ExpressionsStatement is still untouched and when it reaches visitor generated in here
https://github.com/babel/babel/blob/master/packages/babel-helper-builder-binary-assignment-operator-visitor/src/index.js#L18

It blows up because expression is null from previous visitors.
2016-08-31 14:41:49 -04:00
Dan Abramov
4ac0df00f1 Add an option for custom runtime (#3612) 2016-08-31 13:59:43 -04:00
Logan Smyth
a0ca5ed61e Remove the cycle from babel-types/babel-traverse. 2016-08-29 19:13:19 -07:00
Henry Zhu
5ce325c399 v6.14.0 2016-08-24 17:40:46 -06:00
Henry Zhu
ee1eb59077 Latest tests (#3674)
* add preset-latest tests

* test for es2015-preset spec option
2016-08-23 18:29:40 -04:00
Daniel Tschinder
10cd6519d8 Fix class inheritance in IE <=10 (T3041) (#3527)
* Fix class inheritance in IE9 & IE10 (T3041)

Internet Explorer 9&10 do not support __proto__ at all, don't have
Object.setPrototypeOf(), but have Object.getPrototypeOf().

Because of this setting the prototype is not possible, which makes the
babelHelpers.inherits() function to set __proto__ although not supported.

Afterwards Object.getPrototypeOf() is used, but this one is not
respecting the "custom" property __proto__ that we set.

The solution is to check for __proto__ first and afterwards fallback to
Object.getPrototypeOf().

* Do the same logic in babel-helper-replace-supers

* Fix tests

* Extract creation of prototype nodes to small helper
2016-08-23 15:08:44 -04:00
Thomas Aylott
2a4186faf3 Fixes #6726 ignore config option (#3644)
https://phabricator.babeljs.io/T6726
2016-08-23 14:55:37 -04:00
Diogo Franco
53ed4e5eb8 Support 'spec' option on babel-preset-es2015 (#3671)
Allows enabling the spec options in the couple of presets that have it.

Generally enables a slower, but more correct codepath.
2016-08-23 14:28:19 -04:00
Henry Zhu
3bf479789d add options to babel-preset-latest (#3673) 2016-08-23 14:27:43 -04:00
Diogo Franco
1e6257bdcb Fixes modules test to actually test modules (#3672)
* Fixes modules test to actually test modules

It is a mystery how these tests ever passed before.

* Correct test -> suite
2016-08-23 14:06:02 -04:00
Sota Yamashtia
3d0ef3a001 Create preset babel-preset-latest (#3625) 2016-08-23 11:07:23 -04:00
Henry Zhu
20551cf729 Docs: add babel-preset-es2017, change version [skip ci] 2016-08-23 09:32:30 -04:00
Sota Yamashtia
68d7032e0f Add es2017-preset (#3624) 2016-08-23 09:29:38 -04:00
Guy Bedford
de2791a696 ensure consistent expression value for post-assignment unary expressions (#3650) 2016-08-20 12:21:17 -04:00
Paul O’Shannessy
55f37a1b1e Use arrow syntax for ObjectTypeProperty FunctionTypeAnnotations (#3663)
This fixes an issue where optional properties would get transformed to
an invalid syntax. The easiest solution was to make all FunctionTypes
get transformed to the arrow syntax (previously everything went the
other way).
2016-08-20 10:37:56 -04:00
Sebastian McKenzie
07b3dc18a0 Add wrapPluginVisitorMethod option to allow introspection and metrics tracking of plugins (#3659) 2016-08-20 10:36:52 -04:00
Daniel Tschinder
ea69362249 set sourceRoot in babel-register transform (#3608) 2016-08-18 22:42:57 +02:00
Adam Leventhal
0d1e1ee10c incorrect handling of returns nested in switch cases (#3618) 2016-08-18 10:14:07 -04:00
Boopathi Rajaa
183d9570f9 Fix bug where redeclaration of var doesn't deopt (#3559)
* Fix bug where redeclaration of var doesn't deopt. (Close T7470)

* [evaluate] Add tests for cases - let/const/different scopes
2016-08-17 19:23:09 -04:00
Sebastian McKenzie
4a19661346 Generate names field for identifiers to get correct names mappings (#3658) 2016-08-16 13:43:55 -04:00
Kai Cataldo
aa51dd4a3d Throw error for multiple exports default (#3518)
Fixes https://phabricator.babeljs.io/T7242
2016-08-16 13:21:00 -04:00
Daniel Tschinder
308de41992 Add support for the new declare module.exports of flow. (#3570) 2016-08-16 16:54:00 +02:00
Logan Smyth
2aaee8b8d4 Strip flow-only class props without needing transform-class-properties. (#3655) 2016-08-16 10:30:04 -04:00
Henry Zhu
090f8cd10f Internal: remove comments (#3657) 2016-08-15 11:40:10 -04:00
Jordan Scales
ca27cf135d Revert "Merge pull request #3641 from babel/guy-fieri" (#3646)
This reverts commit 033681af8941d9678961f985c13e500c3c70f337, reversing
changes made to a2d66c0fc8ee58e82be3efd59173803e66dee3e0.

I brought you into this world, and I can take you out.
2016-08-15 11:35:39 -04:00
James Kyle
10f4546fef Remove unnecessary import 2016-08-08 17:34:01 -07:00
James Kyle
f36d07d303 Fixes from PR comments 2016-08-08 17:32:58 -07:00
James Kyle
9eb12e2c34 Fix lint 2016-08-05 12:40:50 -07:00
James Kyle
fd89bd136f Fix exports of babel-core 2016-08-05 12:36:08 -07:00
Brian Donovan
a1c0b5a118 Update test name to reflect reality. (#3640)
Originally pointed out by @Kovensky in https://github.com/babel/babel/pull/3635#discussion_r73652441.
2016-08-05 10:12:33 -04:00
Henry Zhu
a8324712a5 v6.13.2 2016-08-05 09:51:34 -04:00
Henry Zhu
7213e57ee2 add tests, be able to pass preset options to test helper 2016-08-05 09:36:52 -04:00
Christophe Hurpeau
425d460ebf [Bug Fix] option manager: val = val.buildPreset should be before the check if the preset supports options 2016-08-05 12:06:07 +02:00
Logan Smyth
f3ad8a8392 v6.13.1 2016-08-04 21:12:12 -07:00
Logan Smyth
11badb556f Add comment to explain enumerability logic. 2016-08-04 21:06:59 -07:00
Logan Smyth
66317b10db Fix backward-compatibility of babel-preset-es2015 - fixes T7536 2016-08-04 20:55:20 -07:00
Henry Zhu
eaea1276a4 add quotes [skip ci] 2016-08-04 21:34:53 -04:00
Henry Zhu
6ab3e35075 v6.13.0 2016-08-04 19:34:51 -04:00
Henry Zhu
c6354a2132 es2015: transpile the preset, modify modules option to support "amd,umd,systemjs" as well, tests (#3627)
* es2015: transpile the preset, at spec option

* es2015: add support for modules option

* fixes + tests

* fixup preset error messsage

* es2015: update readme [skip ci]

* pass loose to other module transforms
2016-08-04 17:54:04 -04:00
Erik Desjardins
aeb42c2228 Fix bug where path.evaluate treats repeated identifiers as undefined (#3557)
* babel-traverse: add test to demonstrate repeated identifiers being evaluated to `false`

* fix typo: `value` -> `val`

* path.evaluate: only mark item as resolved if we're confident
2016-08-04 16:58:41 -04:00