fix: fill in tzinfo for datetime.fromtimestamp() calls

Unix timestamp is defined to be UTC and fromtimetamp correctly turns
it into whatever timezone you request. In most cases, just need to
specify *something* to avoid creating naive datetimes.
This commit is contained in:
Jennifer Richards 2022-09-22 12:36:35 -03:00
parent ca1320f303
commit c5e5a00ff3
No known key found for this signature in database
GPG key ID: 26801E4DC0928410
4 changed files with 5 additions and 5 deletions

View file

@ -66,9 +66,9 @@ for name in sorted(names):
print name, rev, "Can't parse", p,":",e
continue
if draft.errors and draft.errors.keys()!=['draftname',]:
print "Errors - could not process", name, rev, datetime.datetime.fromtimestamp(p.stat().st_mtime), draft.errors, draft.get_title().encode('utf8')
print "Errors - could not process", name, rev, datetime.datetime.fromtimestamp(p.stat().st_mtime, datetime.timezone.utc), draft.errors, draft.get_title().encode('utf8')
else:
time = datetime.datetime.fromtimestamp(p.stat().st_mtime)
time = datetime.datetime.fromtimestamp(p.stat().st_mtime, datetime.timezone.utc)
if not doc:
doc = Document.objects.create(name=name,
time=time,

View file

@ -962,7 +962,7 @@ class Document(DocumentInfo):
elif rev_events.exists():
time = rev_events.first().time
else:
time = datetime.datetime.fromtimestamp(0)
time = datetime.datetime.fromtimestamp(0, datetime.timezone.utc)
dh = DocHistory(name=self.name, rev=rev, doc=self, time=time, type=self.type, title=self.title,
stream=self.stream, group=self.group)

View file

@ -89,7 +89,7 @@ def retrieve_messages_from_mbox(mbox_fileobj):
utcdate = None
d = email.utils.parsedate_tz(msg["Date"])
if d:
utcdate = datetime.datetime.fromtimestamp(email.utils.mktime_tz(d))
utcdate = datetime.datetime.fromtimestamp(email.utils.mktime_tz(d), datetime.timezone.utc)
res.append({
"from": msg["From"],

View file

@ -304,7 +304,7 @@ def select(request, meeting_num):
# get the time proceedings were generated
path = os.path.join(settings.SECR_PROCEEDINGS_DIR,meeting.number,'index.html')
if os.path.exists(path):
last_run = datetime.datetime.fromtimestamp(os.path.getmtime(path))
last_run = datetime.datetime.fromtimestamp(os.path.getmtime(path), datetime.timezone.utc)
else:
last_run = None