The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
5.01 - 2006.09.22
	¥	commented out v-webmail, roundcube, vqadmin, and ezmlm menu options. Those items are not installed by Mail::Toaster (yet).
	¥	added help->vpopmail option to web interface
	¥	added setup -s allspam option (enabled mail filtering for all users)
	¥	added code in -s all target to refresh the $conf hashref after -s config target is run
	¥	default ports update mechanism is now portsnap
	¥	removed dependency on Net::DNS (using dig)
	¥	moved $conf into the Setup.pm object. Significantly reduced the amount of passing $conf around from sub to sub.
	¥	added options and explicit port install options for gnupg and Archive::Tar to surpress dialog boxes.
	¥	timer was not working in yes_or_no due to typo in param validation block
	¥	disabled ezmlm and vqadmin in webmail. Activate them by removing the comments in mt-top.html
	¥	default cvsup_supfile_sources settings is now cvsup-sources (was cvsup-stable)
	¥	tweaks so "make test" runs with fewer warnings
	¥	toaster_setup -s sources now auto-builds cvsup-sources if missing. The location for it is /usr/local/etc now.

5.00 - 2006.09.18

CODE QUALITY
	¥	Parameter validation for nearly all subroutines using Params::Validate. Backwards compatability is now destroyed, but that should not affect anyone as all published software that uses these functions is included with the distribution. Params::Validate is included in MT distribution.
	¥	Tests. Hundreds of new tests. In version 4, I added a plethora of tests, basically just making sure each sub and function would execute. Now most subs and functions have tests that verify inputs and results.
	¥	Switched to Test::More for tests. Provides more and better options for writing tests, comparing results, and figuring out where the tests failed.
	¥	Maillogs - a number of optimizations to make processing logs faster (shorter regexps, optimized ternaries to match common stuff first, removed POSIX requirement (lighten memory requirements), updated several of the counter functions to complain about unknown errors and values, more sanity checking in functions so they give up on errors instead of blithely charging ahead.
	¥	instead of eval's strewn all over to test for certain modules, added $perl->has_module
	¥	all objects are created with Class->new intead of new Class.
	¥	all errors raise exceptions by default. This requires callers to take specific action to change.
	¥	run tests early in subroutines, reduces giant if nests and makes it easier to read the code.
MISC
	¥	Added Build.PL for use with Module::Build fans.
	¥	Greatly simplified Makefile.PL by moving "make cgi" and "make conf" logic into Setup.pm. Those functions are now accessed by toaster_setup targets.
	¥	OpenSSL config files are now updated automatically. Auto-generated certs now have the accurate information in them. Courier-IMAP certs are also updated automatically.
DOCUMENTATION
	¥	Added three new test modules that test for: pod documentation for subs, pod formatting, and automatic checking of code to test for best practices.
	¥	moved POD documentation from being strewn about the files to the end of each file.
	¥	wrote and re-wrote significant portions of the documentation, as well as cleaned up formatting. Documentation is now easier to find as well.
	¥	changed all tnpi.biz urls to tnpi.net
	¥	shortened most tnpi.net urls to mail-toaster.org
	¥	updated copyright notices to 2006
	¥	moved usage() subs into pod docs and use pod2usage
CODE FORMATTING & READABILITY
	¥	Used perltidy to format most of the source code.
	¥	Used perlcritic to identify and correct (almost) all instances where my code was not using best practices, as identified in Perl Best Practices.
	¥	All subroutines now take named arguments, making it easier to read the code and understand what is being sent and returned.
	¥	added "use English" pragma and replaced all the arcane $and $[ perl variables with their english name equivalents.
WEB INTERFACE/CGI
	¥	Completely new webmail/logon interface. Written entirely in HTML, CSS, and JavaScript.
	¥	The format of toaster-watcher.conf is altered slightly. It is more consistent in the internal layout so that my programs can alter it reliably.
	¥	removed httpd.conf patches in favor of installing a mail-toaster.conf file with all the requisite apache directives.
	¥	Organized all the cgi related docs into cgi_files directory. They are now installed via the -s webmail target to toaster_setup.