Repository navigation
Extension Experimentation and Roll Out #581
Description
Important
as of 7/15/2026 the environments extension is enabled via experiment for 100% of users!
This issue tracks the progress of the Python Environments extension rollout and experimentation. See below for info on opting in / out and how it all works.
TLDR:
You may now see that the Python Environments Extension is installed for you but it may or may not be "enabled". Enablement is controlled by a setting "python.useEnvironmentsExtension": true/false, which if set to true will manually opt you into using the Python Environments Extension. If you don't have the above setting, you will randomly assign users to either treatment (environments extension "enabled") or control ("disabled"). The Environments Extension will become the default experience so over time more people will be opted into the experiment until it is at 100%.
General
The Python Environments extension is a new extension build to improve and expand the environment related functionality of Python in VS Code. In the end, this extension will be bundled by default with the Python extension and tasks related to environments which exist in the Python extension will ultimately be deprecated in favor of the Python Environments extension which will take over providing this functionality. Users should see no regressions in behavior, we aim to support all the features in the environments extension which existed in the Python extension.
Experimentation & Rollout
Since environment related actions are integral to providing a great experience with Python, we will begin to roll out the environments extension by default over time and under a VS Code experiment. There are 3 parts which will determine if users have the python environments extension, higher order on the list takes precedence.
- Insiders vs Stable: All insider users will now have the extension bundled by default with the Python extension, stable users will see no change at this time. The other criteria below will be used to determine if its "enabled" or not (insider users will see it installed either way).
- User Setting: The setting (set in user settings)
"python.useEnvironmentsExtension": true/false, if set, will dictate the user experience. If set, the user will have the environments extension no matter the experiment group they are in. If you are experiencing issues, you can set this setting to false while we fix your problem, but once fixed you should opt back in as we will turn off the experiment at some point (and default to using the environments extension). Since we know users have already begun using the new extension, and we don't want to disturb their experience, anyone who used the extension from June 24th - 30th were automatically given the setting"python.useEnvironmentsExtension": true. - Experiment Group: All users on insiders are in one of two groups, environments extension turned on or off. The easiest way to tell which you are in is by checking for the Python icon logo in the sidebar (if you see it this means you are in the experiment and have the environments extension enabled). Check below for the current percentages for the experiment as we will increase this number over time.
FAQs:
- How do I know if I am in the experiment or not?
First if you are on stable vscode (not insiders) then you aren't on the experiment. If you are on insiders, the easiest way to tell if you are in the experiment is by checking for the Python icon logo in the sidebar (if you see it this means you are in the experiment and have the environments extension enabled) - How do I opt out?
You can only opt out temporarily (like as a bug is getting fixed) because the environments extension will become the default. But if you do want to opt out for now, add the following to your user settings:"python.useEnvironmentsExtension": false - Better yet- how do I opt in?
We really hope you will opt in and give it a try (new features and improvements to existing features!). To do so just add the following to your user settings:"python.useEnvironmentsExtension": true. - What should I do if something isn't working?
If you find a bug in your experience with environment activation, creation, management, etc first try manually opting in or out to the experiment (see above steps). If you see a difference in your bug based changing this setting, it is a bug with the new experience and we would really appreciate if you file it and let us know! - Im on VS Code stable- can I still get this new extension?
Yes! And we encourage you to do so! To do so, just search for "Python Environments" in the marketplace and install it. Then to make sure you don't get opted out when the experiment comes to stable, add"python.useEnvironmentsExtension": trueto your user settings!
History:
7/7/2025: move experiment from 20% to 50% of insiders
7/16/2025: move to 100% of insiders
7/21/2025: 10% on stable
7/23/2025: 20% on stable
2/18/2026: 50% on stable
4/29/2026: 60% on stable
6/23/2026: 75% on stable
7/15/2026: 100% on stable
Activity
Liam3851 commentedon Jul 7, 2025
I'm on VS Code stable 1.101.2 on Windows and somehow received this extension. In addition to not working at all with my multi-root workspace (I could click the button to set the environment, checked all the boxes next to my roots, but it never changed anything); even after uninstalling the extension, my multi-root workspace no longer works to set the environments at the workspace level.
eleanorjboyd commentedon Jul 7, 2025
David Krych (@Liam3851), sorry this is happening, not sure why it would be installed or cause permanent erroring to your env setup. A few questions, did you update your VS Code version recently? What version of the python extension are you on? Do you have
python.useEnvironmentsExtensionset in your user settings? Is it also broken on other workspaces or just this multiroot one you are using?dot-polka commentedon Jul 8, 2025
Does not work, revert to showing for eceryone!! Otherwise will need to go to different IDE
eleanorjboyd commentedon Jul 8, 2025
Hello dot-polka, I responded to your other comment but feel free to create a new issue with all the information and I can help- thanks!
Liam3851 commentedon Jul 8, 2025
Eleanor Boyd (@eleanorjboyd) Thanks very much, I am on 1.101.2. I updated from the 1.100 line late last week so I suppose that could also be related. My current python extension is 2025.8.0. I don't have python.useEnvironmentsExtension in my settings, but I believe I did have python.experiments.enabled=true so that might have gotten me the experimental extension. If it's helpful, I use conda to manage my dependencies.
Multi-root is my main problem; I have another single-root project and (at least after removing the experimental extension) it seems ok. Even after downgrade I am finding that "Set at workspace level" just doesn't do anything at all-- it doesn't change the environment in the status bar, doesn't change listing of the underlying folders, it just seems to do a no-op. I'm not seeing any additional output from Python and Python Language Server between before and after I change the environment.
dot-polka commentedon Jul 8, 2025
What worked for me: Set use settings by manually editing settings.json on MAC. Restating VS Code, Moving all python extensions to pre-release. Restarting VS Code. Applying extension to all profiles, Than toggling python env settings in the workspace setting and restarting VS code. Clearly feature did not have enough testing before enabling and breaking multiple developers
eleanorjboyd commentedon Jul 9, 2025
David Krych (@Liam3851), moving our discussion over to this issue so we can talk further
juliettevivien commentedon Jul 24, 2025
I also had an issue with this new python extension: by clicking on Run Python file as usual, it writes in the powershell
& conda run --live-stream --name env_name python my_file.pywhich returns an error message:& : Le terme « conda » n'est pas reconnu comme nom d'applet de commande, fonction, fichier de script ou programme exécutable. Vérifiez l'orthographe du nom, ou si un chemin d'accès existe, vérifiez que le chemin d'accès est correct et réessayez.
Au caractère Ligne:1 : 3
I followed the steps as described by [eleanorjboyd], i.e. I changed "python.useEnvironmentsExtension": true to false in my user settings and restarted VScode: it works now and I can run my script as usual.
Please fix the bug before setting this option as default 🙏
eleanorjboyd commentedon Jul 24, 2025
Hi juliettevivien! Very interesting that it cannot find conda. A few things:
A. run
conda wherein the terminal spun up by the run command, also callecho $PATHB. open a new terminal, do you see a command get inserted that source/activates Conda for that terminal?
C. check the value of the setting
"python-envs.terminal.autoActivationType":Thank you and I appreciate any help or insight you can provide!
Enabling python environments extension
bgupta commentedon Jul 25, 2025
For me it's no longer seeing venvs created with pyenv virtualenv. It's just seeing pyenv versions.
eleanorjboyd commentedon Jul 25, 2025
Hi Brian Gupta (@bgupta) can you open a new issue with what you are seeing so I can look into the issue more specifically?
somiandras commentedon Jul 28, 2025
Not sure if this is a bug or I just don't understand something with this extension and my multiroot workspace with subprojects. I started a discussion that I wanted to flag here as well: microsoft/vscode-python#25334
In a nutshell: the Python Environments extension seems to work, managed to set up my environments, and looks like it picks up the proper venv automatically for files in any of the subprojects, but Pylance still complains about missing imports, ie. it seems to use the wrong interpreter.
eleanorjboyd commentedon Sep 28, 2026
The rollout reached 100% on July 15, 2026, so this rollout tracker is complete. Follow-up work to remove the experiment, the opt-out setting, and transitional/legacy paths is now tracked in #1835.