diff --git a/eslint/babel-eslint-config-internal/index.js b/eslint/babel-eslint-config-internal/index.js index 752207e50245..441bf5f37bc6 100644 --- a/eslint/babel-eslint-config-internal/index.js +++ b/eslint/babel-eslint-config-internal/index.js @@ -34,7 +34,7 @@ module.exports = { "no-inner-declarations": "off", "no-labels": "off", "no-loop-func": "off", - "no-process-exit": "off", + "no-process-exit": "error", "no-return-assign": "off", "no-shadow": "off", "no-underscore-dangle": "off", diff --git a/packages/babel-compat-data/scripts/build-data.js b/packages/babel-compat-data/scripts/build-data.js index aab44f0fe971..6d23d4c0b5bb 100644 --- a/packages/babel-compat-data/scripts/build-data.js +++ b/packages/babel-compat-data/scripts/build-data.js @@ -290,7 +290,7 @@ const generateData = (environments, features) => { }); }; -["plugin", "corejs2-built-in"].forEach(target => { +for (const target of ["plugin", "corejs2-built-in"]) { const newData = generateData( environments, require(`./data/${target}-features`) @@ -305,11 +305,10 @@ const generateData = (environments, features) => { "The newly generated plugin/built-in data does not match the current " + "files. Re-run `npm run build-data`." ); - process.exit(1); + process.exitCode = 1; + break; } - - process.exit(0); + } else { + fs.writeFileSync(dataPath, `${JSON.stringify(newData, null, 2)}\n`); } - - fs.writeFileSync(dataPath, `${JSON.stringify(newData, null, 2)}\n`); -}); +} diff --git a/packages/babel-node/src/babel-node.js b/packages/babel-node/src/babel-node.js index 4f0a7be101a8..7a3bad135fdb 100755 --- a/packages/babel-node/src/babel-node.js +++ b/packages/babel-node/src/babel-node.js @@ -92,7 +92,7 @@ getV8Flags(function(err, v8Flags) { if (signal) { process.kill(process.pid, signal); } else { - process.exit(code); + process.exitCode = code; } }); }); diff --git a/packages/babel-parser/bin/babel-parser.js b/packages/babel-parser/bin/babel-parser.js index 58f00b845c0c..3aca314533b3 100755 --- a/packages/babel-parser/bin/babel-parser.js +++ b/packages/babel-parser/bin/babel-parser.js @@ -7,10 +7,9 @@ var fs = require("fs"); var filename = process.argv[2]; if (!filename) { console.error("no filename specified"); - process.exit(0); -} - -var file = fs.readFileSync(filename, "utf8"); -var ast = parser.parse(file); +} else { + var file = fs.readFileSync(filename, "utf8"); + var ast = parser.parse(file); -console.log(JSON.stringify(ast, null, " ")); + console.log(JSON.stringify(ast, null, " ")); +} diff --git a/packages/babel-preset-env/scripts/smoke-test.js b/packages/babel-preset-env/scripts/smoke-test.js index 607bdcdabf82..a06dcf5303f0 100755 --- a/packages/babel-preset-env/scripts/smoke-test.js +++ b/packages/babel-preset-env/scripts/smoke-test.js @@ -108,4 +108,4 @@ console.log("Cleaning up"); fs.removeSync(tempFolderPath); fs.removeSync(packPath); -process.exit(errorOccurred ? 1 : 0); +process.exitCode = errorOccurred ? 1 : 0;