fix(deps): update module github.com/wneessen/go-mail to v0.2.8 #1258

Merged
konrad merged 1 commits from renovate/github.com-wneessen-go-mail-0.x into main 2022-10-01 17:31:13 +00:00
Member

This PR contains the following updates:

Package Type Update Change
github.com/wneessen/go-mail require patch v0.2.6 -> v0.2.8

Release Notes

wneessen/go-mail

v0.2.8

Compare Source

This release adds a middleware concept to the Msg context to allow 3rd parties to extend mail messages with their own code. Thanks to Dhia Gharsallaoui for the PR!

It was also pointed out on Discord that it would be useful to have a DialAndSendWithContext() method, which is also part of this release.

Noteworthy changes

  • 3a5f639 implements the middleware concept
  • 664aca5 implements the DialAndSendWithContext() method

v0.2.7

Compare Source

This release adds support for requesting MDNs (RFC 8098) and DSNs (RFC 1891) to be delivered for outgoing mail messages. We've also added more test coverage.

MDNs

MDNs (Message Disposition Notification) allows you to request a - what is often referred to as - "read receipt". This is implemented via a message header and it's up the the recipients MUA to send out this notification to the sender.

Code example:

func main() {
	// [...]
	m := mail.NewMsg()
	if err := m.FromFormat("Max Tester", "max@example.net"); err != nil {
		panic(err)
	}
	if err := m.To("toni@example.net"); err != nil {
		panic(err)
	}
	m.Subject("This is an example")
	if err := m.RequestMDNTo("max@example.net"); err != nil {
		fmt.Printf("failed to set MDN request header: %s", err)
	}
	// [...]
}

For MDNs we implement the same methods as for the To methods:

  • RequestMDNTo
  • RequestMDNToFormat
  • RequestMDNAddTo
  • RequestMDNAddToFormat

DSNs

DSNs (Delivery Status Notification) are an extension to the SMTP protocol and need to be supported by the sending server. The RFC for DSNs defines different parameters of which we've implemented the once which we think make most sense for go-mail:

  • The RET extension for the MAIL FROM command, to let the user specify if a DSN should contain the full mail (FULL) or only headers (HDRS) of the sent mail.
  • The NOTIFY extension that allows the user to request a DSN for the different types of allowed situations: NEVER, SUCCESS, FAILURE and DELAY

ENVID and ORCPT are currently not supported but might follow in a later relaese (please open an issue if you see usefulness in this).

Since DSNs are part of the SMTP protocol, these need to be enabled on the Client. We've added 3 ways to do so:

  • WithDSN: Which enables DSNs, sets the FULL Mail From Return Option and the SUCCESS and FAILURE Recipient Notify Options
  • WithDSNMailReturnType: which enables DSNs and allows the user to specify which type of Mail From Return Option is wanted
  • WithDSNRcptNotifyType: which enables DSNs and allows the user to specify which types of Recipient Notify Options are wanted

Code example:

func main() {
	// [...]
	cl, err := mail.NewClient("relay.example.net",
		mail.WithDSNMailReturnType(mail.DSNMailReturnFull),
		mail.WithDSNRcptNotifyType(mail.DSNRcptNotifyFailure, mail.DSNRcptNotifyDelay, mail.DSNRcptNotifySuccess))
	if err != nil {
		fmt.Printf("failed to create new client: %s\n", err)
		os.Exit(1)
	}
	// [...]
}

