Skip to content

Commit 6a1f3f7

Browse files
committed
Fixes microsoft#143923: Show a warning when extensionKind is defined without a main field.
1 parent 6d64839 commit 6a1f3f7

File tree

2 files changed

+8
-3
lines changed

2 files changed

+8
-3
lines changed

src/vs/workbench/services/extensions/common/abstractExtensionService.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -945,7 +945,7 @@ export abstract class AbstractExtensionService extends Disposable implements IEx
945945

946946
protected createLogger(): Logger {
947947
return new Logger((severity, source, message) => {
948-
if (this._isDev && source) {
948+
if (source) {
949949
this._logOrShowMessage(severity, `[${source}]: ${message}`);
950950
} else {
951951
this._logOrShowMessage(severity, message);
@@ -956,9 +956,8 @@ export abstract class AbstractExtensionService extends Disposable implements IEx
956956
protected _logOrShowMessage(severity: Severity, msg: string): void {
957957
if (this._isDev) {
958958
this._showMessageToUser(severity, msg);
959-
} else {
960-
this._logMessageInConsole(severity, msg);
961959
}
960+
this._logMessageInConsole(severity, msg);
962961
}
963962

964963
private _acquireInternalAPI(): IInternalExtensionService {

src/vs/workbench/services/extensions/common/extensionPoints.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -468,6 +468,12 @@ class ExtensionManifestValidator extends ExtensionManifestHandler {
468468
return false;
469469
}
470470
}
471+
if (typeof extensionDescription.extensionKind !== 'undefined') {
472+
if (typeof extensionDescription.main === 'undefined') {
473+
notices.push(nls.localize('extensionDescription.extensionKind', "property `{0}` can be defined only if property `main` is also defined.", 'extensionKind'));
474+
// not a failure case
475+
}
476+
}
471477
if (typeof extensionDescription.main !== 'undefined') {
472478
if (typeof extensionDescription.main !== 'string') {
473479
notices.push(nls.localize('extensionDescription.main1', "property `{0}` can be omitted or must be of type `string`", 'main'));

0 commit comments

Comments
 (0)