Releases: d--j/go-milter
Releases · d--j/go-milter
v0.10.1
What's Changed
- chore: update dependencies by @d--j in https://github.com/d--j/go-milter/pull/37
- chore: documentation spell-checking
Full Changelog: v0.10.0...v0.10.1
v0.10.0
BREAKING CHANGES:
- One
Milterinstance will now handle one milter connection. It must be able to handle multiple messages. To facilitate this, a new methodNewConnectionwas added to theMilterinterface. - The
Cleanupmethod ofMilterimplementations now get passed in a read-onlyModifier. - The struct
Modifierwas changed to an interfaceModifier. AllMilterimplementations need to usem milter.Modifierinstead ofm *milter.Modifierin their arguments. This improves the testability ofMilterimplementations, since you can easily create mockModifierimplementations that can be passed in to your ownMilterimplementations (that was not possible before). Seemailfilter/backend_test.gofor an example. Modifier.Macros.GetandModifier.Macros.GetExare nowModifier.GetandModifier.GetEx- the default read timeout for
Serverchanged from 10 seconds to 0 seconds. The 10 seconds default was actually not used - we always used 0 (no timeout) before, so this should not really be a breaking change.
Other changes:
Modifiergot new methods:MilterId: Returns a unique, incrementing identifier for this milterVersion: The negotiated milter version (most probably 6)Actions: The negotiated milter actionsProtocol: The negotiated milter protocol optionsMaxDataSize: The negotiated maximum packet size
- added
Server.MilterCountandmailfilter.MailFilter.MilterCount. They return the number of successfully negotiated milter connections that this server accepted so far. - added
integration.TestServerto testmilter.Milterbased mail filters.
Bug fixes:
- The mock MTA (integration tests) now is much more well-behaving
mailfilter.MailFilterhad an error when multiple SMTP messages were processed, all messages after the first one did not get their modifications applied (Sendmail only). Only happened when you usedWithDecisionAtother thanDecisionAtEndOfMessage.WithReadTimeout&WithWriteTimeoutnow actually work forServer. Previously they were silently ignored, and we always used0(no timeout).
Full Changelog: v0.9.3...v0.10.0
v0.9.3
What's Changed
- fix: responses to RCPT TO are not final decisions by @d--j in https://github.com/d--j/go-milter/pull/32
- add
mailfilter.WithRcptToValidator - fixed timing bugs where
server.Shudowncould miss callingCleanup
Full Changelog: v0.9.2...v0.9.3
v0.9.2
What's Changed
- Extended Error Codes fixes & Graceful Shutdown by @d--j in https://github.com/d--j/go-milter/pull/30
- introduce milter.Milter.Shutdown and mailfilter.Mailfilter.Shutdown for graceful server shutdowns
- new options mailfilter.WithHeader and mailfilter.WithBody to configure header/body collection.
- many documentation changes, new tests and bugfixes
Full Changelog: v0.9.1...v0.9.2
v0.9.1
What's Changed
- feat: support RFC 2034 enhanced error codes by @d--j in https://github.com/d--j/go-milter/pull/29
Full Changelog: v0.9.0...v0.9.1
v0.9.0
What's Changed
- Requires Go 1.24
- [Milter.Cleanup] now only gets called one time for a single milter instance.
- Update Dependencies & Cleanup only once by @d--j in https://github.com/d--j/go-milter/pull/28
Full Changelog: v0.8.5...v0.9.0
v0.8.5
What's Changed
- chore(deps): bump the go_modules group across 2 directories with 1 update by @dependabot in https://github.com/d--j/go-milter/pull/25
- chore: update dependencies by @d--j in https://github.com/d--j/go-milter/pull/26
New Contributors
- @dependabot made their first contribution in https://github.com/d--j/go-milter/pull/25
Full Changelog: v0.8.4...v0.8.5
v0.8.4
What's Changed
- Add missing macros. by @iredmail in https://github.com/d--j/go-milter/pull/14
- fix #15: correctly parse esmtp args on MAIL and RCPT by @hxdmp in https://github.com/d--j/go-milter/pull/16
- Fix Index Out of Range Panic in CrLfToLfTransformer by @masa23 in https://github.com/d--j/go-milter/pull/20
- chore: update dependencies by @d--j in https://github.com/d--j/go-milter/pull/21
New Contributors
- @iredmail made their first contribution in https://github.com/d--j/go-milter/pull/14
- @hxdmp made their first contribution in https://github.com/d--j/go-milter/pull/16
Full Changelog: v0.8.3...v0.8.4
v0.8.3
What's Changed
- add String() method to Response for logging purposes by @d--j in https://github.com/d--j/go-milter/pull/12
Full Changelog: v0.8.2...v0.8.3
v0.8.2
What's Changed
- Enforce Header Order for Sendmail by @d--j in https://github.com/d--j/go-milter/pull/7
- Capture Body in memory by @d--j in https://github.com/d--j/go-milter/pull/8
Full Changelog: v0.8.1...v0.8.2