Fix bytes vs. string issue for mailmon on python3
This commit is contained in:
		
							parent
							
								
									bcd54bb8b6
								
							
						
					
					
						commit
						7c423c0d7f
					
				
					 4 changed files with 9 additions and 20 deletions
				
			
		| 
						 | 
				
			
			@ -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)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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]
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue