-
Notifications
You must be signed in to change notification settings - Fork 30.5k
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
Shell information no longer returned in settings #74233
Comments
@Tyriar Hope this will be fixed in the current release, as this will break the Python extension in a number of places. |
This change was made due to this issue that came out of remote that was reported quite a lot: microsoft/vscode-remote-release#38 The problem here is that evaluating the setting locally meant that was passed over to the remote side and it would break as a result. Consider an Ubuntu box where While thinking about whether I can revert back and still fix the remote bug I'm not so sure I can, the reason being that then extensions like vscode-python would fail for the same reason in the remote case. I think the right thing to do here is for the python extension to have its own default shell behavior, whether that be copying how VS Code does it or defaulting to cmd/ |
We're happy to go ahead and use the code u suggested, the one used in VS Code. However, we'll most certainly need some kind of API from VS Code to get this value going forward. The reason is simple, if VS Code was to make some changes to this area (changes in logic), then our code could break. This is because we need to know the shell being used by VS Code so we can send shell specific commands. If VS Code is using You could probably change the label of this issue to reflect the new state - i.e. Extension requiring a new API... |
@DonJayamanne so you interact with terminals other than ones you create via |
Yes (we interact with terminal user have created). |
@DonJayamanne you could try using Windows running cmd.exe: This is what shows up in the terminal selector dropdown. |
Yes, that would work, however we won't be able to detect the shell when a terminal is opened by vsc for debugging or similar (e.g. when VSC opens a terminal for debugging the name is |
@DonJayamanne for that case it doesn't matter much imo if you end up differing from VS Code, can't you just have a default that you use? |
Closing as I think we agreed to fix this in vscode-python |
For any extensions hitting this issue, the recommendation is to set your own default when the setting is null. The simplest fix would be to fallback to cmd.exe on Windows and bash on Linux/macOS. |
Steps to Reproduce:
terminal.integrated.shell.<platform>
, and you'll see the return value isnull
Does this issue occur when all extensions are disabled?: Yes/No
Yes
Note: This works in Stable version of VS Code.
Version 1.34.0 (1.34.0)
![Screen Shot 2019-05-23 at 14 28 47](https://user-images.githubusercontent.com/1948812/58287971-3a9d4680-7d67-11e9-886d-c304d29e948f.png)
Version 1.35.0-insider (1.35.0-insider) 2019-05-23T05:07:54.582Z
![Screen Shot 2019-05-23 at 14 29 16](https://user-images.githubusercontent.com/1948812/58287972-3a9d4680-7d67-11e9-8e24-a0e6f17c25e6.png)
The text was updated successfully, but these errors were encountered: