From ef25bebfa81a389deb53ab5d0cdc0466197f0179 Mon Sep 17 00:00:00 2001 From: Jason Aslakson Date: Thu, 19 Jan 2017 21:36:18 -0500 Subject: [PATCH 01/11] fix issue #5012 - Cannot read property 'declarations' of null (#5019) - temporary fix --- .../constant-elements/destructure/actual.js | 10 ++++++++++ .../constant-elements/destructure/expected.js | 13 +++++++++++++ .../constant-elements/destructure/options.json | 7 +++++++ packages/babel-traverse/src/path/lib/hoister.js | 7 ++++++- 4 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/destructure/actual.js create mode 100644 packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/destructure/expected.js create mode 100644 packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/destructure/options.json diff --git a/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/destructure/actual.js b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/destructure/actual.js new file mode 100644 index 0000000000..fbd1ed5555 --- /dev/null +++ b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/destructure/actual.js @@ -0,0 +1,10 @@ +class AnchorLink extends Component { + render() { + const { isExternal, children } = this.props; + if (isExternal) { + return ({children}); + } + + return ({children}); + } +} diff --git a/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/destructure/expected.js b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/destructure/expected.js new file mode 100644 index 0000000000..4f730edf03 --- /dev/null +++ b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/destructure/expected.js @@ -0,0 +1,13 @@ +class AnchorLink extends Component { + render() { + var _props = this.props; + const isExternal = _props.isExternal, + children = _props.children; + + if (isExternal) { + return {children}; + } + + return {children}; + } +} \ No newline at end of file diff --git a/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/destructure/options.json b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/destructure/options.json new file mode 100644 index 0000000000..dc9272a969 --- /dev/null +++ b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/destructure/options.json @@ -0,0 +1,7 @@ +{ + "plugins": [ + "syntax-jsx", + "transform-es2015-destructuring", + "transform-react-constant-elements" + ] +} diff --git a/packages/babel-traverse/src/path/lib/hoister.js b/packages/babel-traverse/src/path/lib/hoister.js index 8a36031f1e..243e9c18ac 100644 --- a/packages/babel-traverse/src/path/lib/hoister.js +++ b/packages/babel-traverse/src/path/lib/hoister.js @@ -121,7 +121,12 @@ export default class PathHoister { do { if (!path.parentPath || (Array.isArray(path.container) && path.isStatement()) || - (path.isVariableDeclarator() && path.parentPath.node.declarations.length > 1)) + ( + path.isVariableDeclarator() && + path.parentPath.node !== null && + path.parentPath.node.declarations.length > 1 + ) + ) return path; } while ((path = path.parentPath)); } From b06763f1a32557542f525904539ccf185ef49739 Mon Sep 17 00:00:00 2001 From: Henry Zhu Date: Thu, 19 Jan 2017 22:09:37 -0500 Subject: [PATCH 02/11] force update core/cli --- packages/babel-cli/package.json | 9 +++++++++ packages/babel-core/package.json | 3 ++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/packages/babel-cli/package.json b/packages/babel-cli/package.json index d32f989965..79615f7378 100644 --- a/packages/babel-cli/package.json +++ b/packages/babel-cli/package.json @@ -6,6 +6,15 @@ "homepage": "https://babeljs.io/", "license": "MIT", "repository": "https://github.com/babel/babel/tree/master/packages/babel-cli", + "keywords": [ + "6to5", + "babel", + "es6", + "transpile", + "transpiler", + "babel-cli", + "compiler" + ], "dependencies": { "babel-core": "^6.22.0", "babel-register": "^6.22.0", diff --git a/packages/babel-core/package.json b/packages/babel-core/package.json index 0e62b668a5..877288bc99 100644 --- a/packages/babel-core/package.json +++ b/packages/babel-core/package.json @@ -18,7 +18,8 @@ "transpile", "transpiler", "var", - "babel-core" + "babel-core", + "compiler" ], "scripts": { "bench": "make bench", From 368485828fff8aa0341b779776cc41a013577648 Mon Sep 17 00:00:00 2001 From: Henry Zhu Date: Thu, 19 Jan 2017 22:12:53 -0500 Subject: [PATCH 03/11] v6.22.1 --- lerna.json | 2 +- packages/babel-cli/package.json | 4 ++-- packages/babel-core/package.json | 4 ++-- packages/babel-traverse/package.json | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lerna.json b/lerna.json index 4fc063c9a9..d522a2967d 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "lerna": "2.0.0-beta.23", - "version": "6.22.0", + "version": "6.22.1", "changelog": { "repo": "babel/babel", "labels": { diff --git a/packages/babel-cli/package.json b/packages/babel-cli/package.json index 79615f7378..a4a9444af0 100644 --- a/packages/babel-cli/package.json +++ b/packages/babel-cli/package.json @@ -1,6 +1,6 @@ { "name": "babel-cli", - "version": "6.22.0", + "version": "6.22.1", "description": "Babel command line.", "author": "Sebastian McKenzie ", "homepage": "https://babeljs.io/", @@ -16,7 +16,7 @@ "compiler" ], "dependencies": { - "babel-core": "^6.22.0", + "babel-core": "^6.22.1", "babel-register": "^6.22.0", "babel-polyfill": "^6.22.0", "babel-runtime": "^6.22.0", diff --git a/packages/babel-core/package.json b/packages/babel-core/package.json index 877288bc99..a9cbeb1f8b 100644 --- a/packages/babel-core/package.json +++ b/packages/babel-core/package.json @@ -1,6 +1,6 @@ { "name": "babel-core", - "version": "6.22.0", + "version": "6.22.1", "description": "Babel compiler core.", "author": "Sebastian McKenzie ", "homepage": "https://babeljs.io/", @@ -33,7 +33,7 @@ "babel-template": "^6.22.0", "babel-runtime": "^6.22.0", "babel-register": "^6.22.0", - "babel-traverse": "^6.22.0", + "babel-traverse": "^6.22.1", "babel-types": "^6.22.0", "babylon": "^6.11.0", "convert-source-map": "^1.1.0", diff --git a/packages/babel-traverse/package.json b/packages/babel-traverse/package.json index cb68f38bf1..8066c617a8 100644 --- a/packages/babel-traverse/package.json +++ b/packages/babel-traverse/package.json @@ -1,6 +1,6 @@ { "name": "babel-traverse", - "version": "6.22.0", + "version": "6.22.1", "description": "The Babel Traverse module maintains the overall tree state, and is responsible for replacing, removing, and adding nodes", "author": "Sebastian McKenzie ", "homepage": "https://babeljs.io/", From fabfc463f10d57a2397d90f2a0a83921ed4a58d0 Mon Sep 17 00:00:00 2001 From: Henry Zhu Date: Thu, 19 Jan 2017 22:17:33 -0500 Subject: [PATCH 04/11] v6.22.1 changelog [skip ci] --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 06bc3a24f3..b5fc99aa50 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,12 @@ _Note: Gaps between patch versions are faulty, broken or test releases._ See [CHANGELOG - 6to5](CHANGELOG-6to5.md) for the pre-4.0.0 version changelog. +## 6.22.1 (2017-01-19) + +#### :bug: Bug Fix + +Temporary fix with `babel-traverse` via [#5019](https://github.com/babel/babel/pull/5019) for transform-react-constant-elements. + ## 6.22.0 (2017-01-19) A quick update since it's been over a month already: adds support for shorthand import syntax in Flow + some fixes! From 6528fe105ee43d13c92e0747d8bd77b89439660b Mon Sep 17 00:00:00 2001 From: Logan Smyth Date: Thu, 19 Jan 2017 21:47:11 -0800 Subject: [PATCH 05/11] Break out of argument processing properly. --- packages/babel-cli/src/_babel-node.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/babel-cli/src/_babel-node.js b/packages/babel-cli/src/_babel-node.js index 70bf813a48..18acc4247f 100644 --- a/packages/babel-cli/src/_babel-node.js +++ b/packages/babel-cli/src/_babel-node.js @@ -103,7 +103,7 @@ if (program.eval || program.print) { let i = 0; let ignoreNext = false; - args.forEach(function (arg, i2) { + args.some(function (arg, i2) { if (ignoreNext) { ignoreNext = false; return; @@ -116,7 +116,7 @@ if (program.eval || program.print) { } } else { i = i2; - return false; + return true; } }); args = args.slice(i); From 7de9fa07fb8bc9528f33a70475a8d81ddf5b8ff1 Mon Sep 17 00:00:00 2001 From: Logan Smyth Date: Thu, 19 Jan 2017 22:03:27 -0800 Subject: [PATCH 06/11] v6.22.2 --- lerna.json | 2 +- packages/babel-cli/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lerna.json b/lerna.json index d522a2967d..2858f12c31 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "lerna": "2.0.0-beta.23", - "version": "6.22.1", + "version": "6.22.2", "changelog": { "repo": "babel/babel", "labels": { diff --git a/packages/babel-cli/package.json b/packages/babel-cli/package.json index a4a9444af0..f06fccc0be 100644 --- a/packages/babel-cli/package.json +++ b/packages/babel-cli/package.json @@ -1,6 +1,6 @@ { "name": "babel-cli", - "version": "6.22.1", + "version": "6.22.2", "description": "Babel command line.", "author": "Sebastian McKenzie ", "homepage": "https://babeljs.io/", From 85eec9ffef9f2defbcc4cce29440c5ef230708d2 Mon Sep 17 00:00:00 2001 From: Logan Smyth Date: Thu, 19 Jan 2017 22:08:10 -0800 Subject: [PATCH 07/11] CHANGELOG for 6.22.2 --- CHANGELOG.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b5fc99aa50..7ff3de0e51 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,11 +13,19 @@ _Note: Gaps between patch versions are faulty, broken or test releases._ See [CHANGELOG - 6to5](CHANGELOG-6to5.md) for the pre-4.0.0 version changelog. +## 6.22.2 (2017-01-19) + +#### :bug: Bug Fix + +* `babel-cli` + * Fix issue with `babel-node` throwing errors when passed non-"-" args [#5162](https://github.com/babel/babel/pull/5162). + ## 6.22.1 (2017-01-19) #### :bug: Bug Fix -Temporary fix with `babel-traverse` via [#5019](https://github.com/babel/babel/pull/5019) for transform-react-constant-elements. +* `babel-traverse` + * Temporary fix with `babel-traverse` via [#5019](https://github.com/babel/babel/pull/5019) for transform-react-constant-elements. ## 6.22.0 (2017-01-19) From 7aa6387835508eb75dab92f5b9aa19b30d005333 Mon Sep 17 00:00:00 2001 From: Sergey Rubanov Date: Fri, 20 Jan 2017 18:07:32 +0300 Subject: [PATCH 08/11] Add Node 7 to CI (#5165) --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index edc8e157cb..60d0fd778c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,6 +6,7 @@ cache: directories: - node_modules node_js: +- '7' - '6' - '5' - '4' From d7a0ef19f1c0581c8d4045c2541179d4e253f505 Mon Sep 17 00:00:00 2001 From: Henry Zhu Date: Fri, 20 Jan 2017 10:08:01 -0500 Subject: [PATCH 09/11] Run in dev on build otherwise it runs with coverage plugin (#5159) [skip ci] --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 561846cef5..850316c344 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,7 @@ export NODE_ENV = test .PHONY: build build-dist watch lint fix clean test-clean test-only test test-cov test-ci publish bootstrap build: clean - ./node_modules/.bin/gulp build + BABEL_ENV=development ./node_modules/.bin/gulp build build-dist: build cd packages/babel-polyfill; \ From 3a0d1599cd593228ef34f242a07d74f86e1154c2 Mon Sep 17 00:00:00 2001 From: Henry Zhu Date: Fri, 20 Jan 2017 17:46:09 -0500 Subject: [PATCH 10/11] Internal: only build once on CI (#5177) --- Makefile | 18 +++++------------- package.json | 2 +- 2 files changed, 6 insertions(+), 14 deletions(-) diff --git a/Makefile b/Makefile index 850316c344..9dc300ba6c 100644 --- a/Makefile +++ b/Makefile @@ -2,10 +2,10 @@ MAKEFLAGS = -j1 export NODE_ENV = test -.PHONY: build build-dist watch lint fix clean test-clean test-only test test-cov test-ci publish bootstrap +.PHONY: build build-dist watch lint fix clean test-clean test-only test test-ci publish bootstrap build: clean - BABEL_ENV=development ./node_modules/.bin/gulp build + ./node_modules/.bin/gulp build build-dist: build cd packages/babel-polyfill; \ @@ -16,7 +16,7 @@ build-dist: build watch: clean rm -rf packages/*/lib - BABEL_ENV=development ./node_modules/.bin/gulp watch + ./node_modules/.bin/gulp watch lint: ./node_modules/.bin/eslint packages/ --format=codeframe @@ -42,22 +42,15 @@ clean-all: rm -rf packages/*/node_modules make clean -# without lint test-only: ./scripts/test.sh make test-clean test: lint test-only -test-cov: clean - # rebuild with test - rm -rf packages/*/lib - BABEL_ENV=test ./node_modules/.bin/gulp build - ./scripts/test-cov.sh - test-ci: - NODE_ENV=test make bootstrap - make test-cov + NODE_ENV=test BABEL_ENV=cov make bootstrap + ./scripts/test-cov.sh ./node_modules/.bin/codecov -f coverage/coverage-final.json publish: @@ -68,7 +61,6 @@ publish: # not using lerna independent mode atm, so only update packages that have changed since we use ^ ./node_modules/.bin/lerna publish --only-explicit-updates make clean - #./scripts/build-website.sh bootstrap: make clean-all diff --git a/package.json b/package.json index 30fdfe6149..90db588cb8 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "transform-flow-strip-types" ], "env": { - "test": { + "cov": { "auxiliaryCommentBefore": "istanbul ignore next", "plugins": [ "istanbul" From d76092b2ddd86ecaa9df2a23610fd86a34ed379b Mon Sep 17 00:00:00 2001 From: Brian Ng Date: Sat, 21 Jan 2017 07:20:03 -0600 Subject: [PATCH 11/11] Internal: Run coverage only once (#5182) --- .travis.yml | 33 ++++++++++++++++++--------------- Makefile | 4 ++++ 2 files changed, 22 insertions(+), 15 deletions(-) diff --git a/.travis.yml b/.travis.yml index 60d0fd778c..1f8f16bb4e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,28 +6,31 @@ cache: directories: - node_modules node_js: -- '7' -- '6' -- '5' -- '4' -- '0.12' -script: - - 'if [ -n "${LINT-}" ]; then make lint ; fi' - - 'if [ -z "${LINT-}" ]; then make test-ci ; fi' - - 'if [ -n "${FLOW-}" ]; then make flow ; fi' + - '6' + - '5' + - '4' + - '0.12' + +env: + - JOB=test + +script: + - 'if [ "$JOB" = "test" ]; then make test-ci; fi' + - 'if [ "$JOB" = "test-coverage" ]; then make test-ci-coverage; fi' + - 'if [ "$JOB" = "lint" ]; then make lint && make flow; fi' matrix: fast_finish: true include: + - node_js: "7" + env: JOB=test-coverage - node_js: "node" - env: - - LINT: true - - FLOW: true - + env: JOB=lint + notifications: - on_success: change - on_failure: always slack: + on_success: change + on_failure: always rooms: # Generate with # travis encrypt "babeljs:#activity" --add notifications.slack.rooms diff --git a/Makefile b/Makefile index 9dc300ba6c..823878ed17 100644 --- a/Makefile +++ b/Makefile @@ -49,6 +49,10 @@ test-only: test: lint test-only test-ci: + NODE_ENV=test make bootstrap + make test-only + +test-ci-coverage: NODE_ENV=test BABEL_ENV=cov make bootstrap ./scripts/test-cov.sh ./node_modules/.bin/codecov -f coverage/coverage-final.json