News
Amid COVID-19, VS Code 1.45 Boosts Remote Development, in Preview
Microsoft shipped Visual Studio Code 1.45, the April 2020 update of the cross-platform, open-source code editor that sees improvements in accessibility, remote development, debugging and a variety of enhancements to the workbench, editor and more.
The team continued to improve remote development functionality, especially important during the work-from-home surge caused by the COVID-19 pandemic. Remote development is enabled in VS Code via an extension pack with individual extensions for Secure Shell (SSH), Containers and Windows Subsystem for Linux (WSL).
Still in preview, the pack -- already installed by more than 650,000 developers -- helps them:
- Develop on the same OS they deploy to or use larger, faster, or more specialized hardware than a local machine.
- Quickly swap between different, isolated development environments and safely make updates without worrying about impacting a local machine.
- Help new team members/contributors get started quickly with easily spun up, consistent development containers.
- Take advantage of a Linux-based tool-chain right on Windows from a full-featured development tool.
Addressing container functionality in the April update, the team announced:
- Container configuration recommendations: "When adding a development container configuration for a workspace using the Remote-Containers: Add Development Container Configuration Files, we now recommend the container configurations that could be a good fit your workspace."
- WSL2 Docker and Podman engines support: "Remote-Containers now supports the WSL 2 based engine of Docker Desktop for Windows. You can author your devcontainer.json in WSL 2 using the Remote - WSL extension and then reopen the WSL 2 folder in a container"
- New devcontainer.json variables for local and container folders: "On Linux, we now support Podman as the container engine. Simply create a symlink docker to the Podman executable on the PATH."
More information is available in the release notes for remote development functionality.
In the debugging department, work has continued on the new JavaScript debugger, which is still in the preview stage, meaning it comes with Insiders early builds and can be installed manually from the marketplace.
The debugger works with Node.js and web applications in Edge and Chrome browsers, on track to become the built-in debugger for VS Code.
In the new update, improvements to the debugger -- already installed more than 82,000 times -- include:
- Profiling Support: Developers can capture CPU profiles from Node.js or browser applications with a new Profile button in the Call Stack view, or by using the Debug: Take Performance Profile command.
- Auto Attach integration: After turning on debug.javascript.usePreview, VS Code's Auto Attach uses a new method provided by js-debug that allows all terminals to work like the Debug Terminal.
- Copy Complex Values from Variables View: This improves the process of copying complex values, such as objects, from the VS Code Variables view, which previously could cause truncated or incomplete data. Now the complete value can be copied.
Other improvements in the update as listed in a blog post include:
- Accessibility improvements: The team added Focus Next Part (F6) and Focus Previous Part (Shift+F6) commands for easier navigation across the workbench, among other tweaks.
- Switch editor tabs via mouse wheel: Previously developers using the mouse wheel to scroll over editor tabs could only reveal tabs that are out of view. Now coders can switch tabs by setting via a configuration setting.
- Faster syntax highlighting: Here, WebAssembly has been put to use in order to evaluate regular expressions used to author Text Mate Grammars that power syntax highlighting.
- Custom semantic colors: Developers can customize semantic theming rules in user settings for TypeScript and JavaScript, with support for Java and C++ on tap.
- GitHub authentication support: Coders can now clone, pull, push to and from public and private repositories without needint to configure any credential manager in a system.
- GitHub Issues integration: The GitHub Pull Requests and Issues extension -- formerly called "GitHub Pull Requests," now supports GitHub Issues.
- New Docker Compose topic: This explains how the Microsoft Docker extension can help developers add Docker Compose files to projects in order to more easily work with multiple Docker containers.
About the Author
David Ramel is an editor and writer at Converge 360.