diff options
| author | 2020-02-29 13:29:57 +0100 | |
|---|---|---|
| committer | 2020-02-29 13:29:57 +0100 | |
| commit | d2941da52face1d0b235f6748342ae67cc38fc9f (patch) | |
| tree | b4054c0e052ec4839f3a1cc06b42f8ecd01c646a /bot/cogs/reminders.py | |
| parent | Merge pull request #797 from Numerlor/fuzzy_zero_div (diff) | |
| parent | Merge branch 'master' into bug/backend/b754/scheduler-suppresses-errors (diff) | |
Merge pull request #755 from python-discord/bug/backend/b754/scheduler-suppresses-errors
Don't suppress all errors in scheduler
Diffstat (limited to '')
| -rw-r--r-- | bot/cogs/reminders.py | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/bot/cogs/reminders.py b/bot/cogs/reminders.py index 041791056..24c279357 100644 --- a/bot/cogs/reminders.py +++ b/bot/cogs/reminders.py @@ -43,7 +43,6 @@ class Reminders(Scheduler, Cog): ) now = datetime.utcnow() - loop = asyncio.get_event_loop() for reminder in response: is_valid, *_ = self.ensure_valid_reminder(reminder, cancel_task=False) @@ -57,7 +56,7 @@ class Reminders(Scheduler, Cog): late = relativedelta(now, remind_at) await self.send_reminder(reminder, late) else: - self.schedule_task(loop, reminder["id"], reminder) + self.schedule_task(reminder["id"], reminder) def ensure_valid_reminder( self, @@ -112,9 +111,6 @@ class Reminders(Scheduler, Cog): log.debug(f"Deleting reminder {reminder_id} (the user has been reminded).") await self._delete_reminder(reminder_id) - # Now we can begone with it from our schedule list. - self.cancel_task(reminder_id) - async def _delete_reminder(self, reminder_id: str, cancel_task: bool = True) -> None: """Delete a reminder from the database, given its ID, and cancel the running task.""" await self.bot.api_client.delete('bot/reminders/' + str(reminder_id)) @@ -125,10 +121,11 @@ class Reminders(Scheduler, Cog): async def _reschedule_reminder(self, reminder: dict) -> None: """Reschedule a reminder object.""" - loop = asyncio.get_event_loop() - + log.trace(f"Cancelling old task #{reminder['id']}") self.cancel_task(reminder["id"]) - self.schedule_task(loop, reminder["id"], reminder) + + log.trace(f"Scheduling new task #{reminder['id']}") + self.schedule_task(reminder["id"], reminder) async def send_reminder(self, reminder: dict, late: relativedelta = None) -> None: """Send the reminder.""" @@ -226,8 +223,7 @@ class Reminders(Scheduler, Cog): delivery_dt=expiration, ) - loop = asyncio.get_event_loop() - self.schedule_task(loop, reminder["id"], reminder) + self.schedule_task(reminder["id"], reminder) @remind_group.command(name="list") async def list_reminders(self, ctx: Context) -> t.Optional[discord.Message]: |