microsoft / microsoft/vscode-python-environments
[Python Environments] default value of python-envs.workspaceSearchPaths is not respected
- 主要语言
- TypeScript
- 星标
- 138
- 派生
- 62
- 平均合并
- 1 天 4 小时
- 30 天内合并 PR
- 35
描述
Type: Bug
## Description
Documentation reads
> [Configure search paths](https://code.visualstudio.com/docs/python/environments#_configure-search-paths)
> By default, the extension searches your entire workspace for virtual environments using the glob pattern ./**/.venv. This finds any folder named .venv anywhere in your workspace.
>
> To discover environments in custom locations, update the python-envs.workspaceSearchPaths setting:
>
> Note
> This setting must be configured at the workspace or folder level, not user level.
>
> JSON
>
> {
> "python-envs.workspaceSearchPaths": ["./**/.venv", "./envs/**", "./my-custom-env"]
> }
However, unless I explicitly configure
```json
{
"python-envs.workspaceSearchPaths": ["./**/.venv"]
}
```
my environments are not found.
**Problems**
1. This should work without the need to be configured, I am setting it to the value claimed in documentation to be default. So it should work like that without me needing to do it.
2. I want that behaviour for all of my projects / repos / workspaces / folders. Why "This setting must be configured at the workspace or folder level, not user level." - **I really want to configure it once and forget**
## Steps to Reproduce
1. Have a monorepo with many python projects inside
2. Have each python project use uv to create environment under corresponding `/.venv`
3. Have extension fail to find environments unless above is added to config
## Expected Behavior
It works out of the box.
## Actual Behavior
It does not work out of the box.
Environment Information
```
Extension Version: 1.30.0
Python Extension Version: 2026.4.0
Registered Environment Managers (6):
- ms-python.python:system (Global)
- ms-python.python:venv (venv)
- ms-python.python:pyenv (PyEnv)
- ms-python.python:pipenv (Pipenv)
- ms-python.python:poetry (Poetry)
- ms-python.python:conda (Conda)
Total Available Environments: 14
Environment Details:
1. Python 3.14.5 (homebrew) (3.14.5.final.0) - /opt/homebrew/bin/python3
2. Python 3.13.13 (homebrew) (3.13.13.final.0) - /opt/homebrew/bin/python3.13
3. Python 3.13.11 (3.13.11.final.0) - /Users/rskolasinski/.local/share/mise/installs/python/3.13.11/bin/python
4. Python 3.13.7 (3.13.7) - /usr/local/bin/python3
5. Python 3.12.13 (homebrew) (3.12.13.final.0) - /opt/homebrew/bin/python3.12
6. Python 3.11.6 (3.11.6) - /usr/local/bin/python3.11
7. Python 3.9.6 (3.9.6.final.0) - /usr/bin/python3
8. notebooks (3.12.12) (3.12.12) - /Users/rskolasinski/work/graph-analytics/tools/test-envs/sessions/notebooks/.venv/bin/python
9. python-runtime (3.12.12) (3.12.12) - /Users/rskolasinski/work/graph-analytics/python-runtime/.venv/bin/python
10. main (3.13.7) (3.13.7) - /opt/homebrew/Caskroom/miniforge/base/envs/main
... and 4 more environments
Python Projects (1):
1. /Users/rskolasinski/work/graph-analytics
Environment: python-runtime (3.12.12)
Extension Settings:
Default Environment Manager: ms-python.python:venv
Default Package Manager: ms-python.python:pip
Auto-activation is "command". Activation based on first 'py-env.terminal.autoActivationType' setting which is 'command' and 'python.terminal.activateEnvironment' if the first is undefined which is 'true'.
```
Extension version: 1.30.0
VS Code version: Code 1.123.0 (Universal) (6a44c352bd24569c417e530095901b649960f9f8, 2026-06-03T11:29:03+02:00)
OS version: Darwin arm64 25.5.0
Modes:
System Info
|Item|Value|
|---|---|
|CPUs|Apple M3 Max (16 x 2400)|
|GPU Status|2d_canvas: enabled
GPU0: VENDOR= 0x106b [Google Inc. (Apple)], DEVICE=0x0000 [ANGLE (Apple, ANGLE Metal Renderer: Apple M3 Max, Version 26.5 (Build 25F71))], DRIVER_VENDOR=Apple, DRIVER_VERSION=26.5 *ACTIVE*
Machine model name: Mac
Machine model version: 15.8
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: enabled_on
trees_in_viz: disabled_off
video_decode: enabled
video_encode: enabled
webgl: enabled
webgpu: enabled
webnn: disabled_off|
|Load (avg)|5, 6, 5|
|Memory (System)|64.00GB (1.33GB free)|
|Process Argv|. -n --crash-reporter-id 4282d203-88ae-45af-b308-6e71df072694|
|Screen Reader|no|
|VM|0%|
A/B Experiments
```
vsliv368cf:30146710
binariesv615:30325510
nativeloc1:31344060
dwcopilot:31170013
dwoutputs:31242946
copilot_t_ci:31333650
e5gg6876:31282496
pythonrdcb7:31342333
6518g693:31463988
aj953862:31281341
63221493:31336333
envsdeactivate2:31505458
cloudbuttont:31379625
3efgi100_wstrepl:31403338
bj468946:31457056
ec5jj548:31422691
cp_cls_t_966_ss:31526232
c3h7c220:31478652
ge8j1254_inline_auto_hint_haiku:31490510
38bie571_auto:31478677
cp_cls_c_1081:31454833
conptydll_true:31498968
ia-use-proxy-models-svc:31452481
e9c30283:31461165
test_treatment2:31471001
c9b86496:31447327
rl_b_098a3278:31529123
idci7584:31464702
e3e4d672:31494082
ei9d7968:31496641
nes-extended-on:31455476
chat:31457767
8hig5102:31480529
89g7j272:31518289
7e187181:31503455
i2gc6536:31499202
52612955:31516516
ghj88844:31499326
ec1eg703:31520046
ddid_t:31478206
hmra_i5g22:31518061
7df3h592:31512476
pro_large_t:31499376
cp_cls_t_1082:31516087
logging_enabled_new:31498466
j0d79568:31499440
jb_cp_cls_t_632:31524805
56dj4588:31512888
32d76977:31512328
ha629193:31508444
cdk-lw-on:31524445
nes-charagree-1:31521370
31fi7170_t:31522396
tco_on:31528579
g4a0e106:31529594
prpt_lrg:31518466
61138546:31518536
d7b18187:31526828
```
贡献指南
调研方向
使用包含多个由 uv 创建的 .venv 目录的 monorepo 重现该问题,首先比较有无 workspaceSearchPaths 设置时的发现结果。跟踪文档所述默认值的应用方式,并验证无需显式配置即可找到环境;如果仓库中有发现测试,则添加或运行回归测试。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- typescript, vscode
- 领域
- developer-experience, tooling
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 冷清
- 描述清晰度
- 基本清楚
- 新手友好度
- 55/100