Skip to content

Commit e93425d

Browse files
committed
Bump VS Code engine to 1.65.0
This is necessary to take the language client library update. Unfortunately it means that ADS won't be able to take the next update to our extension until they catch up to at least this engine version. It could be worse, we didn't have to bump to 1.7x.
1 parent 697722c commit e93425d

File tree

4 files changed

+38
-91
lines changed

4 files changed

+38
-91
lines changed

package-lock.json

+8-8
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"publisher": "ms-vscode",
77
"description": "(Preview) Develop PowerShell modules, commands and scripts in Visual Studio Code!",
88
"engines": {
9-
"vscode": "^1.62.0"
9+
"vscode": "^1.65.0"
1010
},
1111
"license": "SEE LICENSE IN LICENSE.txt",
1212
"homepage": "https://github.com/PowerShell/vscode-powershell/blob/main/README.md",
@@ -62,7 +62,7 @@
6262
"@types/semver": "~7.3.12",
6363
"@types/sinon": "~10.0.13",
6464
"@types/uuid": "~8.3.4",
65-
"@types/vscode": "~1.62.0",
65+
"@types/vscode": "~1.65.0",
6666
"@vscode/test-electron": "~2.1.5",
6767
"esbuild": "^0.15.1",
6868
"glob": "^8.0.3",

src/process.ts

+1-5
Original file line numberDiff line numberDiff line change
@@ -111,13 +111,9 @@ export class PowerShellProcess {
111111
shellArgs: powerShellArgs,
112112
cwd: this.sessionSettings.cwd,
113113
iconPath: new vscode.ThemeIcon("terminal-powershell"),
114+
isTransient: true,
114115
};
115116

116-
if (semver.gte(vscode.version, "1.65.0")) {
117-
// @ts-ignore TODO: Don't ignore after we update our engine.
118-
terminalOptions.isTransient = true;
119-
}
120-
121117
this.consoleTerminal = vscode.window.createTerminal(terminalOptions);
122118

123119
const pwshName = path.basename(this.exePath);

src/session.ts

