- Changes to upstream go.enmime help with #20
- Setting content-type is required so that browsers correclty render
docs that don't include an <html> element.
- Added smtpd.ErrNotExist to make detecting missing message easier
- Return 404 instead of 500 when requesting a non-extistant message
- More REST unit tests
- Add new configuration option [datastore]mailbox.message.cap
- Modify filestore to enforce message cap if value > 0
- Filestore unit tests for message cap when enabled & disabled
- Change to DataStore.Mailbox.NewMessage() interface to allow error
return
- Wrote more unit tests to make sure filestore behaves as expected
- Renamed NewFileDataStore to DefaultFileDataStore, implemented a new
NewFileDataStore for unit tests.
- filestore now removes entire mailbox dir when last message is deleted
Allow an organization to copy the greeting.html file out of the themes
directory, customize it, then point the greeting.file config option at
it so that it will survive Inbucket upgrades.
- Removed extra message object from ReadBody() return type
- We now use enmime's GetHeader() when building the GOB, this will get
us alternate character set decoding for the From and Subject headers.
- Added a swaks test with a utf-8 subject line
Logging methods were renamed so they don't trigger go-vet warnings for
error() and Error() formatting.
Unit tests were updated to use new github.com/stretchr repo (was renamed
from stretchrcom)
Missing methods were added to Message mock object.
- Label graphs by their duration, not update period
- Extend to 60 units so they are either 10 minutes or an hour of data
- Improvements to retention information
- Change javascript calculations, fixes#9 (I hope)
- Refactor datastore such that we have a FileDataStore that implements
the DataStore interface.
- Add in missing SMTP configuration options: max recips, max idle, max
message size
- Add retention options to config
- All mailbox actions working: index, list, show, html, source and delete
- Cleaned up extra files from Revel
- Took a guess at install process for README.md
This closes#4