Removed mutable arguments
This patch remves the set() mutable argument as default value, sets the default value to None and check if the argument is none in the code to call set().
This commit is contained in:
parent
fb909671c8
commit
7ff65be690
@ -524,13 +524,16 @@ class BaseFolder:
|
||||
|
||||
raise NotImplementedError
|
||||
|
||||
def savemessagelabels(self, uid, labels, ignorelabels=set(), mtime=0):
|
||||
def savemessagelabels(self, uid, labels, ignorelabels=None, mtime=0):
|
||||
"""Sets the specified message's labels to the given set.
|
||||
|
||||
Note that this function does not check against dryrun settings,
|
||||
so you need to ensure that it is never called in a
|
||||
dryrun mode."""
|
||||
|
||||
if ignorelabels is None:
|
||||
ignorelabels = set()
|
||||
|
||||
raise NotImplementedError
|
||||
|
||||
def addmessagelabels(self, uid, labels):
|
||||
|
@ -133,12 +133,15 @@ class GmailMaildirFolder(MaildirFolder):
|
||||
self.messagelist[uid]['labels'] = labels
|
||||
return ret
|
||||
|
||||
def savemessagelabels(self, uid, labels, ignorelabels=set()):
|
||||
def savemessagelabels(self, uid, labels, ignorelabels=None):
|
||||
"""Change a message's labels to `labels`.
|
||||
|
||||
Note that this function does not check against dryrun settings,
|
||||
so you need to ensure that it is never called in a dryrun mode."""
|
||||
|
||||
if ignorelabels is None:
|
||||
ignorelabels = set()
|
||||
|
||||
filename = self.messagelist[uid]['filename']
|
||||
filepath = os.path.join(self.getfullname(), filename)
|
||||
|
||||
|
@ -190,13 +190,16 @@ class LocalStatusFolder(BaseFolder):
|
||||
os.close(fd)
|
||||
|
||||
# Interface from BaseFolder
|
||||
def savemessage(self, uid, content, flags, rtime, mtime=0, labels=set()):
|
||||
def savemessage(self, uid, content, flags, rtime, mtime=0, labels=None):
|
||||
"""Writes a new message, with the specified uid.
|
||||
|
||||
See folder/Base for detail. Note that savemessage() does not
|
||||
check against dryrun settings, so you need to ensure that
|
||||
savemessage is never called in a dryrun mode."""
|
||||
|
||||
if labels is None:
|
||||
labels = set()
|
||||
|
||||
if uid < 0:
|
||||
# We cannot assign a uid.
|
||||
return uid
|
||||
|
@ -323,13 +323,16 @@ class LocalStatusSQLiteFolder(BaseFolder):
|
||||
# assert False,"getmessageflags() called on non-existing message"
|
||||
|
||||
# Interface from BaseFolder
|
||||
def savemessage(self, uid, content, flags, rtime, mtime=0, labels=set()):
|
||||
def savemessage(self, uid, content, flags, rtime, mtime=0, labels=None):
|
||||
"""Writes a new message, with the specified uid.
|
||||
|
||||
See folder/Base for detail. Note that savemessage() does not
|
||||
check against dryrun settings, so you need to ensure that
|
||||
savemessage is never called in a dryrun mode."""
|
||||
|
||||
if labels is None:
|
||||
labels = set()
|
||||
|
||||
if uid < 0:
|
||||
# We cannot assign a uid.
|
||||
return uid
|
||||
|
@ -270,7 +270,7 @@ class MaildirFolder(BaseFolder):
|
||||
filepath = os.path.join(self.getfullname(), filename)
|
||||
return os.path.getmtime(filepath)
|
||||
|
||||
def new_message_filename(self, uid, flags=set(), date=None):
|
||||
def new_message_filename(self, uid, flags=None, date=None):
|
||||
"""Creates a new unique Maildir filename
|
||||
|
||||
:param uid: The UID`None`, or a set of maildir flags
|
||||
@ -278,6 +278,9 @@ class MaildirFolder(BaseFolder):
|
||||
:param flags: (optional) Date
|
||||
:returns: String containing unique message filename"""
|
||||
|
||||
if flags is None:
|
||||
flags = set()
|
||||
|
||||
timeval, timeseq = _gettimeseq(date)
|
||||
uniq_name = '%d_%d.%d.%s,U=%d,FMD5=%s%s2,%s' % \
|
||||
(timeval, timeseq, os.getpid(), socket.gethostname(),
|
||||
|
Loading…
Reference in New Issue
Block a user