Provide ability to scope EnvironmentVariableCollection to a specific terminals #138109
Labels
*as-designed
Described behavior is as designed
info-needed
Issue requires more information from poster
terminal
General terminal issues that don't fall under another label
under-discussion
Issue is under discussion for relevance, priority, approach
Currently EnvironmentVariableCollection applies to all terminals.
I'd like the ability to have custom env variables for specific Terminals, not all.
Use case
Here's what we have today, Data Scientists don't necessarily work on one Python environment. They use multiple Python environments in the same VS Code Workspace, by using multiple notebooks that use different environments (we've had to introduce a lot of changes to make it easy for Data Scientist to work with these different versions).
I created the extension Python Env Manager that allows users to create terminals for each Python environment. This works today. However I cannot use
EnvironmentVariableCollection
as this applies to all Terminals (I need one that applies to just the terminal created by my extension).Thus, I'd like for this API to apply to a specific terminal that was created by the extension for a specific Python Environment. E.g. if users create a terminal for Conda Environment A, i'd like for env variables from Conda A to be applied here and not all other terminals.
Also my concern is, if the Python extension adopts this API, then the extension Python Env Manager will break as all of the Env variables will be overwritten when it should not be. However having contextual information about the Terminal would help.
Note: Today Python extnesion doesn't mess with Terminals created by other extensions when they are hidden.
The text was updated successfully, but these errors were encountered: