Fix timestamps being wrong

This commit is contained in:
Zeva Rose 2022-03-26 03:26:20 -06:00
parent cb1d3809c8
commit c623e341f4
7 changed files with 15 additions and 15 deletions

View file

@ -1,6 +1,6 @@
"""JARVIS ban tasks."""
import asyncio
from datetime import datetime, timedelta
from datetime import datetime, timedelta, timezone
from logging import Logger
from dis_snek import Snake
@ -41,7 +41,7 @@ async def unban(bot: Snake, logger: Logger) -> None:
logger: Global logger
"""
while True:
max_ts = datetime.utcnow() + timedelta(minutes=9)
max_ts = datetime.now(tz=timezone.utc) + timedelta(minutes=9)
bans = Ban.find(q(type="temp", active=True, duration__lte=max_ts))
async for ban in bans:
guild = await bot.fetch_guild(ban.guild)

View file

@ -1,6 +1,6 @@
"""JARVIS Lock background task."""
import asyncio
from datetime import datetime, timedelta
from datetime import datetime, timedelta, timezone
from logging import Logger
from dis_snek import Snake
@ -36,7 +36,7 @@ async def unlock(bot: Snake, logger: Logger) -> None:
logger: Global logger
"""
while True:
max_ts = datetime.utcnow() + timedelta(seconds=55)
max_ts = datetime.now(tz=timezone.utc) + timedelta(seconds=55)
locks = Lock.find(q(active=True, created_at__lte=max_ts))
async for lock in locks:
guild = await bot.fetch_guild(lock.guild)

View file

@ -1,6 +1,6 @@
"""JARVIS Lockdown background task."""
import asyncio
from datetime import datetime, timedelta
from datetime import datetime, timedelta, timezone
from logging import Logger
from dis_snek import Snake
@ -29,7 +29,7 @@ async def lift(bot: Snake, logger: Logger) -> None:
logger: Global logger
"""
while True:
max_ts = datetime.utcnow() + timedelta(seconds=55)
max_ts = datetime.now(tz=timezone.utc) + timedelta(seconds=55)
locks = Lockdown.find(q(active=True, created_at__lte=max_ts))
async for lock in locks:
guild = await bot.fetch_guild(lock.guild)

View file

@ -1,6 +1,6 @@
"""JARVIS reminders."""
import asyncio
from datetime import datetime, timedelta
from datetime import datetime, timedelta, timezone
from logging import Logger
from typing import Optional
@ -63,7 +63,7 @@ async def remind(bot: Snake, logger: Logger) -> None:
logger: Global logger
"""
while True:
max_ts = datetime.utcnow() + timedelta(seconds=5)
max_ts = datetime.now(tz=timezone.utc) + timedelta(seconds=5)
reminders = Reminder.find(q(remind_at__lte=max_ts, active=True))
async for reminder in reminders:
user = await bot.fetch_user(reminder.user)

View file

@ -1,6 +1,6 @@
"""JARVIS Twitter sync."""
import asyncio
from datetime import datetime, timedelta
from datetime import datetime, timedelta, timezone
from logging import Logger
from typing import List
@ -90,11 +90,11 @@ async def twitter(bot: Snake, logger: Logger) -> None:
async for account in accounts:
logger.debug(f"Checking account {account.handle}")
# Check if account needs updated (handle changes)
if account.last_sync + timedelta(hours=1) <= datetime.utcnow():
if account.last_sync + timedelta(hours=1) <= datetime.now(tz=timezone.utc):
logger.debug(f"Account {account.handle} out of sync, updating")
user = api.get_user(user_id=account.twitter_id)
account.handle = user.screen_name
account.last_sync = datetime.utcnow()
account.last_sync = datetime.now(tz=timezone.utc)
await account.commit()
# Get new tweets

View file

@ -1,6 +1,6 @@
"""JARVIS warnings tasks."""
import asyncio
from datetime import datetime, timedelta
from datetime import datetime, timedelta, timezone
from logging import Logger
from dis_snek import Snake
@ -25,7 +25,7 @@ async def unwarn(bot: Snake, logger: Logger) -> None:
logger: Global logger
"""
while True:
max_ts = datetime.utcnow() + timedelta(minutes=55)
max_ts = datetime.now(tz=timezone.utc) + timedelta(minutes=55)
warns = Warning.find(q(active=True, created_at__lte=max_ts))
async for warn in warns:
coro = _unwarn(warn, logger)

View file

@ -1,6 +1,6 @@
"""JARVIS task utilities."""
import asyncio
from datetime import datetime
from datetime import datetime, timezone
from logging import Logger
from typing import Coroutine
@ -15,6 +15,6 @@ async def runat(when: datetime, coro: Coroutine, logger: Logger) -> None:
logger: Global logger
"""
logger.debug(f"Scheduling task {coro.__name__} for {when.isoformat()}")
delay = when - datetime.utcnow()
delay = when - datetime.now(tz=timezone.utc)
await asyncio.sleep(delay.total_seconds())
await coro