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 bug

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions