contrib/convert-mbox-maildir.py
author frostbane <frostbane@programmer.net>
Fri, 04 Mar 2016 08:15:26 +0900
branchfeature/refactor
changeset 79 3f7593f1b0ae
parent 55 59814494f238
permissions -rw-r--r--
refactor into separate classes add --index and --output option to ishow add --index option to iadd

import mailbox, glob, os.path, os
import artemis
from mercurial import ui, hg

repo = hg.repository(ui.ui())

issue_filenames = glob.glob(os.path.join(artemis.issues_dir, '*'))
for fn in issue_filenames:
    mb = mailbox.mbox(fn)
    messages = [m for m in mb]
    mb.close()
    os.unlink(fn)
    repo.remove([fn])
    md = mailbox.Maildir(fn)
    md.lock()
    keys = [md.add(m) for m in messages]
    md.close()
    for k in keys: repo.add([fn + '/new/' + k])