From d8278cbc021b335384a6cfffb7e30f0feb3fa602 Mon Sep 17 00:00:00 2001 From: Dmitriy Vasyura Date: Sat, 5 Sep 2026 22:04:20 -0700 Subject: [PATCH 1/6] eslint: enable no bracket notation rule Enable code-no-bracket-notation-for-identifiers for JavaScript and TypeScript files while grandfathering the 509 files with existing violations in a CODEOWNERS-gated allowlist. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .eslint-allowed-bracket-notation-files | 519 +++++++++++++++++++++++++ .github/CODEOWNERS | 4 + eslint.config.js | 20 + 3 files changed, 543 insertions(+) create mode 100644 .eslint-allowed-bracket-notation-files diff --git a/.eslint-allowed-bracket-notation-files b/.eslint-allowed-bracket-notation-files new file mode 100644 index 0000000000000..1bbbb1db8262f --- /dev/null +++ b/.eslint-allowed-bracket-notation-files @@ -0,0 +1,519 @@ +# Allowlist of files containing pre-existing bracket notation for identifier properties. +# +# This file is consumed by eslint.config.js and gates the +# `local/code-no-bracket-notation-for-identifiers` lint rule. +# +# DO NOT ADD NEW ENTRIES. Use dot notation for identifier properties instead. +# Modifications to this file require sign-off from the CODEOWNERS. +# +# Lines starting with `#` are comments. Blank lines are ignored. + +build/azure-pipelines/common/apply-sdk-canary-override.ts +build/azure-pipelines/common/createBuild.ts +build/azure-pipelines/common/downloadNotice.ts +build/azure-pipelines/common/getPublishAuthTokens.ts +build/azure-pipelines/common/publish.ts +build/azure-pipelines/common/releaseBuild.ts +build/azure-pipelines/common/sign-win32.ts +build/azure-pipelines/common/sign.ts +build/azure-pipelines/distro/mixin-quality.ts +build/azure-pipelines/oss/audit-notices.ts +build/azure-pipelines/oss/merge-notices.ts +build/azure-pipelines/oss/scan-licenses.ts +build/azure-pipelines/upload-cdn.ts +build/azure-pipelines/upload-nlsmetadata.ts +build/azure-pipelines/upload-sourcemaps.ts +build/azure-pipelines/win32/codesign.ts +build/darwin/create-dmg.ts +build/darwin/create-universal-app.ts +build/darwin/sign-server.ts +build/darwin/sign.ts +build/darwin/verify-macho.ts +build/gulpfile.reh.ts +build/gulpfile.vscode.linux.ts +build/gulpfile.vscode.ts +build/gulpfile.vscode.win32.ts +build/hygiene.ts +build/lib/builtInExtensions.ts +build/lib/compilation.ts +build/lib/electron.ts +build/lib/fetch.ts +build/lib/getVersion.ts +build/lib/i18n.ts +build/lib/policies/exportPolicyData.ts +build/lib/preLaunch.ts +build/lib/test/render.test.ts +build/linux/debian/install-sysroot.ts +build/linux/libcxx-fetcher.ts +build/npm/postinstall.ts +build/npm/preinstall.ts +build/npm/update-localization-extension.ts +build/rspack/rspack.serve-out.config.mts +build/win32/explorer-dll-fetcher.ts +extensions/configuration-editing/src/configurationEditingMain.ts +extensions/copilot/.esbuild.mts +extensions/copilot/script/alternativeAction/index.ts +extensions/copilot/script/setup/getEnv.mts +extensions/copilot/script/testGeneration/editFromPatchTests.ts +extensions/copilot/src/extension/byok/common/test/geminiFunctionDeclarationConverter.spec.ts +extensions/copilot/src/extension/byok/node/azureOpenAIEndpoint.ts +extensions/copilot/src/extension/byok/node/openAIEndpoint.ts +extensions/copilot/src/extension/byok/node/test/azureOpenAIEndpoint.spec.ts +extensions/copilot/src/extension/byok/vscode-node/customEndpointProvider.ts +extensions/copilot/src/extension/byok/vscode-node/test/customEndpointProvider.spec.ts +extensions/copilot/src/extension/chat/test/vscode-node/chatHookService.spec.ts +extensions/copilot/src/extension/chat/vscode-node/chatHookService.ts +extensions/copilot/src/extension/chatSessions/copilotcli/common/copilotCLIPrompt.ts +extensions/copilot/src/extension/chatSessions/copilotcli/node/copilotCli.ts +extensions/copilot/src/extension/chatSessions/copilotcli/node/copilotcliSessionService.ts +extensions/copilot/src/extension/chatSessions/copilotcli/node/test/copilotCliBridgeSpanProcessor.spec.ts +extensions/copilot/src/extension/chatSessions/copilotcli/vscode-node/test/chatSessionMetadataStoreImpl.spec.ts +extensions/copilot/src/extension/chatSessions/vscode-node/copilotCLITerminalLinkProvider.ts +extensions/copilot/src/extension/chronicle/vscode-node/sessionStoreTracker.ts +extensions/copilot/src/extension/completions-core/vscode-node/extension/src/lib/panelShared/common.ts +extensions/copilot/src/extension/completions-core/vscode-node/lib/src/ghostText/completionsFromNetwork.ts +extensions/copilot/src/extension/completions-core/vscode-node/lib/src/ghostText/telemetry.ts +extensions/copilot/src/extension/completions-core/vscode-node/lib/src/openai/fetch.ts +extensions/copilot/src/extension/completions-core/vscode-node/lib/src/openai/test/fetch.test.ts +extensions/copilot/src/extension/completions-core/vscode-node/lib/src/prompt/completionsPromptFactory/test/completionsPromptFactory.test.tsx +extensions/copilot/src/extension/completions-core/vscode-node/lib/src/prompt/test/contextProviderRegistryTs.test.ts +extensions/copilot/src/extension/completions-core/vscode-node/lib/src/telemetry.ts +extensions/copilot/src/extension/completions-core/vscode-node/lib/src/test/inlineCompletion.test.ts +extensions/copilot/src/extension/completions-core/vscode-node/lib/src/test/textDocument.ts +extensions/copilot/src/extension/completions-core/vscode-node/lib/src/util/runtimeMode.ts +extensions/copilot/src/extension/context/node/resolvers/promptWorkspaceLabels.ts +extensions/copilot/src/extension/conversation/common/languageModelAccess.ts +extensions/copilot/src/extension/conversation/vscode-node/remoteAgents.ts +extensions/copilot/src/extension/conversation/vscode-node/userActions.ts +extensions/copilot/src/extension/githubMcp/common/githubMcpDefinitionProvider.ts +extensions/copilot/src/extension/githubMcp/test/node/githubMcpDefinitionProvider.spec.ts +extensions/copilot/src/extension/inlineChat/node/rendererVisualization.ts +extensions/copilot/src/extension/inlineEdits/test/node/nextEditProviderTelemetry.spec.ts +extensions/copilot/src/extension/intents/node/agentIntent.ts +extensions/copilot/src/extension/linkify/common/filePathLinkifier.ts +extensions/copilot/src/extension/linkify/common/modelFilePathLinkifier.ts +extensions/copilot/src/extension/log/vscode-node/loggingActions.ts +extensions/copilot/src/extension/mcp/test/vscode-node/nuget.integration.spec.ts +extensions/copilot/src/extension/mcp/test/vscode-node/nuget.mapping.spec.ts +extensions/copilot/src/extension/mcp/vscode-node/nuget.ts +extensions/copilot/src/extension/onboardDebug/node/parseLaunchConfigFromResponse.ts +extensions/copilot/src/extension/prompt/node/chatMLFetcher.ts +extensions/copilot/src/extension/prompt/test/node/conversation.spec.ts +extensions/copilot/src/extension/prompts/node/inline/summarizedDocument/implementation.ts +extensions/copilot/src/extension/prompts/node/panel/vscode.tsx +extensions/copilot/src/extension/telemetry/vscode/githubTelemetryForwardingContrib.ts +extensions/copilot/src/extension/tools/node/test/searchSubagentTool.spec.ts +extensions/copilot/src/extension/tools/test/node/virtualTools/virtualToolGrouper.spec.ts +extensions/copilot/src/extension/tools/test/node/virtualTools/virtualToolGrouping.spec.ts +extensions/copilot/src/platform/authentication/test/node/simulationTestCopilotTokenManager.ts +extensions/copilot/src/platform/chat/common/chatQuotaServiceImpl.ts +extensions/copilot/src/platform/customInstructions/common/customInstructionsService.ts +extensions/copilot/src/platform/endpoint/node/chatEndpoint.ts +extensions/copilot/src/platform/endpoint/test/node/azureEndpoint.ts +extensions/copilot/src/platform/endpoint/test/node/openaiCompatibleEndpoint.ts +extensions/copilot/src/platform/env/common/envService.ts +extensions/copilot/src/platform/git/common/utils.ts +extensions/copilot/src/platform/github/common/githubAPI.ts +extensions/copilot/src/platform/networking/test/node/networking.spec.ts +extensions/copilot/src/platform/otel/common/agentOTelEnv.ts +extensions/copilot/src/platform/otel/common/otelConfig.ts +extensions/copilot/src/platform/otel/common/test/agentOTelEnv.spec.ts +extensions/copilot/src/platform/otel/common/test/genAiEvents.spec.ts +extensions/copilot/src/platform/telemetry/common/telemetryData.ts +extensions/copilot/src/platform/telemetry/node/azureInsightsReporter.ts +extensions/copilot/src/platform/telemetry/test/node/telemetry2.spec.ts +extensions/copilot/src/platform/telemetry/vscode-node/microsoftExperimentationService.ts +extensions/copilot/src/shared-fetch-utils/common/middleware/authBlockedMiddleware.ts +extensions/copilot/test/base/cachingChatMLFetcher.ts +extensions/copilot/test/base/simulationOptions.ts +extensions/copilot/test/cacheSalt.ts +extensions/copilot/test/codeMapper/codeMapper.stest.ts +extensions/copilot/test/inline/multiFileEdit.stest.ts +extensions/copilot/test/intent/inlineChatIntent.stest.ts +extensions/copilot/test/intent/intentTest.ts +extensions/copilot/test/intent/panelChatIntent.stest.ts +extensions/copilot/test/pipeline/parseInput.ts +extensions/copilot/test/pipeline/scoredEditsOutput.ts +extensions/copilot/test/pipeline/test/pipeline.spec.ts +extensions/copilot/test/pipeline/workspaceRecording/workspaceRecording.ts +extensions/copilot/test/simulation/workbench/initArgs.ts +extensions/copilot/test/simulationMain.ts +extensions/copilot/test/testExecutor.ts +extensions/copilot/test/testVisualizationRunner.ts +extensions/copilot/test/testVisualizationRunnerSTest.ts +extensions/css-language-features/client/src/node/cssClientMain.ts +extensions/css-language-features/server/src/cssServer.ts +extensions/css-language-features/server/src/node/cssServerNodeMain.ts +extensions/emmet/src/abbreviationActions.ts +extensions/emmet/src/defaultCompletionProvider.ts +extensions/emmet/src/splitJoinTag.ts +extensions/emmet/src/util.ts +extensions/git/src/askpass-main.ts +extensions/git/src/askpassManager.ts +extensions/git/src/git.ts +extensions/git/src/ipc/ipcClient.ts +extensions/git/src/ipc/ipcServer.ts +extensions/git/src/util.ts +extensions/github-authentication/src/test/github.test.ts +extensions/html-language-features/client/src/autoInsertion.ts +extensions/html-language-features/client/src/node/htmlClientMain.ts +extensions/html-language-features/server/src/modes/languageModes.ts +extensions/html-language-features/server/src/node/htmlServerNodeMain.ts +extensions/ipynb/src/deserializers.ts +extensions/json-language-features/client/src/node/jsonClientMain.ts +extensions/json-language-features/server/src/node/jsonServerNodeMain.ts +extensions/markdown-language-features/src/extension.ts +extensions/markdown-language-features/src/languageFeatures/copyFiles/copyFiles.ts +extensions/markdown-language-features/src/languageFeatures/copyFiles/snippets.ts +extensions/markdown-language-features/src/markdownEngine.ts +extensions/merge-conflict/src/mergeDecorator.ts +extensions/microsoft-authentication/src/common/experimentation.ts +extensions/terminal-suggest/src/completions/npm.ts +extensions/terminal-suggest/src/completions/yarn.ts +extensions/typescript-language-features/src/logging/telemetry.ts +extensions/typescript-language-features/src/tsServer/serverProcess.electron.ts +extensions/typescript-language-features/src/typescriptServiceClient.ts +extensions/typescript-language-features/src/utils/platform.ts +extensions/vscode-api-tests/src/singlefolder-tests/browser.cdp.test.ts +extensions/vscode-api-tests/src/singlefolder-tests/browser.tools.test.ts +extensions/vscode-api-tests/src/singlefolder-tests/chat.runInTerminal.test.ts +extensions/vscode-api-tests/src/singlefolder-tests/configuration.test.ts +extensions/vscode-api-tests/src/singlefolder-tests/window.test.ts +extensions/vscode-test-resolver/src/extension.ts +scripts/code-agent-host.js +scripts/code-server.js +scripts/code-sessions-web.js +scripts/code-web.js +scripts/sync-agent-host-protocol.ts +scripts/test-agent-host-e2e.ts +src/bootstrap-cli.ts +src/bootstrap-esm.ts +src/bootstrap-fork.ts +src/bootstrap-meta.ts +src/bootstrap-node.ts +src/bootstrap-server.ts +src/cli.ts +src/main.ts +src/server-cli.ts +src/server-main.ts +src/vs/base/browser/dom.ts +src/vs/base/browser/markdownRenderer.ts +src/vs/base/common/desktopEnvironmentInfo.ts +src/vs/base/common/event.ts +src/vs/base/common/observableInternal/index.ts +src/vs/base/common/platform.ts +src/vs/base/common/process.ts +src/vs/base/common/strings.ts +src/vs/base/node/nls.ts +src/vs/base/node/powershell.ts +src/vs/base/node/processes.ts +src/vs/base/node/shell.ts +src/vs/base/node/terminalEncoding.ts +src/vs/base/parts/ipc/node/ipc.net.ts +src/vs/base/parts/ipc/test/node/testApp.ts +src/vs/base/parts/sandbox/electron-browser/preload.ts +src/vs/base/test/browser/markdownRenderer.test.ts +src/vs/base/test/common/decorators.test.ts +src/vs/base/test/common/keyCodes.test.ts +src/vs/base/test/common/oauth.test.ts +src/vs/base/test/common/processes.test.ts +src/vs/base/test/node/port.test.ts +src/vs/base/test/node/processes/processes.integrationTest.ts +src/vs/code/electron-browser/workbench/workbench.ts +src/vs/code/electron-main/app.ts +src/vs/code/electron-main/main.ts +src/vs/code/node/cli.ts +src/vs/code/node/cliProcessMain.ts +src/vs/code/test/node/bootstrapESM.test.ts +src/vs/editor/common/languages/supports/languageBracketsConfiguration.ts +src/vs/editor/common/services/findSectionHeaders.ts +src/vs/editor/contrib/colorPicker/browser/colorDetector.ts +src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/debugVisualization.ts +src/vs/platform/agentHost/browser/webPubSubRelayTransport.ts +src/vs/platform/agentHost/common/automationMigration.ts +src/vs/platform/agentHost/common/copilotHome.ts +src/vs/platform/agentHost/common/meta/agentChangesetFileMeta.ts +src/vs/platform/agentHost/common/meta/agentChatSurfaceMeta.ts +src/vs/platform/agentHost/common/meta/agentCompletionAttachmentMeta.ts +src/vs/platform/agentHost/common/meta/agentCustomizationMeta.ts +src/vs/platform/agentHost/common/meta/agentErrorMeta.ts +src/vs/platform/agentHost/common/meta/agentFeedbackAnnotations.ts +src/vs/platform/agentHost/common/meta/agentMessageDelegationMeta.ts +src/vs/platform/agentHost/common/meta/agentPermissionRequestMeta.ts +src/vs/platform/agentHost/common/meta/agentSystemNotificationMeta.ts +src/vs/platform/agentHost/common/meta/agentToolCallMeta.ts +src/vs/platform/agentHost/common/sessionArtifactCollection.ts +src/vs/platform/agentHost/common/sessionArtifacts.ts +src/vs/platform/agentHost/common/state/protocolUpgrade.ts +src/vs/platform/agentHost/common/state/sessionState.ts +src/vs/platform/agentHost/common/taskEventReplay.ts +src/vs/platform/agentHost/common/webPubSub/framing.ts +src/vs/platform/agentHost/node/agentHostAutomationService.ts +src/vs/platform/agentHost/node/agentHostCustomizationEnablementService.ts +src/vs/platform/agentHost/node/agentHostMain.ts +src/vs/platform/agentHost/node/agentHostMicrosoftTelemetry.ts +src/vs/platform/agentHost/node/agentHostRepoInfoTelemetry.ts +src/vs/platform/agentHost/node/agentHostRestrictedTelemetry.ts +src/vs/platform/agentHost/node/agentHostServerMain.ts +src/vs/platform/agentHost/node/agentHostTerminalManager.ts +src/vs/platform/agentHost/node/appNodeModules.ts +src/vs/platform/agentHost/node/claude/claudeProxyAuth.ts +src/vs/platform/agentHost/node/claude/claudeSdkOptions.ts +src/vs/platform/agentHost/node/claude/claudeToolDisplay.ts +src/vs/platform/agentHost/node/claude/customizations/scan/claudeNativePluginScan.ts +src/vs/platform/agentHost/node/codex/codexAgent.ts +src/vs/platform/agentHost/node/codex/codexDelegation.ts +src/vs/platform/agentHost/node/codex/codexProxyService.ts +src/vs/platform/agentHost/node/codex/codexThreadCoordination.ts +src/vs/platform/agentHost/node/copilot/agentHostSandboxEngine.ts +src/vs/platform/agentHost/node/copilot/copilotAgent.ts +src/vs/platform/agentHost/node/copilot/copilotAgentSession.ts +src/vs/platform/agentHost/node/copilot/copilotCliEnvironment.ts +src/vs/platform/agentHost/node/copilot/copilotToolDisplay.ts +src/vs/platform/agentHost/node/copilot/mapSessionEvents.ts +src/vs/platform/agentHost/node/nodeAgentHostStarter.ts +src/vs/platform/agentHost/node/protocolServerHandler.ts +src/vs/platform/agentHost/node/shared/worktreeIsolation.ts +src/vs/platform/agentHost/node/sshRemoteAgentHostService.ts +src/vs/platform/agentHost/node/wslRemoteAgentHostHelpers.ts +src/vs/platform/agentHost/test/browser/webPubSubRelayTransport.test.ts +src/vs/platform/agentHost/test/common/partialToolInput.test.ts +src/vs/platform/agentHost/test/common/sessionFolderPickerMeta.test.ts +src/vs/platform/agentHost/test/common/sessionWorkspacelessMeta.test.ts +src/vs/platform/agentHost/test/common/state/hostBuildInfoMeta.test.ts +src/vs/platform/agentHost/test/electron-browser/agentHostProtocolClient.test.ts +src/vs/platform/agentHost/test/node/agentHostInternalTelemetry.test.ts +src/vs/platform/agentHost/test/node/agentHostRequestService.test.ts +src/vs/platform/agentHost/test/node/agentHostSessionTitleController.test.ts +src/vs/platform/agentHost/test/node/agentSideEffects.test.ts +src/vs/platform/agentHost/test/node/ahpSurfaceCoverage.ts +src/vs/platform/agentHost/test/node/byokResponsesTranslation.test.ts +src/vs/platform/agentHost/test/node/claudeAgent.integrationTest.ts +src/vs/platform/agentHost/test/node/claudeAgent.test.ts +src/vs/platform/agentHost/test/node/codex/codexCreateChat.test.ts +src/vs/platform/agentHost/test/node/codex/codexModelRefresh.test.ts +src/vs/platform/agentHost/test/node/codex/codexPrewarmEviction.test.ts +src/vs/platform/agentHost/test/node/codex/codexProfileImage.test.ts +src/vs/platform/agentHost/test/node/codex/codexSessionConfigKeys.test.ts +src/vs/platform/agentHost/test/node/codex/codexSessionTitleSpans.test.ts +src/vs/platform/agentHost/test/node/copilotAgent.test.ts +src/vs/platform/agentHost/test/node/copilotAgentSession.test.ts +src/vs/platform/agentHost/test/node/copilotPluginConverters.test.ts +src/vs/platform/agentHost/test/node/e2e/harness/agentHostE2ETestHarness.ts +src/vs/platform/agentHost/test/node/e2e/harness/capiReplayProxy.ts +src/vs/platform/agentHost/test/node/e2e/harness/capiWireCodec.ts +src/vs/platform/agentHost/test/node/e2e/providers/codexAgentHostE2E.integrationTest.ts +src/vs/platform/agentHost/test/node/e2e/providers/codexAgentHostLive.integrationTest.ts +src/vs/platform/agentHost/test/node/e2e/providers/copilotAgentHostE2E.integrationTest.ts +src/vs/platform/agentHost/test/node/e2e/providers/copilotOtelAgentHostE2E.integrationTest.ts +src/vs/platform/agentHost/test/node/e2e/providers/copilotPromptsE2E.integrationTest.ts +src/vs/platform/agentHost/test/node/e2e/suites/agentHostE2ESuites.ts +src/vs/platform/agentHost/test/node/e2e/suites/copilotCoverageSuite.ts +src/vs/platform/agentHost/test/node/e2e/suites/multiChatSuite.ts +src/vs/platform/agentHost/test/node/e2e/suites/sessionPersistenceSuite.ts +src/vs/platform/agentHost/test/node/mapSessionEvents.perf.test.ts +src/vs/platform/agentHost/test/node/mockAgent.ts +src/vs/platform/agentHost/test/node/serverIntegrationTestHelpers.ts +src/vs/platform/agentHost/test/node/shared/agentHostOctoKitService.test.ts +src/vs/platform/agentHost/test/node/shared/copilotApiService.test.ts +src/vs/platform/agentHost/test/node/sshHostKeyVerification.test.ts +src/vs/platform/agentHost/test/node/sshRemoteAgentHostService.test.ts +src/vs/platform/agentPlugins/common/agentPluginParser.ts +src/vs/platform/agentPlugins/common/pluginParsers.ts +src/vs/platform/configuration/test/common/configurationModels.test.ts +src/vs/platform/configuration/test/common/configurationRegistry.test.ts +src/vs/platform/configuration/test/common/policyConfiguration.test.ts +src/vs/platform/contextkey/browser/contextKeyService.ts +src/vs/platform/diagnostics/node/diagnosticsService.ts +src/vs/platform/dialogs/electron-browser/dialog.ts +src/vs/platform/environment/common/environmentService.ts +src/vs/platform/environment/electron-main/environmentMainService.ts +src/vs/platform/environment/node/argvHelper.ts +src/vs/platform/environment/node/userDataPath.ts +src/vs/platform/environment/test/electron-main/environmentMainService.test.ts +src/vs/platform/environment/test/node/userDataPath.test.ts +src/vs/platform/extensionManagement/common/extensionGalleryService.ts +src/vs/platform/extensionManagement/common/extensionTipsService.ts +src/vs/platform/extensionManagement/node/extensionLifecycle.ts +src/vs/platform/github/common/githubTransport.ts +src/vs/platform/instantiation/test/common/instantiationServiceMock.ts +src/vs/platform/launch/electron-main/launchMainService.ts +src/vs/platform/mcp/test/common/mcpManagementService.test.ts +src/vs/platform/native/electron-main/auth.ts +src/vs/platform/otel/test/node/otlp/otlpJsonDecode.test.ts +src/vs/platform/otel/test/node/otlp/outboundForwarder.test.ts +src/vs/platform/policy/test/common/policy.test.ts +src/vs/platform/product/common/product.ts +src/vs/platform/remote/node/wsl.ts +src/vs/platform/request/node/requestService.ts +src/vs/platform/shell/node/shellEnv.ts +src/vs/platform/telemetry/common/1dsAppender.ts +src/vs/platform/telemetry/common/commonProperties.ts +src/vs/platform/telemetry/common/telemetryService.ts +src/vs/platform/telemetry/test/browser/1dsAppender.test.ts +src/vs/platform/telemetry/test/browser/telemetryService.test.ts +src/vs/platform/terminal/node/ptyService.ts +src/vs/platform/terminal/node/terminalEnvironment.ts +src/vs/platform/terminal/node/terminalProcess.ts +src/vs/platform/terminal/node/terminalProfiles.ts +src/vs/platform/terminal/test/node/terminalEnvironment.test.ts +src/vs/platform/tunnel/node/tunnelProxy.ts +src/vs/platform/tunnel/test/node/tunnelProxy.test.ts +src/vs/platform/userDataProfile/electron-main/userDataProfile.ts +src/vs/platform/userDataSync/common/abstractSynchronizer.ts +src/vs/platform/userDataSync/common/userDataSyncStoreService.ts +src/vs/platform/utilityProcess/electron-main/utilityProcess.ts +src/vs/platform/webContentExtractor/electron-main/webPageLoader.ts +src/vs/platform/webContentExtractor/test/electron-main/webPageLoader.test.ts +src/vs/platform/windows/electron-main/windowImpl.ts +src/vs/platform/windows/electron-main/windowsMainService.ts +src/vs/server/node/remoteAgentEnvironmentImpl.ts +src/vs/server/node/remoteExtensionHostAgentCli.ts +src/vs/server/node/remoteExtensionHostAgentServer.ts +src/vs/server/node/remoteExtensionsScanner.ts +src/vs/server/node/remoteTerminalChannel.ts +src/vs/server/node/server.cli.ts +src/vs/server/node/server.cliAgent.ts +src/vs/server/node/server.main.ts +src/vs/server/node/serverEnvironmentService.ts +src/vs/server/node/webClientServer.ts +src/vs/sessions/contrib/automations/browser/automationService.ts +src/vs/sessions/contrib/github/browser/githubApiClient.ts +src/vs/sessions/contrib/github/common/utils.ts +src/vs/sessions/contrib/providers/agentHost/browser/agentHostAutomationStore.ts +src/vs/sessions/contrib/providers/agentHost/test/browser/agentHostAutomationStore.test.ts +src/vs/sessions/contrib/providers/agentHost/test/browser/agentHostSettingsFileSystemProvider.test.ts +src/vs/sessions/contrib/providers/agentHost/test/browser/agentSessionSettingsFileSystemProvider.test.ts +src/vs/sessions/contrib/providers/copilotChatSessions/test/browser/permissionPicker.test.ts +src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxApiService.ts +src/vs/sessions/electron-browser/sessions.ts +src/vs/sessions/test/browser/chatGroupsView.test.ts +src/vs/workbench/api/common/extHostDebugService.ts +src/vs/workbench/api/common/extHostMcp.ts +src/vs/workbench/api/common/extHostVariableResolverService.ts +src/vs/workbench/api/node/extensionHostProcess.ts +src/vs/workbench/api/node/extHostExtensionService.ts +src/vs/workbench/api/test/browser/extHostConfiguration.test.ts +src/vs/workbench/api/test/browser/extHostTreeViews.test.ts +src/vs/workbench/api/worker/extensionHostWorker.ts +src/vs/workbench/browser/parts/editor/editor.ts +src/vs/workbench/browser/parts/editor/editorGroupView.ts +src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.ts +src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPane.ts +src/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.ts +src/vs/workbench/contrib/chat/browser/actions/createPluginAction.ts +src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.ts +src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionHandler.ts +src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/stateToProgressAdapter.ts +src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.ts +src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.ts +src/vs/workbench/contrib/chat/browser/githubRepoFetcher.ts +src/vs/workbench/contrib/chat/browser/voiceClient/voiceClientService.ts +src/vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.ts +src/vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.ts +src/vs/workbench/contrib/chat/browser/widget/input/editor/chatPasteProviders.ts +src/vs/workbench/contrib/chat/common/chatArtifactExtraction.ts +src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.ts +src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.ts +src/vs/workbench/contrib/chat/common/tools/builtinTools/resolveDebugEventDetailsTool.ts +src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.ts +src/vs/workbench/contrib/chat/common/voiceClient/voiceClientService.ts +src/vs/workbench/contrib/chat/test/browser/actions/createPluginAction.test.ts +src/vs/workbench/contrib/chat/test/browser/agentSessions/agentHostChatInputPicker.test.ts +src/vs/workbench/contrib/chat/test/browser/agentSessions/agentHostSettingsFileSystemProvider.test.ts +src/vs/workbench/contrib/chat/test/browser/agentSessions/agentHostUntitledProvisionalSessionService.test.ts +src/vs/workbench/contrib/chat/test/browser/agentSessions/agentSessionSettingsFileSystemProvider.test.ts +src/vs/workbench/contrib/chat/test/browser/agentSessions/convertCarouselAnswers.test.ts +src/vs/workbench/contrib/chat/test/browser/chatSessions/chatSessionsService.test.ts +src/vs/workbench/contrib/chat/test/browser/voiceClient/voiceSessionController.test.ts +src/vs/workbench/contrib/chat/test/browser/voiceClient/voiceToolDispatchService.test.ts +src/vs/workbench/contrib/chat/test/browser/widget/input/chatModelConfigurationStore.test.ts +src/vs/workbench/contrib/chat/test/common/plugins/agentPluginFormatDetection.test.ts +src/vs/workbench/contrib/chat/test/common/tools/builtinTools/askQuestionsTool.test.ts +src/vs/workbench/contrib/chat/test/common/tools/builtinTools/manageTodoListTool.test.ts +src/vs/workbench/contrib/chat/test/common/tools/builtinTools/runSubagentTool.test.ts +src/vs/workbench/contrib/debug/browser/debugAdapterManager.ts +src/vs/workbench/contrib/debug/browser/debugConfigurationManager.ts +src/vs/workbench/contrib/debug/common/debugger.ts +src/vs/workbench/contrib/debug/node/debugAdapter.ts +src/vs/workbench/contrib/debug/test/browser/repl.test.ts +src/vs/workbench/contrib/debug/test/node/debugAdapter.test.ts +src/vs/workbench/contrib/debug/test/node/debugger.test.ts +src/vs/workbench/contrib/extensions/browser/extensionsActions.ts +src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.ts +src/vs/workbench/contrib/issue/electron-browser/nativeGitHubUploadService.ts +src/vs/workbench/contrib/localization/electron-browser/localization.contribution.ts +src/vs/workbench/contrib/mcp/common/mcpSandboxService.ts +src/vs/workbench/contrib/mcp/common/mcpServer.ts +src/vs/workbench/contrib/notebook/browser/contrib/cellCommands/cellCommands.ts +src/vs/workbench/contrib/notebook/browser/contrib/layout/layoutActions.ts +src/vs/workbench/contrib/notebook/browser/notebookEditor.ts +src/vs/workbench/contrib/notebook/browser/notebookOptions.ts +src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.ts +src/vs/workbench/contrib/performance/browser/performance.contribution.ts +src/vs/workbench/contrib/performance/test/browser/perfviewEditor.test.ts +src/vs/workbench/contrib/policyExport/electron-browser/policyExport.contribution.ts +src/vs/workbench/contrib/policyExport/test/node/policyExport.integrationTest.ts +src/vs/workbench/contrib/remote/browser/remoteStartEntry.ts +src/vs/workbench/contrib/remoteTunnel/test/electron-browser/remoteTunnel.contribution.test.ts +src/vs/workbench/contrib/search/browser/replaceService.ts +src/vs/workbench/contrib/tags/electron-browser/workspaceTags.ts +src/vs/workbench/contrib/tags/electron-browser/workspaceTagsService.ts +src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts +src/vs/workbench/contrib/tasks/browser/taskQuickPick.ts +src/vs/workbench/contrib/tasks/browser/terminalTaskSystem.ts +src/vs/workbench/contrib/tasks/common/jsonSchema_v1.ts +src/vs/workbench/contrib/tasks/common/jsonSchema_v2.ts +src/vs/workbench/contrib/tasks/common/problemMatcher.ts +src/vs/workbench/contrib/telemetry/browser/telemetry.contribution.ts +src/vs/workbench/contrib/terminal/browser/terminalActions.ts +src/vs/workbench/contrib/terminal/common/terminalEnvironment.ts +src/vs/workbench/contrib/terminal/test/browser/terminalInstance.test.ts +src/vs/workbench/contrib/terminal/test/common/terminalEnvironment.test.ts +src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.ts +src/vs/workbench/contrib/terminalContrib/chatAgentTools/test/electron-browser/runInTerminalTool.test.ts +src/vs/workbench/contrib/terminalContrib/history/common/history.ts +src/vs/workbench/contrib/terminalContrib/history/test/common/history.test.ts +src/vs/workbench/contrib/terminalContrib/suggest/test/browser/terminalCompletionService.test.ts +src/vs/workbench/contrib/themes/browser/themes.contribution.ts +src/vs/workbench/contrib/themes/test/node/colorRegistry.releaseTest.ts +src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyPeek.ts +src/vs/workbench/contrib/update/common/updateInfoParser.ts +src/vs/workbench/contrib/webview/browser/pre/service-worker.js +src/vs/workbench/contrib/welcomeAgentSessions/browser/agentSessionsWelcomeInput.ts +src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThroughInput.ts +src/vs/workbench/services/accounts/test/browser/defaultAccount.test.ts +src/vs/workbench/services/actions/common/menusExtensionPoint.ts +src/vs/workbench/services/agentHost/test/common/agentHostResourceService.test.ts +src/vs/workbench/services/chat/common/chatEntitlementService.ts +src/vs/workbench/services/configuration/common/configurationModels.ts +src/vs/workbench/services/configuration/test/browser/configurationEditing.test.ts +src/vs/workbench/services/configuration/test/common/configurationModels.test.ts +src/vs/workbench/services/configurationResolver/test/electron-browser/configurationResolverService.test.ts +src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.ts +src/vs/workbench/services/extensions/common/extensionsRegistry.ts +src/vs/workbench/services/extensions/electron-browser/localProcessExtensionHost.ts +src/vs/workbench/services/keybinding/common/keybindingEditing.ts +src/vs/workbench/services/telemetry/browser/workbenchCommonProperties.ts +src/vs/workbench/services/telemetry/common/workbenchCommonProperties.ts +src/vs/workbench/services/telemetry/test/browser/commonProperties.test.ts +src/vs/workbench/services/telemetry/test/node/commonProperties.test.ts +src/vs/workbench/services/textfile/test/node/encoding/encoding.integrationTest.ts +src/vs/workbench/services/themes/common/colorThemeData.ts +src/vs/workbench/test/browser/componentFixtures/chat/chatWidget.fixture.ts +src/vs/workbench/test/browser/componentFixtures/multiDiffEditorScroll.fixture.ts +src/vs/workbench/test/browser/componentFixtures/resizeObserver.fixture.ts +test/automation/src/electron.ts +test/automation/src/scm.ts +test/automation/src/search.ts +test/componentFixtures/playwright/tests/chatResizeObserver.spec.ts +test/componentFixtures/playwright/tests/utils.ts +test/monaco/esm-check/esm-check.js +test/sanity/src/context.ts +test/sanity/src/main.ts +test/smoke/src/areas/agentsWindow/agentsWindow.test.ts +test/smoke/src/areas/preferences/preferences.test.ts +test/smoke/test/index.js +test/unit/electron/index.js +test/unit/electron/preload.js +test/unit/electron/renderer.js diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 78e7f13c6f975..e6f6d656c1606 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -19,3 +19,7 @@ src/vs/workbench/services/extensions/common/extensionPoints.json @TylerLeonhardt # review is required to make sure TypeScript is not a better choice. .eslint-allowed-javascript-files @alexr00 @alexdima @sbatten @TylerLeonhardt +# Allowlist for the `local/code-no-bracket-notation-for-identifiers` lint rule. +# Adding entries here permits bracket notation for identifier properties; +# review is required to make sure dot notation cannot be used instead. +.eslint-allowed-bracket-notation-files @alexr00 @alexdima @sbatten @TylerLeonhardt diff --git a/eslint.config.js b/eslint.config.js index b9221655462a0..6b65c3d8f1d91 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -30,6 +30,12 @@ const allowedJavaScriptFiles = fs.readFileSync(path.join(import.meta.dirname, '. .map(line => line.trim()) .filter(line => line && !line.startsWith('#')); +const allowedBracketNotationFiles = fs.readFileSync(path.join(import.meta.dirname, '.eslint-allowed-bracket-notation-files'), 'utf8') + .toString() + .split(/\r\n|\n/) + .map(line => line.trim()) + .filter(line => line && !line.startsWith('#')); + export default defineConfig( // Global ignores { @@ -144,6 +150,20 @@ export default defineConfig( ] }, }, + // Disallow bracket notation for property names that can use dot notation. + { + files: [ + '**/*.{js,cjs,mjs,ts,tsx,mts,cts}', + '.eslint-plugin-local/**/*.ts', + ], + ignores: allowedBracketNotationFiles, + plugins: { + 'local': pluginLocal, + }, + rules: { + 'local/code-no-bracket-notation-for-identifiers': 'warn', + }, + }, // TS { files: [ From 2e0b353223d2fa5914516c8ffbb3682d1c9a134e Mon Sep 17 00:00:00 2001 From: Dmitriy Vasyura Date: Sat, 5 Sep 2026 22:08:01 -0700 Subject: [PATCH 2/6] eslint: update bracket allowlist owners Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .github/CODEOWNERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index e6f6d656c1606..9598b45a74936 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -22,4 +22,4 @@ src/vs/workbench/services/extensions/common/extensionPoints.json @TylerLeonhardt # Allowlist for the `local/code-no-bracket-notation-for-identifiers` lint rule. # Adding entries here permits bracket notation for identifier properties; # review is required to make sure dot notation cannot be used instead. -.eslint-allowed-bracket-notation-files @alexr00 @alexdima @sbatten @TylerLeonhardt +.eslint-allowed-bracket-notation-files @alexdima @dmitrivMS From cda7e1c8297cbce83bbc6afd4323ac0ff4779295 Mon Sep 17 00:00:00 2001 From: Dmitriy Vasyura Date: Sat, 5 Sep 2026 22:18:36 -0700 Subject: [PATCH 3/6] eslint: group bracket notation exclusions Organize the existing baseline by feature area so cleanup can be tracked and assigned without changing the excluded file set. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .eslint-allowed-bracket-notation-files | 717 +++++++++++++------------ 1 file changed, 376 insertions(+), 341 deletions(-) diff --git a/.eslint-allowed-bracket-notation-files b/.eslint-allowed-bracket-notation-files index 1bbbb1db8262f..8231ea35a7f52 100644 --- a/.eslint-allowed-bracket-notation-files +++ b/.eslint-allowed-bracket-notation-files @@ -8,49 +8,98 @@ # # Lines starting with `#` are comments. Blank lines are ignored. -build/azure-pipelines/common/apply-sdk-canary-override.ts -build/azure-pipelines/common/createBuild.ts -build/azure-pipelines/common/downloadNotice.ts -build/azure-pipelines/common/getPublishAuthTokens.ts -build/azure-pipelines/common/publish.ts -build/azure-pipelines/common/releaseBuild.ts -build/azure-pipelines/common/sign-win32.ts -build/azure-pipelines/common/sign.ts -build/azure-pipelines/distro/mixin-quality.ts -build/azure-pipelines/oss/audit-notices.ts -build/azure-pipelines/oss/merge-notices.ts -build/azure-pipelines/oss/scan-licenses.ts -build/azure-pipelines/upload-cdn.ts -build/azure-pipelines/upload-nlsmetadata.ts -build/azure-pipelines/upload-sourcemaps.ts -build/azure-pipelines/win32/codesign.ts -build/darwin/create-dmg.ts -build/darwin/create-universal-app.ts -build/darwin/sign-server.ts -build/darwin/sign.ts -build/darwin/verify-macho.ts -build/gulpfile.reh.ts -build/gulpfile.vscode.linux.ts -build/gulpfile.vscode.ts -build/gulpfile.vscode.win32.ts -build/hygiene.ts -build/lib/builtInExtensions.ts -build/lib/compilation.ts -build/lib/electron.ts -build/lib/fetch.ts -build/lib/getVersion.ts -build/lib/i18n.ts -build/lib/policies/exportPolicyData.ts -build/lib/preLaunch.ts -build/lib/test/render.test.ts -build/linux/debian/install-sysroot.ts -build/linux/libcxx-fetcher.ts -build/npm/postinstall.ts -build/npm/preinstall.ts -build/npm/update-localization-extension.ts -build/rspack/rspack.serve-out.config.mts -build/win32/explorer-dll-fetcher.ts -extensions/configuration-editing/src/configurationEditingMain.ts +# Agent Host platform (89 files) +src/vs/platform/agentHost/browser/webPubSubRelayTransport.ts +src/vs/platform/agentHost/common/automationMigration.ts +src/vs/platform/agentHost/common/copilotHome.ts +src/vs/platform/agentHost/common/meta/agentChangesetFileMeta.ts +src/vs/platform/agentHost/common/meta/agentChatSurfaceMeta.ts +src/vs/platform/agentHost/common/meta/agentCompletionAttachmentMeta.ts +src/vs/platform/agentHost/common/meta/agentCustomizationMeta.ts +src/vs/platform/agentHost/common/meta/agentErrorMeta.ts +src/vs/platform/agentHost/common/meta/agentFeedbackAnnotations.ts +src/vs/platform/agentHost/common/meta/agentMessageDelegationMeta.ts +src/vs/platform/agentHost/common/meta/agentPermissionRequestMeta.ts +src/vs/platform/agentHost/common/meta/agentSystemNotificationMeta.ts +src/vs/platform/agentHost/common/meta/agentToolCallMeta.ts +src/vs/platform/agentHost/common/sessionArtifactCollection.ts +src/vs/platform/agentHost/common/sessionArtifacts.ts +src/vs/platform/agentHost/common/state/protocolUpgrade.ts +src/vs/platform/agentHost/common/state/sessionState.ts +src/vs/platform/agentHost/common/taskEventReplay.ts +src/vs/platform/agentHost/common/webPubSub/framing.ts +src/vs/platform/agentHost/node/agentHostAutomationService.ts +src/vs/platform/agentHost/node/agentHostCustomizationEnablementService.ts +src/vs/platform/agentHost/node/agentHostMain.ts +src/vs/platform/agentHost/node/agentHostMicrosoftTelemetry.ts +src/vs/platform/agentHost/node/agentHostRepoInfoTelemetry.ts +src/vs/platform/agentHost/node/agentHostRestrictedTelemetry.ts +src/vs/platform/agentHost/node/agentHostServerMain.ts +src/vs/platform/agentHost/node/agentHostTerminalManager.ts +src/vs/platform/agentHost/node/appNodeModules.ts +src/vs/platform/agentHost/node/claude/claudeProxyAuth.ts +src/vs/platform/agentHost/node/claude/claudeSdkOptions.ts +src/vs/platform/agentHost/node/claude/claudeToolDisplay.ts +src/vs/platform/agentHost/node/claude/customizations/scan/claudeNativePluginScan.ts +src/vs/platform/agentHost/node/codex/codexAgent.ts +src/vs/platform/agentHost/node/codex/codexDelegation.ts +src/vs/platform/agentHost/node/codex/codexProxyService.ts +src/vs/platform/agentHost/node/codex/codexThreadCoordination.ts +src/vs/platform/agentHost/node/copilot/agentHostSandboxEngine.ts +src/vs/platform/agentHost/node/copilot/copilotAgent.ts +src/vs/platform/agentHost/node/copilot/copilotAgentSession.ts +src/vs/platform/agentHost/node/copilot/copilotCliEnvironment.ts +src/vs/platform/agentHost/node/copilot/copilotToolDisplay.ts +src/vs/platform/agentHost/node/copilot/mapSessionEvents.ts +src/vs/platform/agentHost/node/nodeAgentHostStarter.ts +src/vs/platform/agentHost/node/protocolServerHandler.ts +src/vs/platform/agentHost/node/shared/worktreeIsolation.ts +src/vs/platform/agentHost/node/sshRemoteAgentHostService.ts +src/vs/platform/agentHost/node/wslRemoteAgentHostHelpers.ts +src/vs/platform/agentHost/test/browser/webPubSubRelayTransport.test.ts +src/vs/platform/agentHost/test/common/partialToolInput.test.ts +src/vs/platform/agentHost/test/common/sessionFolderPickerMeta.test.ts +src/vs/platform/agentHost/test/common/sessionWorkspacelessMeta.test.ts +src/vs/platform/agentHost/test/common/state/hostBuildInfoMeta.test.ts +src/vs/platform/agentHost/test/electron-browser/agentHostProtocolClient.test.ts +src/vs/platform/agentHost/test/node/agentHostInternalTelemetry.test.ts +src/vs/platform/agentHost/test/node/agentHostRequestService.test.ts +src/vs/platform/agentHost/test/node/agentHostSessionTitleController.test.ts +src/vs/platform/agentHost/test/node/agentSideEffects.test.ts +src/vs/platform/agentHost/test/node/ahpSurfaceCoverage.ts +src/vs/platform/agentHost/test/node/byokResponsesTranslation.test.ts +src/vs/platform/agentHost/test/node/claudeAgent.integrationTest.ts +src/vs/platform/agentHost/test/node/claudeAgent.test.ts +src/vs/platform/agentHost/test/node/codex/codexCreateChat.test.ts +src/vs/platform/agentHost/test/node/codex/codexModelRefresh.test.ts +src/vs/platform/agentHost/test/node/codex/codexPrewarmEviction.test.ts +src/vs/platform/agentHost/test/node/codex/codexProfileImage.test.ts +src/vs/platform/agentHost/test/node/codex/codexSessionConfigKeys.test.ts +src/vs/platform/agentHost/test/node/codex/codexSessionTitleSpans.test.ts +src/vs/platform/agentHost/test/node/copilotAgent.test.ts +src/vs/platform/agentHost/test/node/copilotAgentSession.test.ts +src/vs/platform/agentHost/test/node/copilotPluginConverters.test.ts +src/vs/platform/agentHost/test/node/e2e/harness/agentHostE2ETestHarness.ts +src/vs/platform/agentHost/test/node/e2e/harness/capiReplayProxy.ts +src/vs/platform/agentHost/test/node/e2e/harness/capiWireCodec.ts +src/vs/platform/agentHost/test/node/e2e/providers/codexAgentHostE2E.integrationTest.ts +src/vs/platform/agentHost/test/node/e2e/providers/codexAgentHostLive.integrationTest.ts +src/vs/platform/agentHost/test/node/e2e/providers/copilotAgentHostE2E.integrationTest.ts +src/vs/platform/agentHost/test/node/e2e/providers/copilotOtelAgentHostE2E.integrationTest.ts +src/vs/platform/agentHost/test/node/e2e/providers/copilotPromptsE2E.integrationTest.ts +src/vs/platform/agentHost/test/node/e2e/suites/agentHostE2ESuites.ts +src/vs/platform/agentHost/test/node/e2e/suites/copilotCoverageSuite.ts +src/vs/platform/agentHost/test/node/e2e/suites/multiChatSuite.ts +src/vs/platform/agentHost/test/node/e2e/suites/sessionPersistenceSuite.ts +src/vs/platform/agentHost/test/node/mapSessionEvents.perf.test.ts +src/vs/platform/agentHost/test/node/mockAgent.ts +src/vs/platform/agentHost/test/node/serverIntegrationTestHelpers.ts +src/vs/platform/agentHost/test/node/shared/agentHostOctoKitService.test.ts +src/vs/platform/agentHost/test/node/shared/copilotApiService.test.ts +src/vs/platform/agentHost/test/node/sshHostKeyVerification.test.ts +src/vs/platform/agentHost/test/node/sshRemoteAgentHostService.test.ts + +# Copilot extension (90 files) extensions/copilot/.esbuild.mts extensions/copilot/script/alternativeAction/index.ts extensions/copilot/script/setup/getEnv.mts @@ -141,266 +190,11 @@ extensions/copilot/test/simulationMain.ts extensions/copilot/test/testExecutor.ts extensions/copilot/test/testVisualizationRunner.ts extensions/copilot/test/testVisualizationRunnerSTest.ts -extensions/css-language-features/client/src/node/cssClientMain.ts -extensions/css-language-features/server/src/cssServer.ts -extensions/css-language-features/server/src/node/cssServerNodeMain.ts -extensions/emmet/src/abbreviationActions.ts -extensions/emmet/src/defaultCompletionProvider.ts -extensions/emmet/src/splitJoinTag.ts -extensions/emmet/src/util.ts -extensions/git/src/askpass-main.ts -extensions/git/src/askpassManager.ts -extensions/git/src/git.ts -extensions/git/src/ipc/ipcClient.ts -extensions/git/src/ipc/ipcServer.ts -extensions/git/src/util.ts -extensions/github-authentication/src/test/github.test.ts -extensions/html-language-features/client/src/autoInsertion.ts -extensions/html-language-features/client/src/node/htmlClientMain.ts -extensions/html-language-features/server/src/modes/languageModes.ts -extensions/html-language-features/server/src/node/htmlServerNodeMain.ts -extensions/ipynb/src/deserializers.ts -extensions/json-language-features/client/src/node/jsonClientMain.ts -extensions/json-language-features/server/src/node/jsonServerNodeMain.ts -extensions/markdown-language-features/src/extension.ts -extensions/markdown-language-features/src/languageFeatures/copyFiles/copyFiles.ts -extensions/markdown-language-features/src/languageFeatures/copyFiles/snippets.ts -extensions/markdown-language-features/src/markdownEngine.ts -extensions/merge-conflict/src/mergeDecorator.ts -extensions/microsoft-authentication/src/common/experimentation.ts -extensions/terminal-suggest/src/completions/npm.ts -extensions/terminal-suggest/src/completions/yarn.ts -extensions/typescript-language-features/src/logging/telemetry.ts -extensions/typescript-language-features/src/tsServer/serverProcess.electron.ts -extensions/typescript-language-features/src/typescriptServiceClient.ts -extensions/typescript-language-features/src/utils/platform.ts -extensions/vscode-api-tests/src/singlefolder-tests/browser.cdp.test.ts -extensions/vscode-api-tests/src/singlefolder-tests/browser.tools.test.ts -extensions/vscode-api-tests/src/singlefolder-tests/chat.runInTerminal.test.ts -extensions/vscode-api-tests/src/singlefolder-tests/configuration.test.ts -extensions/vscode-api-tests/src/singlefolder-tests/window.test.ts -extensions/vscode-test-resolver/src/extension.ts -scripts/code-agent-host.js -scripts/code-server.js -scripts/code-sessions-web.js -scripts/code-web.js -scripts/sync-agent-host-protocol.ts -scripts/test-agent-host-e2e.ts -src/bootstrap-cli.ts -src/bootstrap-esm.ts -src/bootstrap-fork.ts -src/bootstrap-meta.ts -src/bootstrap-node.ts -src/bootstrap-server.ts -src/cli.ts -src/main.ts -src/server-cli.ts -src/server-main.ts -src/vs/base/browser/dom.ts -src/vs/base/browser/markdownRenderer.ts -src/vs/base/common/desktopEnvironmentInfo.ts -src/vs/base/common/event.ts -src/vs/base/common/observableInternal/index.ts -src/vs/base/common/platform.ts -src/vs/base/common/process.ts -src/vs/base/common/strings.ts -src/vs/base/node/nls.ts -src/vs/base/node/powershell.ts -src/vs/base/node/processes.ts -src/vs/base/node/shell.ts -src/vs/base/node/terminalEncoding.ts -src/vs/base/parts/ipc/node/ipc.net.ts -src/vs/base/parts/ipc/test/node/testApp.ts -src/vs/base/parts/sandbox/electron-browser/preload.ts -src/vs/base/test/browser/markdownRenderer.test.ts -src/vs/base/test/common/decorators.test.ts -src/vs/base/test/common/keyCodes.test.ts -src/vs/base/test/common/oauth.test.ts -src/vs/base/test/common/processes.test.ts -src/vs/base/test/node/port.test.ts -src/vs/base/test/node/processes/processes.integrationTest.ts -src/vs/code/electron-browser/workbench/workbench.ts -src/vs/code/electron-main/app.ts -src/vs/code/electron-main/main.ts -src/vs/code/node/cli.ts -src/vs/code/node/cliProcessMain.ts -src/vs/code/test/node/bootstrapESM.test.ts -src/vs/editor/common/languages/supports/languageBracketsConfiguration.ts -src/vs/editor/common/services/findSectionHeaders.ts -src/vs/editor/contrib/colorPicker/browser/colorDetector.ts -src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/debugVisualization.ts -src/vs/platform/agentHost/browser/webPubSubRelayTransport.ts -src/vs/platform/agentHost/common/automationMigration.ts -src/vs/platform/agentHost/common/copilotHome.ts -src/vs/platform/agentHost/common/meta/agentChangesetFileMeta.ts -src/vs/platform/agentHost/common/meta/agentChatSurfaceMeta.ts -src/vs/platform/agentHost/common/meta/agentCompletionAttachmentMeta.ts -src/vs/platform/agentHost/common/meta/agentCustomizationMeta.ts -src/vs/platform/agentHost/common/meta/agentErrorMeta.ts -src/vs/platform/agentHost/common/meta/agentFeedbackAnnotations.ts -src/vs/platform/agentHost/common/meta/agentMessageDelegationMeta.ts -src/vs/platform/agentHost/common/meta/agentPermissionRequestMeta.ts -src/vs/platform/agentHost/common/meta/agentSystemNotificationMeta.ts -src/vs/platform/agentHost/common/meta/agentToolCallMeta.ts -src/vs/platform/agentHost/common/sessionArtifactCollection.ts -src/vs/platform/agentHost/common/sessionArtifacts.ts -src/vs/platform/agentHost/common/state/protocolUpgrade.ts -src/vs/platform/agentHost/common/state/sessionState.ts -src/vs/platform/agentHost/common/taskEventReplay.ts -src/vs/platform/agentHost/common/webPubSub/framing.ts -src/vs/platform/agentHost/node/agentHostAutomationService.ts -src/vs/platform/agentHost/node/agentHostCustomizationEnablementService.ts -src/vs/platform/agentHost/node/agentHostMain.ts -src/vs/platform/agentHost/node/agentHostMicrosoftTelemetry.ts -src/vs/platform/agentHost/node/agentHostRepoInfoTelemetry.ts -src/vs/platform/agentHost/node/agentHostRestrictedTelemetry.ts -src/vs/platform/agentHost/node/agentHostServerMain.ts -src/vs/platform/agentHost/node/agentHostTerminalManager.ts -src/vs/platform/agentHost/node/appNodeModules.ts -src/vs/platform/agentHost/node/claude/claudeProxyAuth.ts -src/vs/platform/agentHost/node/claude/claudeSdkOptions.ts -src/vs/platform/agentHost/node/claude/claudeToolDisplay.ts -src/vs/platform/agentHost/node/claude/customizations/scan/claudeNativePluginScan.ts -src/vs/platform/agentHost/node/codex/codexAgent.ts -src/vs/platform/agentHost/node/codex/codexDelegation.ts -src/vs/platform/agentHost/node/codex/codexProxyService.ts -src/vs/platform/agentHost/node/codex/codexThreadCoordination.ts -src/vs/platform/agentHost/node/copilot/agentHostSandboxEngine.ts -src/vs/platform/agentHost/node/copilot/copilotAgent.ts -src/vs/platform/agentHost/node/copilot/copilotAgentSession.ts -src/vs/platform/agentHost/node/copilot/copilotCliEnvironment.ts -src/vs/platform/agentHost/node/copilot/copilotToolDisplay.ts -src/vs/platform/agentHost/node/copilot/mapSessionEvents.ts -src/vs/platform/agentHost/node/nodeAgentHostStarter.ts -src/vs/platform/agentHost/node/protocolServerHandler.ts -src/vs/platform/agentHost/node/shared/worktreeIsolation.ts -src/vs/platform/agentHost/node/sshRemoteAgentHostService.ts -src/vs/platform/agentHost/node/wslRemoteAgentHostHelpers.ts -src/vs/platform/agentHost/test/browser/webPubSubRelayTransport.test.ts -src/vs/platform/agentHost/test/common/partialToolInput.test.ts -src/vs/platform/agentHost/test/common/sessionFolderPickerMeta.test.ts -src/vs/platform/agentHost/test/common/sessionWorkspacelessMeta.test.ts -src/vs/platform/agentHost/test/common/state/hostBuildInfoMeta.test.ts -src/vs/platform/agentHost/test/electron-browser/agentHostProtocolClient.test.ts -src/vs/platform/agentHost/test/node/agentHostInternalTelemetry.test.ts -src/vs/platform/agentHost/test/node/agentHostRequestService.test.ts -src/vs/platform/agentHost/test/node/agentHostSessionTitleController.test.ts -src/vs/platform/agentHost/test/node/agentSideEffects.test.ts -src/vs/platform/agentHost/test/node/ahpSurfaceCoverage.ts -src/vs/platform/agentHost/test/node/byokResponsesTranslation.test.ts -src/vs/platform/agentHost/test/node/claudeAgent.integrationTest.ts -src/vs/platform/agentHost/test/node/claudeAgent.test.ts -src/vs/platform/agentHost/test/node/codex/codexCreateChat.test.ts -src/vs/platform/agentHost/test/node/codex/codexModelRefresh.test.ts -src/vs/platform/agentHost/test/node/codex/codexPrewarmEviction.test.ts -src/vs/platform/agentHost/test/node/codex/codexProfileImage.test.ts -src/vs/platform/agentHost/test/node/codex/codexSessionConfigKeys.test.ts -src/vs/platform/agentHost/test/node/codex/codexSessionTitleSpans.test.ts -src/vs/platform/agentHost/test/node/copilotAgent.test.ts -src/vs/platform/agentHost/test/node/copilotAgentSession.test.ts -src/vs/platform/agentHost/test/node/copilotPluginConverters.test.ts -src/vs/platform/agentHost/test/node/e2e/harness/agentHostE2ETestHarness.ts -src/vs/platform/agentHost/test/node/e2e/harness/capiReplayProxy.ts -src/vs/platform/agentHost/test/node/e2e/harness/capiWireCodec.ts -src/vs/platform/agentHost/test/node/e2e/providers/codexAgentHostE2E.integrationTest.ts -src/vs/platform/agentHost/test/node/e2e/providers/codexAgentHostLive.integrationTest.ts -src/vs/platform/agentHost/test/node/e2e/providers/copilotAgentHostE2E.integrationTest.ts -src/vs/platform/agentHost/test/node/e2e/providers/copilotOtelAgentHostE2E.integrationTest.ts -src/vs/platform/agentHost/test/node/e2e/providers/copilotPromptsE2E.integrationTest.ts -src/vs/platform/agentHost/test/node/e2e/suites/agentHostE2ESuites.ts -src/vs/platform/agentHost/test/node/e2e/suites/copilotCoverageSuite.ts -src/vs/platform/agentHost/test/node/e2e/suites/multiChatSuite.ts -src/vs/platform/agentHost/test/node/e2e/suites/sessionPersistenceSuite.ts -src/vs/platform/agentHost/test/node/mapSessionEvents.perf.test.ts -src/vs/platform/agentHost/test/node/mockAgent.ts -src/vs/platform/agentHost/test/node/serverIntegrationTestHelpers.ts -src/vs/platform/agentHost/test/node/shared/agentHostOctoKitService.test.ts -src/vs/platform/agentHost/test/node/shared/copilotApiService.test.ts -src/vs/platform/agentHost/test/node/sshHostKeyVerification.test.ts -src/vs/platform/agentHost/test/node/sshRemoteAgentHostService.test.ts + +# Workbench chat and agents (40 files) src/vs/platform/agentPlugins/common/agentPluginParser.ts src/vs/platform/agentPlugins/common/pluginParsers.ts -src/vs/platform/configuration/test/common/configurationModels.test.ts -src/vs/platform/configuration/test/common/configurationRegistry.test.ts -src/vs/platform/configuration/test/common/policyConfiguration.test.ts -src/vs/platform/contextkey/browser/contextKeyService.ts -src/vs/platform/diagnostics/node/diagnosticsService.ts -src/vs/platform/dialogs/electron-browser/dialog.ts -src/vs/platform/environment/common/environmentService.ts -src/vs/platform/environment/electron-main/environmentMainService.ts -src/vs/platform/environment/node/argvHelper.ts -src/vs/platform/environment/node/userDataPath.ts -src/vs/platform/environment/test/electron-main/environmentMainService.test.ts -src/vs/platform/environment/test/node/userDataPath.test.ts -src/vs/platform/extensionManagement/common/extensionGalleryService.ts -src/vs/platform/extensionManagement/common/extensionTipsService.ts -src/vs/platform/extensionManagement/node/extensionLifecycle.ts -src/vs/platform/github/common/githubTransport.ts -src/vs/platform/instantiation/test/common/instantiationServiceMock.ts -src/vs/platform/launch/electron-main/launchMainService.ts src/vs/platform/mcp/test/common/mcpManagementService.test.ts -src/vs/platform/native/electron-main/auth.ts -src/vs/platform/otel/test/node/otlp/otlpJsonDecode.test.ts -src/vs/platform/otel/test/node/otlp/outboundForwarder.test.ts -src/vs/platform/policy/test/common/policy.test.ts -src/vs/platform/product/common/product.ts -src/vs/platform/remote/node/wsl.ts -src/vs/platform/request/node/requestService.ts -src/vs/platform/shell/node/shellEnv.ts -src/vs/platform/telemetry/common/1dsAppender.ts -src/vs/platform/telemetry/common/commonProperties.ts -src/vs/platform/telemetry/common/telemetryService.ts -src/vs/platform/telemetry/test/browser/1dsAppender.test.ts -src/vs/platform/telemetry/test/browser/telemetryService.test.ts -src/vs/platform/terminal/node/ptyService.ts -src/vs/platform/terminal/node/terminalEnvironment.ts -src/vs/platform/terminal/node/terminalProcess.ts -src/vs/platform/terminal/node/terminalProfiles.ts -src/vs/platform/terminal/test/node/terminalEnvironment.test.ts -src/vs/platform/tunnel/node/tunnelProxy.ts -src/vs/platform/tunnel/test/node/tunnelProxy.test.ts -src/vs/platform/userDataProfile/electron-main/userDataProfile.ts -src/vs/platform/userDataSync/common/abstractSynchronizer.ts -src/vs/platform/userDataSync/common/userDataSyncStoreService.ts -src/vs/platform/utilityProcess/electron-main/utilityProcess.ts -src/vs/platform/webContentExtractor/electron-main/webPageLoader.ts -src/vs/platform/webContentExtractor/test/electron-main/webPageLoader.test.ts -src/vs/platform/windows/electron-main/windowImpl.ts -src/vs/platform/windows/electron-main/windowsMainService.ts -src/vs/server/node/remoteAgentEnvironmentImpl.ts -src/vs/server/node/remoteExtensionHostAgentCli.ts -src/vs/server/node/remoteExtensionHostAgentServer.ts -src/vs/server/node/remoteExtensionsScanner.ts -src/vs/server/node/remoteTerminalChannel.ts -src/vs/server/node/server.cli.ts -src/vs/server/node/server.cliAgent.ts -src/vs/server/node/server.main.ts -src/vs/server/node/serverEnvironmentService.ts -src/vs/server/node/webClientServer.ts -src/vs/sessions/contrib/automations/browser/automationService.ts -src/vs/sessions/contrib/github/browser/githubApiClient.ts -src/vs/sessions/contrib/github/common/utils.ts -src/vs/sessions/contrib/providers/agentHost/browser/agentHostAutomationStore.ts -src/vs/sessions/contrib/providers/agentHost/test/browser/agentHostAutomationStore.test.ts -src/vs/sessions/contrib/providers/agentHost/test/browser/agentHostSettingsFileSystemProvider.test.ts -src/vs/sessions/contrib/providers/agentHost/test/browser/agentSessionSettingsFileSystemProvider.test.ts -src/vs/sessions/contrib/providers/copilotChatSessions/test/browser/permissionPicker.test.ts -src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxApiService.ts -src/vs/sessions/electron-browser/sessions.ts -src/vs/sessions/test/browser/chatGroupsView.test.ts -src/vs/workbench/api/common/extHostDebugService.ts -src/vs/workbench/api/common/extHostMcp.ts -src/vs/workbench/api/common/extHostVariableResolverService.ts -src/vs/workbench/api/node/extensionHostProcess.ts -src/vs/workbench/api/node/extHostExtensionService.ts -src/vs/workbench/api/test/browser/extHostConfiguration.test.ts -src/vs/workbench/api/test/browser/extHostTreeViews.test.ts -src/vs/workbench/api/worker/extensionHostWorker.ts -src/vs/workbench/browser/parts/editor/editor.ts -src/vs/workbench/browser/parts/editor/editorGroupView.ts -src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.ts -src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPane.ts -src/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.ts src/vs/workbench/contrib/chat/browser/actions/createPluginAction.ts src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.ts src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionHandler.ts @@ -432,40 +226,162 @@ src/vs/workbench/contrib/chat/test/common/plugins/agentPluginFormatDetection.tes src/vs/workbench/contrib/chat/test/common/tools/builtinTools/askQuestionsTool.test.ts src/vs/workbench/contrib/chat/test/common/tools/builtinTools/manageTodoListTool.test.ts src/vs/workbench/contrib/chat/test/common/tools/builtinTools/runSubagentTool.test.ts -src/vs/workbench/contrib/debug/browser/debugAdapterManager.ts -src/vs/workbench/contrib/debug/browser/debugConfigurationManager.ts -src/vs/workbench/contrib/debug/common/debugger.ts -src/vs/workbench/contrib/debug/node/debugAdapter.ts -src/vs/workbench/contrib/debug/test/browser/repl.test.ts -src/vs/workbench/contrib/debug/test/node/debugAdapter.test.ts -src/vs/workbench/contrib/debug/test/node/debugger.test.ts -src/vs/workbench/contrib/extensions/browser/extensionsActions.ts src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.ts -src/vs/workbench/contrib/issue/electron-browser/nativeGitHubUploadService.ts -src/vs/workbench/contrib/localization/electron-browser/localization.contribution.ts src/vs/workbench/contrib/mcp/common/mcpSandboxService.ts src/vs/workbench/contrib/mcp/common/mcpServer.ts -src/vs/workbench/contrib/notebook/browser/contrib/cellCommands/cellCommands.ts -src/vs/workbench/contrib/notebook/browser/contrib/layout/layoutActions.ts -src/vs/workbench/contrib/notebook/browser/notebookEditor.ts -src/vs/workbench/contrib/notebook/browser/notebookOptions.ts -src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.ts -src/vs/workbench/contrib/performance/browser/performance.contribution.ts -src/vs/workbench/contrib/performance/test/browser/perfviewEditor.test.ts -src/vs/workbench/contrib/policyExport/electron-browser/policyExport.contribution.ts -src/vs/workbench/contrib/policyExport/test/node/policyExport.integrationTest.ts -src/vs/workbench/contrib/remote/browser/remoteStartEntry.ts -src/vs/workbench/contrib/remoteTunnel/test/electron-browser/remoteTunnel.contribution.test.ts -src/vs/workbench/contrib/search/browser/replaceService.ts -src/vs/workbench/contrib/tags/electron-browser/workspaceTags.ts -src/vs/workbench/contrib/tags/electron-browser/workspaceTagsService.ts +src/vs/workbench/contrib/welcomeAgentSessions/browser/agentSessionsWelcomeInput.ts +src/vs/workbench/services/agentHost/test/common/agentHostResourceService.test.ts +src/vs/workbench/services/chat/common/chatEntitlementService.ts + +# Agents Window (11 files) +src/vs/sessions/contrib/automations/browser/automationService.ts +src/vs/sessions/contrib/github/browser/githubApiClient.ts +src/vs/sessions/contrib/github/common/utils.ts +src/vs/sessions/contrib/providers/agentHost/browser/agentHostAutomationStore.ts +src/vs/sessions/contrib/providers/agentHost/test/browser/agentHostAutomationStore.test.ts +src/vs/sessions/contrib/providers/agentHost/test/browser/agentHostSettingsFileSystemProvider.test.ts +src/vs/sessions/contrib/providers/agentHost/test/browser/agentSessionSettingsFileSystemProvider.test.ts +src/vs/sessions/contrib/providers/copilotChatSessions/test/browser/permissionPicker.test.ts +src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxApiService.ts +src/vs/sessions/electron-browser/sessions.ts +src/vs/sessions/test/browser/chatGroupsView.test.ts + +# Build, CI, and scripts (48 files) +build/azure-pipelines/common/apply-sdk-canary-override.ts +build/azure-pipelines/common/createBuild.ts +build/azure-pipelines/common/downloadNotice.ts +build/azure-pipelines/common/getPublishAuthTokens.ts +build/azure-pipelines/common/publish.ts +build/azure-pipelines/common/releaseBuild.ts +build/azure-pipelines/common/sign-win32.ts +build/azure-pipelines/common/sign.ts +build/azure-pipelines/distro/mixin-quality.ts +build/azure-pipelines/oss/audit-notices.ts +build/azure-pipelines/oss/merge-notices.ts +build/azure-pipelines/oss/scan-licenses.ts +build/azure-pipelines/upload-cdn.ts +build/azure-pipelines/upload-nlsmetadata.ts +build/azure-pipelines/upload-sourcemaps.ts +build/azure-pipelines/win32/codesign.ts +build/darwin/create-dmg.ts +build/darwin/create-universal-app.ts +build/darwin/sign-server.ts +build/darwin/sign.ts +build/darwin/verify-macho.ts +build/gulpfile.reh.ts +build/gulpfile.vscode.linux.ts +build/gulpfile.vscode.ts +build/gulpfile.vscode.win32.ts +build/hygiene.ts +build/lib/builtInExtensions.ts +build/lib/compilation.ts +build/lib/electron.ts +build/lib/fetch.ts +build/lib/getVersion.ts +build/lib/i18n.ts +build/lib/policies/exportPolicyData.ts +build/lib/preLaunch.ts +build/lib/test/render.test.ts +build/linux/debian/install-sysroot.ts +build/linux/libcxx-fetcher.ts +build/npm/postinstall.ts +build/npm/preinstall.ts +build/npm/update-localization-extension.ts +build/rspack/rspack.serve-out.config.mts +build/win32/explorer-dll-fetcher.ts +scripts/code-agent-host.js +scripts/code-server.js +scripts/code-sessions-web.js +scripts/code-web.js +scripts/sync-agent-host-protocol.ts +scripts/test-agent-host-e2e.ts + +# Application bootstrap, server, and environment (41 files) +src/bootstrap-cli.ts +src/bootstrap-esm.ts +src/bootstrap-fork.ts +src/bootstrap-meta.ts +src/bootstrap-node.ts +src/bootstrap-server.ts +src/cli.ts +src/main.ts +src/server-cli.ts +src/server-main.ts +src/vs/code/electron-browser/workbench/workbench.ts +src/vs/code/electron-main/app.ts +src/vs/code/electron-main/main.ts +src/vs/code/node/cli.ts +src/vs/code/node/cliProcessMain.ts +src/vs/code/test/node/bootstrapESM.test.ts +src/vs/platform/diagnostics/node/diagnosticsService.ts +src/vs/platform/dialogs/electron-browser/dialog.ts +src/vs/platform/environment/common/environmentService.ts +src/vs/platform/environment/electron-main/environmentMainService.ts +src/vs/platform/environment/node/argvHelper.ts +src/vs/platform/environment/node/userDataPath.ts +src/vs/platform/environment/test/electron-main/environmentMainService.test.ts +src/vs/platform/environment/test/node/userDataPath.test.ts +src/vs/platform/launch/electron-main/launchMainService.ts +src/vs/platform/native/electron-main/auth.ts +src/vs/platform/product/common/product.ts +src/vs/platform/shell/node/shellEnv.ts +src/vs/platform/utilityProcess/electron-main/utilityProcess.ts +src/vs/platform/windows/electron-main/windowImpl.ts +src/vs/platform/windows/electron-main/windowsMainService.ts +src/vs/server/node/remoteAgentEnvironmentImpl.ts +src/vs/server/node/remoteExtensionHostAgentCli.ts +src/vs/server/node/remoteExtensionHostAgentServer.ts +src/vs/server/node/remoteExtensionsScanner.ts +src/vs/server/node/remoteTerminalChannel.ts +src/vs/server/node/server.cli.ts +src/vs/server/node/server.cliAgent.ts +src/vs/server/node/server.main.ts +src/vs/server/node/serverEnvironmentService.ts +src/vs/server/node/webClientServer.ts + +# Base and editor (27 files) +src/vs/base/browser/dom.ts +src/vs/base/browser/markdownRenderer.ts +src/vs/base/common/desktopEnvironmentInfo.ts +src/vs/base/common/event.ts +src/vs/base/common/observableInternal/index.ts +src/vs/base/common/platform.ts +src/vs/base/common/process.ts +src/vs/base/common/strings.ts +src/vs/base/node/nls.ts +src/vs/base/node/powershell.ts +src/vs/base/node/processes.ts +src/vs/base/node/shell.ts +src/vs/base/node/terminalEncoding.ts +src/vs/base/parts/ipc/node/ipc.net.ts +src/vs/base/parts/ipc/test/node/testApp.ts +src/vs/base/parts/sandbox/electron-browser/preload.ts +src/vs/base/test/browser/markdownRenderer.test.ts +src/vs/base/test/common/decorators.test.ts +src/vs/base/test/common/keyCodes.test.ts +src/vs/base/test/common/oauth.test.ts +src/vs/base/test/common/processes.test.ts +src/vs/base/test/node/port.test.ts +src/vs/base/test/node/processes/processes.integrationTest.ts +src/vs/editor/common/languages/supports/languageBracketsConfiguration.ts +src/vs/editor/common/services/findSectionHeaders.ts +src/vs/editor/contrib/colorPicker/browser/colorDetector.ts +src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/debugVisualization.ts + +# Terminal and tasks (22 files) +extensions/terminal-suggest/src/completions/npm.ts +extensions/terminal-suggest/src/completions/yarn.ts +src/vs/platform/terminal/node/ptyService.ts +src/vs/platform/terminal/node/terminalEnvironment.ts +src/vs/platform/terminal/node/terminalProcess.ts +src/vs/platform/terminal/node/terminalProfiles.ts +src/vs/platform/terminal/test/node/terminalEnvironment.test.ts src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts src/vs/workbench/contrib/tasks/browser/taskQuickPick.ts src/vs/workbench/contrib/tasks/browser/terminalTaskSystem.ts src/vs/workbench/contrib/tasks/common/jsonSchema_v1.ts src/vs/workbench/contrib/tasks/common/jsonSchema_v2.ts src/vs/workbench/contrib/tasks/common/problemMatcher.ts -src/vs/workbench/contrib/telemetry/browser/telemetry.contribution.ts src/vs/workbench/contrib/terminal/browser/terminalActions.ts src/vs/workbench/contrib/terminal/common/terminalEnvironment.ts src/vs/workbench/contrib/terminal/test/browser/terminalInstance.test.ts @@ -475,31 +391,125 @@ src/vs/workbench/contrib/terminalContrib/chatAgentTools/test/electron-browser/ru src/vs/workbench/contrib/terminalContrib/history/common/history.ts src/vs/workbench/contrib/terminalContrib/history/test/common/history.test.ts src/vs/workbench/contrib/terminalContrib/suggest/test/browser/terminalCompletionService.test.ts -src/vs/workbench/contrib/themes/browser/themes.contribution.ts -src/vs/workbench/contrib/themes/test/node/colorRegistry.releaseTest.ts -src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyPeek.ts -src/vs/workbench/contrib/update/common/updateInfoParser.ts -src/vs/workbench/contrib/webview/browser/pre/service-worker.js -src/vs/workbench/contrib/welcomeAgentSessions/browser/agentSessionsWelcomeInput.ts -src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThroughInput.ts -src/vs/workbench/services/accounts/test/browser/defaultAccount.test.ts -src/vs/workbench/services/actions/common/menusExtensionPoint.ts -src/vs/workbench/services/agentHost/test/common/agentHostResourceService.test.ts -src/vs/workbench/services/chat/common/chatEntitlementService.ts + +# Debug (7 files) +src/vs/workbench/contrib/debug/browser/debugAdapterManager.ts +src/vs/workbench/contrib/debug/browser/debugConfigurationManager.ts +src/vs/workbench/contrib/debug/common/debugger.ts +src/vs/workbench/contrib/debug/node/debugAdapter.ts +src/vs/workbench/contrib/debug/test/browser/repl.test.ts +src/vs/workbench/contrib/debug/test/node/debugAdapter.test.ts +src/vs/workbench/contrib/debug/test/node/debugger.test.ts + +# Notebooks (6 files) +extensions/ipynb/src/deserializers.ts +src/vs/workbench/contrib/notebook/browser/contrib/cellCommands/cellCommands.ts +src/vs/workbench/contrib/notebook/browser/contrib/layout/layoutActions.ts +src/vs/workbench/contrib/notebook/browser/notebookEditor.ts +src/vs/workbench/contrib/notebook/browser/notebookOptions.ts +src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.ts + +# Extension host, API, and extension management (20 files) +extensions/vscode-api-tests/src/singlefolder-tests/browser.cdp.test.ts +extensions/vscode-api-tests/src/singlefolder-tests/browser.tools.test.ts +extensions/vscode-api-tests/src/singlefolder-tests/chat.runInTerminal.test.ts +extensions/vscode-api-tests/src/singlefolder-tests/configuration.test.ts +extensions/vscode-api-tests/src/singlefolder-tests/window.test.ts +extensions/vscode-test-resolver/src/extension.ts +src/vs/platform/extensionManagement/common/extensionGalleryService.ts +src/vs/platform/extensionManagement/common/extensionTipsService.ts +src/vs/platform/extensionManagement/node/extensionLifecycle.ts +src/vs/workbench/api/common/extHostDebugService.ts +src/vs/workbench/api/common/extHostMcp.ts +src/vs/workbench/api/common/extHostVariableResolverService.ts +src/vs/workbench/api/node/extensionHostProcess.ts +src/vs/workbench/api/node/extHostExtensionService.ts +src/vs/workbench/api/test/browser/extHostConfiguration.test.ts +src/vs/workbench/api/test/browser/extHostTreeViews.test.ts +src/vs/workbench/api/worker/extensionHostWorker.ts +src/vs/workbench/contrib/extensions/browser/extensionsActions.ts +src/vs/workbench/services/extensions/common/extensionsRegistry.ts +src/vs/workbench/services/extensions/electron-browser/localProcessExtensionHost.ts + +# Configuration, profiles, and sync (14 files) +extensions/configuration-editing/src/configurationEditingMain.ts +src/vs/platform/configuration/test/common/configurationModels.test.ts +src/vs/platform/configuration/test/common/configurationRegistry.test.ts +src/vs/platform/configuration/test/common/policyConfiguration.test.ts +src/vs/platform/contextkey/browser/contextKeyService.ts +src/vs/platform/policy/test/common/policy.test.ts +src/vs/platform/userDataProfile/electron-main/userDataProfile.ts +src/vs/platform/userDataSync/common/abstractSynchronizer.ts +src/vs/platform/userDataSync/common/userDataSyncStoreService.ts src/vs/workbench/services/configuration/common/configurationModels.ts src/vs/workbench/services/configuration/test/browser/configurationEditing.test.ts src/vs/workbench/services/configuration/test/common/configurationModels.test.ts src/vs/workbench/services/configurationResolver/test/electron-browser/configurationResolverService.test.ts -src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.ts -src/vs/workbench/services/extensions/common/extensionsRegistry.ts -src/vs/workbench/services/extensions/electron-browser/localProcessExtensionHost.ts src/vs/workbench/services/keybinding/common/keybindingEditing.ts + +# Telemetry, OTel, and performance (14 files) +src/vs/platform/otel/test/node/otlp/otlpJsonDecode.test.ts +src/vs/platform/otel/test/node/otlp/outboundForwarder.test.ts +src/vs/platform/telemetry/common/1dsAppender.ts +src/vs/platform/telemetry/common/commonProperties.ts +src/vs/platform/telemetry/common/telemetryService.ts +src/vs/platform/telemetry/test/browser/1dsAppender.test.ts +src/vs/platform/telemetry/test/browser/telemetryService.test.ts +src/vs/workbench/contrib/performance/browser/performance.contribution.ts +src/vs/workbench/contrib/performance/test/browser/perfviewEditor.test.ts +src/vs/workbench/contrib/telemetry/browser/telemetry.contribution.ts src/vs/workbench/services/telemetry/browser/workbenchCommonProperties.ts src/vs/workbench/services/telemetry/common/workbenchCommonProperties.ts src/vs/workbench/services/telemetry/test/browser/commonProperties.test.ts src/vs/workbench/services/telemetry/test/node/commonProperties.test.ts -src/vs/workbench/services/textfile/test/node/encoding/encoding.integrationTest.ts -src/vs/workbench/services/themes/common/colorThemeData.ts + +# Remote, tunnels, networking, and authentication (11 files) +extensions/github-authentication/src/test/github.test.ts +extensions/microsoft-authentication/src/common/experimentation.ts +src/vs/platform/github/common/githubTransport.ts +src/vs/platform/remote/node/wsl.ts +src/vs/platform/request/node/requestService.ts +src/vs/platform/tunnel/node/tunnelProxy.ts +src/vs/platform/tunnel/test/node/tunnelProxy.test.ts +src/vs/platform/webContentExtractor/electron-main/webPageLoader.ts +src/vs/platform/webContentExtractor/test/electron-main/webPageLoader.test.ts +src/vs/workbench/contrib/remote/browser/remoteStartEntry.ts +src/vs/workbench/contrib/remoteTunnel/test/electron-browser/remoteTunnel.contribution.test.ts + +# Language feature extensions (22 files) +extensions/css-language-features/client/src/node/cssClientMain.ts +extensions/css-language-features/server/src/cssServer.ts +extensions/css-language-features/server/src/node/cssServerNodeMain.ts +extensions/emmet/src/abbreviationActions.ts +extensions/emmet/src/defaultCompletionProvider.ts +extensions/emmet/src/splitJoinTag.ts +extensions/emmet/src/util.ts +extensions/html-language-features/client/src/autoInsertion.ts +extensions/html-language-features/client/src/node/htmlClientMain.ts +extensions/html-language-features/server/src/modes/languageModes.ts +extensions/html-language-features/server/src/node/htmlServerNodeMain.ts +extensions/json-language-features/client/src/node/jsonClientMain.ts +extensions/json-language-features/server/src/node/jsonServerNodeMain.ts +extensions/markdown-language-features/src/extension.ts +extensions/markdown-language-features/src/languageFeatures/copyFiles/copyFiles.ts +extensions/markdown-language-features/src/languageFeatures/copyFiles/snippets.ts +extensions/markdown-language-features/src/markdownEngine.ts +extensions/merge-conflict/src/mergeDecorator.ts +extensions/typescript-language-features/src/logging/telemetry.ts +extensions/typescript-language-features/src/tsServer/serverProcess.electron.ts +extensions/typescript-language-features/src/typescriptServiceClient.ts +extensions/typescript-language-features/src/utils/platform.ts + +# Git extension (6 files) +extensions/git/src/askpass-main.ts +extensions/git/src/askpassManager.ts +extensions/git/src/git.ts +extensions/git/src/ipc/ipcClient.ts +extensions/git/src/ipc/ipcServer.ts +extensions/git/src/util.ts + +# Test infrastructure (18 files) +src/vs/platform/instantiation/test/common/instantiationServiceMock.ts src/vs/workbench/test/browser/componentFixtures/chat/chatWidget.fixture.ts src/vs/workbench/test/browser/componentFixtures/multiDiffEditorScroll.fixture.ts src/vs/workbench/test/browser/componentFixtures/resizeObserver.fixture.ts @@ -517,3 +527,28 @@ test/smoke/test/index.js test/unit/electron/index.js test/unit/electron/preload.js test/unit/electron/renderer.js + +# Workbench UI and remaining services (23 files) +src/vs/workbench/browser/parts/editor/editor.ts +src/vs/workbench/browser/parts/editor/editorGroupView.ts +src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.ts +src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPane.ts +src/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.ts +src/vs/workbench/contrib/issue/electron-browser/nativeGitHubUploadService.ts +src/vs/workbench/contrib/localization/electron-browser/localization.contribution.ts +src/vs/workbench/contrib/policyExport/electron-browser/policyExport.contribution.ts +src/vs/workbench/contrib/policyExport/test/node/policyExport.integrationTest.ts +src/vs/workbench/contrib/search/browser/replaceService.ts +src/vs/workbench/contrib/tags/electron-browser/workspaceTags.ts +src/vs/workbench/contrib/tags/electron-browser/workspaceTagsService.ts +src/vs/workbench/contrib/themes/browser/themes.contribution.ts +src/vs/workbench/contrib/themes/test/node/colorRegistry.releaseTest.ts +src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyPeek.ts +src/vs/workbench/contrib/update/common/updateInfoParser.ts +src/vs/workbench/contrib/webview/browser/pre/service-worker.js +src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThroughInput.ts +src/vs/workbench/services/accounts/test/browser/defaultAccount.test.ts +src/vs/workbench/services/actions/common/menusExtensionPoint.ts +src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.ts +src/vs/workbench/services/textfile/test/node/encoding/encoding.integrationTest.ts +src/vs/workbench/services/themes/common/colorThemeData.ts From 0a13539ae890a804f896eabac0a8b4d0739aab6a Mon Sep 17 00:00:00 2001 From: Dmitriy Vasyura Date: Sat, 5 Sep 2026 21:48:08 -0700 Subject: [PATCH 4/6] eslint: test no bracket notation rule Add RuleTester coverage for valid accesses, diagnostics, and autofix edge cases. Preserve escaped string-literal property names by checking their raw source before reporting. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- ...ode-no-bracket-notation-for-identifiers.ts | 8 +- ...odeNoBracketNotationForIdentifiers.test.ts | 80 +++++++++++++++++++ 2 files changed, 85 insertions(+), 3 deletions(-) create mode 100644 build/lib/test/codeNoBracketNotationForIdentifiers.test.ts diff --git a/.eslint-plugin-local/code-no-bracket-notation-for-identifiers.ts b/.eslint-plugin-local/code-no-bracket-notation-for-identifiers.ts index 2b8004851ce47..55d9748332c8d 100644 --- a/.eslint-plugin-local/code-no-bracket-notation-for-identifiers.ts +++ b/.eslint-plugin-local/code-no-bracket-notation-for-identifiers.ts @@ -39,9 +39,6 @@ export default new class NoBracketNotationForIdentifiers implements eslint.Rule. * Check if a string is a valid JavaScript identifier */ function isValidIdentifier(str: string): boolean { - if (str.includes('\\')) { - return false; - } const scanner = ts.createScanner(ts.ScriptTarget.Latest, false, ts.LanguageVariant.Standard, str); const token = scanner.scan(); const isIdentifierName = token === ts.SyntaxKind.Identifier @@ -63,6 +60,11 @@ export default new class NoBracketNotationForIdentifiers implements eslint.Rule. return; } + // Preserve escaped property names instead of replacing their authored representation. + if (memberExpr.property.raw.includes('\\')) { + return; + } + const propertyName = memberExpr.property.value; // If it's a valid identifier, report it diff --git a/build/lib/test/codeNoBracketNotationForIdentifiers.test.ts b/build/lib/test/codeNoBracketNotationForIdentifiers.test.ts new file mode 100644 index 0000000000000..cfb1bac25a5b7 --- /dev/null +++ b/build/lib/test/codeNoBracketNotationForIdentifiers.test.ts @@ -0,0 +1,80 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +import { RuleTester } from 'eslint'; +import { suite, test } from 'node:test'; +import rule from '../../../.eslint-plugin-local/code-no-bracket-notation-for-identifiers.ts'; + +RuleTester.describe = suite; +RuleTester.it = test; + +new RuleTester().run('code-no-bracket-notation-for-identifiers', rule, { + valid: [ + 'object.property;', + 'object[computedProperty];', + 'object[42];', + 'object["property-with-dashes"];', + 'object["property with spaces"];', + 'object[`property`];', + String.raw`object["\u0061"];`, + String.raw`object["a\x62"];`, + ], + invalid: [ + { + name: 'normal property', + code: 'object["property"];', + output: 'object.property;', + errors: [{ messageId: 'noBracketNotation', data: { property: 'property' } }], + }, + { + name: 'private property', + code: 'object["_privateProperty"];', + output: 'object._privateProperty;', + errors: [{ messageId: 'noBracketNotation', data: { property: '_privateProperty' } }], + }, + { + name: 'keyword property', + code: 'object["default"];', + output: 'object.default;', + errors: [{ messageId: 'noBracketNotation', data: { property: 'default' } }], + }, + { + name: 'Unicode property', + code: 'object["π"];', + output: 'object.π;', + errors: [{ messageId: 'noBracketNotation', data: { property: 'π' } }], + }, + { + name: 'optional property access', + code: 'object?.["property"];', + output: 'object?.property;', + errors: [{ messageId: 'noBracketNotation', data: { property: 'property' } }], + }, + { + name: 'integer literal property access', + code: '1["toString"];', + output: '(1).toString;', + errors: [{ messageId: 'noBracketNotation', data: { property: 'toString' } }], + }, + { + name: 'decimal literal property access', + code: '1.5["toString"];', + output: '(1.5).toString;', + errors: [{ messageId: 'noBracketNotation', data: { property: 'toString' } }], + }, + { + name: 'comment before property', + code: 'object[/* comment */"property"];', + output: null, + errors: [{ messageId: 'noBracketNotation', data: { property: 'property' } }], + }, + { + name: 'comment after property', + code: 'object["property"/* comment */];', + output: null, + errors: [{ messageId: 'noBracketNotation', data: { property: 'property' } }], + }, + ], +}); From acb79b1950c43142e076b67b32a90465091307bc Mon Sep 17 00:00:00 2001 From: Dmitriy Vasyura Date: Sun, 6 Sep 2026 00:22:36 -0700 Subject: [PATCH 5/6] eslint: fix bracket notation in language extensions Replace identifier-safe bracket notation across language feature extensions and remove the completed group from the temporary allowlist. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .eslint-allowed-bracket-notation-files | 24 ---------------- .../client/src/node/cssClientMain.ts | 2 +- .../server/src/cssServer.ts | 2 +- .../server/src/node/cssServerNodeMain.ts | 2 +- extensions/emmet/src/abbreviationActions.ts | 28 +++++++++---------- .../emmet/src/defaultCompletionProvider.ts | 10 +++---- extensions/emmet/src/splitJoinTag.ts | 2 +- extensions/emmet/src/util.ts | 14 +++++----- .../client/src/autoInsertion.ts | 10 +++---- .../client/src/node/htmlClientMain.ts | 2 +- .../server/src/modes/languageModes.ts | 12 ++++---- .../server/src/node/htmlServerNodeMain.ts | 2 +- .../client/src/node/jsonClientMain.ts | 4 +-- .../server/src/node/jsonServerNodeMain.ts | 2 +- .../src/extension.ts | 2 +- .../languageFeatures/copyFiles/copyFiles.ts | 2 +- .../languageFeatures/copyFiles/snippets.ts | 2 +- .../src/markdownEngine.ts | 8 +++--- .../merge-conflict/src/mergeDecorator.ts | 2 +- .../src/logging/telemetry.ts | 2 +- .../src/tsServer/serverProcess.electron.ts | 6 ++-- .../src/typescriptServiceClient.ts | 8 +++--- .../src/utils/platform.ts | 2 +- 23 files changed, 63 insertions(+), 87 deletions(-) diff --git a/.eslint-allowed-bracket-notation-files b/.eslint-allowed-bracket-notation-files index 8231ea35a7f52..41fecdc6769e7 100644 --- a/.eslint-allowed-bracket-notation-files +++ b/.eslint-allowed-bracket-notation-files @@ -476,30 +476,6 @@ src/vs/platform/webContentExtractor/test/electron-main/webPageLoader.test.ts src/vs/workbench/contrib/remote/browser/remoteStartEntry.ts src/vs/workbench/contrib/remoteTunnel/test/electron-browser/remoteTunnel.contribution.test.ts -# Language feature extensions (22 files) -extensions/css-language-features/client/src/node/cssClientMain.ts -extensions/css-language-features/server/src/cssServer.ts -extensions/css-language-features/server/src/node/cssServerNodeMain.ts -extensions/emmet/src/abbreviationActions.ts -extensions/emmet/src/defaultCompletionProvider.ts -extensions/emmet/src/splitJoinTag.ts -extensions/emmet/src/util.ts -extensions/html-language-features/client/src/autoInsertion.ts -extensions/html-language-features/client/src/node/htmlClientMain.ts -extensions/html-language-features/server/src/modes/languageModes.ts -extensions/html-language-features/server/src/node/htmlServerNodeMain.ts -extensions/json-language-features/client/src/node/jsonClientMain.ts -extensions/json-language-features/server/src/node/jsonServerNodeMain.ts -extensions/markdown-language-features/src/extension.ts -extensions/markdown-language-features/src/languageFeatures/copyFiles/copyFiles.ts -extensions/markdown-language-features/src/languageFeatures/copyFiles/snippets.ts -extensions/markdown-language-features/src/markdownEngine.ts -extensions/merge-conflict/src/mergeDecorator.ts -extensions/typescript-language-features/src/logging/telemetry.ts -extensions/typescript-language-features/src/tsServer/serverProcess.electron.ts -extensions/typescript-language-features/src/typescriptServiceClient.ts -extensions/typescript-language-features/src/utils/platform.ts - # Git extension (6 files) extensions/git/src/askpass-main.ts extensions/git/src/askpassManager.ts diff --git a/extensions/css-language-features/client/src/node/cssClientMain.ts b/extensions/css-language-features/client/src/node/cssClientMain.ts index f634188bedf70..3b066fbaf58ce 100644 --- a/extensions/css-language-features/client/src/node/cssClientMain.ts +++ b/extensions/css-language-features/client/src/node/cssClientMain.ts @@ -33,7 +33,7 @@ export async function activate(context: ExtensionContext) { }; // pass the location of the localization bundle to the server - process.env['VSCODE_L10N_BUNDLE_LOCATION'] = l10n.uri?.toString() ?? ''; + process.env.VSCODE_L10N_BUNDLE_LOCATION = l10n.uri?.toString() ?? ''; client = await startClient(context, newLanguageClient, { fs: getNodeFSRequestService(), TextDecoder }); diff --git a/extensions/css-language-features/server/src/cssServer.ts b/extensions/css-language-features/server/src/cssServer.ts index 17885cc7f4962..f782375c44bb0 100644 --- a/extensions/css-language-features/server/src/cssServer.ts +++ b/extensions/css-language-features/server/src/cssServer.ts @@ -142,7 +142,7 @@ export function startServer(connection: Connection, runtime: RuntimeEnvironment) let service = languageServices[document.languageId]; if (!service) { connection.console.log('Document type is ' + document.languageId + ', using css instead.'); - service = languageServices['css']; + service = languageServices.css; } return service; } diff --git a/extensions/css-language-features/server/src/node/cssServerNodeMain.ts b/extensions/css-language-features/server/src/node/cssServerNodeMain.ts index 67d8439fd9bd1..1758bf0b6917f 100644 --- a/extensions/css-language-features/server/src/node/cssServerNodeMain.ts +++ b/extensions/css-language-features/server/src/node/cssServerNodeMain.ts @@ -6,7 +6,7 @@ import * as l10n from '@vscode/l10n'; async function setupMain() { const l10nLog: string[] = []; - const i10lLocation = process.env['VSCODE_L10N_BUNDLE_LOCATION']; + const i10lLocation = process.env.VSCODE_L10N_BUNDLE_LOCATION; if (i10lLocation) { try { await l10n.config({ uri: i10lLocation }); diff --git a/extensions/emmet/src/abbreviationActions.ts b/extensions/emmet/src/abbreviationActions.ts index 3326722905c6b..aa9ea7bb7cfd6 100644 --- a/extensions/emmet/src/abbreviationActions.ts +++ b/extensions/emmet/src/abbreviationActions.ts @@ -38,8 +38,8 @@ export async function wrapWithAbbreviation(args: any): Promise { const document = editor.document; args = args || {}; - if (!args['language']) { - args['language'] = document.languageId; + if (!args.language) { + args.language = document.languageId; } // we know it's not stylesheet due to the validate(false) call above const syntax = getSyntaxFromArgs(args) || 'html'; @@ -249,8 +249,8 @@ export async function wrapWithAbbreviation(args: any): Promise { } const prompt = vscode.l10n.t("Enter Abbreviation"); - const inputAbbreviation = (args && args['abbreviation']) - ? (args['abbreviation'] as string) + const inputAbbreviation = (args && args.abbreviation) + ? (args.abbreviation as string) : await vscode.window.showInputBox({ prompt, validateInput: inputChanged }); const changesWereMade = await makeChanges(inputAbbreviation, false); @@ -285,10 +285,10 @@ export function expandEmmetAbbreviation(args: any): Thenable !x.isEmpty)) { + if (vscode.workspace.getConfiguration('emmet').triggerExpansionOnTab === true && editor.selections.find(x => !x.isEmpty)) { return fallbackTab(); } @@ -357,7 +357,7 @@ export function expandEmmetAbbreviation(args: any): Thenable 1000) { rootNode = parsePartialStylesheet(editor.document, editor.selection.isReversed ? editor.selection.anchor : editor.selection.active); } else { @@ -418,7 +418,7 @@ export function expandEmmetAbbreviation(args: any): Thenable { - if (vscode.workspace.getConfiguration('emmet')['triggerExpansionOnTab'] === true) { + if (vscode.workspace.getConfiguration('emmet').triggerExpansionOnTab === true) { return vscode.commands.executeCommand('tab'); } return Promise.resolve(true); @@ -670,7 +670,7 @@ function expandAbbr(input: ExpandAbbreviationInput): string | undefined { return line.replace(trimRegex, '').trim(); }); } - expandOptions['text'] = input.textToWrap; + expandOptions.text = input.textToWrap; if (expandOptions.options) { // Below fixes https://github.com/microsoft/vscode/issues/29898 @@ -701,9 +701,9 @@ function expandAbbr(input: ExpandAbbreviationInput): string | undefined { export function getSyntaxFromArgs(args: { [x: string]: string }): string | undefined { const mappedModes = getMappingForIncludedLanguages(); - const language: string = args['language']; - const parentMode: string = args['parentMode']; - const excludedLanguages = vscode.workspace.getConfiguration('emmet')['excludeLanguages'] ? vscode.workspace.getConfiguration('emmet')['excludeLanguages'] : []; + const language: string = args.language; + const parentMode: string = args.parentMode; + const excludedLanguages = vscode.workspace.getConfiguration('emmet').excludeLanguages ? vscode.workspace.getConfiguration('emmet').excludeLanguages : []; if (excludedLanguages.includes(language)) { return; } diff --git a/extensions/emmet/src/defaultCompletionProvider.ts b/extensions/emmet/src/defaultCompletionProvider.ts index 0876cfa6f6a3e..efcee1a9a6527 100644 --- a/extensions/emmet/src/defaultCompletionProvider.ts +++ b/extensions/emmet/src/defaultCompletionProvider.ts @@ -42,7 +42,7 @@ export class DefaultCompletionItemProvider implements vscode.CompletionItemProvi private provideCompletionItemsInternal(document: vscode.TextDocument, position: vscode.Position, context: vscode.CompletionContext): Thenable | undefined { const emmetConfig = vscode.workspace.getConfiguration('emmet'); - const excludedLanguages = emmetConfig['excludeLanguages'] ? emmetConfig['excludeLanguages'] : []; + const excludedLanguages = emmetConfig.excludeLanguages ? emmetConfig.excludeLanguages : []; if (excludedLanguages.includes(document.languageId)) { return; } @@ -52,8 +52,8 @@ export class DefaultCompletionItemProvider implements vscode.CompletionItemProvi const emmetMode = getEmmetMode((isSyntaxMapped ? mappedLanguages[document.languageId] : document.languageId), mappedLanguages, excludedLanguages); if (!emmetMode - || emmetConfig['showExpandedAbbreviation'] === 'never' - || ((isSyntaxMapped || emmetMode === 'jsx') && emmetConfig['showExpandedAbbreviation'] !== 'always')) { + || emmetConfig.showExpandedAbbreviation === 'never' + || ((isSyntaxMapped || emmetMode === 'jsx') && emmetConfig.showExpandedAbbreviation !== 'always')) { return; } @@ -135,7 +135,7 @@ export class DefaultCompletionItemProvider implements vscode.CompletionItemProvi const offset = document.offsetAt(position); if (isStyleSheet(document.languageId) && context.triggerKind !== vscode.CompletionTriggerKind.TriggerForIncompleteCompletions) { validateLocation = true; - const usePartialParsing = vscode.workspace.getConfiguration('emmet')['optimizeStylesheetParsing'] === true; + const usePartialParsing = vscode.workspace.getConfiguration('emmet').optimizeStylesheetParsing === true; rootNode = usePartialParsing && document.lineCount > 1000 ? parsePartialStylesheet(document, position) : getRootNode(document, true); if (!rootNode) { return; @@ -200,7 +200,7 @@ export class DefaultCompletionItemProvider implements vscode.CompletionItemProvi newItem.filterText = item.filterText; newItem.sortText = item.sortText; - if (emmetConfig['showSuggestionsAsSnippets'] === true) { + if (emmetConfig.showSuggestionsAsSnippets === true) { newItem.kind = vscode.CompletionItemKind.Snippet; } newItems.push(newItem); diff --git a/extensions/emmet/src/splitJoinTag.ts b/extensions/emmet/src/splitJoinTag.ts index 2b478f68ae482..d5699b7a87ab5 100644 --- a/extensions/emmet/src/splitJoinTag.ts +++ b/extensions/emmet/src/splitJoinTag.ts @@ -56,7 +56,7 @@ function getRangesToReplace(document: vscode.TextDocument, nodeToUpdate: HtmlFla const emmetMode = getEmmetMode(document.languageId, {}, []) ?? ''; const emmetConfig = getEmmetConfiguration(emmetMode); if (emmetMode && emmetConfig.syntaxProfiles[emmetMode] && - (emmetConfig.syntaxProfiles[emmetMode]['selfClosingStyle'] === 'xhtml' || emmetConfig.syntaxProfiles[emmetMode]['self_closing_tag'] === 'xhtml')) { + (emmetConfig.syntaxProfiles[emmetMode].selfClosingStyle === 'xhtml' || emmetConfig.syntaxProfiles[emmetMode].self_closing_tag === 'xhtml')) { textToReplaceWith = ' ' + textToReplaceWith; } } diff --git a/extensions/emmet/src/util.ts b/extensions/emmet/src/util.ts index e934df84e7133..62ae16e11a804 100644 --- a/extensions/emmet/src/util.ts +++ b/extensions/emmet/src/util.ts @@ -606,8 +606,8 @@ export function sameNodes(node1: FlatNode | undefined, node2: FlatNode | undefin export function getEmmetConfiguration(syntax: string) { const emmetConfig = vscode.workspace.getConfiguration('emmet'); - const syntaxProfiles = Object.assign({}, emmetConfig['syntaxProfiles'] || {}); - const preferences = Object.assign({}, emmetConfig['preferences'] || {}); + const syntaxProfiles = Object.assign({}, emmetConfig.syntaxProfiles || {}); + const preferences = Object.assign({}, emmetConfig.preferences || {}); // jsx, xml and xsl syntaxes need to have self closing tags unless otherwise configured by user if (syntax === 'jsx' || syntax === 'xml' || syntax === 'xsl') { syntaxProfiles[syntax] = syntaxProfiles[syntax] || {}; @@ -624,12 +624,12 @@ export function getEmmetConfiguration(syntax: string) { return { preferences, - showExpandedAbbreviation: emmetConfig['showExpandedAbbreviation'], - showAbbreviationSuggestions: emmetConfig['showAbbreviationSuggestions'], + showExpandedAbbreviation: emmetConfig.showExpandedAbbreviation, + showAbbreviationSuggestions: emmetConfig.showAbbreviationSuggestions, syntaxProfiles, - variables: emmetConfig['variables'], - excludeLanguages: emmetConfig['excludeLanguages'], - showSuggestionsAsSnippets: emmetConfig['showSuggestionsAsSnippets'] + variables: emmetConfig.variables, + excludeLanguages: emmetConfig.excludeLanguages, + showSuggestionsAsSnippets: emmetConfig.showSuggestionsAsSnippets }; } diff --git a/extensions/html-language-features/client/src/autoInsertion.ts b/extensions/html-language-features/client/src/autoInsertion.ts index 3efb5e877f8b5..09f486e88deeb 100644 --- a/extensions/html-language-features/client/src/autoInsertion.ts +++ b/extensions/html-language-features/client/src/autoInsertion.ts @@ -38,9 +38,9 @@ export function activateAutoInsertion(provider: (kind: 'autoQuote' | 'autoClose' return; } const configurations = workspace.getConfiguration(undefined, document.uri); - isEnabled['autoQuote'] = configurations.get('html.autoCreateQuotes') ?? false; - isEnabled['autoClose'] = configurations.get('html.autoClosingTags') ?? false; - anyIsEnabled = isEnabled['autoQuote'] || isEnabled['autoClose']; + isEnabled.autoQuote = configurations.get('html.autoCreateQuotes') ?? false; + isEnabled.autoClose = configurations.get('html.autoClosingTags') ?? false; + anyIsEnabled = isEnabled.autoQuote || isEnabled.autoClose; } function onDidChangeTextDocument({ document, contentChanges, reason }: TextDocumentChangeEvent) { @@ -58,9 +58,9 @@ export function activateAutoInsertion(provider: (kind: 'autoQuote' | 'autoClose' const lastChange = contentChanges[contentChanges.length - 1]; if (lastChange.rangeLength === 0 && isSingleLine(lastChange.text)) { const lastCharacter = lastChange.text[lastChange.text.length - 1]; - if (isEnabled['autoQuote'] && lastCharacter === '=') { + if (isEnabled.autoQuote && lastCharacter === '=') { doAutoInsert('autoQuote', document, lastChange); - } else if (isEnabled['autoClose'] && (lastCharacter === '>' || lastCharacter === '/')) { + } else if (isEnabled.autoClose && (lastCharacter === '>' || lastCharacter === '/')) { doAutoInsert('autoClose', document, lastChange); } } diff --git a/extensions/html-language-features/client/src/node/htmlClientMain.ts b/extensions/html-language-features/client/src/node/htmlClientMain.ts index 1ee0545bc15a2..b8227f3fcb4d0 100644 --- a/extensions/html-language-features/client/src/node/htmlClientMain.ts +++ b/extensions/html-language-features/client/src/node/htmlClientMain.ts @@ -46,7 +46,7 @@ export async function activate(context: ExtensionContext) { // pass the location of the localization bundle to the server - process.env['VSCODE_L10N_BUNDLE_LOCATION'] = l10n.uri?.toString() ?? ''; + process.env.VSCODE_L10N_BUNDLE_LOCATION = l10n.uri?.toString() ?? ''; client = await startClient(context, newLanguageClient, { fileFs: getNodeFileFS(), TextDecoder, telemetry, timer }); } diff --git a/extensions/html-language-features/server/src/modes/languageModes.ts b/extensions/html-language-features/server/src/modes/languageModes.ts index 1ce9960f24ae8..197456549199d 100644 --- a/extensions/html-language-features/server/src/modes/languageModes.ts +++ b/extensions/html-language-features/server/src/modes/languageModes.ts @@ -123,13 +123,13 @@ export function getLanguageModes(supportedLanguages: { [languageId: string]: boo modelCaches.push(documentRegions); let modes = Object.create(null); - modes['html'] = getHTMLMode(htmlLanguageService, workspace); - if (supportedLanguages['css']) { - modes['css'] = getCSSMode(cssLanguageService, documentRegions, workspace); + modes.html = getHTMLMode(htmlLanguageService, workspace); + if (supportedLanguages.css) { + modes.css = getCSSMode(cssLanguageService, documentRegions, workspace); } - if (supportedLanguages['javascript']) { - modes['javascript'] = getJavaScriptMode(documentRegions, 'javascript', workspace); - modes['typescript'] = getJavaScriptMode(documentRegions, 'typescript', workspace); + if (supportedLanguages.javascript) { + modes.javascript = getJavaScriptMode(documentRegions, 'javascript', workspace); + modes.typescript = getJavaScriptMode(documentRegions, 'typescript', workspace); } return { async updateDataProviders(dataProviders: IHTMLDataProvider[]): Promise { diff --git a/extensions/html-language-features/server/src/node/htmlServerNodeMain.ts b/extensions/html-language-features/server/src/node/htmlServerNodeMain.ts index 664596ac0be1c..b18a23a33541a 100644 --- a/extensions/html-language-features/server/src/node/htmlServerNodeMain.ts +++ b/extensions/html-language-features/server/src/node/htmlServerNodeMain.ts @@ -7,7 +7,7 @@ import * as l10n from '@vscode/l10n'; async function setupMain() { const l10nLog: string[] = []; - const i10lLocation = process.env['VSCODE_L10N_BUNDLE_LOCATION']; + const i10lLocation = process.env.VSCODE_L10N_BUNDLE_LOCATION; if (i10lLocation) { try { await l10n.config({ uri: i10lLocation }); diff --git a/extensions/json-language-features/client/src/node/jsonClientMain.ts b/extensions/json-language-features/client/src/node/jsonClientMain.ts index 1172d6cbde1df..fe65dfaf95665 100644 --- a/extensions/json-language-features/client/src/node/jsonClientMain.ts +++ b/extensions/json-language-features/client/src/node/jsonClientMain.ts @@ -50,7 +50,7 @@ export async function activate(context: ExtensionContext) { }; // pass the location of the localization bundle to the server - process.env['VSCODE_L10N_BUNDLE_LOCATION'] = l10n.uri?.toString() ?? ''; + process.env.VSCODE_L10N_BUNDLE_LOCATION = l10n.uri?.toString() ?? ''; const schemaRequests = await getSchemaRequestService(context, logOutputChannel); @@ -118,7 +118,7 @@ async function getSchemaRequestService(context: ExtensionContext, log: LogOutput const response = await xhr({ url: uri, followRedirects: 5, headers }); if (cache) { - const etag = response.headers['etag']; + const etag = response.headers.etag; if (typeof etag === 'string') { log.trace(`[json schema cache] Storing schema ${uri} etag ${etag} in cache`); await cache.putSchema(uri, etag, response.responseText); diff --git a/extensions/json-language-features/server/src/node/jsonServerNodeMain.ts b/extensions/json-language-features/server/src/node/jsonServerNodeMain.ts index c30873e5b0e17..21a1ce18c0025 100644 --- a/extensions/json-language-features/server/src/node/jsonServerNodeMain.ts +++ b/extensions/json-language-features/server/src/node/jsonServerNodeMain.ts @@ -7,7 +7,7 @@ import * as l10n from '@vscode/l10n'; async function setupMain() { const l10nLog: string[] = []; - const i10lLocation = process.env['VSCODE_L10N_BUNDLE_LOCATION']; + const i10lLocation = process.env.VSCODE_L10N_BUNDLE_LOCATION; if (i10lLocation) { try { await l10n.config({ uri: i10lLocation }); diff --git a/extensions/markdown-language-features/src/extension.ts b/extensions/markdown-language-features/src/extension.ts index 98ea87df06990..33b19eeea60dd 100644 --- a/extensions/markdown-language-features/src/extension.ts +++ b/extensions/markdown-language-features/src/extension.ts @@ -48,7 +48,7 @@ function startServer(context: vscode.ExtensionContext, parser: IMdParser): Promi }; // pass the location of the localization bundle to the server - process.env['VSCODE_L10N_BUNDLE_LOCATION'] = vscode.l10n.uri?.toString() ?? ''; + process.env.VSCODE_L10N_BUNDLE_LOCATION = vscode.l10n.uri?.toString() ?? ''; return startClient((id, name, clientOptions) => { return new LanguageClient(id, name, serverOptions, clientOptions); diff --git a/extensions/markdown-language-features/src/languageFeatures/copyFiles/copyFiles.ts b/extensions/markdown-language-features/src/languageFeatures/copyFiles/copyFiles.ts index 4f8ccc6945483..c1e227ebb2ae5 100644 --- a/extensions/markdown-language-features/src/languageFeatures/copyFiles/copyFiles.ts +++ b/extensions/markdown-language-features/src/languageFeatures/copyFiles/copyFiles.ts @@ -101,7 +101,7 @@ function resolveCopyDestinationSetting(documentUri: vscode.Uri, fileName: string ]); return outDest.replaceAll(/(?\\\$)|(?\w+)(?:\/(?(?:\\\/|[^\}\/])+)\/(?(?:\\\/|[^\}\/])*)\/)?\}/g, (match, _escape, name, pattern, replacement, _offset, _str, groups) => { - if (groups?.['escape']) { + if (groups?.escape) { return '$'; } diff --git a/extensions/markdown-language-features/src/languageFeatures/copyFiles/snippets.ts b/extensions/markdown-language-features/src/languageFeatures/copyFiles/snippets.ts index 854cf2175d0c7..4f50f301cb5a5 100644 --- a/extensions/markdown-language-features/src/languageFeatures/copyFiles/snippets.ts +++ b/extensions/markdown-language-features/src/languageFeatures/copyFiles/snippets.ts @@ -8,7 +8,7 @@ */ export function resolveSnippet(snippetString: string, vars: ReadonlyMap): string { return snippetString.replaceAll(/(?\\\$)|(?\w+)(?:\/(?(?:\\\/|[^\}])+?)\/(?(?:\\\/|[^\}])+?)\/)?\}/g, (match, _escape, name, pattern, replacement, _offset, _str, groups) => { - if (groups?.['escape']) { + if (groups?.escape) { return '$'; } diff --git a/extensions/markdown-language-features/src/markdownEngine.ts b/extensions/markdown-language-features/src/markdownEngine.ts index d1aacf9a8b171..32ab663d499d1 100644 --- a/extensions/markdown-language-features/src/markdownEngine.ts +++ b/extensions/markdown-language-features/src/markdownEngine.ts @@ -30,9 +30,9 @@ const pluginSourceMap: MarkdownIt.PluginSimple = (md): void => { }); // The 'html_block' renderer doesn't respect `attrs`. We need to insert a marker. - const originalHtmlBlockRenderer = md.renderer.rules['html_block']; + const originalHtmlBlockRenderer = md.renderer.rules.html_block; if (originalHtmlBlockRenderer) { - md.renderer.rules['html_block'] = (tokens, idx, options, env, self) => ( + md.renderer.rules.html_block = (tokens, idx, options, env, self) => ( `
\n` + originalHtmlBlockRenderer(tokens, idx, options, env, self) ); @@ -261,8 +261,8 @@ export class MarkdownItEngine implements IMdParser { } #addFencedRenderer(md: MarkdownIt): void { - const original = md.renderer.rules['fenced']; - md.renderer.rules['fenced'] = (tokens: MarkdownIt.Token[], idx: number, options, env, self) => { + const original = md.renderer.rules.fenced; + md.renderer.rules.fenced = (tokens: MarkdownIt.Token[], idx: number, options, env, self) => { const token = tokens[idx]; if (token.map?.length) { token.attrJoin('class', 'hljs'); diff --git a/extensions/merge-conflict/src/mergeDecorator.ts b/extensions/merge-conflict/src/mergeDecorator.ts index 6c70fa79fae1a..6f128c4e0ba3a 100644 --- a/extensions/merge-conflict/src/mergeDecorator.ts +++ b/extensions/merge-conflict/src/mergeDecorator.ts @@ -101,7 +101,7 @@ export default class MergeDecorator implements vscode.Disposable { outlineColor: new vscode.ThemeColor('merge.border') }); - this.decorations['splitter'] = vscode.window.createTextEditorDecorationType({ + this.decorations.splitter = vscode.window.createTextEditorDecorationType({ color: new vscode.ThemeColor('editor.foreground'), outlineStyle: 'solid', outlineWidth: '1pt', diff --git a/extensions/typescript-language-features/src/logging/telemetry.ts b/extensions/typescript-language-features/src/logging/telemetry.ts index 61d13f9355203..947a0a426537c 100644 --- a/extensions/typescript-language-features/src/logging/telemetry.ts +++ b/extensions/typescript-language-features/src/logging/telemetry.ts @@ -31,7 +31,7 @@ export class VSCodeTelemetryReporter implements TelemetryReporter { "version" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" } } */ - properties['version'] = this.clientVersionDelegate(); + properties.version = this.clientVersionDelegate(); reporter.postEventObj(eventName, properties); } diff --git a/extensions/typescript-language-features/src/tsServer/serverProcess.electron.ts b/extensions/typescript-language-features/src/tsServer/serverProcess.electron.ts index a356fd7817bd4..028700b789ef1 100644 --- a/extensions/typescript-language-features/src/tsServer/serverProcess.electron.ts +++ b/extensions/typescript-language-features/src/tsServer/serverProcess.electron.ts @@ -145,12 +145,12 @@ function generatePatchedEnv(env: any, modulePath: string, hasExecPath: boolean): const newEnv = Object.assign({}, env); if (!hasExecPath) { - newEnv['ELECTRON_RUN_AS_NODE'] = '1'; + newEnv.ELECTRON_RUN_AS_NODE = '1'; } - newEnv['NODE_PATH'] = path.join(modulePath, '..', '..', '..'); + newEnv.NODE_PATH = path.join(modulePath, '..', '..', '..'); // Ensure we always have a PATH set - newEnv['PATH'] = newEnv['PATH'] || process.env.PATH; + newEnv.PATH = newEnv.PATH || process.env.PATH; return newEnv; } diff --git a/extensions/typescript-language-features/src/typescriptServiceClient.ts b/extensions/typescript-language-features/src/typescriptServiceClient.ts index 677721c2774cc..06a0104f4c8c5 100644 --- a/extensions/typescript-language-features/src/typescriptServiceClient.ts +++ b/extensions/typescript-language-features/src/typescriptServiceClient.ts @@ -1190,13 +1190,13 @@ export default class TypeScriptServiceClient extends Disposable implements IType switch (telemetryData.telemetryEventName) { case 'typingsInstalled': { const typingsInstalledPayload: Proto.TypingsInstalledTelemetryEventPayload = (telemetryData.payload as Proto.TypingsInstalledTelemetryEventPayload); - properties['installedPackages'] = typingsInstalledPayload.installedPackages; + properties.installedPackages = typingsInstalledPayload.installedPackages; if (typeof typingsInstalledPayload.installSuccess === 'boolean') { - properties['installSuccess'] = typingsInstalledPayload.installSuccess.toString(); + properties.installSuccess = typingsInstalledPayload.installSuccess.toString(); } if (typeof typingsInstalledPayload.typingsInstallerVersion === 'string') { - properties['typingsInstallerVersion'] = typingsInstalledPayload.typingsInstallerVersion; + properties.typingsInstallerVersion = typingsInstalledPayload.typingsInstallerVersion; } break; } @@ -1220,7 +1220,7 @@ export default class TypeScriptServiceClient extends Disposable implements IType // Add plugin data here if (telemetryData.telemetryEventName === 'projectInfo') { if (this.serverState.type === ServerState.Type.Running) { - this.serverState.updateTsserverVersion(properties['version']); + this.serverState.updateTsserverVersion(properties.version); } } diff --git a/extensions/typescript-language-features/src/utils/platform.ts b/extensions/typescript-language-features/src/utils/platform.ts index ee30a3f29004f..7cbd952bf9bc3 100644 --- a/extensions/typescript-language-features/src/utils/platform.ts +++ b/extensions/typescript-language-features/src/utils/platform.ts @@ -10,7 +10,7 @@ export function isWeb(): boolean { } export function isWebAndHasSharedArrayBuffers(): boolean { - return isWeb() && !!(globalThis as Record)['crossOriginIsolated']; + return isWeb() && !!(globalThis as Record).crossOriginIsolated; } export function supportsReadableByteStreams(): boolean { From 71676de82fad545eba00da70c3785097692e9783 Mon Sep 17 00:00:00 2001 From: Dmitriy Vasyura Date: Fri, 11 Sep 2026 14:16:17 -0700 Subject: [PATCH 6/6] eslint: preserve bracket notation for process env Keep process.env accesses out of this cleanup now that the lint rule exempts them. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../css-language-features/client/src/node/cssClientMain.ts | 2 +- .../css-language-features/server/src/node/cssServerNodeMain.ts | 2 +- .../html-language-features/client/src/node/htmlClientMain.ts | 2 +- .../server/src/node/htmlServerNodeMain.ts | 2 +- .../json-language-features/client/src/node/jsonClientMain.ts | 2 +- .../server/src/node/jsonServerNodeMain.ts | 2 +- extensions/markdown-language-features/src/extension.ts | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/extensions/css-language-features/client/src/node/cssClientMain.ts b/extensions/css-language-features/client/src/node/cssClientMain.ts index 3b066fbaf58ce..f634188bedf70 100644 --- a/extensions/css-language-features/client/src/node/cssClientMain.ts +++ b/extensions/css-language-features/client/src/node/cssClientMain.ts @@ -33,7 +33,7 @@ export async function activate(context: ExtensionContext) { }; // pass the location of the localization bundle to the server - process.env.VSCODE_L10N_BUNDLE_LOCATION = l10n.uri?.toString() ?? ''; + process.env['VSCODE_L10N_BUNDLE_LOCATION'] = l10n.uri?.toString() ?? ''; client = await startClient(context, newLanguageClient, { fs: getNodeFSRequestService(), TextDecoder }); diff --git a/extensions/css-language-features/server/src/node/cssServerNodeMain.ts b/extensions/css-language-features/server/src/node/cssServerNodeMain.ts index 1758bf0b6917f..67d8439fd9bd1 100644 --- a/extensions/css-language-features/server/src/node/cssServerNodeMain.ts +++ b/extensions/css-language-features/server/src/node/cssServerNodeMain.ts @@ -6,7 +6,7 @@ import * as l10n from '@vscode/l10n'; async function setupMain() { const l10nLog: string[] = []; - const i10lLocation = process.env.VSCODE_L10N_BUNDLE_LOCATION; + const i10lLocation = process.env['VSCODE_L10N_BUNDLE_LOCATION']; if (i10lLocation) { try { await l10n.config({ uri: i10lLocation }); diff --git a/extensions/html-language-features/client/src/node/htmlClientMain.ts b/extensions/html-language-features/client/src/node/htmlClientMain.ts index b8227f3fcb4d0..1ee0545bc15a2 100644 --- a/extensions/html-language-features/client/src/node/htmlClientMain.ts +++ b/extensions/html-language-features/client/src/node/htmlClientMain.ts @@ -46,7 +46,7 @@ export async function activate(context: ExtensionContext) { // pass the location of the localization bundle to the server - process.env.VSCODE_L10N_BUNDLE_LOCATION = l10n.uri?.toString() ?? ''; + process.env['VSCODE_L10N_BUNDLE_LOCATION'] = l10n.uri?.toString() ?? ''; client = await startClient(context, newLanguageClient, { fileFs: getNodeFileFS(), TextDecoder, telemetry, timer }); } diff --git a/extensions/html-language-features/server/src/node/htmlServerNodeMain.ts b/extensions/html-language-features/server/src/node/htmlServerNodeMain.ts index b18a23a33541a..664596ac0be1c 100644 --- a/extensions/html-language-features/server/src/node/htmlServerNodeMain.ts +++ b/extensions/html-language-features/server/src/node/htmlServerNodeMain.ts @@ -7,7 +7,7 @@ import * as l10n from '@vscode/l10n'; async function setupMain() { const l10nLog: string[] = []; - const i10lLocation = process.env.VSCODE_L10N_BUNDLE_LOCATION; + const i10lLocation = process.env['VSCODE_L10N_BUNDLE_LOCATION']; if (i10lLocation) { try { await l10n.config({ uri: i10lLocation }); diff --git a/extensions/json-language-features/client/src/node/jsonClientMain.ts b/extensions/json-language-features/client/src/node/jsonClientMain.ts index fe65dfaf95665..8e387c122f0c2 100644 --- a/extensions/json-language-features/client/src/node/jsonClientMain.ts +++ b/extensions/json-language-features/client/src/node/jsonClientMain.ts @@ -50,7 +50,7 @@ export async function activate(context: ExtensionContext) { }; // pass the location of the localization bundle to the server - process.env.VSCODE_L10N_BUNDLE_LOCATION = l10n.uri?.toString() ?? ''; + process.env['VSCODE_L10N_BUNDLE_LOCATION'] = l10n.uri?.toString() ?? ''; const schemaRequests = await getSchemaRequestService(context, logOutputChannel); diff --git a/extensions/json-language-features/server/src/node/jsonServerNodeMain.ts b/extensions/json-language-features/server/src/node/jsonServerNodeMain.ts index 21a1ce18c0025..c30873e5b0e17 100644 --- a/extensions/json-language-features/server/src/node/jsonServerNodeMain.ts +++ b/extensions/json-language-features/server/src/node/jsonServerNodeMain.ts @@ -7,7 +7,7 @@ import * as l10n from '@vscode/l10n'; async function setupMain() { const l10nLog: string[] = []; - const i10lLocation = process.env.VSCODE_L10N_BUNDLE_LOCATION; + const i10lLocation = process.env['VSCODE_L10N_BUNDLE_LOCATION']; if (i10lLocation) { try { await l10n.config({ uri: i10lLocation }); diff --git a/extensions/markdown-language-features/src/extension.ts b/extensions/markdown-language-features/src/extension.ts index 33b19eeea60dd..98ea87df06990 100644 --- a/extensions/markdown-language-features/src/extension.ts +++ b/extensions/markdown-language-features/src/extension.ts @@ -48,7 +48,7 @@ function startServer(context: vscode.ExtensionContext, parser: IMdParser): Promi }; // pass the location of the localization bundle to the server - process.env.VSCODE_L10N_BUNDLE_LOCATION = vscode.l10n.uri?.toString() ?? ''; + process.env['VSCODE_L10N_BUNDLE_LOCATION'] = vscode.l10n.uri?.toString() ?? ''; return startClient((id, name, clientOptions) => { return new LanguageClient(id, name, serverOptions, clientOptions);