2024年8月(版本1.93)

更新 1.93.1: 此次更新解决了这些问题

下载:Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap


欢迎来到2024年8月发布的Visual Studio Code。此版本中有许多更新,我们希望您会喜欢,一些关键亮点包括:

如果您想在线阅读这些发布说明,请访问更新code.visualstudio.com上。 内测用户:想要尽快尝试新功能吗?您可以下载每晚的内测版构建,并在最新更新可用时立即尝试。

可访问性

通过键盘调整表格列宽

一个新的命令,list.resizeColumn,使您能够使用键盘调整列的大小。当您触发此命令时,选择您想要调整大小的列,并提供您想要设置的宽度百分比。以下视频展示了如何将其应用于键盘快捷键编辑器中的列调整大小。

屏幕阅读器支持合成聊天响应

我们已经更新了accessibility.voice.autoSynthesize设置,使屏幕阅读器用户可以选择通过我们的合成器听到聊天响应,而不是获取aria警报。

调试改进

当你在编辑器中进行调试时,调用Debug: Add to Watch命令现在会为屏幕阅读器用户宣布变量的值。

此外,调试辅助功能帮助对话框得到了改进,以提高其全面性。

工作台

新的配置文件编辑器

新的配置文件编辑器现在在Visual Studio Code中普遍可用。新的配置文件编辑器使您能够从一个地方管理配置文件。此体验包括创建新配置文件、编辑和删除现有配置文件,以及导入和导出配置文件以与他人共享。有关更多信息,请参阅配置文件文档

显示配置文件编辑器的截图。

Linux 对窗口控制覆盖的支持

一个新的设置 window.experimentalControlOverlay 启用了原生窗口控件的显示,即使通过 window.titleBarStyle 设置启用了自定义标题栏。

Linux上的VS Code截图,突出显示了右上角的Linux窗口控制覆盖层。

开箱即用,我们尚未在Linux上默认启用自定义标题,但我们计划最终实现这一点。一旦您开启自定义标题,原生窗口控制覆盖层将自动出现。我们欢迎您在使用此新功能时发现的任何反馈!

评论排序

现在可以根据评论在文件中的位置或日期进行排序。

显示额外评论排序选项的截图。

从设置编辑器中复制设置URL

您可以从设置编辑器中复制特定设置的直接URL。当您导航到设置URL时,它会打开VS Code并在设置编辑器中聚焦相应的设置。

显示如何在设置编辑器中复制设置URL的视频。

资源管理器中的反向排序

我们添加了一个额外的排序选项,explorer.sortOrderReverse,它使您能够反转任何资源管理器排序配置,提供进一步的排序灵活性。

编辑器

灯泡改进

在之前的里程碑中,我们改进了代码操作灯泡图标显示的位置。我们现在决定默认将editor.lightbulb.enabled设置为onCode。这意味着灯泡图标仅在光标位于源代码行时显示,并且显示频率会降低。

操作列表的颜色主题

操作列表控件的颜色,例如代码操作菜单,可以通过主题配置,使用editorActionList.backgroundeditorActionList.foregroundeditorActionList.focusForegroundeditorActionList.focusBackground键。默认情况下,操作列表控件的主题与快速选择和命令面板的主题相匹配。获取更多关于自定义颜色主题的信息。

GitHub Copilot

在这个里程碑中,我们继续在VS Code中改进GitHub Copilot的体验,包括编辑器、聊天视图和内联聊天。我们还添加了几个实验性功能供您尝试,并希望获得您的反馈。

改进的测试生成

使用 GitHub Copilot,您可以为代码生成测试,可以通过编辑器内容菜单中的使用 Copilot 生成测试操作,或者通过内联聊天中的/tests斜杠命令来实现。

我们通过寻找现有的测试文件并将新测试生成到该文件中,将其附加在文件末尾,从而改进了测试生成流程。如果还没有测试文件,Copilot 会为生成的测试创建一个新的测试文件。

重命名的代码操作,用于生成测试和文档

当您将光标放在标识符上时,例如方法名称,GitHub Copilot 会为您提供代码操作以生成测试或文档。为了更好地反映它们的目的,我们将这些代码操作重命名为使用 Copilot 生成测试使用 Copilot 生成文档。以前,这些操作被称为使用 Copilot 测试使用 Copilot 文档

测试和文档生成的新代码操作名称

改进的聊天历史

您可以通过点击聊天视图顶部的显示聊天按钮从聊天记录中打开之前的聊天会话。这些会话现在有一个更用户友好、由AI生成的名称。您也可以通过选择每行的铅笔图标手动重命名会话。

这些聊天历史记录现在也按它们最后一次请求的日期排序,并按日期范围进行标记和分组。

聊天历史选择器显示友好的会话名称,并且条目按时间分组。

注意:只有新的聊天会话会获得AI生成的名称,您已有的任何聊天会话将不会被重命名。

保存空窗口的聊天会话

之前,VS Code 没有保存空窗口(没有打开文件夹或工作区)的聊天会话。现在,这些会话按预期保存,并且可以通过 显示聊天 按钮加载来自空窗口的先前聊天记录。

注意: 您应避免同时在多个空窗口中打开并使用相同的聊天会话。

在快速聊天中附加上下文

使用快速聊天时,您现在可以使用Attach Context操作将文件和符号等上下文附加到您的Copilot请求中。

差评反馈详情

你是否从Copilot Chat得到了一个不符合预期的响应?通过在工具栏上选择Thumbs down按钮来帮助我们改进聊天响应。现在,它会显示一个下拉菜单,其中包含一些详细的选项供你描述问题。你也可以从这个菜单中打开问题报告器。

聊天响应反馈下拉菜单,显示了大拇指向下按钮的额外详细信息。

代码生成指令 (实验性)

设置: github.copilot.chat.experimental.codeGeneration.instructions

Copilot 可以帮助你生成代码,例如作为重构的一部分、生成单元测试或实现功能。你可能有一些特定的库想要使用,或者希望 Copilot 生成的代码遵循特定的编码风格。

实验设置 github.copilot.chat.experimental.codeGeneration.instructions 允许您定义一组指令,这些指令将添加到每个生成代码的Copilot请求中。

指令可以在用户或工作区的设置中定义,也可以从文件导入。

以下代码片段展示了如何从设置和外部文件中定义一组指令:

  "github.copilot.chat.experimental.codeGeneration.instructions": [
    {
      "text": "Always add a comment: 'Generated by Copilot'."
    },
    {
      "text": "In TypeScript always use underscore for private field names."
    },
    {
      "file": "code-style.md" // import instructions from file `code-style.md`
    }
  ],

myProject/code-style.md 的内容:

Always use React functional components.
Always add comments.

在截图中,您可以从参考资料部分看到使用了以下说明:

使用代码生成指令的Copilot聊天。

聊天视图中的自动聊天参与者检测(实验性)

设置: chat.experimental.detectParticipant.enabled

GitHub Copilot 有几个内置的聊天参与者,例如 @workspace,它们也会向聊天视图贡献命令。以前,您必须在聊天提示中明确指定聊天参与者和命令。

为了让使用聊天参与者与自然语言更加容易,在接下来的几周里,我们正在试验让Copilot Chat自动将您的问题路由到合适的参与者或聊天命令。

聊天视图截图,显示如何自动检测到'@workspace'参与者。

如果自动选择的参与者不适合您的问题,您可以选择聊天响应顶部的重新运行而不链接,将您的问题重新发送给Copilot。

将最近的编码文件用作内联聊天上下文(实验性)

设置: github.copilot.chat.experimental.temporalContext.enabled

通常,当你提示Copilot时,你会问一个与你刚刚处理或查看的代码相关的问题。现在,Inline Chat可以使用最近看到或编辑的代码作为上下文,以提供更相关的建议。

此功能仍处于实验阶段,但也欢迎大家进行测试。

使用当前编辑器行作为内联聊天提示(实验性)

设置: github.copilot.config.experimental.inlineChatCompletionTrigger.enabled

现在,您可以直接在编辑器中开始输入,并使用当前行的内容作为内联聊天的提示,而不需要先打开内联聊天再输入聊天提示。为了提供更流畅的聊天体验,Copilot可以检测到您是在输入提示而不是编写代码,然后自动为您启动内联聊天。

你可以使用当前行作为内联聊天提示的不同方式如下:

  • 命令面板中输入内联聊天:从当前行开始编辑 (⇧⌘P (Windows, Linux Ctrl+Shift+P))
  • inlineChat.startWithCurrentLine命令配置一个键绑定,并将其与inlineChatExpansion上下文键结合使用
  • 启用github.copilot.config.experimental.inlineChatCompletionTrigger.enabled设置,以便Copilot检测到当前行主要是文本而不是源代码,然后启动内联聊天。

以下视频展示了Copilot在检测到当前行主要是文本后,如何建议启动内联聊天。

从聊天开始调试(实验性)

设置: github.copilot.advanced.startDebugging.experimental.enabled

一个新的实验性斜杠命令 /startDebugging@vscode 聊天参与者中可用。此命令使您能够创建启动配置并开始调试您的应用程序。

你也可以通过创建 launch.json 快速选择中的使用 GitHub Copilot 生成调试配置选项来访问此命令。

使用GitHub Copilot生成调试配置是创建launch.json文件快速选择中的一个选项。

基于测试覆盖率生成测试(实验性)

设置: github.copilot.chat.experimental.generateTests.codeLens

如果测试覆盖率信息可用,GitHub Copilot 可以为尚未被测试覆盖的函数和方法提供 CodeLens 使用 Copilot 生成测试

语言

将“SQL”重命名为“MS SQL”

SQL文件的语言名称已从“SQL”重命名为“MS SQL”,以更好地反映该语言对Microsoft SQL Server(T-SQL)语法的关注。此语言模式的文件扩展名仍然是.sql,语法高亮保持不变。

完整的项目智能感知和包类型在vscode.dev

VS Code for the Web上使用JavaScript和TypeScript变得更加便捷。首先,我们实现了包IntelliSense功能,因此您可以看到任何导入的包(如react)的建议和文档。这与桌面版VS Code中的功能非常相似。

在vscode.dev上导入包的IntelliSense和错误报告。

在 TypeScript 文件中,我们为 package.json 中列出的包提供 IntelliSense。JavaScript 文件则更为灵活,使用 自动类型获取,为当前文件中导入的任何包提供 IntelliSense,即使它没有列在 package.json 中。

感谢包IntelliSense,我们还为JavaScript和TypeScript项目启用了完整的项目IntelliSense。这大大改善了代码导航,让您可以正确地转到定义查找所有引用项目中的任何符号。它还启用了类型错误报告。我们现在甚至支持在编写代码时自动导入。

在TypeScript项目中查找符号的所有引用。

Chrome、Microsoft Edge 和 Firefox 支持包类型和完整项目的 IntelliSense。Safari 目前还不支持,因为它没有实现 ReadableByteStreamController

源代码控制

源代码控制图视图

根据用户反馈,我们已将上一个里程碑中启用的历史图表从源代码管理视图移动到一个名为源代码管理图表的新视图中。这减少了主视图中的信息过载,并允许您根据需要隐藏/折叠/移动新视图。这也为全功能的历史图表奠定了基础。

源代码控制图视图当前显示当前分支的远程/基础。在下一个里程碑中,我们正在努力添加将图形过滤到任何存储库引用的功能,并改进具有多个存储库的工作区的体验。

源代码控制图视图显示仓库的图形可视化。

主题: GitHub Sharp (在 vscode.dev 上预览)

支持 reftable 格式

Git 2.45 添加了对名为“reftable”的新引用存储后端的初步支持。在这个里程碑中,我们更新了内置的 Git 扩展以支持这个新的引用存储后端。

使用 Git 2.45,您可以使用 --ref-format=reftable 标志创建或克隆使用新引用存储后端的仓库。Git 2.46 还增加了通过使用 git refs migrate 命令将现有仓库迁移到使用新引用存储格式的支持。

请注意,新的参考存储后端仍被视为实验性的。

紧凑文件夹设置

感谢社区的贡献,我们添加了一个新的设置,scm.compactFolders,用于控制在源代码控制视图中以树形结构查看更改时,文件夹是否以紧凑形式呈现。

终端

Julia 和 NuShell 支持

现在Julia和NuShell支持shell集成。这使得这些shell类型能够使用诸如命令装饰运行最近命令等功能。

移动多个终端标签页

您现在可以多选终端标签,并将它们作为一个有序组在终端列表中移动。

命令指南设置和颜色主题

命令指南是一个在悬停时显示在命令及其输出旁边的栏。你现在可以通过terminal.integrated.shellIntegration.showCommandGuide设置来禁用命令指南,并且颜色可以通过主题使用terminalCommandGuide.foreground主题键进行配置。

笔记本

显示或隐藏差异视图中的未更改单元格

笔记本差异视图现在隐藏了未更改的单元格,使您能够专注于已更改的单元格。 同时,所有未更改单元格的输入始终是折叠的。

管理差异视图中的空白

笔记本差异视图现在遵循以下设置:

Notebook执行计数的粘性滚动