+27-76
Original file line numberDiff line numberDiff line change
@@ -91,9 +91,7 @@ export class SessionManager implements Middleware {
9191
private focusConsoleOnExecute: boolean;
9292
private platformDetails: IPlatformDetails;
9393
private languageClientConsumers: LanguageClientConsumer[] = [];
94-
// @ts-ignore TODO: Don't ignore after we update our engine.
9594
private languageStatusItem: vscode.LanguageStatusItem;
96-
private statusBarItem: vscode.StatusBarItem;
9795
private languageServerProcess: PowerShellProcess;
9896
private debugSessionProcess: PowerShellProcess;
9997
private debugEventHandler: vscode.Disposable;
@@ -711,90 +709,43 @@ Type 'help' to get help.
711709

712710
private createStatusBarItem() {
713711
const statusTitle: string = "Show PowerShell Session Menu";
714-
// TODO: Remove old status bar logic when we update our engine.
715-
if (semver.gte(vscode.version, "1.65.0") && this.languageStatusItem === undefined) {
716-
// @ts-ignore
717-
this.languageStatusItem = vscode.languages.createLanguageStatusItem("powershell", this.documentSelector);
718-
this.languageStatusItem.command = { title: statusTitle, command: this.ShowSessionMenuCommandName };
719-
this.languageStatusItem.text = "$(terminal-powershell)";
720-
} else if (this.statusBarItem === undefined) {
721-
// Create the status bar item and place it right next
722-
// to the language indicator
723-
this.statusBarItem =
724-
vscode.window.createStatusBarItem(
725-
vscode.StatusBarAlignment.Right,
726-
1);
727-
728-
this.statusBarItem.command = this.ShowSessionMenuCommandName;
729-
this.statusBarItem.tooltip = statusTitle;
730-
this.statusBarItem.show();
731-
vscode.window.onDidChangeActiveTextEditor((textEditor) => {
732-
if (textEditor === undefined
733-
|| textEditor.document.languageId !== "powershell") {
734-
this.statusBarItem.hide();
735-
} else {
736-
this.statusBarItem.show();
737-
}
738-
});
712+
if (this.languageStatusItem !== undefined) {
713+
return;
739714
}
715+
this.languageStatusItem = vscode.languages.createLanguageStatusItem("powershell", this.documentSelector);
716+
this.languageStatusItem.command = { title: statusTitle, command: this.ShowSessionMenuCommandName };
717+
this.languageStatusItem.text = "$(terminal-powershell)";
740718
}
741719

742720
private setSessionStatus(statusText: string, status: SessionStatus): void {
743721
this.sessionStatus = status;
744-
// TODO: Remove old status bar logic when we update our engine.
745-
if (semver.gte(vscode.version, "1.65.0")) {
746-
this.languageStatusItem.detail = "PowerShell " + statusText;
747-
switch (status) {
748-
case SessionStatus.Running:
749-
case SessionStatus.NeverStarted:
750-
case SessionStatus.NotStarted:
751-
this.languageStatusItem.busy = false;
752-
// @ts-ignore
753-
this.languageStatusItem.severity = vscode.LanguageStatusSeverity.Information;
754-
break;
755-
case SessionStatus.Initializing:
756-
case SessionStatus.Stopping:
757-
this.languageStatusItem.busy = true;
758-
// @ts-ignore
759-
this.languageStatusItem.severity = vscode.LanguageStatusSeverity.Warning;
760-
break;
761-
case SessionStatus.Failed:
762-
this.languageStatusItem.busy = false;
763-
// @ts-ignore
764-
this.languageStatusItem.severity = vscode.LanguageStatusSeverity.Error;
765-
break;
766-
}
767-
} else {
768-
switch (status) {
769-
case SessionStatus.Running:
770-
case SessionStatus.NeverStarted:
771-
case SessionStatus.NotStarted:
772-
this.statusBarItem.text = "$(terminal-powershell)";
773-
// These have to be reset because this function mutates state.
774-
this.statusBarItem.color = undefined;
775-
this.statusBarItem.backgroundColor = undefined;
776-
break;
777-
case SessionStatus.Initializing:
778-
case SessionStatus.Stopping:
779-
this.statusBarItem.text = "$(sync)";
780-
this.statusBarItem.color = new vscode.ThemeColor("statusBarItem.warningForeground");
781-
this.statusBarItem.backgroundColor = new vscode.ThemeColor("statusBarItem.warningBackground");
782-
break;
783-
case SessionStatus.Failed:
784-
this.statusBarItem.text = "$(alert)";
785-
this.statusBarItem.color = new vscode.ThemeColor("statusBarItem.errorForeground");
786-
this.statusBarItem.backgroundColor = new vscode.ThemeColor("statusBarItem.errorBackground");
787-
break;
788-
}
789-
this.statusBarItem.text += " " + statusText;
722+
this.languageStatusItem.detail = "PowerShell " + statusText;
723+
switch (status) {
724+
case SessionStatus.Running:
725+
case SessionStatus.NeverStarted:
726+
case SessionStatus.NotStarted:
727+
this.languageStatusItem.busy = false;
728+
// @ts-ignore
729+
this.languageStatusItem.severity = vscode.LanguageStatusSeverity.Information;
730+
break;
731+
case SessionStatus.Initializing:
732+
case SessionStatus.Stopping:
733+
this.languageStatusItem.busy = true;
734+
// @ts-ignore
735+
this.languageStatusItem.severity = vscode.LanguageStatusSeverity.Warning;
736+
break;
737+
case SessionStatus.Failed:
738+
this.languageStatusItem.busy = false;
739+
// @ts-ignore
740+
this.languageStatusItem.severity = vscode.LanguageStatusSeverity.Error;
741+
break;
790742
}
743+
791744
}
792745

793746
private setSessionVersion(version: string): void {
794747
// TODO: Accept a VersionDetails object instead of a string.
795-
if (semver.gte(vscode.version, "1.65.0")) {
796-
this.languageStatusItem.text = "$(terminal-powershell) " + version;
797-
}
748+
this.languageStatusItem.text = "$(terminal-powershell) " + version;
798749
this.setSessionStatus(version, SessionStatus.Running);
799750
}
800751

0 commit comments

Comments
 (0)