Fix bytes vs. string issue for mailmon on python3

This commit is contained in:
Lance Edgar 2023-02-04 17:20:14 -06:00
parent bcd54bb8b6
commit 7c423c0d7f
4 changed files with 9 additions and 20 deletions

View file

@ -2,7 +2,7 @@
################################################################################
#
# Rattail -- Retail Software Framework
# Copyright © 2010-2021 Lance Edgar
# Copyright © 2010-2023 Lance Edgar
#
# This file is part of Rattail.
#
@ -24,8 +24,6 @@
Mail Monitor Actions
"""
from __future__ import unicode_literals, absolute_import
import os
import shutil
import tempfile
@ -81,7 +79,8 @@ def download_message(server, msg_uid, output_dir, locking=False):
response, msg_body = msg_data[0]
# figure out where we need to write the file
filename = '{}.eml'.format(msg_uid)
# nb. msg_uid is bytes, must convert
filename = '{}.eml'.format(msg_uid.decode('utf_8'))
if locking:
tempdir = tempfile.mkdtemp()
path = os.path.join(tempdir, filename)

View file

@ -2,7 +2,7 @@
################################################################################
#
# Rattail -- Retail Software Framework
# Copyright © 2010-2021 Lance Edgar
# Copyright © 2010-2023 Lance Edgar
#
# This file is part of Rattail.
#
@ -24,10 +24,6 @@
Mail Monitor Configuration
"""
from __future__ import unicode_literals, absolute_import
import six
from rattail.config import ConfigProfile, parse_list
from rattail.exceptions import ConfigurationError
@ -122,12 +118,12 @@ def load_mailmon_profiles(config):
try:
profile.validate()
except ConfigurationError as error:
log.warning(six.text_type(error))
log.warning(str(error))
else:
monitored[key] = profile
# finally let each account know what it should monitor
for account in six.itervalues(accounts):
for account in accounts.values():
account.monitored = [m for k, m in monitored.items()
if k != '__accounts__'
and m.imap_account == account.key]

View file

@ -2,7 +2,7 @@
################################################################################
#
# Rattail -- Retail Software Framework
# Copyright © 2010-2022 Lance Edgar
# Copyright © 2010-2023 Lance Edgar
#
# This file is part of Rattail.
#
@ -24,8 +24,6 @@
Mail Monitor Daemon
"""
from __future__ import unicode_literals, absolute_import
import re
import time
import imaplib
@ -33,8 +31,6 @@ import imaplib
import logging
# from traceback import format_exception
import six
from rattail.daemon import Daemon
from rattail.mailmon.config import load_mailmon_profiles
from rattail.mailmon.util import (get_lastrun,
@ -62,7 +58,7 @@ class MailMonitorDaemon(Daemon):
monitored = load_mailmon_profiles(self.config)
# loop thru all accounts
for key, account in six.iteritems(monitored['__accounts__']):
for key, account in monitored['__accounts__'].items():
# fire up the account watcher thread
watcher = IMAPAccountWatcher(self.config, account)

View file

@ -2,7 +2,7 @@
################################################################################
#
# Rattail -- Retail Software Framework
# Copyright © 2010-2022 Lance Edgar
# Copyright © 2010-2023 Lance Edgar
#
# This file is part of Rattail.
#
@ -24,8 +24,6 @@
MailMon Utilities
"""
from __future__ import unicode_literals, absolute_import
import datetime
from rattail.db import api