changeset 30665:69459fdf3b1b

url: remove unnecessary deletion of environ variables while dealing with proxy Currently we delete proxy environment variables if ui.config contains proxy values. This is unnecessary because urllib2.ProxyHandler class only reads proxy from environment it is initialised by None. But url.py never passes None, so there is no point urllib2 will take environment variables in account. This also prevents deleting environment variables which is not safe. This code was introduced while resolving Bug 2451 even it is in one of comments (sixth one) on bug that we can safely remove this part. Link to bug : https://bz.mercurial-scm.org/show_bug.cgi?id=2451
author Pulkit Goyal <7895pulkit@gmail.com>
date Sat, 24 Dec 2016 01:16:14 +0530
parents ced0d686ecb3
children bb0d5aad761a
files mercurial/url.py
diffstat 1 files changed, 0 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/url.py	Thu Dec 22 23:28:35 2016 -0700
+++ b/mercurial/url.py	Sat Dec 24 01:16:14 2016 +0530
@@ -15,7 +15,6 @@
 
 from .i18n import _
 from . import (
-    encoding,
     error,
     httpconnection as httpconnectionmod,
     keepalive,
@@ -113,17 +112,6 @@
         else:
             proxies = {}
 
-        # urllib2 takes proxy values from the environment and those
-        # will take precedence if found. So, if there's a config entry
-        # defining a proxy, drop the environment ones
-        if ui.config("http_proxy", "host"):
-            for env in ["HTTP_PROXY", "http_proxy", "no_proxy"]:
-                try:
-                    if env in encoding.environ:
-                        del encoding.environ[env]
-                except OSError:
-                    pass
-
         urlreq.proxyhandler.__init__(self, proxies)
         self.ui = ui