Commit f727e7e6 authored by Victor Stinner's avatar Victor Stinner

merge 3.1

parents 37b7de84 f4499c0a
...@@ -29,6 +29,7 @@ __all__ = ['Cookie', 'CookieJar', 'CookiePolicy', 'DefaultCookiePolicy', ...@@ -29,6 +29,7 @@ __all__ = ['Cookie', 'CookieJar', 'CookiePolicy', 'DefaultCookiePolicy',
'FileCookieJar', 'LWPCookieJar', 'LoadError', 'MozillaCookieJar'] 'FileCookieJar', 'LWPCookieJar', 'LoadError', 'MozillaCookieJar']
import copy import copy
import datetime
import re import re
import time import time
import urllib.parse, urllib.request import urllib.parse, urllib.request
...@@ -97,10 +98,12 @@ def time2isoz(t=None): ...@@ -97,10 +98,12 @@ def time2isoz(t=None):
1994-11-24 08:49:37Z 1994-11-24 08:49:37Z
""" """
if t is None: t = time.time() if t is None:
year, mon, mday, hour, min, sec = time.gmtime(t)[:6] dt = datetime.datetime.utcnow()
else:
dt = datetime.datetime.utcfromtimestamp(t)
return "%04d-%02d-%02d %02d:%02d:%02dZ" % ( return "%04d-%02d-%02d %02d:%02d:%02dZ" % (
year, mon, mday, hour, min, sec) dt.year, dt.month, dt.day, dt.hour, dt.minute, dt.second)
def time2netscape(t=None): def time2netscape(t=None):
"""Return a string representing time in seconds since epoch, t. """Return a string representing time in seconds since epoch, t.
...@@ -113,10 +116,13 @@ def time2netscape(t=None): ...@@ -113,10 +116,13 @@ def time2netscape(t=None):
Wed, DD-Mon-YYYY HH:MM:SS GMT Wed, DD-Mon-YYYY HH:MM:SS GMT
""" """
if t is None: t = time.time() if t is None:
year, mon, mday, hour, min, sec, wday = time.gmtime(t)[:7] dt = datetime.datetime.utcnow()
else:
dt = datetime.datetime.utcfromtimestamp(t)
return "%s %02d-%s-%04d %02d:%02d:%02d GMT" % ( return "%s %02d-%s-%04d %02d:%02d:%02d GMT" % (
DAYS[wday], mday, MONTHS[mon-1], year, hour, min, sec) DAYS[dt.weekday()], dt.day, MONTHS[dt.month-1],
dt.year, dt.hour, dt.minute, dt.second)
UTC_ZONES = {"GMT": None, "UTC": None, "UT": None, "Z": None} UTC_ZONES = {"GMT": None, "UTC": None, "UT": None, "Z": None}
......
...@@ -49,6 +49,9 @@ Core and Builtins ...@@ -49,6 +49,9 @@ Core and Builtins
Library Library
------- -------
- Issue #5537: Fix time2isoz() and time2netscape() functions of
httplib.cookiejar for expiration year greater than 2038 on 32-bit systems.
- Issue #11563: Connection:close header is sent by requests using URLOpener - Issue #11563: Connection:close header is sent by requests using URLOpener
class which helps in closing of sockets after connection is over. Patch class which helps in closing of sockets after connection is over. Patch
contributions by Jeff McNeil and Nadeem Vawda. contributions by Jeff McNeil and Nadeem Vawda.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment