diff --git a/lib/Compilation.js b/lib/Compilation.js index b00f7495c20..60242bac20f 100644 --- a/lib/Compilation.js +++ b/lib/Compilation.js @@ -533,20 +533,6 @@ class Compilation extends Tapable { } let trace; switch (type) { - case LogType.profile: - // eslint-disable-next-line node/no-unsupported-features/node-builtins - if (typeof console.profile === "function") { - // eslint-disable-next-line node/no-unsupported-features/node-builtins - console.profile(`[${name}] ${args[0]}`); - } - return; - case LogType.profileEnd: - // eslint-disable-next-line node/no-unsupported-features/node-builtins - if (typeof console.profileEnd === "function") { - // eslint-disable-next-line node/no-unsupported-features/node-builtins - console.profileEnd(`[${name}] ${args[0]}`); - } - return; case LogType.warn: case LogType.error: case LogType.trace: @@ -562,6 +548,13 @@ class Compilation extends Tapable { trace }; if (this.hooks.log.call(name, logEntry) === undefined) { + if (logEntry.type === LogType.profileEnd) { + // eslint-disable-next-line node/no-unsupported-features/node-builtins + if (typeof console.profileEnd === "function") { + // eslint-disable-next-line node/no-unsupported-features/node-builtins + console.profileEnd(`[${logEntry.name}] ${logEntry.args[0]}`); + } + } if (logEntries === undefined) { logEntries = this.logging.get(name); if (logEntries === undefined) { @@ -570,6 +563,13 @@ class Compilation extends Tapable { } } logEntries.push(logEntry); + if (logEntry.type === LogType.profile) { + // eslint-disable-next-line node/no-unsupported-features/node-builtins + if (typeof console.profile === "function") { + // eslint-disable-next-line node/no-unsupported-features/node-builtins + console.profile(`[${logEntry.name}] ${logEntry.args[0]}`); + } + } } }); } diff --git a/lib/Stats.js b/lib/Stats.js index 11d8fd50baa..f023f511cfa 100644 --- a/lib/Stats.js +++ b/lib/Stats.js @@ -749,6 +749,8 @@ class Stats { LogType.group, LogType.groupEnd, LogType.groupCollapsed, + LogType.profile, + LogType.profileEnd, LogType.time, LogType.clear ]); @@ -1451,6 +1453,14 @@ class Stats { case LogType.debug: color = colors.normal; break; + case LogType.profile: + color = colors.magenta; + prefix = "

"; + break; + case LogType.profileEnd: + color = colors.magenta; + prefix = "

"; + break; case LogType.time: color = colors.magenta; prefix = " ";