From 981218de9a23ededbc17a36e3a24590db5af8153 Mon Sep 17 00:00:00 2001 From: Devon Govett Date: Tue, 18 Dec 2018 09:39:24 -0800 Subject: [PATCH 1/3] Publish - @parcel/babel-register@1.11.0 - @parcel/fs@1.11.0 - @parcel/integration-tests@1.11.0 - @parcel/logger@1.11.0 - parcel-bundler@1.11.0 - @parcel/test-utils@1.11.0 - @parcel/utils@1.11.0 - @parcel/watcher@1.11.0 - @parcel/workers@1.11.0 --- packages/core/babel-register/package.json | 2 +- packages/core/fs/package.json | 4 ++-- packages/core/integration-tests/package.json | 8 ++++---- packages/core/logger/package.json | 8 ++++---- packages/core/parcel-bundler/package.json | 16 ++++++++-------- packages/core/test-utils/package.json | 2 +- packages/core/utils/package.json | 2 +- packages/core/watcher/package.json | 12 ++++++------ packages/core/workers/package.json | 6 +++--- 9 files changed, 30 insertions(+), 30 deletions(-) diff --git a/packages/core/babel-register/package.json b/packages/core/babel-register/package.json index 4386c3c6408..c8860593f34 100644 --- a/packages/core/babel-register/package.json +++ b/packages/core/babel-register/package.json @@ -1,6 +1,6 @@ { "name": "@parcel/babel-register", - "version": "1.10.3", + "version": "1.11.0", "description": "Blazing fast, zero configuration web application bundler", "main": "index.js", "license": "MIT", diff --git a/packages/core/fs/package.json b/packages/core/fs/package.json index 587d423aa82..8c7ae89f88b 100644 --- a/packages/core/fs/package.json +++ b/packages/core/fs/package.json @@ -1,6 +1,6 @@ { "name": "@parcel/fs", - "version": "1.10.3", + "version": "1.11.0", "description": "Blazing fast, zero configuration web application bundler", "main": "index.js", "license": "MIT", @@ -20,7 +20,7 @@ "prepublish": "yarn build" }, "dependencies": { - "@parcel/utils": "^1.10.3", + "@parcel/utils": "^1.11.0", "mkdirp": "^0.5.1", "rimraf": "^2.6.2" } diff --git a/packages/core/integration-tests/package.json b/packages/core/integration-tests/package.json index 05f684ff89a..8cf563fb5ac 100644 --- a/packages/core/integration-tests/package.json +++ b/packages/core/integration-tests/package.json @@ -1,6 +1,6 @@ { "name": "@parcel/integration-tests", - "version": "1.10.3", + "version": "1.11.0", "private": true, "license": "MIT", "repository": { @@ -14,8 +14,8 @@ "devDependencies": { "@babel/core": "^7.2.0", "@jetbrains/kotlinc-js-api": "^1.2.12", - "@parcel/fs": "^1.10.3", - "@parcel/test-utils": "^1.10.3", + "@parcel/fs": "^1.11.0", + "@parcel/test-utils": "^1.11.0", "codecov": "^3.0.0", "command-exists": "^1.2.6", "graphql-tag": "^2.6.0", @@ -26,7 +26,7 @@ "mocha-multi-reporters": "^1.1.7", "ncp": "^2.0.0", "nyc": "^11.1.0", - "parcel-bundler": "^1.10.3", + "parcel-bundler": "^1.11.0", "rimraf": "^2.6.1", "sinon": "^5.0.1", "sourcemap-validator": "^1.0.6", diff --git a/packages/core/logger/package.json b/packages/core/logger/package.json index de2aeab6ea0..dccdb33fba4 100644 --- a/packages/core/logger/package.json +++ b/packages/core/logger/package.json @@ -1,6 +1,6 @@ { "name": "@parcel/logger", - "version": "1.10.3", + "version": "1.11.0", "description": "Blazing fast, zero configuration web application bundler", "main": "index.js", "license": "MIT", @@ -20,15 +20,15 @@ "prepublish": "yarn build" }, "dependencies": { - "@parcel/workers": "^1.10.3", + "@parcel/workers": "^1.11.0", "chalk": "^2.1.0", "grapheme-breaker": "^0.3.2", "ora": "^2.1.0", "strip-ansi": "^4.0.0" }, "devDependencies": { + "@parcel/babel-register": "^1.11.0", "mocha": "^5.2.0", - "sinon": "^5.0.1", - "@parcel/babel-register": "^1.10.3" + "sinon": "^5.0.1" } } diff --git a/packages/core/parcel-bundler/package.json b/packages/core/parcel-bundler/package.json index 7399202ea5b..1e819659199 100644 --- a/packages/core/parcel-bundler/package.json +++ b/packages/core/parcel-bundler/package.json @@ -1,6 +1,6 @@ { "name": "parcel-bundler", - "version": "1.10.3", + "version": "1.11.0", "description": "Blazing fast, zero configuration web application bundler", "main": "index.js", "license": "MIT", @@ -28,11 +28,11 @@ "@babel/traverse": "^7.0.0", "@babel/types": "^7.0.0", "@iarna/toml": "^2.2.0", - "@parcel/fs": "^1.10.3", - "@parcel/logger": "^1.10.3", - "@parcel/utils": "^1.10.3", - "@parcel/watcher": "1.10.3", - "@parcel/workers": "^1.10.3", + "@parcel/fs": "^1.11.0", + "@parcel/logger": "^1.11.0", + "@parcel/utils": "^1.11.0", + "@parcel/watcher": "^1.11.0", + "@parcel/workers": "^1.11.0", "ansi-to-html": "^0.6.4", "babylon-walk": "^1.0.2", "browserslist": "^4.1.0", @@ -78,8 +78,8 @@ "@babel/plugin-syntax-export-namespace-from": "^7.0.0", "@babel/plugin-transform-runtime": "^7.0.0", "@babel/preset-flow": "^7.0.0", - "@parcel/babel-register": "^1.10.3", - "@parcel/test-utils": "^1.10.3", + "@parcel/babel-register": "^1.11.0", + "@parcel/test-utils": "^1.11.0", "@vue/component-compiler-utils": "^2.0.0", "babel-core": "^6.26.3", "babel-preset-env": "^1.7.0", diff --git a/packages/core/test-utils/package.json b/packages/core/test-utils/package.json index 8e36cc28e0d..21b34740888 100644 --- a/packages/core/test-utils/package.json +++ b/packages/core/test-utils/package.json @@ -1,6 +1,6 @@ { "name": "@parcel/test-utils", - "version": "1.10.3", + "version": "1.11.0", "description": "Blazing fast, zero configuration web application bundler", "main": "index.js", "license": "MIT", diff --git a/packages/core/utils/package.json b/packages/core/utils/package.json index 988a8f50732..25d7d7311e7 100644 --- a/packages/core/utils/package.json +++ b/packages/core/utils/package.json @@ -1,6 +1,6 @@ { "name": "@parcel/utils", - "version": "1.10.3", + "version": "1.11.0", "description": "Blazing fast, zero configuration web application bundler", "main": "index.js", "license": "MIT", diff --git a/packages/core/watcher/package.json b/packages/core/watcher/package.json index c7f813065f3..acce47215cc 100644 --- a/packages/core/watcher/package.json +++ b/packages/core/watcher/package.json @@ -1,6 +1,6 @@ { "name": "@parcel/watcher", - "version": "1.10.3", + "version": "1.11.0", "description": "Blazing fast, zero configuration web application bundler", "main": "index.js", "license": "MIT", @@ -17,13 +17,13 @@ "prepublish": "yarn build" }, "dependencies": { - "@parcel/utils": "^1.10.3", + "@parcel/utils": "^1.11.0", "chokidar": "^2.0.3" }, "devDependencies": { - "mocha": "^5.2.0", - "@parcel/babel-register": "^1.10.3", - "@parcel/fs": "^1.10.3", - "@parcel/test-utils": "^1.10.3" + "@parcel/babel-register": "^1.11.0", + "@parcel/fs": "^1.11.0", + "@parcel/test-utils": "^1.11.0", + "mocha": "^5.2.0" } } diff --git a/packages/core/workers/package.json b/packages/core/workers/package.json index 2f2e9827fd7..4fa10a737fc 100644 --- a/packages/core/workers/package.json +++ b/packages/core/workers/package.json @@ -1,6 +1,6 @@ { "name": "@parcel/workers", - "version": "1.10.3", + "version": "1.11.0", "description": "Blazing fast, zero configuration web application bundler", "main": "index.js", "license": "MIT", @@ -23,7 +23,7 @@ "mocha": "^5.2.0" }, "dependencies": { - "physical-cpu-count": "^2.0.0", - "@parcel/utils": "^1.10.3" + "@parcel/utils": "^1.11.0", + "physical-cpu-count": "^2.0.0" } } From ddb8234dc7cf2b24ee6d9e1899c63deab9a34fa1 Mon Sep 17 00:00:00 2001 From: Lex Alexander Date: Mon, 29 Oct 2018 17:15:47 -0700 Subject: [PATCH 2/3] feat(autoinstall): Add disabling of autoinstall globally via environment variable -Closes #2130. --- .../core/integration-tests/test/javascript.js | 20 +++++++++++++++++++ packages/core/parcel-bundler/src/Bundler.js | 15 ++++++++++---- .../dont-autoinstall-if-env-var-is-false/.env | 1 + .../index.js | 4 ++++ .../package.json | 4 ++++ 5 files changed, 40 insertions(+), 4 deletions(-) create mode 100644 packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/.env create mode 100644 packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/index.js create mode 100644 packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/package.json diff --git a/packages/core/integration-tests/test/javascript.js b/packages/core/integration-tests/test/javascript.js index a8b1fdd6c8a..33e9a4f4941 100644 --- a/packages/core/integration-tests/test/javascript.js +++ b/packages/core/integration-tests/test/javascript.js @@ -50,6 +50,26 @@ describe('javascript', function() { assert.equal(output.default(), 3); }); + it('should not autoinstall if PARCEL_AUTOINSTALL is set to false', async function() { + const inputDir = path.join( + __dirname, + '/integration/dont-autoinstall-if-env-var-is-false/' + ); + try { + let a = await bundle(path.resolve(inputDir, './index.js')); + await run(a); + } catch (e) { + let pkg = await fs.readFile( + path.resolve(inputDir, 'package.json'), + 'utf8' + ); + const pkgName = 'lodash'; + pkg = JSON.parse(pkg); + assert(pkgName in pkg.dependencies === false); + assert(e.message.includes("Cannot resolve dependency 'lodash'")); + } + }); + it('should auto install babel-core v6', async function() { let originalPkg = await fs.readFile( __dirname + '/integration/babel-6-autoinstall/package.json' diff --git a/packages/core/parcel-bundler/src/Bundler.js b/packages/core/parcel-bundler/src/Bundler.js index 2806990608c..b7d17910dee 100644 --- a/packages/core/parcel-bundler/src/Bundler.js +++ b/packages/core/parcel-bundler/src/Bundler.js @@ -107,6 +107,16 @@ class Bundler extends EventEmitter { : typeof options.hmr === 'boolean' ? options.hmr : watch; + const setAutoInstall = () => { + const {PARCEL_AUTOINSTALL} = process.env; + if (typeof options.autoInstall === 'boolean') { + return options.autoinstall; + } + if (PARCEL_AUTOINSTALL === 'false') { + return false; + } + return !isProduction; + }; const scopeHoist = options.scopeHoist !== undefined ? options.scopeHoist : false; return { @@ -141,10 +151,7 @@ class Bundler extends EventEmitter { (options.target === 'electron' ? 'localhost' : ''), detailedReport: options.detailedReport || false, global: options.global, - autoinstall: - typeof options.autoinstall === 'boolean' - ? options.autoinstall - : !isProduction, + autoinstall: setAutoInstall(), scopeHoist: scopeHoist, contentHash: typeof options.contentHash === 'boolean' diff --git a/packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/.env b/packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/.env new file mode 100644 index 00000000000..ae52a618025 --- /dev/null +++ b/packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/.env @@ -0,0 +1 @@ +PARCEL_AUTOINSTALL=false diff --git a/packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/index.js b/packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/index.js new file mode 100644 index 00000000000..0eb870aa590 --- /dev/null +++ b/packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/index.js @@ -0,0 +1,4 @@ +const _ = require('lodash'); +module.exports = function() { + return 'hello world'; +} diff --git a/packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/package.json b/packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/package.json new file mode 100644 index 00000000000..70f7cadc900 --- /dev/null +++ b/packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/package.json @@ -0,0 +1,4 @@ +{ + "name": "dont-autoinstall-if-env-var-is-false", + "dependencies": {} +} From 933f91dbba9dcc2007b39f459d270644190fef63 Mon Sep 17 00:00:00 2001 From: Devon Govett Date: Tue, 5 Mar 2019 21:07:15 -0800 Subject: [PATCH 3/3] Reset var after test --- .../dont-autoinstall-if-env-var-is-false/.env | 0 .../index.js | 0 .../package.json | 0 .../core/integration-tests/test/javascript.js | 2 ++ packages/core/parcel-bundler/src/Bundler.js | 17 ++++++----------- 5 files changed, 8 insertions(+), 11 deletions(-) rename packages/core/{parcel-bundler => integration-tests}/test/integration/dont-autoinstall-if-env-var-is-false/.env (100%) rename packages/core/{parcel-bundler => integration-tests}/test/integration/dont-autoinstall-if-env-var-is-false/index.js (100%) rename packages/core/{parcel-bundler => integration-tests}/test/integration/dont-autoinstall-if-env-var-is-false/package.json (100%) diff --git a/packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/.env b/packages/core/integration-tests/test/integration/dont-autoinstall-if-env-var-is-false/.env similarity index 100% rename from packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/.env rename to packages/core/integration-tests/test/integration/dont-autoinstall-if-env-var-is-false/.env diff --git a/packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/index.js b/packages/core/integration-tests/test/integration/dont-autoinstall-if-env-var-is-false/index.js similarity index 100% rename from packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/index.js rename to packages/core/integration-tests/test/integration/dont-autoinstall-if-env-var-is-false/index.js diff --git a/packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/package.json b/packages/core/integration-tests/test/integration/dont-autoinstall-if-env-var-is-false/package.json similarity index 100% rename from packages/core/parcel-bundler/test/integration/dont-autoinstall-if-env-var-is-false/package.json rename to packages/core/integration-tests/test/integration/dont-autoinstall-if-env-var-is-false/package.json diff --git a/packages/core/integration-tests/test/javascript.js b/packages/core/integration-tests/test/javascript.js index 33e9a4f4941..a52f63d62ef 100644 --- a/packages/core/integration-tests/test/javascript.js +++ b/packages/core/integration-tests/test/javascript.js @@ -68,6 +68,8 @@ describe('javascript', function() { assert(pkgName in pkg.dependencies === false); assert(e.message.includes("Cannot resolve dependency 'lodash'")); } + + delete process.env.PARCEL_AUTOINSTALL; }); it('should auto install babel-core v6', async function() { diff --git a/packages/core/parcel-bundler/src/Bundler.js b/packages/core/parcel-bundler/src/Bundler.js index b7d17910dee..13214172eda 100644 --- a/packages/core/parcel-bundler/src/Bundler.js +++ b/packages/core/parcel-bundler/src/Bundler.js @@ -107,16 +107,6 @@ class Bundler extends EventEmitter { : typeof options.hmr === 'boolean' ? options.hmr : watch; - const setAutoInstall = () => { - const {PARCEL_AUTOINSTALL} = process.env; - if (typeof options.autoInstall === 'boolean') { - return options.autoinstall; - } - if (PARCEL_AUTOINSTALL === 'false') { - return false; - } - return !isProduction; - }; const scopeHoist = options.scopeHoist !== undefined ? options.scopeHoist : false; return { @@ -151,7 +141,12 @@ class Bundler extends EventEmitter { (options.target === 'electron' ? 'localhost' : ''), detailedReport: options.detailedReport || false, global: options.global, - autoinstall: setAutoInstall(), + autoinstall: + typeof options.autoInstall === 'boolean' + ? options.autoInstall + : process.env.PARCEL_AUTOINSTALL === 'false' + ? false + : !isProduction, scopeHoist: scopeHoist, contentHash: typeof options.contentHash === 'boolean'