v0.0.11
版本发布时间: 2024-05-01 03:38:14
mjl-/mox最新发布版本:v0.0.11(2024-05-01 03:38:14)
New features
- Improve queue management (40ade995a5e5)
- Add option to put messages in the queue "on hold", preventing delivery attempts until taken off hold again.
- Add "hold rules", to automatically mark some/all submitted messages as "on hold", e.g. from a specific account or to a specific domain.
- Add operation to "fail" a message, causing a DSN to be delivered to the sender. previously we could only drop a message from the queue.
- Update admin page & add new cli tools for these operations, with new filtering rules for selecting the messages to operate on. In the admin interface, add filtering and checkboxes to select a set of messages to operate on.
- Add a webapi and webhooks for a simple HTTP/JSON-based API, helps with
sending transactional email. (for issue #31 by cuu508, 09fcc492234e)
- Webapi allows submitting messages without having to compose the message yourself, and without having to know SMTP.
- Webhooks makes it easy to process delivery failure/success updates, without needing IMAP and process DSNs.
- History about outgoing/sent messages can be kept for a configurable interval, per account. Also for the new webhook queue.
- Messages can be delivered with a "unique SMTP MAIL FROM" address, using a
unique id after the localpart catchall separator, e.g.
you+<unique>@example.org
. - Automatic suppression list management, protecting server reputation.
- Extra metadata can be attached through the webapi, or through
X-Mox-Extra-
: headers during SMTP submission. - Most settings are per-account, configurable through config file and account web interface. The webapi must be enabled in mox.conf through field WebAPIHTTP(s).
- Gopherwatch.org was created to validate this functionality, and it can now operate either with SMTP/IMAP or webapi/webhooks.
- Add aliases/lists: when sending to an alias, the message gets delivered to all members. (for issue #57 by hmfaysal, issue #99 by naturalethic, feedback by damir & marin, 960a51242d51).
- IMAP quota extension (RFC 9208), so mail clients can show disk usage (issue #115 by pmarini, 4dea2de34374)
- Webmail: when moving a single message out of/to the inbox, ask if user wants to create/remove a rule to automatically do that server-side for future deliveries, either based on list-id header if present, or message-from address. (6c0439cf7b9e)
- Webmail: add server-side stored settings, initially for signature, top/bottom reply and showing the security indicator bars below address input fields. (for issue #102 by nixigaj, 70adf353ee07)
- Webmail: for replies/forwards, add button "send and archive thread" next to the "send" button, and give it a control+shift+Enter shortcut. (for issue #135 by mattfbacon, 5229d01601ad)
- Webmail: store composed message as draft until send, ask about unsaved changes when closing compose window. (9529ae0bd4f7)
- Webmail: remember server-side per from-address whether we should show the text/html/html-with-external-resources version of a message. (0f735a17100b)
Improvements
- Add account config option to skip first-time sender delay for incoming messages over SMTP. (8b2c97808d88)
- In quickstart, check if outgoing SMTP connection on port 25 can be made. New cloud machines tend to have the port blocked, early warning is helpful. (reported by arnt, 0262f4621e13)
- In quickstart, use "postmaster@" for the contact address with the ACME account for Let's Encrypt if the initial address has a non-ASCII localpart, to prevent account registration from failing. (reported by arnt, f4b6e14cb9f7)
- Add a "direct" transport, that allows influencing behaviour of the normal delivery mechanism of dialing MX records: The IP address family can be limited to IPv4 or IPv6 (either may not have proper reverse DNS set up). (for issue #149, PR #153 by lmeunier, be570d1c7d3d)
- Also give delivery another try with 5xx response when it happens during MAIL FROM/RCPT TO, not only EHLO as before. (related to #149, PR #152 by lmeunier, feb8e6c37947)
- Make error messages around syntax errors in config files related to spurious spaces more helpful/understandable. (reported by arnt, 6516a27689cb)
- In SMTP server, reevaluate if SMTPUTF8 extension is needed for delivery, to prevent potential delivery problems to servers that don't implement SMTPUTF8. (issue #145, by lmeunier, 9c5d2341629f)
- When importing maildir, use file mtime as received timestamp if no timestamp is available in filename. (based on message from abdul h, 6d38a1e9a4bb)
- If webauth login cookie is missing, and forwarding was configured, hint that reverse proxy may be stripping path. (for issue #151 by naturalethic, afc47c8108f8)
- Webmail: When adding submitted message to Sent mailbox, keep any Bcc address in Bcc header. (c9451d4d065e)
- Make more of the dynamic config options (in domains.conf) configurable through the web interfaces, instead of requiring editing the config file. (baf4df55a6cd, a69887bfabe3, e702f45d32d3)
- Webmail: Allow resizing of compose window, and remember width/height for viewport dimension. (e8bbaa451b13)
- Webmail: Show all images (inline and attachment) below the text part (for the text view, not for html view). (3a58b2a1f49f)
- Webmail: Add export functionality, similar to existing option in account web interface, but not also possible per mailbox or hierarchy. (bf5cfca6b99f)
- Webmail: ctrl+Backspace on empty address input field removes the field (b54e903f015a)
- Localserve: delivery from queue now goes through the smtp server instead of directly from queue to local accounts. To go through the full regular delivery paths. (1cf747764266)
- Many small improvements.
Bug fixes
- Always properly escape values in Authentication-Results header added to incoming messages. Some generated values could have characters that weren't escaped. (2c9cb5b847a7)
- Fix logging in on account and webmail interface for account names (not email addresses) with non-ASCII characters. (reported by arnt, 666f84edead6)
- Update to latest bstore with a fix for ordering of certain database results. Only a single query in mox would have triggered the issue, with no expected impact. (d34dd8aae6ca)
- For incoming TLS connections (HTTPS, but also SMTP and IMAP) for unrecognized domain names (for which we don't have a TLS certificate), don't respond with an "internal error" TLS alert, but with an "unrecognized name" alert. More helpful to user figuring out what's going on. (reported by arnt, 89a9a8bc9796).
Update instructions
Before upgrading, do a dry-run first.
- Make a temporary backup with the old mox version:
mox-v0.0.10 backup data/tmp/testupgrade
- Verify that all is well with the old version:
mox-v0.0.10 verifydata data/tmp/testupgrade
- Verify the state with the new version:
mox-v0.0.11 verifydata data/tmp/testupgrade
With a successful dry-run, the upgrade should go smoothly. Make a new backup
with mox-v0.0.10 backup data/tmp/backup
(the previous backup was modified by
the dry-run, so couldn't be used to restore!), replace the binary and restart.
For further details, see
https://www.xmox.nl/faq/#hdr-how-do-i-upgrade-my-mox-installation
If you run into any problems, please create a bug report.
Thanks
Thanks for contributions and/or feedback from: pmarini, tabatinga0xffff, lmeunier, alex, arnt, abdul h, cuu508, naturalethic, nixigaj, mattfbacon, jsfan3, hmfaysal, damir & marin from sartura, RobSlgm, daftaupe, vipas84, TragicLifeHu, manaus0xff, jdlawrie, Bloomers7577, kbrgmn (and all those I missed).
Feedback, feature requests, bug reports, contributions (start small!) are all welcome. An easy way to help mox is to use it and spread the word!
Development on mox is funded through the NLnet NGI0 Entrust Fund, https://nlnet.nl/entrust/, with financial support from the European Commission's Next Generation Internet programme.