Author eric.smith
Recipients docs@python, eric.smith, oddthinking, orsenthil
Date 2010-07-01.14:13:55
SpamBayes Score 0.0175386
Marked as misclassified No
Message-id <1277993636.77.0.206397704703.issue8595@psf.upfronthosting.co.za>
In-reply-to
Content
I think you could preserve backward compatibility by doing something like the following (in httplib):

_sentinel = object()
__HTTP_DEFAULT_TIMEOUT = _sentinel

In httplib.HTTPConnection.__init__(), in Python 2.6.

   def __init__(self, host, port=None, strict=None,
                timeout=None):
      if timeout is None:
         if _HTTP_DEFAULT_TIMEOUT is _sentinel:
            timeout = socket._GLOBAL_DEFAULT_TIMEOUT
         else:
            timeout = _HTTP_DEFAULT_TIMEOUT

That way, if _HTTP_DEFAULT_TIMEOUT is never set, it will use the the socket timeout. Admittedly I'd rather see all uses of module globals go away, but I think this would be a good compromise.
History
Date User Action Args
2010-07-01 14:13:57eric.smithsetrecipients: + eric.smith, orsenthil, docs@python, oddthinking
2010-07-01 14:13:56eric.smithsetmessageid: <1277993636.77.0.206397704703.issue8595@psf.upfronthosting.co.za>
2010-07-01 14:13:55eric.smithlinkissue8595 messages
2010-07-01 14:13:55eric.smithcreate