Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Apply environment variables after shell initialization scripts are run in pythonTerminalEnvVarActivation experiment #21290

Merged
merged 12 commits into from
May 26, 2023

Conversation

karrtikr
Copy link

@karrtikr karrtikr commented May 23, 2023

For #11039 #20822
Closes #21297

Update proposed APIs to be used in Terminal activation experiment.

@karrtikr karrtikr added the feature-request Request for new features or functionality label May 23, 2023
@karrtikr karrtikr changed the title Update proposed APIs to be used in Terminal activation experiment Apply environment variables after shell initialization scripts are run in pythonTerminalEnvVarActivation experiment May 23, 2023
@karrtikr karrtikr added the skip package*.json package.json and package-lock.json don't both need updating label May 23, 2023
@karrtikr karrtikr marked this pull request as ready for review May 26, 2023 15:46
@vscodenpa vscodenpa added this to the May 2023 milestone May 26, 2023
@karrtikr karrtikr merged commit c213491 into main May 26, 2023
@karrtikr karrtikr deleted the kartik/updateProposedApis branch May 26, 2023 16:26
wesm pushed a commit to posit-dev/positron that referenced this pull request Mar 28, 2024
…on release 2023.10.0

Merge pull request #122 from posit-dev/merge/2023.10.0

Merging upstream vscode-python release 2023.10.0
--------------------
Commit message for posit-dev/positron-python@fc0926f:

Add typings to get updated EnvironmentVariableCollection API

--------------------
Commit message for posit-dev/positron-python@8c11f29:

Merge remote-tracking branch 'upstream/release/2023.10'

--------------------
Commit message for posit-dev/positron-python@fea895f:

