From fd006114b99fb07cda72817f3d5536bf69062914 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 4 Jan 2025 00:08:47 +0000 Subject: [PATCH 01/12] Bump cross-spawn from 6.0.5 to 6.0.6 Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn) from 6.0.5 to 6.0.6. - [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/v6.0.6/CHANGELOG.md) - [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v6.0.5...v6.0.6) --- updated-dependencies: - dependency-name: cross-spawn dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- package-lock.json | 15 ++++++++------- package.json | 2 +- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 105bc1546..2d8c60c00 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ "@vscode/extension-telemetry": "^0.9.0", "@vscode/js-debug-browsers": "^1.1.0", "async-file": "2.0.2", - "cross-spawn": "6.0.5", + "cross-spawn": "6.0.6", "execa": "4.0.0", "fs-extra": "9.1.0", "http-proxy-agent": "7.0.0", @@ -5790,9 +5790,10 @@ "dev": true }, "node_modules/cross-spawn": { - "version": "6.0.5", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "version": "6.0.6", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha1-MNDvoHEt2361p24ehyG/+vprXVc=", + "license": "MIT", "dependencies": { "nice-try": "^1.0.4", "path-key": "^2.0.1", @@ -20207,9 +20208,9 @@ "dev": true }, "cross-spawn": { - "version": "6.0.5", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "version": "6.0.6", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha1-MNDvoHEt2361p24ehyG/+vprXVc=", "requires": { "nice-try": "^1.0.4", "path-key": "^2.0.1", diff --git a/package.json b/package.json index a88f75ade..d49f2c542 100644 --- a/package.json +++ b/package.json @@ -96,7 +96,7 @@ "@vscode/extension-telemetry": "^0.9.0", "@vscode/js-debug-browsers": "^1.1.0", "async-file": "2.0.2", - "cross-spawn": "6.0.5", + "cross-spawn": "6.0.6", "execa": "4.0.0", "fs-extra": "9.1.0", "http-proxy-agent": "7.0.0", From 87af39d4146d1535e1a2e5c71ae48eea730502bd Mon Sep 17 00:00:00 2001 From: dibarbet Date: Sat, 4 Jan 2025 00:54:38 +0000 Subject: [PATCH 02/12] Update main version --- CHANGELOG.md | 2 ++ version.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 46377a7d1..c87a3cd09 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,8 @@ - Diagnostics related feature requests and improvements [#5951](https://github.com/dotnet/vscode-csharp/issues/5951) - Debug from .csproj and .sln [#5876](https://github.com/dotnet/vscode-csharp/issues/5876) +# 2.62.x + # 2.61.x * Update Roslyn to 4.13.0-3.25051.1 (PR: [#7895](https://github.com/dotnet/vscode-csharp/pull/7895)) * Prefix 'unmerged changes' with 'TODO' (PR: [#62319](https://github.com/dotnet/roslyn/pull/62319)) diff --git a/version.json b/version.json index 1767f04e4..ae14a65b6 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.61", + "version": "2.62", "publicReleaseRefSpec": [ "^refs/heads/release$", "^refs/heads/prerelease$", From 3620c5952fd80d108d6d62634cdac9fda32304cd Mon Sep 17 00:00:00 2001 From: David Barbet Date: Thu, 2 Jan 2025 13:14:06 -0800 Subject: [PATCH 03/12] Fix code lens tests and restore integration tests in CI --- azure-pipelines/test-matrix.yml | 2 +- .../integrationTests/integrationHelpers.ts | 30 ++++++++++++++++++- 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/azure-pipelines/test-matrix.yml b/azure-pipelines/test-matrix.yml index 30776dea7..9175e127f 100644 --- a/azure-pipelines/test-matrix.yml +++ b/azure-pipelines/test-matrix.yml @@ -17,7 +17,7 @@ jobs: strategy: matrix: CSharpTests: - npmCommand: 'test:unit' # Restore when integration test are stable: 'test:withoutDevKit' + npmCommand: test:withoutDevKit DevKitTests: npmCommand: test:integration:devkit pool: ${{ parameters.pool }} diff --git a/test/lsptoolshost/integrationTests/integrationHelpers.ts b/test/lsptoolshost/integrationTests/integrationHelpers.ts index 0ab9a02ac..2a5c686d2 100644 --- a/test/lsptoolshost/integrationTests/integrationHelpers.ts +++ b/test/lsptoolshost/integrationTests/integrationHelpers.ts @@ -118,6 +118,35 @@ export async function getCodeLensesAsync(): Promise { // The number of code lens items to resolve. Set to a high number so we get pretty much everything in the document. const resolvedItemCount = 100; + let tryCount = 0; + const maxRetryCount = 3; + do { + try { + const result = await executeCodeLensProviderAsync(activeEditor, resolvedItemCount); + return result; + } catch (e) { + tryCount++; + // It is totally possible that the code lens request is cancelled due to the server returning a content modified error. + // This is not an error condition - it just means that the server snapshot has moved on and we need to retry the request. + // + // This error is not thrown as an error type that matches ours, so we'll check the name of the error to determine if it was a cancellation. + if (Object.prototype.hasOwnProperty.call(e, 'name') && (e as any).name === 'Canceled') { + console.log('CodeLens provider was cancelled, retrying in 1 second'); + await sleep(1000); + } else { + console.log('CodeLens provider encountered unexpected error'); + console.log(JSON.stringify(e)); + throw e; + } + } + } while (tryCount < maxRetryCount); + throw new Error(`Failed to get code lenses after ${maxRetryCount} retries`); +} + +async function executeCodeLensProviderAsync( + activeEditor: vscode.TextEditor, + resolvedItemCount: number +): Promise { const codeLenses = ( await vscode.commands.executeCommand( 'vscode.executeCodeLensProvider', @@ -130,7 +159,6 @@ export async function getCodeLensesAsync(): Promise { if (rangeCompare !== 0) { return rangeCompare; } - return a.command!.title.localeCompare(b.command!.command); }); } From b863964879f17fa265dec684f3ee2586d63281cc Mon Sep 17 00:00:00 2001 From: Joey Robichaud Date: Mon, 6 Jan 2025 17:33:09 -0800 Subject: [PATCH 04/12] Update tsconfig and remove use of require() --- src/lsptoolshost/onAutoInsertFeature.ts | 4 ++-- src/lsptoolshost/optionNameConverter.ts | 2 +- src/lsptoolshost/restore.ts | 2 +- src/packageManager/proxy.ts | 4 ++-- .../src/blazorDebug/blazorDebugConfigurationProvider.ts | 2 +- src/razor/src/blazorDebug/terminateDebugHandler.ts | 2 +- src/utils/removeBom.ts | 2 +- tasks/commandLineArguments.ts | 2 +- tasks/createTagsTasks.ts | 2 +- tasks/localizationTasks.ts | 2 +- tasks/offlinePackagingTasks.ts | 4 ++-- tasks/signingTasks.ts | 2 +- .../integrationTests/buildDiagnostics.integration.test.ts | 2 +- .../documentDiagnostics.integration.test.ts | 2 +- .../omnisharpUnitTests/testAssets/mockHttpsServer.ts | 2 +- test/omnisharp/omnisharpUnitTests/testAssets/testZip.ts | 2 +- tsconfig.json | 8 +++----- 17 files changed, 22 insertions(+), 24 deletions(-) diff --git a/src/lsptoolshost/onAutoInsertFeature.ts b/src/lsptoolshost/onAutoInsertFeature.ts index 0c3e03f21..88a1537b2 100644 --- a/src/lsptoolshost/onAutoInsertFeature.ts +++ b/src/lsptoolshost/onAutoInsertFeature.ts @@ -22,7 +22,7 @@ import { } from 'vscode-languageserver-protocol'; import * as RoslynProtocol from './roslynProtocol'; -import * as UUID from 'vscode-languageclient/lib/common/utils/uuid'; +import { generateUuid } from 'vscode-languageclient/lib/common/utils/uuid'; export class OnAutoInsertFeature implements DynamicFeature { private readonly _client: LanguageClient; @@ -92,7 +92,7 @@ export class OnAutoInsertFeature implements DynamicFeature { beforeAll(async () => { await integrationHelpers.activateCSharpExtension(); diff --git a/test/lsptoolshost/integrationTests/documentDiagnostics.integration.test.ts b/test/lsptoolshost/integrationTests/documentDiagnostics.integration.test.ts index 6c8549ac3..dcfaeb39e 100644 --- a/test/lsptoolshost/integrationTests/documentDiagnostics.integration.test.ts +++ b/test/lsptoolshost/integrationTests/documentDiagnostics.integration.test.ts @@ -7,7 +7,7 @@ import * as vscode from 'vscode'; import { describe, test, beforeAll, afterAll, expect, beforeEach, afterEach } from '@jest/globals'; import testAssetWorkspace from './testAssets/testAssetWorkspace'; import { AnalysisSetting } from '../../../src/lsptoolshost/buildDiagnosticsService'; -import path = require('path'); +import path from 'path'; import { getCode, setBackgroundAnalysisScopes, waitForExpectedDiagnostics } from './diagnosticsHelpers'; import { activateCSharpExtension, diff --git a/test/omnisharp/omnisharpUnitTests/testAssets/mockHttpsServer.ts b/test/omnisharp/omnisharpUnitTests/testAssets/mockHttpsServer.ts index cea2c21fe..6ed6ab256 100644 --- a/test/omnisharp/omnisharpUnitTests/testAssets/mockHttpsServer.ts +++ b/test/omnisharp/omnisharpUnitTests/testAssets/mockHttpsServer.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ import * as fs from 'async-file'; -import * as getPort from 'get-port'; +import getPort from 'get-port'; // There are no typings for this library. // eslint-disable-next-line @typescript-eslint/no-var-requires diff --git a/test/omnisharp/omnisharpUnitTests/testAssets/testZip.ts b/test/omnisharp/omnisharpUnitTests/testAssets/testZip.ts index be20f86f8..6fab10939 100644 --- a/test/omnisharp/omnisharpUnitTests/testAssets/testZip.ts +++ b/test/omnisharp/omnisharpUnitTests/testAssets/testZip.ts @@ -3,7 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as archiver from 'archiver'; +import archiver from 'archiver'; import { TestFile } from './testFile'; export default class TestZip { diff --git a/tsconfig.json b/tsconfig.json index b999e0341..b675138ef 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,14 +1,13 @@ { "compilerOptions": { - "target": "es6", - "module": "commonjs", + "target": "ES2022", + "module": "Preserve", "outDir": "out", "lib": [ "ES2021" ], "sourceMap": true, - "moduleResolution": "node", - "moduleDetection": "force", + "moduleResolution": "bundler", "strict": true, "forceConsistentCasingInFileNames": true, "skipLibCheck": true, @@ -20,7 +19,6 @@ "src", "tasks", "test", - "omnisharptest", "typings", "__mocks__", "jest.config.ts", From 206b8422afd14490818efafa02eacc68523b990b Mon Sep 17 00:00:00 2001 From: Joey Robichaud Date: Tue, 7 Jan 2025 21:06:18 -0800 Subject: [PATCH 05/12] revert moduel type back to commonjs --- package-lock.json | 277 +++++++++++++++++++++++---------------------- package.json | 4 +- tasks/testTasks.ts | 2 +- tsconfig.json | 6 +- 4 files changed, 151 insertions(+), 138 deletions(-) diff --git a/package-lock.json b/package-lock.json index 105bc1546..5dc0c3ca5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -56,8 +56,8 @@ "@types/uuid": "^9.0.1", "@types/vscode": "1.93.0", "@types/yauzl": "2.10.0", - "@typescript-eslint/eslint-plugin": "^8.5.0", - "@typescript-eslint/parser": "^8.5.0", + "@typescript-eslint/eslint-plugin": "^8.19.0", + "@typescript-eslint/parser": "^8.19.0", "@vscode/l10n-dev": "^0.0.35", "@vscode/test-electron": "2.3.8", "@vscode/vsce": "3.0.0", @@ -3222,21 +3222,21 @@ } }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.5.0.tgz", - "integrity": "sha1-fBhjaTqYNxcDaG4cD6xk/8V2zbE=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.19.1.tgz", + "integrity": "sha1-XybAqDOye8sapAK4LnbTuN2gskc=", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.5.0", - "@typescript-eslint/type-utils": "8.5.0", - "@typescript-eslint/utils": "8.5.0", - "@typescript-eslint/visitor-keys": "8.5.0", + "@typescript-eslint/scope-manager": "8.19.1", + "@typescript-eslint/type-utils": "8.19.1", + "@typescript-eslint/utils": "8.19.1", + "@typescript-eslint/visitor-keys": "8.19.1", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3247,25 +3247,21 @@ }, "peerDependencies": { "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", - "eslint": "^8.57.0 || ^9.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.8.0" } }, "node_modules/@typescript-eslint/parser": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/parser/-/parser-8.5.0.tgz", - "integrity": "sha1-1ZDh758x8m1COZmtP2h3IyR+a8w=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/parser/-/parser-8.19.1.tgz", + "integrity": "sha1-uDb8/npwTIxl9aUOWw/4rPylwhs=", "dev": true, - "license": "BSD-2-Clause", + "license": "MIT", "dependencies": { - "@typescript-eslint/scope-manager": "8.5.0", - "@typescript-eslint/types": "8.5.0", - "@typescript-eslint/typescript-estree": "8.5.0", - "@typescript-eslint/visitor-keys": "8.5.0", + "@typescript-eslint/scope-manager": "8.19.1", + "@typescript-eslint/types": "8.19.1", + "@typescript-eslint/typescript-estree": "8.19.1", + "@typescript-eslint/visitor-keys": "8.19.1", "debug": "^4.3.4" }, "engines": { @@ -3276,23 +3272,19 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.8.0" } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/scope-manager/-/scope-manager-8.5.0.tgz", - "integrity": "sha1-OFNB3mW5dvArKVuKylS7T/1rXwc=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/scope-manager/-/scope-manager-8.19.1.tgz", + "integrity": "sha1-eUz8it1PNzuc1voy42fnVloOIxs=", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.5.0", - "@typescript-eslint/visitor-keys": "8.5.0" + "@typescript-eslint/types": "8.19.1", + "@typescript-eslint/visitor-keys": "8.19.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3303,16 +3295,16 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/type-utils/-/type-utils-8.5.0.tgz", - "integrity": "sha1-YhWyOqOdu9jd4KTvnuD3RUEMKbE=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/type-utils/-/type-utils-8.19.1.tgz", + "integrity": "sha1-I3EKtSZDwZ90YBs/SgdsmPThWao=", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/typescript-estree": "8.5.0", - "@typescript-eslint/utils": "8.5.0", + "@typescript-eslint/typescript-estree": "8.19.1", + "@typescript-eslint/utils": "8.19.1", "debug": "^4.3.4", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3321,16 +3313,15 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.8.0" } }, "node_modules/@typescript-eslint/types": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/types/-/types-8.5.0.tgz", - "integrity": "sha1-RGXZkzHRJ2+PsgMOT5xz/gGgW/k=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/types/-/types-8.19.1.tgz", + "integrity": "sha1-AVqZEoF1TtmG8uVJJjoRiNbtCow=", "dev": true, "license": "MIT", "engines": { @@ -3342,20 +3333,20 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/typescript-estree/-/typescript-estree-8.5.0.tgz", - "integrity": "sha1-bldYzy9jqobp3fpOKE4uC4G4dVc=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/typescript-estree/-/typescript-estree-8.19.1.tgz", + "integrity": "sha1-wQlLsAvCUax2zyFVaconI2Q1A2s=", "dev": true, - "license": "BSD-2-Clause", + "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.5.0", - "@typescript-eslint/visitor-keys": "8.5.0", + "@typescript-eslint/types": "8.19.1", + "@typescript-eslint/visitor-keys": "8.19.1", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3364,10 +3355,8 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "peerDependencies": { + "typescript": ">=4.8.4 <5.8.0" } }, "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { @@ -3410,16 +3399,16 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/utils/-/utils-8.5.0.tgz", - "integrity": "sha1-TU/+2W0GVFRqN/qluEvc4W2VFjQ=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/utils/-/utils-8.19.1.tgz", + "integrity": "sha1-3Y6r1GuSv2HlcyhuHAumvSQ6GFs=", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.5.0", - "@typescript-eslint/types": "8.5.0", - "@typescript-eslint/typescript-estree": "8.5.0" + "@typescript-eslint/scope-manager": "8.19.1", + "@typescript-eslint/types": "8.19.1", + "@typescript-eslint/typescript-estree": "8.19.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3429,18 +3418,19 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0" + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.8.0" } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/visitor-keys/-/visitor-keys-8.5.0.tgz", - "integrity": "sha1-EwKN87hm0uPi4sxBk88sHg4ExL8=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/visitor-keys/-/visitor-keys-8.19.1.tgz", + "integrity": "sha1-/OVNfPpTUakjh9bAxb5ZjK7gcuA=", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.5.0", - "eslint-visitor-keys": "^3.4.3" + "@typescript-eslint/types": "8.19.1", + "eslint-visitor-keys": "^4.2.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3450,6 +3440,19 @@ "url": "https://opencollective.com/typescript-eslint" } }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "4.2.0", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", + "integrity": "sha1-aHussq+IT83aim59ZcYG9GoUzUU=", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, "node_modules/@ungap/structured-clone": { "version": "1.2.0", "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", @@ -7459,9 +7462,9 @@ "license": "MIT" }, "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha1-qQRQHlfP3S/83tRemaVP71XkYSk=", + "version": "3.3.3", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha1-0G1YXOjbqQoWsFBcVDw8z7OuuBg=", "dev": true, "license": "MIT", "dependencies": { @@ -7469,7 +7472,7 @@ "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "micromatch": "^4.0.8" }, "engines": { "node": ">=8.6.0" @@ -14375,16 +14378,16 @@ "dev": true }, "node_modules/ts-api-utils": { - "version": "1.3.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/ts-api-utils/-/ts-api-utils-1.3.0.tgz", - "integrity": "sha1-S0kOJxKfHo5oa0XMSrY3FNxg7qE=", + "version": "2.0.0", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/ts-api-utils/-/ts-api-utils-2.0.0.tgz", + "integrity": "sha1-udfV9+yfc29NDwl1i4YHl5BEqQA=", "dev": true, "license": "MIT", "engines": { - "node": ">=16" + "node": ">=18.12" }, "peerDependencies": { - "typescript": ">=4.2.0" + "typescript": ">=4.8.4" } }, "node_modules/ts-jest": { @@ -18319,77 +18322,77 @@ } }, "@typescript-eslint/eslint-plugin": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.5.0.tgz", - "integrity": "sha1-fBhjaTqYNxcDaG4cD6xk/8V2zbE=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.19.1.tgz", + "integrity": "sha1-XybAqDOye8sapAK4LnbTuN2gskc=", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.5.0", - "@typescript-eslint/type-utils": "8.5.0", - "@typescript-eslint/utils": "8.5.0", - "@typescript-eslint/visitor-keys": "8.5.0", + "@typescript-eslint/scope-manager": "8.19.1", + "@typescript-eslint/type-utils": "8.19.1", + "@typescript-eslint/utils": "8.19.1", + "@typescript-eslint/visitor-keys": "8.19.1", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" } }, "@typescript-eslint/parser": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/parser/-/parser-8.5.0.tgz", - "integrity": "sha1-1ZDh758x8m1COZmtP2h3IyR+a8w=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/parser/-/parser-8.19.1.tgz", + "integrity": "sha1-uDb8/npwTIxl9aUOWw/4rPylwhs=", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.5.0", - "@typescript-eslint/types": "8.5.0", - "@typescript-eslint/typescript-estree": "8.5.0", - "@typescript-eslint/visitor-keys": "8.5.0", + "@typescript-eslint/scope-manager": "8.19.1", + "@typescript-eslint/types": "8.19.1", + "@typescript-eslint/typescript-estree": "8.19.1", + "@typescript-eslint/visitor-keys": "8.19.1", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/scope-manager/-/scope-manager-8.5.0.tgz", - "integrity": "sha1-OFNB3mW5dvArKVuKylS7T/1rXwc=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/scope-manager/-/scope-manager-8.19.1.tgz", + "integrity": "sha1-eUz8it1PNzuc1voy42fnVloOIxs=", "dev": true, "requires": { - "@typescript-eslint/types": "8.5.0", - "@typescript-eslint/visitor-keys": "8.5.0" + "@typescript-eslint/types": "8.19.1", + "@typescript-eslint/visitor-keys": "8.19.1" } }, "@typescript-eslint/type-utils": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/type-utils/-/type-utils-8.5.0.tgz", - "integrity": "sha1-YhWyOqOdu9jd4KTvnuD3RUEMKbE=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/type-utils/-/type-utils-8.19.1.tgz", + "integrity": "sha1-I3EKtSZDwZ90YBs/SgdsmPThWao=", "dev": true, "requires": { - "@typescript-eslint/typescript-estree": "8.5.0", - "@typescript-eslint/utils": "8.5.0", + "@typescript-eslint/typescript-estree": "8.19.1", + "@typescript-eslint/utils": "8.19.1", "debug": "^4.3.4", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" } }, "@typescript-eslint/types": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/types/-/types-8.5.0.tgz", - "integrity": "sha1-RGXZkzHRJ2+PsgMOT5xz/gGgW/k=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/types/-/types-8.19.1.tgz", + "integrity": "sha1-AVqZEoF1TtmG8uVJJjoRiNbtCow=", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/typescript-estree/-/typescript-estree-8.5.0.tgz", - "integrity": "sha1-bldYzy9jqobp3fpOKE4uC4G4dVc=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/typescript-estree/-/typescript-estree-8.19.1.tgz", + "integrity": "sha1-wQlLsAvCUax2zyFVaconI2Q1A2s=", "dev": true, "requires": { - "@typescript-eslint/types": "8.5.0", - "@typescript-eslint/visitor-keys": "8.5.0", + "@typescript-eslint/types": "8.19.1", + "@typescript-eslint/visitor-keys": "8.19.1", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" }, "dependencies": { "brace-expansion": { @@ -18419,25 +18422,33 @@ } }, "@typescript-eslint/utils": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/utils/-/utils-8.5.0.tgz", - "integrity": "sha1-TU/+2W0GVFRqN/qluEvc4W2VFjQ=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/utils/-/utils-8.19.1.tgz", + "integrity": "sha1-3Y6r1GuSv2HlcyhuHAumvSQ6GFs=", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.5.0", - "@typescript-eslint/types": "8.5.0", - "@typescript-eslint/typescript-estree": "8.5.0" + "@typescript-eslint/scope-manager": "8.19.1", + "@typescript-eslint/types": "8.19.1", + "@typescript-eslint/typescript-estree": "8.19.1" } }, "@typescript-eslint/visitor-keys": { - "version": "8.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/visitor-keys/-/visitor-keys-8.5.0.tgz", - "integrity": "sha1-EwKN87hm0uPi4sxBk88sHg4ExL8=", + "version": "8.19.1", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/visitor-keys/-/visitor-keys-8.19.1.tgz", + "integrity": "sha1-/OVNfPpTUakjh9bAxb5ZjK7gcuA=", "dev": true, "requires": { - "@typescript-eslint/types": "8.5.0", - "eslint-visitor-keys": "^3.4.3" + "@typescript-eslint/types": "8.19.1", + "eslint-visitor-keys": "^4.2.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "4.2.0", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", + "integrity": "sha1-aHussq+IT83aim59ZcYG9GoUzUU=", + "dev": true + } } }, "@ungap/structured-clone": { @@ -21427,16 +21438,16 @@ "dev": true }, "fast-glob": { - "version": "3.3.2", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha1-qQRQHlfP3S/83tRemaVP71XkYSk=", + "version": "3.3.3", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha1-0G1YXOjbqQoWsFBcVDw8z7OuuBg=", "dev": true, "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "micromatch": "^4.0.8" } }, "fast-json-stable-stringify": { @@ -26518,9 +26529,9 @@ "dev": true }, "ts-api-utils": { - "version": "1.3.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/ts-api-utils/-/ts-api-utils-1.3.0.tgz", - "integrity": "sha1-S0kOJxKfHo5oa0XMSrY3FNxg7qE=", + "version": "2.0.0", + "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/ts-api-utils/-/ts-api-utils-2.0.0.tgz", + "integrity": "sha1-udfV9+yfc29NDwl1i4YHl5BEqQA=", "dev": true, "requires": {} }, diff --git a/package.json b/package.json index d41eedff3..a333bb545 100644 --- a/package.json +++ b/package.json @@ -136,8 +136,8 @@ "@types/uuid": "^9.0.1", "@types/vscode": "1.93.0", "@types/yauzl": "2.10.0", - "@typescript-eslint/eslint-plugin": "^8.5.0", - "@typescript-eslint/parser": "^8.5.0", + "@typescript-eslint/eslint-plugin": "^8.19.0", + "@typescript-eslint/parser": "^8.19.0", "@vscode/l10n-dev": "^0.0.35", "@vscode/test-electron": "2.3.8", "@vscode/vsce": "3.0.0", diff --git a/tasks/testTasks.ts b/tasks/testTasks.ts index 2212e5235..e9d506367 100644 --- a/tasks/testTasks.ts +++ b/tasks/testTasks.ts @@ -3,7 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as fs from 'fs'; +import fs from 'fs'; import * as gulp from 'gulp'; import * as path from 'path'; import { codeExtensionPath, rootPath, outPath } from './projectPaths'; diff --git a/tsconfig.json b/tsconfig.json index b675138ef..b7fe26654 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,13 +1,15 @@ { "compilerOptions": { + "esModuleInterop": true, "target": "ES2022", - "module": "Preserve", + "module": "CommonJS", "outDir": "out", "lib": [ "ES2021" ], "sourceMap": true, - "moduleResolution": "bundler", + "moduleDetection": "force", + "moduleResolution": "node", "strict": true, "forceConsistentCasingInFileNames": true, "skipLibCheck": true, From 91b06dcfc0697817a44bbc7db0fc422f256eb896 Mon Sep 17 00:00:00 2001 From: Joey Robichaud Date: Tue, 7 Jan 2025 21:19:52 -0800 Subject: [PATCH 06/12] Fake the `fs` module so we can spy on it --- test/lsptoolshost/unitTests/migrateOptions.test.ts | 2 ++ tsconfig.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/test/lsptoolshost/unitTests/migrateOptions.test.ts b/test/lsptoolshost/unitTests/migrateOptions.test.ts index 4e75f3732..3a991700e 100644 --- a/test/lsptoolshost/unitTests/migrateOptions.test.ts +++ b/test/lsptoolshost/unitTests/migrateOptions.test.ts @@ -18,6 +18,8 @@ import { getVSCodeWithConfig } from '../../fakes'; import { CSharpExtensionId } from '../../../src/constants/csharpExtensionId'; import { ConfigurationTarget } from '../../../src/vscodeAdapter'; +jest.mock('fs', () => ({ __esModule: true, ...(jest.requireActual('fs')) })); + describe('Migrate configurations', () => { const packageJson = JSON.parse(fs.readFileSync('package.json').toString()); const configuration = packageJson.contributes.configuration; diff --git a/tsconfig.json b/tsconfig.json index b7fe26654..ceea0ebff 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -8,8 +8,8 @@ "ES2021" ], "sourceMap": true, - "moduleDetection": "force", "moduleResolution": "node", + "moduleDetection": "force", "strict": true, "forceConsistentCasingInFileNames": true, "skipLibCheck": true, From 747829ea9a9f9c8ec49b52b20f8c4de5137f1b13 Mon Sep 17 00:00:00 2001 From: Joey Robichaud Date: Tue, 7 Jan 2025 21:54:40 -0800 Subject: [PATCH 07/12] Fix up O# tests --- test/lsptoolshost/unitTests/migrateOptions.test.ts | 1 + .../omnisharpUnitTests/features/reportIssue.test.ts | 6 +----- .../omnisharpUnitTests/packages/packageFilterer.test.ts | 3 +++ 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/test/lsptoolshost/unitTests/migrateOptions.test.ts b/test/lsptoolshost/unitTests/migrateOptions.test.ts index 3a991700e..f1f4ecaf2 100644 --- a/test/lsptoolshost/unitTests/migrateOptions.test.ts +++ b/test/lsptoolshost/unitTests/migrateOptions.test.ts @@ -18,6 +18,7 @@ import { getVSCodeWithConfig } from '../../fakes'; import { CSharpExtensionId } from '../../../src/constants/csharpExtensionId'; import { ConfigurationTarget } from '../../../src/vscodeAdapter'; +// Necessary when spying on module members. jest.mock('fs', () => ({ __esModule: true, ...(jest.requireActual('fs')) })); describe('Migrate configurations', () => { diff --git a/test/omnisharp/omnisharpUnitTests/features/reportIssue.test.ts b/test/omnisharp/omnisharpUnitTests/features/reportIssue.test.ts index ff305b40b..55106f333 100644 --- a/test/omnisharp/omnisharpUnitTests/features/reportIssue.test.ts +++ b/test/omnisharp/omnisharpUnitTests/features/reportIssue.test.ts @@ -62,11 +62,7 @@ describe(`${reportIssue.name}`, () => { issueBody = rest[0].issueBody; return {} as any; }); - jest.replaceProperty(vscode, 'extensions', { - all: [extension1, extension2], - getExtension: jest.fn(), - onDidChange: jest.fn(), - } as typeof vscode.extensions); + jest.replaceProperty(vscode.extensions, "all", [extension1, extension2] as readonly vscode.Extension[]); fakeMonoResolver = new FakeMonoResolver(); fakeDotnetResolver = new FakeDotnetResolver(); diff --git a/test/omnisharp/omnisharpUnitTests/packages/packageFilterer.test.ts b/test/omnisharp/omnisharpUnitTests/packages/packageFilterer.test.ts index 85423fd52..eb4c7173d 100644 --- a/test/omnisharp/omnisharpUnitTests/packages/packageFilterer.test.ts +++ b/test/omnisharp/omnisharpUnitTests/packages/packageFilterer.test.ts @@ -11,6 +11,9 @@ import { MockedFunction } from 'jest-mock'; import * as fs from 'fs'; import { join } from 'path'; +// Necessary when spying on module members. +jest.mock('fs', () => ({ __esModule: true, ...(jest.requireActual('fs')) })); + describe(`${getNotInstalledPackagesForPlatform.name}`, () => { let absolutePathPackages: AbsolutePathPackage[]; const extensionPath = '/ExtensionPath'; From a62f33a5e4edb9111114f7925ee3595063a4e0b6 Mon Sep 17 00:00:00 2001 From: Joey Robichaud Date: Tue, 7 Jan 2025 22:00:29 -0800 Subject: [PATCH 08/12] fix quotes --- test/omnisharp/omnisharpUnitTests/features/reportIssue.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/omnisharp/omnisharpUnitTests/features/reportIssue.test.ts b/test/omnisharp/omnisharpUnitTests/features/reportIssue.test.ts index 55106f333..c281944d7 100644 --- a/test/omnisharp/omnisharpUnitTests/features/reportIssue.test.ts +++ b/test/omnisharp/omnisharpUnitTests/features/reportIssue.test.ts @@ -62,7 +62,7 @@ describe(`${reportIssue.name}`, () => { issueBody = rest[0].issueBody; return {} as any; }); - jest.replaceProperty(vscode.extensions, "all", [extension1, extension2] as readonly vscode.Extension[]); + jest.replaceProperty(vscode.extensions, 'all', [extension1, extension2] as readonly vscode.Extension[]); fakeMonoResolver = new FakeMonoResolver(); fakeDotnetResolver = new FakeDotnetResolver(); From 7e8da96a4452ba855a5e79e6503318f6b52b3b58 Mon Sep 17 00:00:00 2001 From: Bret Johnson Date: Fri, 10 Jan 2025 14:20:43 -0500 Subject: [PATCH 09/12] Bump xamlTools to 17.13.35709.178 --- CHANGELOG.md | 3 +++ package.json | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6d187936b..98850254f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,9 @@ - Diagnostics related feature requests and improvements [#5951](https://github.com/dotnet/vscode-csharp/issues/5951) - Debug from .csproj and .sln [#5876](https://github.com/dotnet/vscode-csharp/issues/5876) +# Latest + * Bump xamlTools to 17.13.35709.178 (PR: [#7914](https://github.com/dotnet/vscode-csharp/pull/7914)) + # 2.62.x # 2.61.x diff --git a/package.json b/package.json index e10798d3c..f79520ab1 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,7 @@ "omniSharp": "1.39.12", "razor": "9.0.0-preview.25052.3", "razorOmnisharp": "7.0.0-preview.23363.1", - "xamlTools": "17.13.35703.12" + "xamlTools": "17.13.35709.178" }, "main": "./dist/extension", "l10n": "./l10n", From 4614eb6e719c540bfb9013b6d700c88e798cd35d Mon Sep 17 00:00:00 2001 From: Bret Johnson Date: Fri, 10 Jan 2025 14:29:04 -0500 Subject: [PATCH 10/12] Put CHANGELOG update in right section --- CHANGELOG.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 98850254f..d3b2cd19a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,10 +3,8 @@ - Diagnostics related feature requests and improvements [#5951](https://github.com/dotnet/vscode-csharp/issues/5951) - Debug from .csproj and .sln [#5876](https://github.com/dotnet/vscode-csharp/issues/5876) -# Latest - * Bump xamlTools to 17.13.35709.178 (PR: [#7914](https://github.com/dotnet/vscode-csharp/pull/7914)) - # 2.62.x + * Bump xamlTools to 17.13.35709.178 (PR: [#7914](https://github.com/dotnet/vscode-csharp/pull/7914)) # 2.61.x * Update Razor to 9.0.0-preview.25052.3 (PR: [#7904](https://github.com/dotnet/vscode-csharp/pull/7904)) From b45f2e712c15f6b1a9e17eb28bb74baa33a5b3a6 Mon Sep 17 00:00:00 2001 From: Gen Lu Date: Fri, 10 Jan 2025 12:24:38 -0800 Subject: [PATCH 11/12] Update build instructions --- CONTRIBUTING.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d3d88a01f..b4d1092f1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -35,8 +35,8 @@ Follow these steps to build, run, and test the repository: #### Building -1. Run `npm i` - This command installs the project dependencies. -2. Run `vsts-npm-auth -config .npmrc` - This command will configure your credentials for the next command. +1. Run `npm install -g vsts-npm-auth`, then run `vsts-npm-auth -config .npmrc` - This command will configure your credentials for the next command. +2. Run `npm i` - This command installs the project dependencies. 3. Run `npm i -g gulp` - This command installs Gulp globally. 4. Run `gulp installDependencies` - This command downloads the various dependencies as specified by the version in the [package.json](package.json) file. 5. Run `code .` - This command opens the project in Visual Studio Code. From 5a376753d3e1ae602c5169cec991ac57beb6a2a8 Mon Sep 17 00:00:00 2001 From: David Barbet Date: Fri, 10 Jan 2025 13:01:24 -0800 Subject: [PATCH 12/12] Update Roslyn to 4.14.0-1.25060.2 --- CHANGELOG.md | 6 ++++++ package.json | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6d187936b..8fb4c3074 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,12 @@ - Debug from .csproj and .sln [#5876](https://github.com/dotnet/vscode-csharp/issues/5876) # 2.62.x +* Update Roslyn to 4.14.0-1.25060.2 (PR: [#7916](https://github.com/dotnet/vscode-csharp/pull/7916)) + * Support Extracting method with complex flow control cosntructs in them. (PR: [#76686](https://github.com/dotnet/roslyn/pull/76686)) + * Classify the langword attribute value in DocComments (PR: [#76678](https://github.com/dotnet/roslyn/pull/76678)) + * Fix FAR/rename with method type parameters (PR: [#76652](https://github.com/dotnet/roslyn/pull/76652)) + * Fix assembly load when file path contains URI reserved chars (PR: [#76617](https://github.com/dotnet/roslyn/pull/76617)) + * Reduce allocations during checksum creation. (PR: [#76524](https://github.com/dotnet/roslyn/pull/76524)) # 2.61.x * Update Razor to 9.0.0-preview.25052.3 (PR: [#7904](https://github.com/dotnet/vscode-csharp/pull/7904)) diff --git a/package.json b/package.json index e10798d3c..c2a5da540 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ } }, "defaults": { - "roslyn": "4.13.0-3.25051.1", + "roslyn": "4.14.0-1.25060.2", "omniSharp": "1.39.12", "razor": "9.0.0-preview.25052.3", "razorOmnisharp": "7.0.0-preview.23363.1",