Skip to content

Commit 449e8a7

Browse files
fix: use correct method for showing all warnings on initialize
1 parent 86dd22a commit 449e8a7

File tree

2 files changed

+36
-31
lines changed

2 files changed

+36
-31
lines changed

lib/common/verify-node-version.ts

+31-26
Original file line numberDiff line numberDiff line change
@@ -53,38 +53,43 @@ export function verifyNodeVersion(): void {
5353
}
5454
}
5555

56+
var isGetNodeWarningCalled = false;
5657
export function getNodeWarning(): ISystemWarning {
57-
var verificationOpts = getNodeVersionOpts();
58-
var cliName = verificationOpts.cliName;
59-
var supportedVersionsRange = verificationOpts.supportedVersionsRange;
60-
var deprecatedVersions = verificationOpts.deprecatedVersions;
61-
var nodeVer = verificationOpts.nodeVer;
58+
if (!isGetNodeWarningCalled) {
59+
isGetNodeWarningCalled = true;
60+
61+
var verificationOpts = getNodeVersionOpts();
62+
var cliName = verificationOpts.cliName;
63+
var supportedVersionsRange = verificationOpts.supportedVersionsRange;
64+
var deprecatedVersions = verificationOpts.deprecatedVersions;
65+
var nodeVer = verificationOpts.nodeVer;
6266

63-
var warningMessage = "";
64-
if (deprecatedVersions) {
65-
deprecatedVersions.forEach(function (version) {
66-
if (semver.satisfies(nodeVer, version)) {
67-
warningMessage = "Support for Node.js " + version + " is deprecated and will be removed in one of the next releases of " + cliName +
68-
". Please, upgrade to the latest Node.js LTS version. ";
69-
return warningMessage;
67+
var warningMessage = "";
68+
if (deprecatedVersions) {
69+
deprecatedVersions.forEach(function (version) {
70+
if (semver.satisfies(nodeVer, version)) {
71+
warningMessage = "Support for Node.js " + version + " is deprecated and will be removed in one of the next releases of " + cliName +
72+
". Please, upgrade to the latest Node.js LTS version. ";
73+
return warningMessage;
74+
}
75+
});
76+
}
77+
78+
if (!warningMessage) {
79+
var checkSatisfied = semver.satisfies(nodeVer, supportedVersionsRange);
80+
if (!checkSatisfied) {
81+
warningMessage = "Support for Node.js " + nodeVer + " is not verified. " + cliName + " CLI might not install or run properly.";
7082
}
71-
});
72-
}
83+
}
7384

74-
if (!warningMessage) {
75-
var checkSatisfied = semver.satisfies(nodeVer, supportedVersionsRange);
76-
if (!checkSatisfied) {
77-
warningMessage = "Support for Node.js " + nodeVer + " is not verified. " + cliName + " CLI might not install or run properly.";
85+
if (warningMessage) {
86+
return {
87+
message: warningMessage,
88+
severity: SystemWarningsSeverity.medium
89+
};
7890
}
79-
}
8091

81-
if (warningMessage) {
82-
return {
83-
message: warningMessage,
84-
severity: SystemWarningsSeverity.medium
85-
};
92+
return null;
8693
}
87-
88-
return null;
8994
}
9095
/* tslint:enable */

lib/services/initialize-service.ts

+5-5
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,15 @@ export class InitializeService implements IInitializeService {
1515

1616
private async showWarnings($logger: ILogger): Promise<void> {
1717
const $sysInfo = $injector.resolve<ISysInfo>("sysInfo");
18-
const macOSWarning = await $sysInfo.getMacOSWarningMessage();
19-
if (macOSWarning) {
20-
const message = `${EOL}${macOSWarning.message}${EOL}`;
21-
if (macOSWarning.severity === SystemWarningsSeverity.high) {
18+
const systemWarnings = await $sysInfo.getSystemWarnings();
19+
_.each(systemWarnings, systemWarning => {
20+
const message = `${EOL}${systemWarning.message}${EOL}`;
21+
if (systemWarning.severity === SystemWarningsSeverity.high) {
2222
$logger.printOnStderr(message.red.bold);
2323
} else {
2424
$logger.warn(message);
2525
}
26-
}
26+
});
2727
}
2828
}
2929

0 commit comments

Comments
 (0)