Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion src/webob/cookies.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
import time
import warnings

from webob.datetime_utils import utcnow
from webob.util import bytes_, text_

__all__ = [
Expand Down Expand Up @@ -239,7 +240,7 @@ def serialize_cookie_date(v):
v = timedelta(seconds=v)

if isinstance(v, timedelta):
v = datetime.utcnow() + v
v = utcnow() + v

if isinstance(v, (datetime, date)):
v = v.timetuple()
Expand Down
9 changes: 8 additions & 1 deletion src/webob/datetime_utils.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import calendar
from datetime import date, datetime, timedelta, tzinfo
from datetime import date, datetime, timedelta, timezone, tzinfo
from email.utils import formatdate, mktime_tz, parsedate_tz
import time

Expand Down Expand Up @@ -121,3 +121,10 @@ def serialize_date_delta(value):
return str(int(value))
else:
return serialize_date(value)


def utcnow():
"""
replacement of deprecated datetime.datetime.utcnow
"""
return datetime.now(timezone.utc).replace(tzinfo=None)
9 changes: 5 additions & 4 deletions src/webob/response.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
from base64 import b64encode
from datetime import datetime, timedelta
from datetime import timedelta
from hashlib import md5
import re
import struct
Expand All @@ -14,6 +14,7 @@
parse_date_delta,
serialize_date_delta,
timedelta_to_seconds,
utcnow,
)
from webob.descriptors import (
CHARSET_RE,
Expand Down Expand Up @@ -1259,15 +1260,15 @@ def _cache_expires(self, seconds=0, **kw):
cache_control.max_age = 0
cache_control.post_check = 0
cache_control.pre_check = 0
self.expires = datetime.utcnow()
self.expires = utcnow()

if "last-modified" not in self.headers:
self.last_modified = datetime.utcnow()
self.last_modified = utcnow()
self.pragma = "no-cache"
else:
cache_control.properties.clear()
cache_control.max_age = seconds
self.expires = datetime.utcnow() + timedelta(seconds=seconds)
self.expires = utcnow() + timedelta(seconds=seconds)
self.pragma = None

for name, value in kw.items():
Expand Down
Loading