You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Please, consider abandoning your current SMTP library for this streaming performance-orientated SMTP server/client. Lets try to reduce the duplicated work needed for important projects like personal email servers. I'll try to add your library to my benchmarks when I get a chance to show the gains you could have.
Instead of manually trying to buffer an entire email message into RAM and then process it consider using https://github.com/emersion/go-smtp who has built (from what I can see) the world's best OS Go email parsing libraries (MIME, DKIM, SMTP, etc...) already including full streaming support for MIME envelope creation and parsing and textproto for decoding/encoding.
I personally tried to beat his package forking Mark Hale's https://github.com/Xeoncross/smtpd (which he forked from Brad Fitzpatrick's go-smtpd) to support streaming support via a custom https://github.com/Xeoncross/mimestream implementation and still failed to reach proper performance.
Please, consider abandoning your current SMTP library for this streaming performance-orientated SMTP server/client. Lets try to reduce the duplicated work needed for important projects like personal email servers. I'll try to add your library to my benchmarks when I get a chance to show the gains you could have.
Also, note that you might be able to borrow ideas from https://github.com/emersion/maddy and https://github.com/foxcpp/go-imap-sql
The text was updated successfully, but these errors were encountered: