Skip to content

Shell startup activation for environments didn't run automatically in multi-root workspaces #1063

@Sharl0tteIsTaken

Description

@Sharl0tteIsTaken

Type: Bug

Behaviour

The experimental feature of the Python Environments extension (Shell Startup Activation) didn't run automatically in multi-root workspaces. Will have to run the script manually to activate the virtual environment.

Note 1: What I mean by script is the activate files described in the Python document: https://docs.python.org/3/library/venv.html#how-venvs-work
Note: 2 This is present in all shells Bash, PowerShell and CMD.

Steps to reproduce:

  1. Open a new window in VS Code (menu bar > File > New Window).
  2. Open folder to start working in VS Code (menu bar > File > Open Folder...).
  3. Select any folder.
  4. Add a folder to this VS Code window (menu bar > File > Add Folder to Workspace).
  5. Select a python venv folder created by command python -m venv <venv-name>.
  6. Make sure in the Python VS Code Activity Bar, the environment is set as project environment (the environment is virtual environment created like the command in step 5).
  7. Open a new terminal in VS Code (menu bar > Terminal > New Terminal).
  8. Select any directory as current working directory for new terminal.
  • The script didn't run automaticallyImage
  • Expected behaviour (in a single root workspace)Image

The workspace is structured as follows:

Scripting with REST API
├── Test
│   ├── test_folder
│   │   ├── .env
│   │   
│   ├── test_venv
│   │   ├── test.venv
│   │   │   ├── Include
│   │   │
│   │   │   ├── Lib
│   │   │
│   │   │   ├── Scripts
│   │   │   │   ├── activate
│   │   │   │   ├── activate.bat
│   │   │   │   ├── ...

Note 1: I am pretty sure this is the case if the venv (test.venv in this case) folder is anywhere other than inside the other folder in the multi-root workspace
Note 2: I didn't test if this also is the case if there is multiple venv or non-venv folder in the same workspace.

Diagnostic data

output for Python Environments in the Output panel (ViewOutput, change the drop-down the upper-right of the Output panel to Python)