Update version and readme for release (posit-dev/positron-python#21388)

Co-authored-by: Soojin (Min) Choi <minsa110@gmail.com>
--------------------
Commit message for microsoft/vscode-python@ad9c899:

Update version for release candidate (microsoft/vscode-python#21369)


--------------------
Commit message for microsoft/vscode-python@a395e2e:

fix bug so canceling debug works in rewrite (microsoft/vscode-python#21361)

fixes microsoft/vscode-python#21336
--------------------
Commit message for microsoft/vscode-python@be829b3:

Unittest for large workspaces (microsoft/vscode-python#21351)

follows the same steps as making pytest compatible with large workspaces
with many tests. Now test_ids are sent over a port as a json instead of
in the exec function which can hit a cap on # of characters. Should fix
microsoft/vscode-python#21339.
--------------------
Commit message for microsoft/vscode-python@cd76ee1:

add pythonTestAdapter to experiment enum (microsoft/vscode-python#21357)

allow people to opt in and out of the pythonTestAdapter rewrite via the
settings `python.experiment.optInto` or `python.experiment.optOutfrom`
--------------------
Commit message for microsoft/vscode-python@dbd0b73:

adding extra log messages for rewrite debugging (microsoft/vscode-python#21352)

These logs print errors and other bits of information which will be
helpful for debugging workflows of users where we need to get
information such as args or which step in the process they got to.
--------------------
Commit message for microsoft/vscode-python@d968b8c:

Dont show command for button trigger in command pallet (microsoft/vscode-python#21350)

Fixes microsoft/vscode-python#21322
--------------------
Commit message for microsoft/vscode-python@e9a8dd5:

remove duplicates from test_ids array (microsoft/vscode-python#21347)

this will partially remediate
microsoft/vscode-python#21339 in regards to
the duplicate IDs being run.
--------------------
Commit message for microsoft/vscode-python@f148139:

allow pytest tests to handle multiple payloads (microsoft/vscode-python#21301)

As part of the switch to allow for dynamic run- the pytest discovery and
execution tests are now switched to be take lists of dicts where the
dicts are the payloads.
--------------------
Commit message for microsoft/vscode-python@c213491:

Apply environment variables after shell initialization scripts are run in `pythonTerminalEnvVarActivation` experiment (microsoft/vscode-python#21290)

For microsoft/vscode-python#11039 microsoft/vscode-python#20822
Closes microsoft/vscode-python#21297

Update proposed APIs to be used in Terminal activation experiment.
--------------------
Commit message for microsoft/vscode-python@72f7ef8:

Set up testing rewrite experiment (microsoft/vscode-python#21258)

is the beginning of this issue:
microsoft/vscode-python#21150, in that it will
start the process of implementing the setting in the extension
--------------------
Commit message for microsoft/vscode-python@4109228:

fix debugging with new pytest run script (microsoft/vscode-python#21299)

fix debugging for run_pytest_script.py setup
--------------------
Commit message for microsoft/vscode-python@b916981:

remove unneeded multiroot code (microsoft/vscode-python#21295)

removed extra steps to wrap data since this creates duplicate folders in
the controller and only keeps the most recent instead of all the roots
from different workspaces.
--------------------
Commit message for microsoft/vscode-python@e2a9cec:

allow large scale testing (microsoft/vscode-python#21269)

allows new testing rewrite to handle 500+ tests and load and run these
tests. High limit tested was 10,000 tests.
--------------------
Commit message for microsoft/vscode-python@f2f5fe2:

Check config type in the ChildProcessAttachEvents (microsoft/vscode-python#21272)


--------------------
Commit message for microsoft/vscode-python@4b4e5b7:

Update pyright version (microsoft/vscode-python#21296)

Fix error in tests, updating pyright version
--------------------
Commit message for microsoft/vscode-python@c9a7268:

Revert "Remove hack to check the vscode version" (microsoft/vscode-python#21294)

Reverts microsoft/vscode-python#21180
For microsoft/vscode-python#20769
--------------------
Commit message for microsoft/vscode-python@a74f1d1:

Detect installed packages in the selected environment (microsoft/vscode-python#21231)

Fixes microsoft/vscode-python#21140
--------------------
Commit message for microsoft/vscode-python@b0ebc9b:

Enable debug pytest (microsoft/vscode-python#21228)

fixes microsoft/vscode-python#21147

---------

Co-authored-by: Aidos Kanapyanov <65722512+aidoskanapyanov@users.noreply.github.com>
Co-authored-by: Karthik Nadig <kanadig@microsoft.com>
--------------------
Commit message for microsoft/vscode-python@be9662f:

revert testing to using socket (microsoft/vscode-python#21242)

switch back to using a socket instead of an output file for use in the
plugin communication during testing. This should work now that we
resolved the issue with python path for windows.
--------------------
Commit message for microsoft/vscode-python@b4a47bb:

Add reload flag on fastApi provider (microsoft/vscode-python#21241)


--------------------
Commit message for microsoft/vscode-python@fcfc54c:

Add option for pyenv interpreters when creating environments with venv (microsoft/vscode-python#21219)

Resolves microsoft/vscode-python#20881 .

Testing:

Behaves as expected when testing with Extension Development Host:


![image](https://github.com/microsoft/vscode-python/assets/30149293/d114d9ab-f2d8-4273-877b-d7dd030cfe76)
--------------------
Commit message for microsoft/vscode-python@b3d43e5:

Do not open "save as" window when running existing Python files (microsoft/vscode-python#21232)

Closes microsoft/vscode-python#21209
--------------------
Commit message for microsoft/vscode-python@b0da28c:

Remove IS_WINDOWS constant in favor of PlatformService (microsoft/vscode-python#21157)

Solves partially microsoft/vscode-python#8542
--------------------
Commit message for microsoft/vscode-python@0c4fa40:

Change name of command to run Python files in separate terminals (microsoft/vscode-python#21229)

Closes microsoft/vscode-python#14094
--------------------
Commit message for microsoft/vscode-python@1533818:

Added option to run multiple Python files in separate terminals (microsoft/vscode-python#21223)

Closes microsoft/vscode-python#21215
microsoft/vscode-python#14094

Added the option to assign a dedicated terminal for each Python file:


![image](https://github.com/microsoft/vscode-python/assets/13199757/b01248e4-c826-4de0-b15f-cde959965e68)
--------------------
Commit message for microsoft/vscode-python@eb9fde3:

Add `createEnvironment.contentButton` setting (microsoft/vscode-python#21212)

Closes microsoft/vscode-python#20982

---------

Co-authored-by: Luciana Abud <45497113+luabud@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@5eef525:

Add logging when interpreter path changes (microsoft/vscode-python#21210)

For microsoft/vscode-python#21208
--------------------
Commit message for microsoft/vscode-python@8d291f7:

Disable "snippets" expansion in Jedi LSP (microsoft/vscode-python#21194)

This brings the Jedi based completion experience in line with that
provided by Pylance. Completions now insert only the current symbol
rather than assuming that the user wants to e.g: call that symbol.

This means for example that completing `max` will insert just `max`
rather `max(arg1, arg2)`. While for this case this may be seen as less
useful, it means that insertions in places where a call is not desired
(such as imports and typing contexts) will not be forced to manually
remove the parentheses and template arguments which might otherwise be
inserted.

Users can still use the signature support UI to explore signatures and
of course insertion of an opening parenthesis will still insert a
closing one.

Hopefully this new configuration will be preferable to a majority of
users.

I've done some light testing to check that this disables the described
additional completion, however I'm not massively familiar with JediLSP
so I'm not sure what other behaviours this will disable.

Fixes microsoft/vscode-python#15858
--------------------
Commit message for microsoft/vscode-python@a85eb3b:

Fix startup telemetry issue (microsoft/vscode-python#21203)

Could fix microsoft/vscode-python#20874 based
on error trace.
--------------------
Commit message for microsoft/vscode-python@17daae4:

Open separate Python terminals when running different Python files (microsoft/vscode-python#21202)

Closes microsoft/vscode-python#21097
Closes microsoft/vscode-python#14094
--------------------
Commit message for microsoft/vscode-python@f0253e5:

Use actions from `vscode-github-triage-actions` in all Python automations (microsoft/vscode-python#21178)


--------------------
Commit message for microsoft/vscode-python@678f70d:

Remove hack to check the vscode version (microsoft/vscode-python#21180)

Closed: microsoft/vscode-python#20769
--------------------
Commit message for microsoft/vscode-python@6bdada0:

Use `saveEditor` proposed API for running untitled Python files (microsoft/vscode-python#21183)

Closes microsoft/vscode-python#21182

Lead-authored-by: Eleanor Boyd <eleanorboyd@microsoft.com>
Co-authored-by: Peter Law <PeterJCLaw@gmail.com>
Co-authored-by: Carlos Piña Martinez <carlospinamartinezdm@gmail.com>
Co-authored-by: Jonathan Rayner <jonathan.j.rayner@gmail.com>
Co-authored-by: Pete Farland <pete.farland@posit.co>
Co-authored-by: paulacamargo25 <paulitacv25@gmail.com>
Co-authored-by: Karthik Nadig <kanadig@microsoft.com>
Co-authored-by: Kartik Raj <karraj@microsoft.com>
Signed-off-by: GitHub <noreply@github.com>
wesm pushed a commit to posit-dev/positron that referenced this pull request Mar 28, 2024
…on release 2023.10.0

Merge pull request #122 from posit-dev/merge/2023.10.0

Merging upstream vscode-python release 2023.10.0
--------------------
Commit message for posit-dev/positron-python@fc0926f:

Add typings to get updated EnvironmentVariableCollection API

--------------------
Commit message for posit-dev/positron-python@8c11f29:

Merge remote-tracking branch 'upstream/release/2023.10'

--------------------
Commit message for posit-dev/positron-python@fea895f:

Update version and readme for release (posit-dev/positron-python#21388)

Co-authored-by: Soojin (Min) Choi <minsa110@gmail.com>
--------------------
Commit message for microsoft/vscode-python@ad9c899:

Update version for release candidate (microsoft/vscode-python#21369)


--------------------
Commit message for microsoft/vscode-python@a395e2e:

fix bug so canceling debug works in rewrite (microsoft/vscode-python#21361)

fixes microsoft/vscode-python#21336
--------------------
Commit message for microsoft/vscode-python@be829b3:

Unittest for large workspaces (microsoft/vscode-python#21351)

follows the same steps as making pytest compatible with large workspaces
with many tests. Now test_ids are sent over a port as a json instead of
in the exec function which can hit a cap on # of characters. Should fix
microsoft/vscode-python#21339.
--------------------
Commit message for microsoft/vscode-python@cd76ee1:

add pythonTestAdapter to experiment enum (microsoft/vscode-python#21357)

allow people to opt in and out of the pythonTestAdapter rewrite via the
settings `python.experiment.optInto` or `python.experiment.optOutfrom`
--------------------
Commit message for microsoft/vscode-python@dbd0b73:

adding extra log messages for rewrite debugging (microsoft/vscode-python#21352)

These logs print errors and other bits of information which will be
helpful for debugging workflows of users where we need to get
information such as args or which step in the process they got to.
--------------------
Commit message for microsoft/vscode-python@d968b8c:

Dont show command for button trigger in command pallet (microsoft/vscode-python#21350)

Fixes microsoft/vscode-python#21322
--------------------
Commit message for microsoft/vscode-python@e9a8dd5:

remove duplicates from test_ids array (microsoft/vscode-python#21347)

this will partially remediate
microsoft/vscode-python#21339 in regards to
the duplicate IDs being run.
--------------------
Commit message for microsoft/vscode-python@f148139:

allow pytest tests to handle multiple payloads (microsoft/vscode-python#21301)

As part of the switch to allow for dynamic run- the pytest discovery and
execution tests are now switched to be take lists of dicts where the
dicts are the payloads.
--------------------
Commit message for microsoft/vscode-python@c213491:

Apply environment variables after shell initialization scripts are run in `pythonTerminalEnvVarActivation` experiment (microsoft/vscode-python#21290)

For microsoft/vscode-python#11039 microsoft/vscode-python#20822
Closes microsoft/vscode-python#21297

Update proposed APIs to be used in Terminal activation experiment.
--------------------
Commit message for microsoft/vscode-python@72f7ef8:

Set up testing rewrite experiment (microsoft/vscode-python#21258)

is the beginning of this issue:
microsoft/vscode-python#21150, in that it will
start the process of implementing the setting in the extension
--------------------
Commit message for microsoft/vscode-python@4109228:

fix debugging with new pytest run script (microsoft/vscode-python#21299)

fix debugging for run_pytest_script.py setup
--------------------
Commit message for microsoft/vscode-python@b916981:

remove unneeded multiroot code (microsoft/vscode-python#21295)

removed extra steps to wrap data since this creates duplicate folders in
the controller and only keeps the most recent instead of all the roots
from different workspaces.
--------------------
Commit message for microsoft/vscode-python@e2a9cec:

allow large scale testing (microsoft/vscode-python#21269)

allows new testing rewrite to handle 500+ tests and load and run these
tests. High limit tested was 10,000 tests.
--------------------
Commit message for microsoft/vscode-python@f2f5fe2:

Check config type in the ChildProcessAttachEvents (microsoft/vscode-python#21272)


--------------------
Commit message for microsoft/vscode-python@4b4e5b7:

Update pyright version (microsoft/vscode-python#21296)

Fix error in tests, updating pyright version
--------------------
Commit message for microsoft/vscode-python@c9a7268:

Revert "Remove hack to check the vscode version" (microsoft/vscode-python#21294)

Reverts microsoft/vscode-python#21180
For microsoft/vscode-python#20769
--------------------
Commit message for microsoft/vscode-python@a74f1d1:

Detect installed packages in the selected environment (microsoft/vscode-python#21231)

Fixes microsoft/vscode-python#21140
--------------------
Commit message for microsoft/vscode-python@b0ebc9b:

Enable debug pytest (microsoft/vscode-python#21228)

fixes microsoft/vscode-python#21147

---------

Co-authored-by: Aidos Kanapyanov <65722512+aidoskanapyanov@users.noreply.github.com>
Co-authored-by: Karthik Nadig <kanadig@microsoft.com>
--------------------
Commit message for microsoft/vscode-python@be9662f:

revert testing to using socket (microsoft/vscode-python#21242)

switch back to using a socket instead of an output file for use in the
plugin communication during testing. This should work now that we
resolved the issue with python path for windows.
--------------------
Commit message for microsoft/vscode-python@b4a47bb:

Add reload flag on fastApi provider (microsoft/vscode-python#21241)


--------------------
Commit message for microsoft/vscode-python@fcfc54c:

Add option for pyenv interpreters when creating environments with venv (microsoft/vscode-python#21219)

Resolves microsoft/vscode-python#20881 .

Testing:

Behaves as expected when testing with Extension Development Host:


![image](https://github.com/microsoft/vscode-python/assets/30149293/d114d9ab-f2d8-4273-877b-d7dd030cfe76)
--------------------
Commit message for microsoft/vscode-python@b3d43e5:

Do not open "save as" window when running existing Python files (microsoft/vscode-python#21232)

Closes microsoft/vscode-python#21209
--------------------
Commit message for microsoft/vscode-python@b0da28c:

Remove IS_WINDOWS constant in favor of PlatformService (microsoft/vscode-python#21157)

Solves partially microsoft/vscode-python#8542
--------------------
Commit message for microsoft/vscode-python@0c4fa40:

Change name of command to run Python files in separate terminals (microsoft/vscode-python#21229)

Closes microsoft/vscode-python#14094
--------------------
Commit message for microsoft/vscode-python@1533818:

Added option to run multiple Python files in separate terminals (microsoft/vscode-python#21223)

Closes microsoft/vscode-python#21215
microsoft/vscode-python#14094

Added the option to assign a dedicated terminal for each Python file:


![image](https://github.com/microsoft/vscode-python/assets/13199757/b01248e4-c826-4de0-b15f-cde959965e68)
--------------------
Commit message for microsoft/vscode-python@eb9fde3:

Add `createEnvironment.contentButton` setting (microsoft/vscode-python#21212)

Closes microsoft/vscode-python#20982

---------

Co-authored-by: Luciana Abud <45497113+luabud@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@5eef525:

Add logging when interpreter path changes (microsoft/vscode-python#21210)

For microsoft/vscode-python#21208
--------------------
Commit message for microsoft/vscode-python@8d291f7:

Disable "snippets" expansion in Jedi LSP (microsoft/vscode-python#21194)

This brings the Jedi based completion experience in line with that
provided by Pylance. Completions now insert only the current symbol
rather than assuming that the user wants to e.g: call that symbol.

This means for example that completing `max` will insert just `max`
rather `max(arg1, arg2)`. While for this case this may be seen as less
useful, it means that insertions in places where a call is not desired
(such as imports and typing contexts) will not be forced to manually
remove the parentheses and template arguments which might otherwise be
inserted.

Users can still use the signature support UI to explore signatures and
of course insertion of an opening parenthesis will still insert a
closing one.

Hopefully this new configuration will be preferable to a majority of
users.

I've done some light testing to check that this disables the described
additional completion, however I'm not massively familiar with JediLSP
so I'm not sure what other behaviours this will disable.

Fixes microsoft/vscode-python#15858
--------------------
Commit message for microsoft/vscode-python@a85eb3b:

Fix startup telemetry issue (microsoft/vscode-python#21203)

Could fix microsoft/vscode-python#20874 based
on error trace.
--------------------
Commit message for microsoft/vscode-python@17daae4:

Open separate Python terminals when running different Python files (microsoft/vscode-python#21202)

Closes microsoft/vscode-python#21097
Closes microsoft/vscode-python#14094
--------------------
Commit message for microsoft/vscode-python@f0253e5:

Use actions from `vscode-github-triage-actions` in all Python automations (microsoft/vscode-python#21178)


--------------------
Commit message for microsoft/vscode-python@678f70d:

Remove hack to check the vscode version (microsoft/vscode-python#21180)

Closed: microsoft/vscode-python#20769
--------------------
Commit message for microsoft/vscode-python@6bdada0:

Use `saveEditor` proposed API for running untitled Python files (microsoft/vscode-python#21183)

Closes microsoft/vscode-python#21182

Lead-authored-by: Eleanor Boyd <eleanorboyd@microsoft.com>
Co-authored-by: Peter Law <PeterJCLaw@gmail.com>
Co-authored-by: Carlos Piña Martinez <carlospinamartinezdm@gmail.com>
Co-authored-by: Jonathan Rayner <jonathan.j.rayner@gmail.com>
Co-authored-by: Pete Farland <pete.farland@posit.co>
Co-authored-by: paulacamargo25 <paulitacv25@gmail.com>
Co-authored-by: Karthik Nadig <kanadig@microsoft.com>
Co-authored-by: Kartik Raj <karraj@microsoft.com>
Signed-off-by: GitHub <noreply@github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request Request for new features or functionality skip package*.json package.json and package-lock.json don't both need updating
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Set environment variables as part of shell integration using VSCode API
3 participants