microsoft / microsoft/vscode-python-environments
[Python Environments] default value of python-envs.workspaceSearchPaths is not respected
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- TypeScript
- Estrellas
- 138
- Forks
- 62
- Merge medio
- 1 d 4 h
- PR fusionados (30 d)
- 35
Descripción
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
```
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Reproduzca el problema con un monorepo que contenga varios directorios .venv creados por uv, comparando primero el descubrimiento con y sin la configuración workspaceSearchPaths. Siga cómo se aplica el valor predeterminado documentado y verifique que los entornos se encuentren sin configuración explícita; añada o ejecute una prueba de regresión si el repositorio tiene pruebas de descubrimiento.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- typescript, vscode
- Área
- developer-experience, tooling
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 55/100