From 0784c1549d5d6ab51493970c706c354a3d1bdb25 Mon Sep 17 00:00:00 2001 From: JRoot Junior Date: Mon, 17 Jun 2024 04:10:49 +0300 Subject: [PATCH] Fixed `TypeError: can't subtract offset-naive and offset-aware datetimes` --- aiogram/types/custom.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/aiogram/types/custom.py b/aiogram/types/custom.py index 094fd68c..06eae70a 100644 --- a/aiogram/types/custom.py +++ b/aiogram/types/custom.py @@ -1,15 +1,18 @@ import sys from datetime import datetime +from datetime import timezone from pydantic import PlainSerializer from typing_extensions import Annotated if sys.platform == "win32": # pragma: no cover def _datetime_serializer(value: datetime) -> int: + tz = timezone.utc if value.tzinfo else None + # https://github.com/aiogram/aiogram/issues/349 # https://github.com/aiogram/aiogram/pull/880 - return round((value - datetime(1970, 1, 1)).total_seconds()) + return round((value - datetime(1970, 1, 1, tzinfo=tz)).total_seconds()) else: # pragma: no cover