Noteworthy changes

  • 5bd3cec implements the MDN support
  • f4cdc61 implements the DSN support
  • da266bc adds better test coverage

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github.com/wneessen/go-mail](https://github.com/wneessen/go-mail) | require | patch | `v0.2.6` -> `v0.2.8` | --- ### Release Notes <details> <summary>wneessen/go-mail</summary> ### [`v0.2.8`](https://github.com/wneessen/go-mail/releases/tag/v0.2.8) [Compare Source](https://github.com/wneessen/go-mail/compare/v0.2.7...v0.2.8) This release adds a middleware concept to the `Msg` context to allow 3rd parties to extend mail messages with their own code. Thanks to [Dhia Gharsallaoui](https://github.com/dhia-gharsallaoui) for the PR! It was also pointed out on Discord that it would be useful to have a `DialAndSendWithContext()` method, which is also part of this release. #### Noteworthy changes - [`3a5f639`](https://github.com/wneessen/go-mail/commit/3a5f6393f3e4052b9163bb7f2d756d1a62dbdeff) implements the middleware concept - [`664aca5`](https://github.com/wneessen/go-mail/commit/664aca5e90d2dbdbdaafe59fa45508fca895fe13) implements the `DialAndSendWithContext()` method ### [`v0.2.7`](https://github.com/wneessen/go-mail/releases/tag/v0.2.7) [Compare Source](https://github.com/wneessen/go-mail/compare/v0.2.6...v0.2.7) This release adds support for requesting MDNs ([RFC 8098](https://www.rfc-editor.org/rfc/rfc8098)) and DSNs ([RFC 1891](https://www.rfc-editor.org/rfc/rfc1891)) to be delivered for outgoing mail messages. We've also added more test coverage. #### MDNs MDNs (Message Disposition Notification) allows you to request a - what is often referred to as - "read receipt". This is implemented via a message header and it's up the the recipients MUA to send out this notification to the sender. **Code example:** ```go func main() { // [...] m := mail.NewMsg() if err := m.FromFormat("Max Tester", "max@example.net"); err != nil { panic(err) } if err := m.To("toni@example.net"); err != nil { panic(err) } m.Subject("This is an example") if err := m.RequestMDNTo("max@example.net"); err != nil { fmt.Printf("failed to set MDN request header: %s", err) } // [...] } ``` For MDNs we implement the same methods as for the `To` methods: - `RequestMDNTo` - `RequestMDNToFormat` - `RequestMDNAddTo` - `RequestMDNAddToFormat` #### DSNs DSNs (Delivery Status Notification) are an extension to the SMTP protocol and need to be supported by the sending server. The RFC for DSNs defines different parameters of which we've implemented the once which we think make most sense for go-mail: - The `RET` extension for the `MAIL FROM` command, to let the user specify if a DSN should contain the full mail (`FULL`) or only headers (`HDRS`) of the sent mail. - The `NOTIFY` extension that allows the user to request a DSN for the different types of allowed situations: `NEVER`, `SUCCESS`, `FAILURE` and `DELAY` `ENVID` and `ORCPT` are currently not supported but might follow in a later relaese (please open an issue if you see usefulness in this). Since DSNs are part of the SMTP protocol, these need to be enabled on the `Client`. We've added 3 ways to do so: - `WithDSN`: Which enables DSNs, sets the `FULL` Mail From Return Option and the `SUCCESS` and `FAILURE` Recipient Notify Options - `WithDSNMailReturnType`: which enables DSNs and allows the user to specify which type of Mail From Return Option is wanted - `WithDSNRcptNotifyType`: which enables DSNs and allows the user to specify which types of Recipient Notify Options are wanted **Code example:** ```go func main() { // [...] cl, err := mail.NewClient("relay.example.net", mail.WithDSNMailReturnType(mail.DSNMailReturnFull), mail.WithDSNRcptNotifyType(mail.DSNRcptNotifyFailure, mail.DSNRcptNotifyDelay, mail.DSNRcptNotifySuccess)) if err != nil { fmt.Printf("failed to create new client: %s\n", err) os.Exit(1) } // [...] } ``` #### Noteworthy changes - [`5bd3cec`](https://github.com/wneessen/go-mail/commit/5bd3ceca02ea745591d777ac0dbc6e12b5843f74) implements the MDN support - [`f4cdc61`](https://github.com/wneessen/go-mail/commit/f4cdc61dd04afb35e378877f25ec09eff78a18c6) implements the DSN support - [`da266bc`](https://github.com/wneessen/go-mail/commit/da266bcac43dbecc0b9627e49c4998630e9bf6fd) adds better test coverage </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzMi4xNTMuNCIsInVwZGF0ZWRJblZlciI6IjMyLjE1My40In0=-->
renovate added the
dependencies
label 2022-09-30 18:01:11 +00:00
renovate force-pushed renovate/github.com-wneessen-go-mail-0.x from 1f7bf733d0 to ceb52135bd 2022-10-01 16:01:16 +00:00 Compare
konrad merged commit c84684a425 into main 2022-10-01 17:31:13 +00:00
konrad deleted branch renovate/github.com-wneessen-go-mail-0.x 2022-10-01 17:31:13 +00:00
Sign in to join this conversation.
No reviewers
No Milestone
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: vikunja/vikunja#1258
No description provided.