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

Investigate using Electron's resolveProxy API in order to better handle requests behind proxies #60773

Closed
joaomoreno opened this issue Oct 12, 2018 · 17 comments
Assignees
Labels
debt Code quality issues proxy Issues regarding network proxies
Milestone

Comments

@joaomoreno
Copy link
Member

https://github.com/electron/electron/blob/master/docs/api/session.md#sesresolveproxyurl-callback

Also: https://github.com/felicienfrancois/node-electron-proxy-agent

From @chrmarti:

Seems reasonably simple. Maybe we can just adapt that for the extension host. We might need a cache to ensure good performance, but that shouldn’t be too hard either.

@joaomoreno joaomoreno added debt Code quality issues proxy Issues regarding network proxies labels Oct 12, 2018
@joaomoreno joaomoreno added this to the Backlog milestone Oct 12, 2018
@chrmarti
Copy link
Collaborator

Related links:

@joaomoreno
Copy link
Member Author

@chrmarti
Copy link
Collaborator

chrmarti added a commit that referenced this issue Oct 23, 2018
chrmarti added a commit that referenced this issue Oct 28, 2018
chrmarti added a commit that referenced this issue Oct 28, 2018
@chrmarti chrmarti modified the milestones: Backlog, October 2018 Oct 28, 2018
chrmarti added a commit that referenced this issue Oct 29, 2018
chrmarti added a commit that referenced this issue Oct 29, 2018
chrmarti added a commit that referenced this issue Nov 21, 2018
chrmarti added a commit that referenced this issue Nov 23, 2018
chrmarti added a commit that referenced this issue Nov 26, 2018
chrmarti added a commit that referenced this issue Nov 29, 2018
@chrmarti chrmarti mentioned this issue Dec 3, 2018
2 tasks
@shana
Copy link

shana commented Dec 3, 2018

We've been having some problems with authentication on the GitHub Pull Requests extension, and I've tracked it down to commit cc60804. The following code:

const get = https.request('https://vscode-auth.github.com', res => {
    vscode.window.showInformationMessage(${res.statusCode});
});
get.on('error', err => {
    vscode.window.showInformationMessage(${err});
});
get.end();

fails with

Error: write EPROTO 140735921918912:error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert internal error:../../vendor/node/deps/openssl/openssl/ssl/s23_clnt.c:802:

This has been repro'd on multiple machines running macOS Sierra and Mojave. I have no proxy configuration on my machines. If I set "http.systemProxy": "off", requests work just fine.

/cc @rebornix

@chrmarti
Copy link
Collaborator

chrmarti commented Dec 3, 2018

Disabling the setting by default for tomorrow's Insiders build.

@shana
Copy link

shana commented Dec 5, 2018

@chrmarti Sorry, I've been traveling and couldn't follow up on this. Yay for repro, thanks for looking into it!

@chrmarti
Copy link
Collaborator

chrmarti commented Dec 6, 2018

Tracking the bug as #64133.

@dwaq
Copy link

dwaq commented Dec 13, 2018

I came from the 1.3.0 release page for the network proxy support. I just wanted to let that you know that setting Http: Proxy Support to override solved a longstanding issue where I couldn't install an extension that downloaded extra software from behind a proxy. Thank you for this fix.

@dwaq
Copy link

dwaq commented Dec 13, 2018

Now, a request: If Http: Proxy Support continues to show good results for users, I would recommend setting it to override when a use enters anything into Http:Proxy. (Maybe there's a better way, but I'd be confused if I entered my proxy info and then found out there was another switch I needed to enable to get full functionality).

@chrmarti
Copy link
Collaborator

@dwaq Great! The goal is to make override the default. I have made it the default in the insiders releases (again) and will let that go into the next stable release assuming testing looks good.

@diev
Copy link

diev commented Dec 14, 2018

Please keep updated every whitelist domain as issued at #2278 in VS Code Docs.

@SounD120
Copy link

SounD120 commented Jan 24, 2019

Hey guys, we have some issues with current Proxy Support feature on the Stable VS Code 1.30.2 and the 1.31-insiders version. We have created an issue, could you please take a look?

@chrmarti
Copy link
Collaborator

Closing as there are no immediate issues reported anymore. Please open new issues if anything comes up.

@vilicvane
Copy link

vilicvane commented May 7, 2019

@chrmarti Is the imported proxy (and explicit proxy settings) being applied to remote extensions? I am experiencing issue with remote extensions accidentally using the local proxy settings.

And is there a way to configure http.proxy so it does not import from system? Tried "direct://" but not working. Seems that I should use "http.proxySupport": "off"

@chrmarti
Copy link
Collaborator

chrmarti commented May 7, 2019

@vilic You're right, we need to be smarter about when to use the proxy settings from the local side. I'll open an issue.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
debt Code quality issues proxy Issues regarding network proxies
Projects
None yet
Development

No branches or pull requests

7 participants