diff --git a/.cvsignore b/.cvsignore new file mode 100644 index 0000000..64db6e5 --- /dev/null +++ b/.cvsignore @@ -0,0 +1,3 @@ +build +dist +*.pyc diff --git a/CHANGELOG b/CHANGELOG index 554a470..b91b008 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,10 +1,14 @@ -Version 0.3.0 - ??? +Version 0.3.0 - 11 April 2002 * We now preserve the last-accessed and last-modified timestamps correctly + * We now preserve the correct permissions on the original mailbox instead + of always mode 600 * Fixed a bug where lockfiles were being created that were not world-readable * Made archivemail work better when used as a python module so it can - integrate better with unittest. - * Budled a unit testing script for archivemail. + integrate better with unittest. (... although I still distribute it + without the .py extension - dodgy?) + * Bundled a unit-testing script for archivemail + * Started using a distutils 'setup.py' script for installation. Version 0.2.1 - 4 April 2002 * Since we might not have a parse-able 'Date-Received' or 'Date' field, diff --git a/MANIFEST b/MANIFEST new file mode 100644 index 0000000..b284a17 --- /dev/null +++ b/MANIFEST @@ -0,0 +1,8 @@ +CHANGELOG +COPYING +MANIFEST +README +TODO +archivemail +setup.py +test_archivemail.py diff --git a/README b/README index b455df7..7aaeb58 100644 --- a/README +++ b/README @@ -1,5 +1,15 @@ +----------------------------------------------------------- archivemail - archive and compress old mail in your mailbox +----------------------------------------------------------- + +INSTALLATION: + +To install archivemail, run: + python setup.py install + + +USE: 'archivemail' is a tool written in Python for organising and storing old email choking any of your mailboxes. It can move messages older than a diff --git a/TODO b/TODO index 630e310..16a5cbf 100644 --- a/TODO +++ b/TODO @@ -1,19 +1,17 @@ -Goals for next minor release (0.2.2): +Goals for next minor release (0.3.1): ------------------------------------- -* Finish man page -* If a mailbox has a mode of 660, preserve it. - (Especially in /var/spool/mail with groupid of 'mail') +* Finish docbook sgml documentation & man page -Goals for next major release (0.3.0): +Goals for next major release (0.4.0): ------------------------------------- -* Build a testing framework using python module 'unittest' * Lock any original .gz files - is this necessary? * Check for symlink attacks for tempfiles (although we don't use /var/tmp) Longer Term goals: ------------------ +* Use zlib instead of calling gzip directly * Add MMDF mailbox support * Add Babyl mailbox support * Add option to archive depending on mailbox size threshold diff --git a/setup.py b/setup.py new file mode 100755 index 0000000..744077d --- /dev/null +++ b/setup.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python + +import sys +from distutils.core import setup + +# check version +if sys.version_info[0] < 2: + print "Python versions below 2.0 not supported" + sys.exit(1) + +setup(name="archivemail", + version="0.3.0", + description="archivemail - archive and compress old email", + author="Paul Rodger", + author_email="paul@paulrodger.com", + url="http://archivemail.sourceforge.net/", + scripts=["archivemail"], + ) diff --git a/test_archivemail.py b/test_archivemail.py index 0015541..22ab2f2 100755 --- a/test_archivemail.py +++ b/test_archivemail.py @@ -32,6 +32,7 @@ TODO: add tests for: """ +import sys import fcntl import filecmp import os @@ -41,7 +42,15 @@ import tempfile import time import unittest -import archivemail +try: + import archivemail +except ImportError: + print "The archivemail script needs to be called 'archivemail.py'" + print "and should be in the current directory in order to be imported" + print "and tested. Sorry." + if os.path.isfile("archivemail"): + print "Try renaming it from 'archivemail' to 'archivemail.py'." + sys.exit(1)