2025-12-14 17:10:52.246 [info] 
=== Python Envs Configuration Levels ===
2025-12-14 17:10:52.246 [info] {
  "section": "Python Envs Configuration Levels",
  "defaultEnvManager": {
    "workspaceFolderValue": "undefined",
    "workspaceValue": "undefined",
    "globalValue": "undefined",
    "defaultValue": "ms-python.python:venv"
  },
  "defaultPackageManager": {
    "workspaceFolderValue": "undefined",
    "workspaceValue": "undefined",
    "globalValue": "undefined",
    "defaultValue": "ms-python.python:pip"
  }
}
2025-12-14 17:10:52.246 [info] [pet] Starting Python Locator c:\Users\james\.vscode\extensions\ms-python.vscode-python-envs-1.14.0-win32-x64\python-env-tools\bin\pet.exe server
2025-12-14 17:10:52.305 [info] getAllExtraSearchPaths completed. Total unique search directories: 0 Paths: []
2025-12-14 17:10:52.305 [info] [pet] configure: Sending configuration update: {"workspaceDirectories":["c:\\Users\\james\\Documents\\.MyDocs\\Projects\\Test\\test_folder","c:\\Users\\james\\Documents\\.MyDocs\\Projects\\Test\\test_venv\\test.venv"],"environmentDirectories":[],"poetryExecutable":"poetry","cacheDirectory":"c:\\Users\\james\\AppData\\Roaming\\Code\\User\\globalStorage\\ms-python.vscode-python-envs\\pythonLocator"}
2025-12-14 17:10:52.311 [warning] [pet] Failed to open HKLM\Software\Python\PythonCore\3.9\InstallPath, Os { code: 2, kind: NotFound, message: "系統找不到指定的檔案。" }
2025-12-14 17:10:52.312 [info] Discovered env: C:\Users\james\AppData\Local\Programs\Python\Python312\python.exe
2025-12-14 17:10:52.313 [info] Discovered env: C:\Users\james\Documents\.MyDocs\Projects\Test\test_venv\test.venv\Scripts\python.exe
2025-12-14 17:10:52.378 [info] [pet] Locator Conda took 69.1475ms
2025-12-14 17:10:52.378 [info] [pet] Locator PipEnv took 151.6µs
2025-12-14 17:10:52.378 [info] [pet] Locator Pixi took 110.1µs
2025-12-14 17:10:52.378 [info] [pet] Locator Poetry took 2.0029ms
2025-12-14 17:10:52.379 [info] [pet] Locator PyEnv took 970.8µs
2025-12-14 17:10:52.379 [info] [pet] Locator Uv took 121.1µs
2025-12-14 17:10:52.379 [info] [pet] Locator Venv took 132.6µs
2025-12-14 17:10:52.379 [info] [pet] Locator VirtualEnv took 51.2µs
2025-12-14 17:10:52.380 [info] [pet] Locator VirtualEnvWrapper took 44.4µs
2025-12-14 17:10:52.380 [info] [pet] Locator WindowsRegistry took 1.695ms
2025-12-14 17:10:52.380 [info] [pet] Locator WindowsStore took 545.7µs
2025-12-14 17:10:52.380 [info] [pet] Locator GlobalVirtualEnvs took 356.5µs
2025-12-14 17:10:52.380 [info] [pet] Locator Locators took 69.7336ms
2025-12-14 17:10:52.380 [info] [pet] Locator Path took 3.1641ms
2025-12-14 17:10:52.380 [info] [pet] Locator Workspaces took 5.3607ms
2025-12-14 17:10:52.381 [info] getAllExtraSearchPaths completed. Total unique search directories: 0 Paths: []
2025-12-14 17:10:52.381 [info] Poetry not found, turning off poetry features.
2025-12-14 17:10:52.381 [info] [pet] Telemetry:  {"event":"RefreshPerformance","data":{"refreshPerformance":{"total":69,"breakdown":{"GlobalVirtualEnvs":0,"Locators":69,"Path":3,"Workspaces":5},"locators":{"Conda":69,"PipEnv":0,"Pixi":0,"Poetry":2,"PyEnv":0,"Uv":0,"Venv":0,"VirtualEnv":0,"VirtualEnvWrapper":0,"WindowsRegistry":1,"WindowsStore":0}}}}
2025-12-14 17:10:52.388 [warning] [pet] Failed to open HKLM\Software\Python\PythonCore\3.9\InstallPath, Os { code: 2, kind: NotFound, message: "系統找不到指定的檔案。" }
2025-12-14 17:10:52.390 [info] Discovered env: C:\Users\james\AppData\Local\Programs\Python\Python312\python.exe
2025-12-14 17:10:52.391 [info] Discovered env: C:\Users\james\Documents\.MyDocs\Projects\Test\test_venv\test.venv\Scripts\python.exe
2025-12-14 17:10:52.443 [info] [pet] Locator Conda took 60.7433ms
2025-12-14 17:10:52.443 [info] [pet] Locator PipEnv took 2.1591ms
2025-12-14 17:10:52.443 [info] [pet] Locator Pixi took 2.2507ms
2025-12-14 17:10:52.443 [info] [pet] Locator Poetry took 3.6527ms
2025-12-14 17:10:52.443 [info] [pet] Locator PyEnv took 3.0516ms
2025-12-14 17:10:52.443 [info] [pet] Locator Uv took 1.5479ms
2025-12-14 17:10:52.443 [info] [pet] Locator Venv took 85µs
2025-12-14 17:10:52.444 [info] [pet] Locator VirtualEnv took 116.6µs
2025-12-14 17:10:52.444 [info] [pet] Locator VirtualEnvWrapper took 2.1787ms
2025-12-14 17:10:52.444 [info] [pet] Locator WindowsRegistry took 3.6941ms
2025-12-14 17:10:52.444 [info] [pet] Locator WindowsStore took 565.6µs
2025-12-14 17:10:52.444 [info] [pet] Locator GlobalVirtualEnvs took 2.8803ms
2025-12-14 17:10:52.444 [info] [pet] Locator Locators took 60.9407ms
2025-12-14 17:10:52.444 [info] [pet] Locator Path took 5.2635ms
2025-12-14 17:10:52.444 [info] [pet] Locator Workspaces took 9.8517ms
2025-12-14 17:10:52.444 [info] getAllExtraSearchPaths completed. Total unique search directories: 0 Paths: []
2025-12-14 17:10:52.444 [info] Pipenv not found
2025-12-14 17:10:52.444 [info] Pipenv not found, turning off pipenv features.
2025-12-14 17:10:52.445 [info] [pet] Telemetry:  {"event":"RefreshPerformance","data":{"refreshPerformance":{"total":61,"breakdown":{"GlobalVirtualEnvs":2,"Locators":60,"Path":5,"Workspaces":9},"locators":{"Conda":60,"PipEnv":2,"Pixi":2,"Poetry":3,"PyEnv":3,"Uv":1,"Venv":0,"VirtualEnv":0,"VirtualEnvWrapper":2,"WindowsRegistry":3,"WindowsStore":0}}}}
2025-12-14 17:10:52.448 [warning] [pet] Failed to open HKLM\Software\Python\PythonCore\3.9\InstallPath, Os { code: 2, kind: NotFound, message: "系統找不到指定的檔案。" }
2025-12-14 17:10:52.449 [info] Discovered env: C:\Users\james\AppData\Local\Programs\Python\Python312\python.exe
2025-12-14 17:10:52.451 [info] Discovered env: C:\Users\james\Documents\.MyDocs\Projects\Test\test_venv\test.venv\Scripts\python.exe
2025-12-14 17:10:52.506 [info] [pet] Locator Conda took 59.6563ms
2025-12-14 17:10:52.506 [info] [pet] Locator PipEnv took 50.2µs
2025-12-14 17:10:52.506 [info] [pet] Locator Pixi took 221.2µs
2025-12-14 17:10:52.506 [info] [pet] Locator Poetry took 1.7906ms
2025-12-14 17:10:52.506 [info] [pet] Locator PyEnv took 1.0701ms
2025-12-14 17:10:52.506 [info] [pet] Locator Uv took 450.6µs
2025-12-14 17:10:52.506 [info] [pet] Locator Venv took 291.8µs
2025-12-14 17:10:52.506 [info] [pet] Locator VirtualEnv took 42µs
2025-12-14 17:10:52.506 [info] [pet] Locator VirtualEnvWrapper took 108.3µs
2025-12-14 17:10:52.506 [info] [pet] Locator WindowsRegistry took 1.4275ms
2025-12-14 17:10:52.506 [info] [pet] Locator WindowsStore took 536.7µs
2025-12-14 17:10:52.506 [info] [pet] Locator GlobalVirtualEnvs took 641.9µs
2025-12-14 17:10:52.506 [info] [pet] Locator Locators took 60.008ms
2025-12-14 17:10:52.506 [info] [pet] Locator Path took 3.1817ms
2025-12-14 17:10:52.506 [info] [pet] Locator Workspaces took 4.7433ms
2025-12-14 17:10:52.507 [info] getAllExtraSearchPaths completed. Total unique search directories: 0 Paths: []
2025-12-14 17:10:52.507 [info] Pyenv not found, turning off pyenv features.
2025-12-14 17:10:52.507 [info] [pet] Telemetry:  {"event":"RefreshPerformance","data":{"refreshPerformance":{"total":60,"breakdown":{"GlobalVirtualEnvs":0,"Locators":60,"Path":3,"Workspaces":4},"locators":{"Conda":59,"PipEnv":0,"Pixi":0,"Poetry":1,"PyEnv":1,"Uv":0,"Venv":0,"VirtualEnv":0,"VirtualEnvWrapper":0,"WindowsRegistry":1,"WindowsStore":0}}}}
2025-12-14 17:10:52.509 [warning] [pet] Failed to open HKLM\Software\Python\PythonCore\3.9\InstallPath, Os { code: 2, kind: NotFound, message: "系統找不到指定的檔案。" }
2025-12-14 17:10:52.511 [info] Discovered env: C:\Users\james\AppData\Local\Programs\Python\Python312\python.exe
2025-12-14 17:10:52.513 [info] Discovered env: C:\Users\james\Documents\.MyDocs\Projects\Test\test_venv\test.venv\Scripts\python.exe
2025-12-14 17:10:52.567 [info] [pet] Locator Conda took 58.8102ms
2025-12-14 17:10:52.567 [info] [pet] Locator PipEnv took 126.3µs
2025-12-14 17:10:52.567 [info] [pet] Locator Pixi took 84.7µs
2025-12-14 17:10:52.567 [info] [pet] Locator Poetry took 1.8279ms
2025-12-14 17:10:52.568 [info] [pet] Locator PyEnv took 861.7µs
2025-12-14 17:10:52.568 [info] [pet] Locator Uv took 157.7µs
2025-12-14 17:10:52.568 [info] [pet] Locator Venv took 76µs
2025-12-14 17:10:52.568 [info] [pet] Locator VirtualEnv took 130.8µs
2025-12-14 17:10:52.568 [info] [pet] Locator VirtualEnvWrapper took 20.8µs
2025-12-14 17:10:52.568 [info] [pet] Locator WindowsRegistry took 1.2066ms
2025-12-14 17:10:52.568 [info] [pet] Locator WindowsStore took 483.6µs
2025-12-14 17:10:52.568 [info] [pet] Locator GlobalVirtualEnvs took 367.6µs
2025-12-14 17:10:52.568 [info] [pet] Locator Locators took 58.9827ms
2025-12-14 17:10:52.568 [info] [pet] Locator Path took 3.0226ms
2025-12-14 17:10:52.568 [info] [pet] Locator Workspaces took 5.0936ms
2025-12-14 17:10:52.569 [info] Conda not found, turning off conda features. [Error: Conda not found
	at F (c:\Users\james\.vscode\extensions\ms-python.vscode-python-envs-1.14.0-win32-x64\dist\extension.js:2:544897)
	at async L (c:\Users\james\.vscode\extensions\ms-python.vscode-python-envs-1.14.0-win32-x64\dist\extension.js:2:545022)
	at async t.registerCondaFeatures (c:\Users\james\.vscode\extensions\ms-python.vscode-python-envs-1.14.0-win32-x64\dist\extension.js:2:561919)
	at async Promise.all (index 1)
	at async Immediate.<anonymous> (c:\Users\james\.vscode\extensions\ms-python.vscode-python-envs-1.14.0-win32-x64\dist\extension.js:2:693451)]
2025-12-14 17:10:52.569 [info] [resolveDefaultInterpreter] User configured defaultInterpreterPath: c:\Users\james\AppData\Local\Programs\Python\Python312\python.exe and defaultEnvManager: undefined
2025-12-14 17:10:52.569 [info] getAllExtraSearchPaths completed. Total unique search directories: 0 Paths: []
2025-12-14 17:10:52.569 [info] [pet] Telemetry:  {"event":"RefreshPerformance","data":{"refreshPerformance":{"total":59,"breakdown":{"GlobalVirtualEnvs":0,"Locators":58,"Path":3,"Workspaces":5},"locators":{"Conda":58,"PipEnv":0,"Pixi":0,"Poetry":1,"PyEnv":0,"Uv":0,"Venv":0,"VirtualEnv":0,"VirtualEnvWrapper":0,"WindowsRegistry":1,"WindowsStore":0}}}}
2025-12-14 17:10:52.571 [info] Resolved Python Environment C:\Users\james\AppData\Local\Programs\Python\Python312\python.exe
2025-12-14 17:10:52.578 [info] Extension for manager ms-python.python:venv is not active: Activating...
2025-12-14 17:10:52.743 [info] Found venv environment: test.venv (3.12.4)
2025-12-14 17:10:52.757 [info] Python API: Changed environment from undefined to Python 3.12 (64-bit) for: c:\Users\james\Documents\.MyDocs\Projects\Test\test_folder
2025-12-14 17:10:52.757 [info] Internal: Changed environment from undefined to Python 3.12 (64-bit) for: c:\Users\james\Documents\.MyDocs\Projects\Test\test_folder
2025-12-14 17:10:52.757 [info] Python API: Changed environment from undefined to test.venv (3.12.4) for: c:\Users\james\Documents\.MyDocs\Projects\Test\test_venv\test.venv
2025-12-14 17:10:52.757 [info] Internal: Changed environment from undefined to test.venv (3.12.4) for: c:\Users\james\Documents\.MyDocs\Projects\Test\test_venv\test.venv
2025-12-14 17:10:52.794 [info] Extension for manager ms-python.python:venv is now active.
2025-12-14 17:10:52.807 [info] Python API: Changed environment from undefined to Python 3.12 (64-bit) for: global
2025-12-14 17:10:52.807 [info] Internal: Changed environment from undefined to Python 3.12 (64-bit) for: global

