VS Code Python Environments Extension Gets Major Overhaul: Faster Startup, Crash Recovery, and Smarter Terminal Management

Breaking: Microsoft Ships Critical Performance and Reliability Updates for Python Environments in VS Code

Microsoft has released a significant update to the Python Environments extension for Visual Studio Code, targeting long-standing startup bottlenecks, crash scenarios, and terminal usability. The changes are designed to eliminate delays that frustrated developers working on large projects or remote setups.

VS Code Python Environments Extension Gets Major Overhaul: Faster Startup, Crash Recovery, and Smarter Terminal Management
Source: devblogs.microsoft.com

“This update fundamentally changes how the extension discovers and resolves environments,” said Alex Torres, a senior engineer on the Python Tools team. “Instead of scanning everything at startup, we now defer detection to when you actually need it. The result is a noticeably snappier activation experience.”

Startup Speed Boost: Lazy Discovery and Smarter Scanning

The most impactful change is lazy manager discovery. Previously, the extension eagerly searched for Pipenv, pyenv, and poetry environments on every startup, even for users who never use them. That overhead is now eliminated. Detection for those managers only triggers when a user opens a Pipfile or pyproject.toml that references poetry. (See issue #1423, #1408.)

“The vast majority of developers rely on venv, uv, or Conda,” Torres explained. “They were paying the cost of scanning for tools they didn’t use. Now they don’t.”

Additionally, environment resolution from activation to interpreter readiness has been optimized (#1419). The default workspace scanning pattern has been narrowed from ./**/.venv (deep recursive) to .venv and */.venv. On large remote workspaces, the old pattern caused the Python Environment Tools process to hang for 30+ seconds and enter restart loops (#1460, #1434). Users with deeply nested environments can add custom paths via the python-envs.workspaceSearchPaths setting.

Crash Recovery and Conda Base Environment Fix

Two reliability issues have been addressed. First, when the PET process crashes during a refresh, the extension now retries and handles empty or malformed responses. Previously, a transient failure could leave users with a blank environment list (#1442, #1447, #1444).

Second, a bug that caused the Conda base environment to silently change after a window reload has been fixed (#1412). “Your interpreter selection should be exactly what you set, not something that morphs without warning,” said Maria Chen, a product manager for Python tooling.

Terminal and Package Management Improvements

The update also brings quality-of-life changes to terminal environments and package lists. After running pip install or pip uninstall, the package view now auto-refreshes by monitoring metadata changes in site-packages (#1420).

In multi-project workspaces, creating a new terminal now prompts users to choose which project’s environment to activate (#1401). “No more guessing which virtual environment got picked,” Chen noted. “You get a clear choice.”

On Windows, PowerShell activation previously failed if the system execution policy blocked scripts. The extension now sets a process-scoped execution policy before running activation scripts, ensuring reliable terminal startup.

Background

The Python Environments extension for VS Code manages virtual environments, interpreters, and packages for Python development. It supports Conda, venv, Pipenv, uv, and Poetry. Prior to this update, users reported startup delays especially over Remote-SSH and in containerized workspaces. Crash recovery gaps and silent Conda environment switches were among the top complaints on GitHub.

What This Means

For developers working on large codebases or remotely, startup times will be dramatically shorter—potentially cutting 30+ second waits to near-instant. The crash recovery changes ensure that transient PET failures no longer corrupt the environment list. Terminal management becomes more transparent and reliable, particularly for multi-project workspaces and Windows users. This update is available immediately via the VS Code Marketplace.

Tags:

Recommended

Discover More

Documenting Open Source: The Stories Behind Internet TechnologiesOvercoming Container Security Scans: Deploying ClickHouse with Docker Hardened ImagesDirty Frag: 10 Essential Things You Need to Know About the Latest Linux Privilege Escalation AttackQuantum Leaps: Oxford's Pioneering 'Quadsqueezing' Breakthrough Explained8 Red Flags of Untrustworthy Websites You Can't Afford to Ignore