代码单元格的执行计数现在在向下滚动代码单元格时会固定在屏幕底部。这使得在长代码单元格中工作时更容易查看执行状态和更新。

任务

进程退出时保持任务终端打开

如果任务的终端进程以非零代码退出,我们现在保持终端打开以便于调试。

调试

跳转到变量定义

调试扩展现在可以将变量和表达式链接到代码中的位置。在变量视图、监视视图和调试控制台中,带有此链接的数据可以通过Ctrl键(在macOS上为Cmd键)进行选择。

内置的JavaScript调试器将链接代码中定义的函数位置,其他调试扩展需要采用相应的协议更改以启用此功能。

查找控件

你现在可以在调试控制台中打开查找控件(⌥⌘F (Windows, Linux Ctrl+Alt+F))来搜索输入中的结果。未来版本中将研究支持在输出中搜索结果。

您还可以通过出现在调试控制台工具栏上,位于过滤器控件右侧的Debug Console: Focus Find操作来访问该控件。

启动配置输入缓存

输入变量 现在会在启动配置和任务中保留最后输入的值,以便简化依赖于它们的调试会话的重新运行过程。这仅在输入上没有明确定义 default 时才会执行。

JavaScript 调试器

实验性网络视图

JavaScript 调试器现在包含一个基本的、实验性的网络视图,当debug.javascript.enableNetworkView设置开启时可用。该视图显示浏览器会话发出的请求和响应的信息。

显示JavaScript调试器网络视图的截图。 主题: Codesong (在vscode.dev上预览)

当使用--experimental-network-inspection参数启动进程时,网络视图也适用于Node.js 22.6.0及以上版本,例如通过将"runtimeArgs": ["--experimental-network-inspection"]添加到node启动配置中。

注意: Node的网络实现仍处于早期阶段,大多数关于请求和响应的数据尚不可用。

测试

支持消息的堆栈跟踪

测试扩展现在可以将堆栈跟踪与测试失败关联起来。当它们这样做时,您将在测试结果视图和错误提示中看到调用堆栈每一帧周围的代码。您可以在视图中的代码上使用Ctrl选择(在macOS上使用Cmd选择)以转到它们的原始位置,或者在其标题上使用转到文件操作。

编辑器显示测试失败消息及导致失败的相应调用堆栈。 主题: Codesong (在 vscode.dev 上预览)

安装程序

Debian 包现在会提示您确认是否要添加 packages.microsoft.com 仓库。这使您能够之后使用 apt 更新包。

终端显示在安装过程中添加Microsoft软件包仓库的提示。

远程开发

Remote Development extensions 允许您使用 Dev Container、通过 SSH 连接的远程机器或 Remote Tunnels,或者 Windows Subsystem for Linux (WSL) 作为全功能的开发环境。

亮点包括:

  • Dev Container 模板的可选路径
  • 扩展了对远程操作系统通过SSH的兼容性

您可以在远程开发发布说明中了解更多关于这些功能的信息。

网页版VS Code

当在https://vscode.dev上或使用GitHub Repositories扩展在桌面上浏览GitHub仓库时,现在会遵守git.openDiffOnClick设置。

通过选择更改资源的“打开更改”来打开差异。

对扩展的贡献

Python

Django 单元测试支持

我们很高兴地宣布支持我们最受欢迎的功能之一:您现在可以通过测试资源管理器发现并运行Django单元测试!有关如何启用此功能的设置说明,请查看我们的文档

Django单元测试在测试资源管理器中发现并运行。 主题: Catppuccin Macchiato (在 vscode.dev 上预览)

在您探索这个新添加的功能时,请在我们的vscode-python 仓库中提供反馈并报告任何问题,或者使用Python: 报告问题命令。

原生REPL改进

我们对新的原生REPL体验进行了更多的改进和错误修复。我们正在将原生REPL作为智能发送的默认目标进行实验性推出,但如果您有兴趣尝试,可以在您的用户settings.json中设置python.REPL.sendToNativeREPL并重新加载您的VS Code窗口。

使用 Pylance 从内联提示跳转到定义

当使用Pylance启用嵌入提示时,您现在可以通过悬停并按住Ctrl(在macOS上是Cmd)点击来更方便地导航到类型的定义:

当悬停在Python类型的嵌入提示上时,使用Ctrl/Cmd + 点击支持转到定义。

调试测试时的重启支持

现在,您可以通过调试工具栏控件在调试测试时重新启动调试器。

GitHub 拉取请求和问题

GitHub Pull Requests扩展方面取得了更多进展,该扩展使您能够处理、创建和管理拉取请求和问题。查看0.96.0版本的更新日志以了解亮点。

扩展开发

VS Code 的 EcmaScript 模块 (ESM) 加载影响

我们正在改变VS Code核心中代码的加载方式,从AMD/CommonJS转向ESM。扩展将继续以CommonJS形式加载,但这一变化伴随着require方法的改变:具体来说,从我们的1.94版本开始,require.main将变为undefined。如果您有从安装中访问文件的需求,请考虑使用vscode.env.appRoot联系我们

终端 shell 集成 API

终端 shell 集成 API 现已可供使用。这个强大的 API 使扩展能够监听在终端中运行的命令,读取它们的原始输出、退出代码和命令行。

window.onDidEndTerminalShellExecution(event => {
  if (event.execution.commandLine.value.startsWith('git')) {
    if (event.exitCode === 0) {
      // React to a successful git command
    } else {
      // React to a failing git command
    }
  }
});

它还提供了一种更可靠的方式来执行命令,该方式将等待提示开始后再发送命令,从而防止命令在终端中额外回显一次。

const commandLine = 'echo "Hello world"';
if (term.shellIntegration) {
  const execution = shellIntegration.executeCommand({ commandLine });
  window.onDidEndTerminalShellExecution(event => {
    if (event.execution === execution) {
      console.log(`Command exited with code ${event.exitCode}`);
    }
  });
} else {
  term.sendText(commandLine);
  // Without shell integration, we can't know when the command has finished or what the
  // exit code was.
}

请参阅vscode.d.ts中的API和扩展示例以获取更多信息。

认证账户API

认证API现在在处理多个账户时有了更多的控制。一直以来缺少的是获取所有账户并为特定账户获取AuthenticationSession的能力。随着getAccounts API的最终确定,现在这已成为可能。

希望使用认证会话的扩展作者可以运行以下代码来获取用户登录的账户的AuthenticationSessionAccountInformation

const accounts = vscode.authentication.getAccounts('microsoft');

从那里,您可以使用这些账户来专门为这些账户创建会话:

const session = vscode.authentication.getSession('microsoft', scopes, {
  account: accounts[0]
});

注意:为了使此功能正常工作,身份验证提供程序需要处理传递给getSessionscreateSession的参数。内置的GitHub和Microsoft提供程序已经采用了这一点。

我们相信这是处理多个认证会话的最清晰方式,也能处理我们之前无法支持的各种场景。

调试适配器协议

我们在调试适配器协议中的变量和其他数据类型中添加了locationReferences,以便能够关联源位置。

VS Code 中的 WebAssemblies

wasm-wasi-core 扩展的 1.0 版本以及 @vscode-wasm-wasi@vscode/wasm-component-model npm 模块已经发布。使用示例可以在 vscode-extension-samples 仓库的 wasm-* 子文件夹中找到。在 VS Code 博客 上也有几篇关于如何在 VS Code 扩展中使用 WebAssembly 代码的文章。

预览功能

终端智能感知改进

实验性 PowerShell IntelliSense 在这个版本中得到了以下改进:

  • git checkout 现在包含了一个补全功能,可以使用 - 来切换到上一个分支。
  • terminal.integrated.suggest.runOnEnter 的默认值现在设置为忽略,这意味着 Enter 不会与 IntelliSense 进行任何交互。这是来自用户的反馈,他们发现这对肌肉记忆的影响太大。
  • PowerShell 关键字现在可以作为命令的补全选项(不包括参数)。
  • 现在,cd 的第一个目录建议始终是它本身,这使得当 terminal.integrated.suggest.runOnEnter 设置时,操作更加流畅。 cd 进入 docs 会将 docs 显示为顶部结果。
  • 现在在命令行的不同位置请求时,建议更加一致。
  • 当导航回目录时,会为 /../ 提供补全。 cd ..\ 会给出 ..\..\ 的建议。

Conpty 在产品中的发布

Conpty 是终端的后端,它模拟了伪终端在其他操作系统上的工作方式。这个组件内置于 Windows 本身,这意味着错误修复通过 Windows 更新发布。用户可能需要等待很长时间才能收到这些修复。

在这个版本中,我们有一个实验性的设置,将conpty与VS Code本身捆绑在一起,类似于Windows Terminal的做法。这意味着用户可以在我们发布VS Code更新时获得错误修复,而不必等待Windows更新。

