From bcfc8fcd0922db549c8cd3041a532e5d516ecd43 Mon Sep 17 00:00:00 2001 From: Pierre Verkest Date: Tue, 21 Jan 2025 12:08:48 +0100 Subject: [PATCH] [FIX] mail_tracking: remove deprecation warning Since python12 utcfromtimestamp is deprecated which generate deprecation warnings class TestMailTrackingEmailCleanUp(SavepointCaseWithUserDemo): fix #1445 --- mail_tracking/models/mail_mail.py | 4 ++-- mail_tracking/models/mail_tracking_email.py | 4 ++-- mail_tracking/models/mail_tracking_event.py | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/mail_tracking/models/mail_mail.py b/mail_tracking/models/mail_mail.py index e72c2237ca..9ab99661af 100644 --- a/mail_tracking/models/mail_mail.py +++ b/mail_tracking/models/mail_mail.py @@ -2,7 +2,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). import time -from datetime import datetime +from datetime import datetime, timezone from email.utils import COMMASPACE from odoo import fields, models @@ -14,7 +14,7 @@ class MailMail(models.Model): def _tracking_email_prepare(self, email): """Prepare email.tracking.email record values""" ts = time.time() - dt = datetime.utcfromtimestamp(ts) + dt = datetime.fromtimestamp(ts, tz=timezone.utc) email_to_list = email.get("email_to", []) email_to = COMMASPACE.join(email_to_list) return { diff --git a/mail_tracking/models/mail_tracking_email.py b/mail_tracking/models/mail_tracking_email.py index cda2f335e3..4e1d4bdccb 100644 --- a/mail_tracking/models/mail_tracking_email.py +++ b/mail_tracking/models/mail_tracking_email.py @@ -6,7 +6,7 @@ import time import urllib.parse import uuid -from datetime import datetime +from datetime import datetime, timezone from odoo import _, api, fields, models, tools from odoo.exceptions import AccessError @@ -395,7 +395,7 @@ def _message_partners_check(self, message, message_id): def _tracking_sent_prepare(self, mail_server, smtp_server, message, message_id): self.ensure_one() ts = time.time() - dt = datetime.utcfromtimestamp(ts) + dt = datetime.fromtimestamp(ts, tz=timezone.utc) self._message_partners_check(message, message_id) self.sudo().write({"state": "sent"}) return { diff --git a/mail_tracking/models/mail_tracking_event.py b/mail_tracking/models/mail_tracking_event.py index c00af256a0..f9ac5f0a0f 100644 --- a/mail_tracking/models/mail_tracking_event.py +++ b/mail_tracking/models/mail_tracking_event.py @@ -3,7 +3,7 @@ import re import time -from datetime import datetime +from datetime import datetime, timezone from odoo import api, fields, models @@ -84,7 +84,7 @@ def _compute_date(self): def _process_data(self, tracking_email, metadata, event_type, state): ts = time.time() - dt = datetime.utcfromtimestamp(ts) + dt = datetime.fromtimestamp(ts, tz=timezone.utc) return { "recipient": metadata.get("recipient", tracking_email.recipient), "timestamp": metadata.get("timestamp", ts),