From b687f2672b8c66a0d93c79b50525a9c4c1ba4cb1 Mon Sep 17 00:00:00 2001 From: David Barbet Date: Mon, 4 Dec 2023 17:33:51 -0800 Subject: [PATCH 1/4] Increment prerelease version --- version.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.json b/version.json index 0824d78ec..56f1df7c1 100644 --- a/version.json +++ b/version.json @@ -1,6 +1,6 @@ { "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json", - "version": "2.13", + "version": "2.14", "publicReleaseRefSpec": [ "^refs/heads/release$", "^refs/heads/main$", From e59cfbb3dd58eba76405a9dfecc3deccf8e9f294 Mon Sep 17 00:00:00 2001 From: David Barbet Date: Wed, 6 Dec 2023 11:22:13 -0800 Subject: [PATCH 2/4] Read extension paths option --- src/lsptoolshost/roslynLanguageServer.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/lsptoolshost/roslynLanguageServer.ts b/src/lsptoolshost/roslynLanguageServer.ts index 176167149..f007b8093 100644 --- a/src/lsptoolshost/roslynLanguageServer.ts +++ b/src/lsptoolshost/roslynLanguageServer.ts @@ -902,7 +902,7 @@ export async function activateRoslynLanguageServer( return languageServer; function scanExtensionPlugins(): string[] { - return vscode.extensions.all.flatMap((extension) => { + const extensionsFromPackageJson = vscode.extensions.all.flatMap((extension) => { let loadPaths = extension.packageJSON.contributes?.['csharpExtensionLoadPaths']; if (loadPaths === undefined || loadPaths === null) { _traceChannel.appendLine(`Extension ${extension.id} does not contribute csharpExtensionLoadPaths`); @@ -920,6 +920,8 @@ export async function activateRoslynLanguageServer( _traceChannel.appendLine(`Extension ${extension.id} contributes csharpExtensionLoadPaths: ${loadPaths}`); return loadPaths; }); + const extensionsFromOptions = languageServerOptions.extensionsPaths ?? []; + return extensionsFromPackageJson.concat(extensionsFromOptions); } } From 5acd3f79adead11af6a0eff372f37217a63e7b4d Mon Sep 17 00:00:00 2001 From: Gregg Miskelly Date: Thu, 7 Dec 2023 17:53:22 -0800 Subject: [PATCH 3/4] Fix description of debugger `console` setting (#6726) This PR updates the description of the `console` debugger setting. Improvements made: * The launch.json setting is applicable to all project types, so don't indicate it only applies to console projects * Update wording to match what we have in the documentation * Add a link to the documentation * Don't incorrectly indicate that `internalConsole` doesn't support reading from the console. This PR also increases the max VSIX size to get PR builds working again. A node upgrade (18.18.2 -> 18.19.0) seems to have pushed us over the limit. --- package.nls.json | 10 +++++----- src/tools/OptionsSchema.json | 10 +++++----- test/artifactTests/vsix.test.ts | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/package.nls.json b/package.nls.json index 1e3deecef..dde13ce3b 100644 --- a/package.nls.json +++ b/package.nls.json @@ -188,16 +188,16 @@ "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered." ] }, - "generateOptionsSchema.console.markdownDescription": "When launching console projects, indicates which console the target program should be launched into.", + "generateOptionsSchema.console.markdownDescription": "Indicates which console the target program should be launched into. See https://aka.ms/VSCode-CS-LaunchJson-Console for more information.", "generateOptionsSchema.console.settingsDescription": { - "message": "**Note:** _This option is only used for the `dotnet` debug configuration type_.\n\nWhen launching console projects, indicates which console the target program should be launched into.", + "message": "**Note:** _This option is only used for console projects launched with the `dotnet` debug configuration type_.\n\nIndicates which console the target program should be launched into. See https://aka.ms/VSCode-CS-LaunchJson-Console for more information.", "comment": [ "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered." ] }, - "generateOptionsSchema.console.internalConsole.enumDescription": "Output to the VS Code Debug Console. This doesn't support reading console input (ex:Console.ReadLine).", - "generateOptionsSchema.console.integratedTerminal.enumDescription": "VS Code's integrated terminal.", - "generateOptionsSchema.console.externalTerminal.enumDescription": "External terminal that can be configured via user settings.", + "generateOptionsSchema.console.internalConsole.enumDescription": "The target process's console input (stdin) and output (stdout/stderr) are routed through the VS Code Debug Console.", + "generateOptionsSchema.console.integratedTerminal.enumDescription": "The target process will run inside VS Code's integrated terminal.", + "generateOptionsSchema.console.externalTerminal.enumDescription": "The target process will run inside its own external terminal. When using this mode, you will need to switch focus between Visual Studio Code and the external terminal window.", "generateOptionsSchema.externalConsole.markdownDescription": { "message": "Attribute `externalConsole` is deprecated, use `console` instead. This option defaults to `false`.", "comment": [ diff --git a/src/tools/OptionsSchema.json b/src/tools/OptionsSchema.json index 3db5affba..d10c80dc9 100644 --- a/src/tools/OptionsSchema.json +++ b/src/tools/OptionsSchema.json @@ -371,12 +371,12 @@ "type": "string", "enum": [ "internalConsole", "integratedTerminal", "externalTerminal" ], "enumDescriptions": [ - "Output to the VS Code Debug Console. This doesn't support reading console input (ex:Console.ReadLine).", - "VS Code's integrated terminal.", - "External terminal that can be configured via user settings." + "The target process's console input (stdin) and output (stdout/stderr) are routed through the VS Code Debug Console.", + "The target process will run inside VS Code's integrated terminal.", + "The target process will run inside its own external terminal. When using this mode, you will need to switch focus between Visual Studio Code and the external terminal window." ], - "markdownDescription": "When launching console projects, indicates which console the target program should be launched into.", - "settingsDescription": "**Note:** _This option is only used for the `dotnet` debug configuration type_.\n\nWhen launching console projects, indicates which console the target program should be launched into.", + "markdownDescription": "Indicates which console the target program should be launched into. See https://aka.ms/VSCode-CS-LaunchJson-Console for more information.", + "settingsDescription": "**Note:** _This option is only used for console projects launched with the `dotnet` debug configuration type_.\n\nIndicates which console the target program should be launched into. See https://aka.ms/VSCode-CS-LaunchJson-Console for more information.", "default": "internalConsole" }, "externalConsole": { diff --git a/test/artifactTests/vsix.test.ts b/test/artifactTests/vsix.test.ts index ccc134550..f4855953c 100644 --- a/test/artifactTests/vsix.test.ts +++ b/test/artifactTests/vsix.test.ts @@ -18,7 +18,7 @@ describe('Vscode VSIX', () => { vsixFiles.forEach((element) => { // We're packaging the platform specific Roslyn server with ready to run in the vsix, so the size should be roughly ~50MB // We also publish the Razor server, which is roughly ~75MB - const sizeInMB = 220; + const sizeInMB = 230; const maximumVsixSizeInBytes = sizeInMB * 1024 * 1024; describe(`Given ${element}`, () => { From 7a9ccc4e8a3e89779e4a5edfcbcc0940fca5cda4 Mon Sep 17 00:00:00 2001 From: Gregg Miskelly Date: Fri, 8 Dec 2023 13:04:13 -0800 Subject: [PATCH 4/4] Fix Remote Process Listing from Windows (#6730) The change to produce the Windows .vsix files on a Windows machine exposed the fact that we didn't have a .gitattributes entry in this repo to force the process listing script to use LF line endings, thus breaking remote process listing from Windows. This fixes #6729 --- .gitattributes | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitattributes b/.gitattributes index 6aba4e654..d9f5d1903 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,2 +1,5 @@ # This is a generated file from vscode-l10n tool, and it always uses 'lf' and line ending. Set it to 'lf' so we don't get warning every time when localization file get changed. l10n/bundle.l10n.json text eol=lf + +# This is a Unix shell script, so it always use the 'lf' line ends +scripts/remoteProcessPickerScript text eol=lf \ No newline at end of file