Changelog¶
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, this project adheres to Semantic Versioning, commits follow Conventional Commits, and this changelog is generated by Structured Changelog.
Unreleased¶
v0.1.0 - 2026-10-07¶
Highlights¶
- Vendor-free core for transactional email: message model,
Senderinterface, MIME assembly, templates and classified errors with no dependencies outside the standard library - Built-in SMTP, log and memory senders, plus the
providertestconformance suite for provider adapters
Added¶
AddresswithParseAddress/ParseAddressListvalidation onnet/mail, accepting internationalized addressesMessagewith To/Cc/Bcc, Reply-To, subject, text and HTML bodies, custom headers, tags and idempotency key;Validaterejects missing recipients or bodies, reserved headers and line breaks or control characters in header valuesSenderinterface,SendResultandSenderFuncErrorwithKind(invalid message, invalid address, rejected, throttled, transient, auth, unknown), sentinel errors forerrors.Is,Temporary,Retryable,KindOf,IsRetryableandRetryAfterBuildMIMEassembling RFC 5322 single-part or multipart/alternative messages with 7bit, quoted-printable or base64 bodies, RFC 2047 headers, header folding, Date and Message-IDTemplaterendering subject, text and HTML from strings or anfs.FSwith HTML autoescaping,missingkey=errorand single-line subjectssmtpsender with required STARTTLS or implicit TLS, AUTH PLAIN/LOGIN, timeouts, context cancellation, SMTPUTF8 checks and reply-code classificationsmtp/smtptestin-process SMTP server with TLS, AUTH, failure injection and stallslogsenderwriting messages toslogwith bodies redacted by defaultmemsendercapturing messages for tests with injectable failuresprovidertestconformance suite (RunAll,Harness) andDecodeMIMEfor adapters
Documentation¶
- README and MkDocs site: guides for getting started, templates, SMTP, writing a provider adapter and the conformance suite, and v0.1.0 release notes