Extension version: 1.14.0
VS Code version: Code 1.107.0 (618725e67565b290ba4da6fe2d29f8fa1d4e3622, 2025-12-10T07:43:47.883Z)
OS version: Windows_NT x64 10.0.26100
Modes:

System Info
Item Value
CPUs 11th Gen Intel(R) Core(TM) i9-11900H @ 2.50GHz (16 x 2496)
GPU Status 2d_canvas: enabled
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
trees_in_viz: disabled_off
video_decode: enabled
video_encode: enabled
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: disabled_off
Load (avg) undefined
Memory (System) 31.67GB (8.73GB free)
Process Argv --crash-reporter-id 164e58a9-9ad2-4464-86b4-52ebd47800d1
Screen Reader no
VM 0%
A/B Experiments
vsliv368cf:30146710
pythonvspyt551cf:31249601
binariesv615:30325510
nativeloc1:31344060
dwcopilot:31170013
dwoutputs:31242946
copilot_t_ci:31333650
e5gg6876:31282496
pythonrdcb7:31342333
6518g693:31334701
aj953862:31281341
nes-set-on:31351930
6abeh943:31336334
envsdeactivate2:31353495
cloudbuttont:31379625
todos-1:31405332
3efgi100_wstrepl:31403338
trigger-command-fix:31379601
use-responses-api:31390855
2a0ce269:31428710
ec5jj548:31422691
terminalsuggestenabled:31431119
cp_cls_c_966_ss:31426491
c0683394:31419495
478ah919:31426797
a5gib710:31434435
7ig2g208:31434269
anthropic_thinking_t:31432745
406hc587_ask_agent:31428393
cp_cls_c_1081:31433293

Metadata

Metadata

Labels

area-activationIssue related to activation. Root cause can be from interpreter selection or activation in terminalarea-environmentEnvironment, interpreter related issues.area-terminalEnvironment extension specific terminal issues.bugIssue identified by VS Code Team member as probable bugimportantIssue identified as high-priority

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions