-
Notifications
You must be signed in to change notification settings - Fork 29.9k
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
Extension proxy support #12588
Comments
-1 for adding this for to the API but +1 for extracting our code into a node-module. @joaomoreno how feasible is that? how much code do we add on top of other node-modules? |
It's thin. |
I leaving it with you then ;-) |
A node package sounds like a cool solution. Let me know when it's ready so I can test it and provide feedback. |
We're going with a different proxy solution in the future, skipping this. |
Do you have any details about that future solution? |
Actually, I might've closed this too eagerly. We're going with using Chrome's network stack for everything. So you're a bit busted. The only way out is exposing an API for making network requests. I'll leave this open for that. |
@joaomoreno any news from April ? This is insane and quite critical |
Do i need to ping more contributor to VsCode in order to get more feedback on it ? |
In VSCode Settings, you can set http.proxy to http://username:PASSWORD@your-proxy-ip:port |
Extension proxy support #12588 |
One alternative to the suggestion of creating a VSCode fetch API for extensions would be to use the VSCode host as a proxy. VS Code already supports PAC files and NTLM/GSS corporate proxy authentication. Using this networking stack it could expose a port to the extensions like CNTLM. This could be exposed in the form of http_proxy env variables (so no change would be required there). Network requests would then pass through VS Code. This feels like the simplest approach as it requires no change to extensions (continue to use http_proxy), the code for port forwarding is already in present. |
that's why multiple users in that thread are asking for since 2016/2017 it seems to be most logical one in order to have something uniform and also consistent with the OS |
Hi The problem is that we can't provide login/password because credentials are automatically manage by the OS Kerberos authentification system. I hope this feature to be added to the roadmap, since some critical extensions doesn't work well offline today (like IntelliSense which needs to download its model to be fine) Regards |
@LeYom Of topic for this issue but perhaps a solution for your problem: Have you tried using a second, local proxy that supports NTLM or Kerberos authentication to the corporate proxy? I'm currently using px which works quite well. An other, if somewhat aged, candidate is |
oO i can answer for that one i don't recall the issue we struggled with |
So my situation is that I was having to add/remove proxy setting in json to switch between extension marketplace working and anything that connected to inside the proxy (intranet). In order to have marketplace and be able use self hosted gitpod/gitlab extension::
Note:this is 'default' location of PAC file, point to whichever is being used by your enterprise my understanding is that vscode uses OS proxy settings, but since I am literally pointing it at the file my OS uses that doesn't appear to be the case. |
This comment was marked as spam.
This comment was marked as spam.
This is where is leads you when searching for Azure Tools extension proxy issue, an issue that's open for 7 years?!? I cannot login to Azure Tools VS Code extension behind proxy. Tried all suggestions including launching with --ignore-certificate-errors. Log shows 502 error, so seems like it's some SSL negotiation issue and it's ignoring this setting. |
This is also where I ended up while researching why the official SQL Server extension was failing to download the latest SQL Tools service layer package:
I've been running into similar issues with other extensions that try to download additional payloads once they're installed. They all fail if I'm behind a proxy. I've blanket whitelisted the URL's (which are mostly to github.com) and also bypassed all SSL decryption, but there is still some SSL/TLS cert negotiation issue at hand. Unfortunately it's stopping us (and I'm sure many others) from trying out other things like Copilot for VScode since it's the same problem. |
@chrmarti Can we have an update on where we stand on this? An issue eight years old and so many people waiting should be high priority. |
@merlinz01 Work is under way to make Chromium's implementation of If you think your setup should already work with the |
Proxy support for Visual Studio Code has been introduced recently through environment variables/settings (see https://code.visualstudio.com/docs/setup/setup-overview#_proxy-server-support). As an extension developer I would like to use these settings when requesting resources from the internet. My current implementation fails for users using a proxy.
What is the recommended way for an extension to use a proxy?
I could not find a
vscode
API that exposes methods to make requests using a proxy other than access to the proxy settings (workspace.getConfiguration()
) and implementing everything on my own. Looking at the Visual Studio Code code base I identified the code that adds support for proxies, but copy&paste it into my extension would result in duplicated and potentially outdated code, which is something I want to avoid whenever possible. As I am probably not the only extension developer accessing the internet, I would like to hear your opinion on this issue. Any feedback would be greatly appreciated.The text was updated successfully, but these errors were encountered: