mailbox.mbox.add() sets access time as well as modification time
MRAB
google at mrabarnett.plus.com
Sat Apr 25 13:33:31 EDT 2009
tinnews at isbd.co.uk wrote:
> Grant Edwards <invalid at invalid> wrote:
>> On 2009-04-24, Grant Edwards <invalid at invalid> wrote:
>>
>>> Anybody writing to an mbox mailbox has to follow the rules if
>>> they expect to interoperate with other mail applications. If
>>> mailbox.mbox.add() doesn't preserve the atime when writing to
>>> an mbox, then mailbox.mbox.add is broken.
>> I should qualify that: since the documentation for add()
>> doesn't specify whether or not it's supposed to add a "new"
>> message or an "old" message, one could argue that either
>> behavior is correct.
>>
>> However, since the maildir add() method adds a "new" message,
>> one would reasonably expect that the mbox add() method do the
>> same. Or, I suppose one might expect the converse: since mbox
>> add() creates an "old" message, then maildir add() should do
>> the same.
>>
>> I have my filesystems mouted with the "noatime" option and use
>> maildir...
>>
> Whatever, if mailbox.mbox.add() doesn't preserve the atime when adding
> messages to an mbox then it's close to useless.
>
> I suppose I could do the following:-
>
> lock the mbox
> get the atime
> add the new message with mailbox.mbox.add()
> restore the atime
> unlock the mbox
>
> All I need to do now is find out how to get and set atime with python.
>
os.path.getmtime(path)
os.path.getatime(path)
os.utime(path, (atime, mtime))
More information about the Python-list
mailing list