Skip to content

Commit 1b78bb4

Browse files
committed
Preventing the Python 3.12's "Deprecated since version 3.12: Use datetime.now() with UTC instead."
For #913
1 parent 97fffe3 commit 1b78bb4

File tree

6 files changed

+11
-11
lines changed

6 files changed

+11
-11
lines changed

pywb/recorder/multifilewarcwriter.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -245,7 +245,7 @@ def close_idle_files(self):
245245
if not self.max_idle_time:
246246
return
247247

248-
now = datetime.datetime.now()
248+
now = datetime.datetime.now(datetime.timezone.utc)
249249

250250
for dir_key, out, filename in self.iter_open_files():
251251
try:
@@ -254,7 +254,7 @@ def close_idle_files(self):
254254
self.close_key(dir_key)
255255
return
256256

257-
mtime = datetime.datetime.fromtimestamp(mtime)
257+
mtime = datetime.datetime.fromtimestamp(mtime,tz=datetime.timezone.utc)
258258

259259
if (now - mtime) > self.max_idle_time:
260260
print('Closing idle ' + filename)

pywb/rewrite/header_rewriter.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from warcio.statusandheaders import StatusAndHeaders
22
from warcio.timeutils import datetime_to_http_date
3-
from datetime import datetime, timedelta
3+
from datetime import datetime, timedelta, timezone
44
from six.moves.urllib.parse import urlsplit
55

66

@@ -166,7 +166,7 @@ def _add_cache_headers(self, new_headers, http_cache):
166166
if age <= 0:
167167
new_headers.append(('Cache-Control', 'no-cache; no-store'))
168168
else:
169-
dt = datetime.utcnow()
169+
dt = datetime.now(timezone.utc)
170170
dt = dt + timedelta(seconds=age)
171171
new_headers.append(('Cache-Control', 'max-age=' + str(age)))
172172
new_headers.append(('Expires', datetime_to_http_date(dt)))

pywb/rewrite/test/test_header_rewriter.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
from pywb.rewrite.header_rewriter import DefaultHeaderRewriter
88
from pywb.rewrite.url_rewriter import UrlRewriter
99

10-
from datetime import datetime
10+
from datetime import datetime, timezone
1111

1212
from io import BytesIO
1313

@@ -163,7 +163,7 @@ def _test_cookie_headers():
163163
def _make_cache_headers():
164164
cache_headers = [('Content-Length', '123'),
165165
('Cache-Control', 'max-age=10'),
166-
('Expires', datetime_to_http_date(datetime.now())),
166+
('Expires', datetime_to_http_date(datetime.now(timezone.utc))),
167167
('ETag', '123456')]
168168
return cache_headers
169169

pywb/warcserver/access_checker.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
from pywb.utils.merge import merge
88

99
from warcio.timeutils import timestamp_to_datetime
10-
from datetime import datetime, timedelta
10+
from datetime import datetime, timezone
1111
from dateutil.relativedelta import relativedelta
1212
import os
1313

@@ -164,13 +164,13 @@ def check_embargo(self, url, ts):
164164
# embargo if newser than
165165
newer = self.embargo.get('newer')
166166
if newer:
167-
actual = datetime.utcnow() - newer
167+
actual = datetime.now(timezone.utc) - newer
168168
return access if actual < dt else None
169169

170170
# embargo if older than
171171
older = self.embargo.get('older')
172172
if older:
173-
actual = datetime.utcnow() - older
173+
actual = datetime.now(timezone.utc) - older
174174
return access if actual > dt else None
175175

176176
def create_access_aggregator(self, source_files):

pywb/warcserver/index/zipnum.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ def __init__(self, summary, config=None):
136136
self.summary = summary
137137

138138
# reload interval
139-
self.loc_update_time = datetime.datetime.now()
139+
self.loc_update_time = datetime.datetime.now(datetime.timezone.utc)
140140
self.reload_interval = datetime.timedelta(minutes=reload_ival)
141141

142142
self.blk_loader = BlockLoader(cookie_maker=cookie_maker)

pywb/warcserver/resource/responseloader.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -430,7 +430,7 @@ def load_resource(self, cdx, params):
430430
warc_headers['WARC-Date'] = datetime_to_iso_date(dt)
431431

432432
if not cdx.get('is_live'):
433-
now = datetime.datetime.utcnow()
433+
now = datetime.datetime.now(datetime.timezone.utc)
434434
warc_headers['WARC-Source-URI'] = cdx.get('load_url')
435435
warc_headers['WARC-Creation-Date'] = datetime_to_iso_date(now)
436436

0 commit comments

Comments
 (0)