From 7dcc9708e3398fcf7c6668dc4de0e4b8112fe5d1 Mon Sep 17 00:00:00 2001 From: Logan Smyth Date: Tue, 14 Feb 2017 11:26:49 -0800 Subject: [PATCH 01/19] Manually bump and publish babel-runtime --- packages/babel-runtime/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/babel-runtime/package.json b/packages/babel-runtime/package.json index 50c0c37b87..aa64eadd57 100644 --- a/packages/babel-runtime/package.json +++ b/packages/babel-runtime/package.json @@ -1,6 +1,6 @@ { "name": "babel-runtime", - "version": "6.22.0", + "version": "6.23.0", "description": "babel selfContained runtime", "license": "MIT", "repository": "https://github.com/babel/babel/tree/master/packages/babel-runtime", @@ -11,6 +11,6 @@ }, "devDependencies": { "babel-helpers": "^6.22.0", - "babel-plugin-transform-runtime": "^6.22.0" + "babel-plugin-transform-runtime": "^6.23.0" } } From 958f72ddc28e2f5d02adf44eadd2b1265dd0fa4d Mon Sep 17 00:00:00 2001 From: Sergey Rubanov Date: Wed, 15 Feb 2017 18:55:12 +0300 Subject: [PATCH 02/19] Add name field to package.json (#5311) [skip ci] --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index 90db588cb8..254cad0ffb 100644 --- a/package.json +++ b/package.json @@ -1,4 +1,5 @@ { + "name": "babel", "private": true, "license": "MIT", "scripts": { From b77c435f0f9e7ec5e21ed7d92807ce3c75bdd9d4 Mon Sep 17 00:00:00 2001 From: Brian Ng Date: Wed, 15 Feb 2017 13:38:54 -0600 Subject: [PATCH 03/19] Ignore babel-register test artifacts (#5316) [skip ci] --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 702ae50d45..12a252a120 100644 --- a/.gitignore +++ b/.gitignore @@ -14,6 +14,7 @@ dist /.package.json /packages/babel-runtime/core-js /packages/babel-runtime/helpers/*.js +/packages/babel-register/test/.babel /packages/*/lib _babel.github.io /tests/.browser-build.js From ff2c24eed28239f28f7b1df2980a67b643168970 Mon Sep 17 00:00:00 2001 From: Jason Laster Date: Wed, 15 Feb 2017 12:05:31 -0800 Subject: [PATCH 04/19] Add test for reference paths (#5296) --- packages/babel-traverse/test/scope.js | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/packages/babel-traverse/test/scope.js b/packages/babel-traverse/test/scope.js index 7f823ecfd6..ac6e251c26 100644 --- a/packages/babel-traverse/test/scope.js +++ b/packages/babel-traverse/test/scope.js @@ -14,6 +14,19 @@ function getPath(code) { return path; } +function getIdentifierPath(code) { + const ast = parse(code); + let nodePath; + traverse(ast, { + Identifier: function(path) { + nodePath = path; + path.stop(); + } + }); + + return nodePath; +} + describe("scope", function () { describe("binding paths", function () { it("function declaration id", function () { @@ -67,5 +80,13 @@ describe("scope", function () { _foo2: { } `).scope.generateUid("foo"), "_foo3"); }); + + it("reference paths", function() { + const path = getIdentifierPath("function square(n) { return n * n}"); + const referencePaths = path.context.scope.bindings.n.referencePaths; + assert.equal(referencePaths.length, 2); + assert.deepEqual(referencePaths[0].node.loc.start, { line: 1, column:28 }); + assert.deepEqual(referencePaths[1].node.loc.start, { line: 1, column:32 }); + }); }); }); From 28853bf190ce3e6ad405e7bd48336c3180f4e496 Mon Sep 17 00:00:00 2001 From: Daniel Tschinder Date: Wed, 15 Feb 2017 23:43:06 +0100 Subject: [PATCH 05/19] Fix for-await printing (#5322) Only the first for-await was correctly printed all subsequent for-await statements where printed as for-of as the variable op was changed inside the buildForXStatement --- packages/babel-generator/src/generators/statements.js | 4 ++-- .../test/fixtures/object-rest/for-x/expected.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/babel-generator/src/generators/statements.js b/packages/babel-generator/src/generators/statements.js index b9e8e736b3..0f7f125a6c 100644 --- a/packages/babel-generator/src/generators/statements.js +++ b/packages/babel-generator/src/generators/statements.js @@ -87,13 +87,13 @@ const buildForXStatement = function (op) { if (op === "await") { this.word("await"); this.space(); - op = "of"; + // do not attempt to change op here, as it will break subsequent for-await statements } this.token("("); this.print(node.left, node); this.space(); - this.word(op); + this.word(op === "await" ? "of" : op); this.space(); this.print(node.right, node); this.token(")"); diff --git a/packages/babel-plugin-transform-object-rest-spread/test/fixtures/object-rest/for-x/expected.js b/packages/babel-plugin-transform-object-rest-spread/test/fixtures/object-rest/for-x/expected.js index 9617d7b78f..0cffd92db6 100644 --- a/packages/babel-plugin-transform-object-rest-spread/test/fixtures/object-rest/for-x/expected.js +++ b/packages/babel-plugin-transform-object-rest-spread/test/fixtures/object-rest/for-x/expected.js @@ -18,11 +18,11 @@ async function a() { for ({ a } in {}) {} for ({ a } of []) {} async function a() { - for ({ a } of []) {} + for await ({ a } of []) {} } for (a in {}) {} for (a of []) {} async function a() { - for (a of []) {} + for await (a of []) {} } From 7e59f8644494f193dfc124b06dd03968c2a34bbd Mon Sep 17 00:00:00 2001 From: Wilhelmina Drengwitz Date: Thu, 16 Feb 2017 15:24:20 -0500 Subject: [PATCH 06/19] Fix 'o' is undefined in example code (#5327) [skip ci] --- packages/babel-plugin-transform-es2015-spread/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/babel-plugin-transform-es2015-spread/README.md b/packages/babel-plugin-transform-es2015-spread/README.md index 0ba50ddc03..af75353e36 100644 --- a/packages/babel-plugin-transform-es2015-spread/README.md +++ b/packages/babel-plugin-transform-es2015-spread/README.md @@ -11,7 +11,7 @@ var a = ['a', 'b', 'c']; var b = [...a, 'foo']; var c = { foo: 'bar', baz: 42 }; -var d = {...o, a: 2}; +var d = {...c, a: 2}; ``` **Out** @@ -33,7 +33,7 @@ var a = [ 'a', 'b', 'c' ]; var b = [].concat(a, [ 'foo' ]); var c = { foo: 'bar', baz: 42 }; -var d = _extends({}, o, { a: 2 }); +var d = _extends({}, c, { a: 2 }); ``` ## Installation From 69c6d277940d1c1fba59de39abdce286f33684a9 Mon Sep 17 00:00:00 2001 From: Joe Lencioni Date: Thu, 16 Feb 2017 17:36:05 -0800 Subject: [PATCH 07/19] Improve syntax highlighting in readme for JSX (#5331) [skip ci] --- .../README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/babel-plugin-transform-react-constant-elements/README.md b/packages/babel-plugin-transform-react-constant-elements/README.md index 4f0db40e03..4754c94534 100644 --- a/packages/babel-plugin-transform-react-constant-elements/README.md +++ b/packages/babel-plugin-transform-react-constant-elements/README.md @@ -6,7 +6,7 @@ **In** -```js +```jsx const Hr = () => { return
; }; @@ -14,7 +14,7 @@ const Hr = () => { **Out** -```js +```jsx const _ref =
; const Hr = () => { @@ -26,13 +26,13 @@ const Hr = () => { - **Spread Operator** - ```js + ```jsx
``` - **Refs** - ```js + ```jsx
this.node = node} /> ``` From d55a77502499f10e62ea1f75eb7f77c32c98404b Mon Sep 17 00:00:00 2001 From: Zachary Miller Date: Thu, 16 Feb 2017 21:14:16 -0600 Subject: [PATCH 08/19] Update CONTRIBUTING.md with respect to coverage check [skip ci] (#5329) --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 80c27d86d3..e34f627436 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -124,7 +124,7 @@ $ TEST_DEBUG=true make test To test the code coverage, use: ```sh -$ make test-cov +$ ./scripts/test-cov.sh ``` #### Writing tests From 07dd2b1e207071654238319123584f949a7403b0 Mon Sep 17 00:00:00 2001 From: Brendan Houle Date: Fri, 17 Feb 2017 13:01:57 -0500 Subject: [PATCH 09/19] Shorthand properties examples (#5334) --- .../README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/babel-plugin-transform-es2015-shorthand-properties/README.md b/packages/babel-plugin-transform-es2015-shorthand-properties/README.md index 171aa1ead7..95c87e2fa3 100644 --- a/packages/babel-plugin-transform-es2015-shorthand-properties/README.md +++ b/packages/babel-plugin-transform-es2015-shorthand-properties/README.md @@ -13,7 +13,7 @@ var o = { a, b, c }; **Out** ```js -var o = { a: a, b: b, c:c }; +var o = { a: a, b: b, c: c }; ``` **In** From 7b63af0e9194df3da898751a802f8e8d1bba340e Mon Sep 17 00:00:00 2001 From: Brian Ng Date: Mon, 20 Feb 2017 11:37:04 -0600 Subject: [PATCH 10/19] Fix typo in CONTRIBUTING.md [skip ci] --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e34f627436..c4bd85052b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -198,7 +198,7 @@ For both `babel-plugin-x` and `babylon`, you can easily generate an `expected.js #### Internals - AST spec ([babylon/ast/spec.md](https://github.com/babel/babylon/blob/master/ast/spec.md)) -- Versionning ([doc/design/versioning.md](./doc/design/versioning.md)) +- Versioning ([doc/design/versioning.md](./doc/design/versioning.md)) - Monorepo ([doc/design/monorepo.md](./doc/design/monorepo.md)) - Compiler environment support ([doc/design/compiler-environment-support.md](./doc/design/compiler-environment-support.md)) - Compiler assumptions ([doc/design/compiler-assumptions.md](./doc/design/compiler-assumptions.md)) From 2974a82df16172dc490f868216b121891c4e4bfd Mon Sep 17 00:00:00 2001 From: Daniel Tschinder Date: Tue, 21 Feb 2017 14:44:40 +0100 Subject: [PATCH 11/19] Add babel-bot to team (#5355) [skip ci] --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index 7987b5b840..21a845d354 100644 --- a/README.md +++ b/README.md @@ -203,6 +203,14 @@ Babel | Daniel Tschinder | Logan Smyth | Henry Zhu | | [@kangax](https://github.com/kangax) | [@kaicataldo](https://github.com/kaicataldo) | [@motiz88](https://github.com/motiz88) | [@xtuc](https://github.com/xtuc) | | [@kangax](https://twitter.com/kangax) | [@kai_cataldo](https://twitter.com/kai_cataldo) | [@motiz88](https://twitter.com/motiz88) | [@svensauleau](https://twitter.com/svensauleau) | +### Non-Human Members + +[](https://github.com/babel-bot) | +|---| +| Babel Bot | +| [@babel-bot](https://github.com/babel-bot) | +| [@babeljs](https://twitter.com/babeljs) | + ### Inactive members [![Amjad Masad](https://avatars.githubusercontent.com/u/587518?s=64)](https://github.com/amasad) | [![James Kyle](https://avatars.githubusercontent.com/u/952783?s=64)](https://github.com/thejameskyle) | [![Jesse McCarthy](https://avatars.githubusercontent.com/u/129203?s=64)](https://github.com/jmm) | [![Sebastian McKenzie](https://avatars.githubusercontent.com/u/853712?s=64)](https://github.com/kittens) (Creator) | From b5246994b57f06af871be6a63dcc4c6fd41d94d6 Mon Sep 17 00:00:00 2001 From: Alex Kuzmenko Date: Tue, 21 Feb 2017 17:09:31 +0200 Subject: [PATCH 12/19] Update CONTRIBUTING.md: include make build (#5349) [skip ci] --- CONTRIBUTING.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c4bd85052b..e54e8ac61d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -124,6 +124,7 @@ $ TEST_DEBUG=true make test To test the code coverage, use: ```sh +$ BABEL_ENV=cov make build $ ./scripts/test-cov.sh ``` From 02f51fb7a5f4dd808839088e8b22d46cb0b5b202 Mon Sep 17 00:00:00 2001 From: Artem Yavorsky Date: Wed, 22 Feb 2017 05:10:33 +0200 Subject: [PATCH 13/19] [skip ci] Add devEngines to package.json (#5312) --- package.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/package.json b/package.json index 254cad0ffb..2747f458d2 100644 --- a/package.json +++ b/package.json @@ -47,6 +47,10 @@ "through2": "^2.0.0", "uglify-js": "^2.4.16" }, + "devEngines": { + "node": ">= 0.10 <= 7.x", + "npm": "2.x || 3.x || 4.x" + }, "babel": { "comments": false, "presets": [ From 8d9195f8627557f53a8be06324f553f50acd047b Mon Sep 17 00:00:00 2001 From: Izaak Schroeder Date: Tue, 21 Feb 2017 19:13:03 -0800 Subject: [PATCH 14/19] Pass `dirname` as extra metadata to preset constructor. (#4834) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Pass `dirname` as extra metadata to preset constructor. Sometimes a preset would like to know where it should resolve relative paths from (e.g. https://github.com/tleunen/babel-plugin-module-resolver) and this extra information makes that possible. * Test for `dirname` passed into preset constructor This adds a check for `dirname`’s existence and correctness to the `resolve-addons-relative-to-file` test, and serves as a minimal example of a path-aware preset. --- .../src/transformation/file/options/option-manager.js | 2 +- .../node_modules/addons/preset.js | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/babel-core/src/transformation/file/options/option-manager.js b/packages/babel-core/src/transformation/file/options/option-manager.js index f4b25206bc..4746260a36 100644 --- a/packages/babel-core/src/transformation/file/options/option-manager.js +++ b/packages/babel-core/src/transformation/file/options/option-manager.js @@ -299,7 +299,7 @@ export default class OptionManager { (presetLoc || "a preset") + " which does not accept options."); } - if (typeof val === "function") val = val(context, options); + if (typeof val === "function") val = val(context, options, { dirname }); if (typeof val !== "object") { throw new Error(`Unsupported preset format: ${val}.`); diff --git a/packages/babel-core/test/fixtures/resolution/resolve-addons-relative-to-file/node_modules/addons/preset.js b/packages/babel-core/test/fixtures/resolution/resolve-addons-relative-to-file/node_modules/addons/preset.js index a1af16e41f..e08f4b1c61 100644 --- a/packages/babel-core/test/fixtures/resolution/resolve-addons-relative-to-file/node_modules/addons/preset.js +++ b/packages/babel-core/test/fixtures/resolution/resolve-addons-relative-to-file/node_modules/addons/preset.js @@ -1,5 +1,10 @@ -module.exports = { - plugins: [plugin], +module.exports = function preset (context, options, fileContext) { + if (/resolve-addons-relative-to-file$/.test(fileContext.dirname)) { + return { + plugins: [plugin], + }; + } + return {}; }; function plugin () { From 2de4b08c51d41ebf6c334f272dc68cdf208b52d5 Mon Sep 17 00:00:00 2001 From: "JeongHoon Byun (aka Outsider)" Date: Wed, 22 Feb 2017 12:14:26 +0900 Subject: [PATCH 15/19] Add test for passing arguments to babel-node (#5163) (#5342) --- .../test/fixtures/babel-node/arguments/in-files/bar.js | 1 + .../babel-cli/test/fixtures/babel-node/arguments/options.json | 4 ++++ 2 files changed, 5 insertions(+) create mode 100644 packages/babel-cli/test/fixtures/babel-node/arguments/in-files/bar.js create mode 100644 packages/babel-cli/test/fixtures/babel-node/arguments/options.json diff --git a/packages/babel-cli/test/fixtures/babel-node/arguments/in-files/bar.js b/packages/babel-cli/test/fixtures/babel-node/arguments/in-files/bar.js new file mode 100644 index 0000000000..13257ec5e8 --- /dev/null +++ b/packages/babel-cli/test/fixtures/babel-node/arguments/in-files/bar.js @@ -0,0 +1 @@ +console.log(process.argv[2]); diff --git a/packages/babel-cli/test/fixtures/babel-node/arguments/options.json b/packages/babel-cli/test/fixtures/babel-node/arguments/options.json new file mode 100644 index 0000000000..5aa934d555 --- /dev/null +++ b/packages/babel-cli/test/fixtures/babel-node/arguments/options.json @@ -0,0 +1,4 @@ +{ + "args": ["bar", "foo"], + "stdout": "foo" +} From 3a6d85e55ed4c577106a9dabbe22f89ca5467e51 Mon Sep 17 00:00:00 2001 From: Aaron Ang Date: Tue, 21 Feb 2017 19:14:59 -0800 Subject: [PATCH 16/19] Remove redundant NODE_ENV=test in Makefile (#5350) `NODE_ENV=test` is exported by default. Therefore, targets that set `NODE_ENV` to `test` are cleaned up. --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 823878ed17..e1abb3962b 100644 --- a/Makefile +++ b/Makefile @@ -49,11 +49,11 @@ test-only: test: lint test-only test-ci: - NODE_ENV=test make bootstrap + make bootstrap make test-only test-ci-coverage: - NODE_ENV=test BABEL_ENV=cov make bootstrap + BABEL_ENV=cov make bootstrap ./scripts/test-cov.sh ./node_modules/.bin/codecov -f coverage/coverage-final.json From c1c9ac4e1120f2bbd6d4605df57ca2a183351be5 Mon Sep 17 00:00:00 2001 From: Aaron Ang Date: Tue, 21 Feb 2017 19:26:52 -0800 Subject: [PATCH 17/19] Add section to CONTRIBUTING about debugging code (#5354) [skip ci] --- CONTRIBUTING.md | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e54e8ac61d..340292b203 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -9,6 +9,8 @@ | Writing tests | + Debugging code + | Internals

@@ -197,6 +199,43 @@ For both `babel-plugin-x` and `babylon`, you can easily generate an `expected.js - expected.json (will be generated if not created) ``` +#### Debugging code + +A common approach to debugging JavaScript code is to walk through the code using the [Chrome DevTools](https://developers.google.com/web/tools/chrome-devtools/) debugger. +For illustration purposes, we are going to assume that we need to get a better understanding of [`Generator.generate()`](https://github.com/babel/babel/blob/b5246994b57f06af871be6a63dcc4c6fd41d94d6/packages/babel-generator/src/index.js#L32), which is responsible for generating code for a given AST. +To get a better understanding of what is actually going on for this particular piece of code, we are going to make use of breakpoints. + +```diff +generate() { ++ debugger; // breakpoint + return super.generate(this.ast); +} +``` + +To include the changes, we have to make sure to build Babel: + +```bash +$ make build +``` + +Next, we need to execute `Generator.generate()`, which can be achieved by running a test case in the `babel-generator` package. +For example, we can run the test case that tests the generation of class declarations: + +```bash +$ TEST_DEBUG=true TEST_GREP=ClassDeclaration make test-only + +./scripts/test.sh +Debugger listening on port 9229. +Warning: This is an experimental feature and could change at any time. +To start debugging, open the following URL in Chrome: + chrome-devtools://devtools/remote/serve_file/@60cd6e859b9f557d2312f5bf532f6aec5f284980/inspector.html?experiments=true&v8only=true&ws=127.0.0.1:9229/3cdaebd2-be88-4e7b-a94b-432950ab72d0 +``` + +To start the debugging in Chrome DevTools, open the given URL. +The debugger starts at the first executed line of code, which is Mocha's first line by default. +Click _Resume script execution_ Resume script execution button. to jump to the set breakpoint. +Note that the code shown in Chrome DevTools is compiled code and therefore differs. + #### Internals - AST spec ([babylon/ast/spec.md](https://github.com/babel/babylon/blob/master/ast/spec.md)) - Versioning ([doc/design/versioning.md](./doc/design/versioning.md)) From be293bd70831672de8f4cc8ebdec4f2a33285984 Mon Sep 17 00:00:00 2001 From: Daniel Tschinder Date: Wed, 22 Feb 2017 04:40:11 +0100 Subject: [PATCH 18/19] Enable codecov partial coverage (#5336) --- codecov.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 codecov.yml diff --git a/codecov.yml b/codecov.yml new file mode 100644 index 0000000000..3e31ee1814 --- /dev/null +++ b/codecov.yml @@ -0,0 +1,4 @@ +coverage: + parsers: + javascript: + enable_partials: yes From 6614a63b3b0f17a1f6e54e96f2ccaf3ea3692fc5 Mon Sep 17 00:00:00 2001 From: Zachary Miller Date: Wed, 22 Feb 2017 06:50:58 -0600 Subject: [PATCH 19/19] Wrap some generated do expressions in parens (#5339) --- packages/babel-generator/src/node/parentheses.js | 4 ++++ .../test/fixtures/parentheses/do-expression/actual.js | 3 +++ .../test/fixtures/parentheses/do-expression/expected.js | 3 +++ 3 files changed, 10 insertions(+) create mode 100644 packages/babel-generator/test/fixtures/parentheses/do-expression/actual.js create mode 100644 packages/babel-generator/test/fixtures/parentheses/do-expression/expected.js diff --git a/packages/babel-generator/src/node/parentheses.js b/packages/babel-generator/src/node/parentheses.js index 558bceb14c..948198f7cb 100644 --- a/packages/babel-generator/src/node/parentheses.js +++ b/packages/babel-generator/src/node/parentheses.js @@ -46,6 +46,10 @@ export function ObjectExpression(node: Object, parent: Object, printStack: Array return isFirstInStatement(printStack, { considerArrow: true }); } +export function DoExpression(node: Object, parent: Object, printStack: Array): boolean { + return isFirstInStatement(printStack); +} + export function Binary(node: Object, parent: Object): boolean { if ((t.isCallExpression(parent) || t.isNewExpression(parent)) && parent.callee === node) { return true; diff --git a/packages/babel-generator/test/fixtures/parentheses/do-expression/actual.js b/packages/babel-generator/test/fixtures/parentheses/do-expression/actual.js new file mode 100644 index 0000000000..21177fdcef --- /dev/null +++ b/packages/babel-generator/test/fixtures/parentheses/do-expression/actual.js @@ -0,0 +1,3 @@ +(do { + foo; +}); diff --git a/packages/babel-generator/test/fixtures/parentheses/do-expression/expected.js b/packages/babel-generator/test/fixtures/parentheses/do-expression/expected.js new file mode 100644 index 0000000000..21177fdcef --- /dev/null +++ b/packages/babel-generator/test/fixtures/parentheses/do-expression/expected.js @@ -0,0 +1,3 @@ +(do { + foo; +});