Skip to content

Commit

Permalink
show webpack errors in console
Browse files Browse the repository at this point in the history
  • Loading branch information
reZach committed Feb 18, 2021
1 parent 5a1710e commit 21f5238
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 2 deletions.
19 changes: 19 additions & 0 deletions dev-scripts/launchDevServer.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ const {
exec
} = require("child_process");
const logFilePath = "./dev-scripts/webpack-dev-server.log";
const errorLogFilePath = "./dev-scripts/webpack-dev-server-error.log";
const interval = 100;

// Poll webpack-dev-server.log until the webpack bundle has compiled successfully
Expand All @@ -22,6 +23,24 @@ const intervalId = setInterval(function () {

// Start our electron app
exec("cross-env NODE_ENV=development electron .");
} else if (log.indexOf("Failed to compile.") >= 0){

if (fs.existsSync(errorLogFilePath)){
const errorLog = fs.readFileSync(errorLogFilePath, {
encoding: "utf8"
});

console.log(errorLog);
console.log(`Webpack failed to compile; this error has also been logged to '${errorLogFilePath}'.`);
clearInterval(intervalId);

return process.exit(1);
} else {
console.log("Webpack failed to compile, but the error is unknown.")
clearInterval(intervalId);

return process.exit(1);
}
}
}
} catch (error) {
Expand Down
8 changes: 8 additions & 0 deletions dev-scripts/prepareDevServer.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ const {
exec
} = require("child_process");
const logFilePath = "./dev-scripts/webpack-dev-server.log";
const errorLogFilePath = "./dev-scripts/webpack-dev-server-error.log";

console.log("Preparing webpack development server.");

Expand All @@ -13,5 +14,12 @@ try {
// Existing webpack-dev-server log file may not exist
}

// Delete the old webpack-dev-server-error.log if it is present
try {
fs.unlinkSync(errorLogFilePath);
} catch (error) {
// Existing webpack-dev-server-error log file may not exist
}

// Start the webpack development server
exec("npm run dev-server");
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
{
"name": "secure-electron-template",
"version": "9.4.1",
"version": "9.4.2",
"description": "The best way to build Electron apps with security in mind.",
"private": true,
"main": "app/electron/main.js",
"scripts": {
"postinstall": "electron-builder install-app-deps",
"audit-app": "npx electronegativity -i ./ -x LimitNavigationGlobalCheck,PermissionRequestHandlerGlobalCheck",
"translate": "node ./app/localization/translateMissing.js",
"dev-server": "cross-env NODE_ENV=development webpack serve --config ./webpack.development.js > dev-scripts/webpack-dev-server.log",
"dev-server": "cross-env NODE_ENV=development webpack serve --config ./webpack.development.js > dev-scripts/webpack-dev-server.log 2> dev-scripts/webpack-dev-server-error.log",
"dev": "concurrently --success first \"node dev-scripts/prepareDevServer.js\" \"node dev-scripts/launchDevServer.js\" -k",
"prod-build": "cross-env NODE_ENV=production npx webpack --mode=production --config ./webpack.production.js",
"prod": "npm run prod-build && electron .",
Expand Down

0 comments on commit 21f5238

Please sign in to comment.