要启用此功能,请将以下设置设为 true

"terminal.integrated.experimental.windowsUseConptyDll": true

启用此功能后,您应该期望的改进类型包括:

  • 更好的性能
  • 更可靠的Shell集成
  • 更多的转义序列支持(例如,Windows 即将支持 sixel

目前唯一已知的问题是,一些用户的进程会持续存在并阻止VS Code更新(microsoft/vscode#225719),这需要手动终止该进程以启用更新。

TypeScript 5.6 支持

我们继续改进对即将发布的TypeScript 5.6版本的支持。查看TypeScript 5.6 RC博客文章了解此版本包含的内容。

要开始使用 TypeScript 5.6 的预览版本,请安装 TypeScript Nightly 扩展

新问题报告器实现

在这个里程碑中,我们正在试验一个新的问题报告器实现。功能保持不变,但应该有一些改进,例如改进的多显示器支持,以及在VS Code for the Web中提供问题报告器。

新版本的 Issue Reporter 默认启用,并且可以在桌面版 VS Code 中使用 issueReporter.experimental.auxWindow 设置进行配置。

提议的API

语言模型工具

我们继续迭代我们的LanguageModelTool API。该API包含两个主要部分:

  1. 扩展程序注册工具的能力。工具是语言模型使用的功能片段。例如,读取文件的Git历史记录。

  2. 语言模型支持工具的机制,例如在发出请求时传递工具的扩展,语言模型请求工具调用,以及扩展返回工具调用的结果。

本月新增的变化之一是用户能够手动将某些工具附加到他们的聊天请求中。例如,这可能是一个计算某些动态上下文的工具,用户希望在他们的请求中使用这些上下文。

该提案可以在vscode.proposed.lmTools.d.ts找到。查看tool-user示例扩展,它演示了如何注册和调用工具。

关注issue #213274以获取更新或向我们提供反馈。

注意: API仍在积极开发中,内容将会有所变化。

测试增强

将代码与测试关联

我们正在开发一个API,使扩展能够将代码与测试关联起来,反之亦然。这使用户可以在两者之间跳转,并启用诸如在光标处运行测试之类的操作,这些操作也可以在实现代码中工作。我们预计随着API的发展,将构建更多的体验。

查看 vscode#126932 以获取更多信息和更新。

可归因的测试覆盖率

我们正在开发一个API,用于基于每个测试归因测试覆盖率。这使得用户能够查看哪些测试运行了哪些代码,过滤编辑器中显示的覆盖率以及测试覆盖率视图中的覆盖率。

查看 vscode#212196 以获取更多信息和更新。

聊天参与者检测API

如果您正在编写一个扩展,该扩展为聊天视图贡献参与者或聊天命令,您可以通过在package.json中的chatParticipants贡献中添加元数据来启用自动检测您的参与者和命令。我们已经在vscode-extension-samples仓库中更新了示例,展示了如何采用此API。在测试时,请确保设置chat.experimental.detectParticipant.enabled。请注意,这是一个提议的API,可能会发生变化。

网站

我们已经修复了VS Code API页面下的几个链接。通用类型和函数的链接再次有效,原始类型和值不再被格式化为链接!

工程

在VS Code中使用ESM的进展

在这个里程碑期间,我们完成了大部分工作,以采用ESM用于VS Code核心。我们的目标是使用ECMAScript模块(ESM)加载并完全放弃AMD。我们将在9月开始发布支持ESM的Insider版本,并计划在10月的下一个版本中将ESM发布到Stable版本。

我们发布ESM的计划记录在https://github.com/microsoft/vscode/issues/226260。

显著的修复

感谢您

最后但同样重要的是,向VS Code的贡献者们表示衷心的感谢

问题跟踪

对我们问题跟踪的贡献:

拉取请求

vscode 的贡献:

vscode-css-languageservice 的贡献:

vscode-eslint 的贡献:

vscode-flake8 的贡献:

vscode-generator-code 的贡献:

vscode-hexeditor的贡献:

vscode-isort的贡献:

vscode-js-profile-visualizer的贡献:

vscode-json-languageservice 的贡献:

vscode-languageserver-node的贡献:

vscode-loader的贡献:

vscode-mypy 的贡献:

vscode-pull-request-github 的贡献:

vscode-python-debugger 的贡献:

vscode-vsce 的贡献:

language-server-protocol的贡献:

python-environment-tools的贡献: