# Changelog Notable changes to Mailpit will be documented in this file. ## [v1.14.0] ### Chore - Update node dependencies - Update Go dependencies - Refactor storage library - Security improvements (gosec) - Switch to short uuid format for database IDs - Better handling of automatic database compression (vacuuming) after deleting messages ### Docker - Add edge Docker images for latest unreleased features ### Feature - Optional POP3 server ([#249](https://github.com/axllent/mailpit/issues/249)) ## [v1.13.3] ### API - Include Reply-To information in message summaries for message list & websocket events ### Chore - Update node dependencies - Update Go dependencies - Compress database only when >= 1% of total message size has been deleted - Update "About" modal layout when new version is available ### Feature - Add reply-to: search filter ([#247](https://github.com/axllent/mailpit/issues/247)) ## [v1.13.2] ### Chore - Update caniemail data - Update node modules - Update Go modules - Bump actions build requirement versions - Update esbuild ### Feature - Add option to log output to file ([#246](https://github.com/axllent/mailpit/issues/246)) ## [v1.13.1] ### Chore - Update node dependencies - Update Go dependencies ### Feature - Add TLSRequired option for smtpd ([#241](https://github.com/axllent/mailpit/issues/241)) ### Fix - Workaround for specific field searches containing unicode characters ([#239](https://github.com/axllent/mailpit/issues/239)) ### UI - Only show number of messages ignored statistics if `--ignore-duplicate-ids` is set ## [v1.13.0] ### Chore - Compress compiled assets with `npm run build` - Update Go modules - Update node modules ### Feature - Add option to disable SMTP reverse DNS (rDNS) lookup ([#230](https://github.com/axllent/mailpit/issues/230)) - Display List-Unsubscribe & List-Unsubscribe-Post header info with syntax validation ([#236](https://github.com/axllent/mailpit/issues/236)) - Add optional SpamAssassin integration to display scores ([#233](https://github.com/axllent/mailpit/issues/233)) ### Fix - Display multiple whitespace characters in message subject & recipient names ([#238](https://github.com/axllent/mailpit/issues/238)) - Sendmail support for `-f 'Name '` format ## [v1.12.1] ### Chore - Significantly increase database performance using WAL (Write-Ahead-Log) - Standardize error logging & formatting ### Feature - Add option to only allow SMTP recipients matching a regular expression (disable open-relay behaviour [#219](https://github.com/axllent/mailpit/issues/219)) ### Fix - Log total deleted messages when auto-pruning messages (--max) - Prevent rare error from websocket connection (unexpected non-whitespace character) - Log total deleted messages when deleting all messages from search ### Libs - Update node modules ### Tests - Run tests on Linux, Windows & Mac ### UI - Automatically refresh connected browsers if Mailpit is upgraded (version change) ## [v1.12.0] ### Chore - Include runtime statistics in API (info) & UI (About) - Use memory pointer for internal message parsing & storage - Update caniemail test data - Convert to many-to-many message tag relationships - Standardize error logging & formatting ### Libs - Update node modules - Update Go modules ### UI - Refresh search results when search resubmitted or active tag filter clicked ## [v1.11.1] ### Fix - Fix regression to support for search query params to all `/latest` endpoints ([#206](https://github.com/axllent/mailpit/issues/206)) ### Libs - Update node modules - Update Go modules ### Testing - Add new `ingest` subcommand to import an email file or maildir folder over SMTP ### UI - Allow multiple tags to be searched using Ctrl-click ([#216](https://github.com/axllent/mailpit/issues/216)) ## [v1.11.0] ### API - Allow ID "latest" for message summary, headers, raw version & HTML/link checks ### Feature - Add configuration option to set maximum SMTP recipients ([#205](https://github.com/axllent/mailpit/issues/205)) ### Libs - Update node modules - Update Go modules ## [v1.10.4] ### Fix - Remove JS debug information for favicon ## [v1.10.3] ### Chore - Update caniemail library & add `hr` element test ### Feature - Add @ as valid character for webroot ([#215](https://github.com/axllent/mailpit/issues/215)) ### Fix - New favicon notification badge to fix rendering issues ([#210](https://github.com/axllent/mailpit/issues/210)) ### Libs - Update node modules - Update Go modules ## [v1.10.2] ### Chore - Add favicon fallback font (sans-serif) for unread count - Clearer log messages for bound SMTP & HTTP addresses ### Feature - Allow port binding using hostname ### Libs - Update node modules - Update Go modules ### UI - Enable tag colors by default ## [v1.10.1] ### Chore - Use NextReader() instead of ReadMessage() for websocket reading ([#207](https://github.com/axllent/mailpit/issues/207)) ### Fix - Prevent JavaScript error if message is missing `From` header ([#209](https://github.com/axllent/mailpit/issues/209)) ### Libs - Update node modules - Update Go modules ### Swagger - Revert BinaryResponse type to string ## [v1.10.0] ### Feature - Support search query params to /latest endpoints ([#206](https://github.com/axllent/mailpit/issues/206)) - Option to allow untrusted HTTPS certificates for screenshots & link checking ([#204](https://github.com/axllent/mailpit/issues/204)) - Add URL redirect (`/view/latest`) to view latest message in web UI ([#166](https://github.com/axllent/mailpit/issues/166)) ### Fix - Correctly close websockets on client disconnect ([#207](https://github.com/axllent/mailpit/issues/207)) ### Libs - Update node modules - Update Go modules ## [v1.9.10] ### Docs - Update documentation links ### Fix - Correctly display "About" modal when update check fails (resolves [#199](https://github.com/axllent/mailpit/issues/199)) ### Libs - Update node modules - Update Go modules - Update caniemail test data ### UI - Fix column width in search view ## [v1.9.9] ### Chore - Move html2text module to internal/html2text ### Feature - Set optional webhook for received messages ([#195](https://github.com/axllent/mailpit/issues/195)) - Reset message date on release ([#194](https://github.com/axllent/mailpit/issues/194)) ### Libs - update node modules - Update Go modules ## [v1.9.8] ### Chore - Replace satori/go.uuid with github.com/google/uuid ([#190](https://github.com/axllent/mailpit/issues/190)) - Replace html2text modules with simplified internal function ### Libs - Update node modules - Update Go modules ### Swagger - Update swagger documentation ### Tests - Add test to validate swagger.json - Add html2text tests ## [v1.9.7] ### Fix - Enable delete button when new messages arrive ### Libs - Update node modules - Downgrade microcosm-cc/bluemonday, revert to Go 1.20 - Update Go modules & minimum Go version (1.21) ## [v1.9.6] ### Libs - Update node modules - Update Go modules ### UI - Display message previews on separate line ([#175](https://github.com/axllent/mailpit/issues/175)) ## [v1.9.5] ### Feature - Add `reindex` subcommand to reindex all messages - Display email previews ([#175](https://github.com/axllent/mailpit/issues/175)) ### Fix - HTML message preview background color when switching themes in Chrome - Correctly detect tags in search (UI) ### Tests - Add message summary tests - Add snippet tests ## [v1.9.4] ### Chore - Remove some flags deprecated 08/2022 ### Feature - Set auth credentials directly from environment variables ### Libs - Update node modules - Update Go modules ### UI - Add option to delete a message after release ## [v1.9.3] ### Chore - Update internal/storage import paths - Move storage package to internal/storage - Update internal import paths - Move utils/* packages to internal/* ### Testing - Add endpoints for integration tests ### Tests - Add more API tests - Add tests for ArgsParser & CleanTag ### UI - Do not show excluded search tags as "current" in nav - Display "Loading messages" instead of "No results" while loading results - Only queue broadcast events if clients are connected ## [v1.9.2] ### Fix - Delete all messages matching search when more than 1000 results ### Libs - Update node modules ### Tests - Add message tag tests - Add search delete tests ### UI - Reset pagination when returning to inbox from search ## [v1.9.1] ### Chore - Update caniemail data ### Libs - Update Go modules ### UI - Set 404 page when loading a non-existent message - Link email addresses in message summary to search - Better support for mobile screen sizes ## [v1.9.0] ### API - Remove redundant `Read` status from message (always true) - Delete by search filter - Add endpoint to return all tags in use ### Feature - Improved search parser - New search filter `[!]is:tagged` ### Fix - Correctly escape certain characters in search (eg: `'`) ### Libs - Update minimum Go version to 1.20 - Update Go modules - Update node modules ### Tests - Bump Go version to 1.21 ### UI - Rewrite web UI, add URL routing and components ## [v1.8.4] ### Fix - Correctly decode proxy links containing HTML entities (screenshots) ## [v1.8.3] ### Feature - HTML screenshots ### Libs - Update node modules ### UI - Group message tabs on mobile ## [v1.8.2] ### Build - Update wangyoucao577/go-release-action[@v1](https://github.com/v1).39 ### Feature - Link check to test message links - Workaround for non-RFC-compliant message headers containing ### Libs - Update Go libs ### UI - Set hostname in page meta title to identify Mailpit instance ## [v1.8.1] ### Docs - Add pagination to swagger search documentation ### Fix - Check/set message Reply-To using SMTP FROM - Exclude "sendmail" from recipients list when using `mailpit sendmail ` - Exclude