Skip to content

Latest commit

 

History

History
112 lines (87 loc) · 4.78 KB

CHANGELOG.md

File metadata and controls

112 lines (87 loc) · 4.78 KB

Changelog

v0.7.0 - 2017-03-14

Added

Changed

v0.6.0 - 2017-02-13

Added

  • The Sendgrid adapter now supports server-side templates and substitutions.

Changed

  • Cowboy dependency was relaxed to ~> 1.0 (from ~> 1.0.0).
  • Load Sendmail and SMTP.Helpers if :mimemail is loaded.

Fixed

  • Fix compiler warnings for Elixir 1.4.

v0.5.0 - 2016-10-19

Added

Changed

  • The Sendgrid adapter now uses the Sendgrid v3 API.
  • gen_stmp is now an optional dependency.
  • Drop HTTPoison in favor of hackney.
  • Enlarge the message area in the preview Plug.
  • Bump poison to 3.0.
  • Bump plug to 1.2.

Fixed

  • The SMTP and Sendmail adapters now correctly set the Bcc header.
  • The Postmark adapter now respects the From name.
  • Replace :crypt.rand_bytes/1 by :crypto.strong_rand_bytes/1 since it was deprecated with OTP 19.

v0.4.0 - 2016-06-25

This version contains a couple of breaking changes, mostly due to the introduction of a deliver!/2 (see below):

  • API-based adapter will now return a slightly different error payload: {:error, {status_code, payload}} instead of {:error, body}
  • deliver/2 will no longer raise if the email validation failed.
  • We now only validate that the From address is present, according to the RFC 5322. This is the lowest common deminotar across all our adapters. This means we will NO longer check that a recipient is present (to, cc, bcc), that the subject is set, or that either of html_body or text_body is set.

Added

  • Add Sendmail adapter.
  • Add a new deliver!/2 function that will raise in case of an API or SMTP error, or if the email validation failed. In that case a Swoosh.DeliveryError will be raised.
  • Add Logger adapter. This can be useful when you don't want to send real emails but still want to know that the email has been sent sucessfully.
  • Add DKIM support for the SMTP and Sendmail adapter.
  • Add basic integration testing. We are now making real calls to the various providers' API during testing (except Mandrill).

Changed

  • Raise on missing adapter config.
  • Refactor Swoosh.Adapters.Local to support configurable storage drivers. For now, only memory storage has been implemented.
  • Generate case-insentitive Message-IDs in Swoosh.Adapters.Local.Storage.Memory. This was previously breaking endpoint with lowercase path rewrite.
  • Move email validation logic to base mailer. We also change the validation to follow the RFC and we now only check that a From email address is set.
  • Bump gen_smtp to 0.11.0.

Fixed

  • Show the actual port Plug.Swoosh.MailboxPreview is binding on.
  • Add poison to the list of applications in the mix.exs file.
  • Handle 401 response for Mailgun properly. It's a text response so we don't try to JSON decode it anymore.

Removed

  • Swoosh.InMemoryMailbox has been removed in favor of Swoosh.Adapters.Local.Storage.Memory. If you were using that module directly you will need to update any reference to it.

v0.3.0 - 2016-04-20

Added

  • Add Swoosh.Email.new/1 function to create Swoosh.Email{} struct.
  • Swoosh.TestAssertions.assert_email_sent/1 now supports asserting on specific email params.

Changed

  • Remove the need for / when setting the Mailgun adapter domain config.
  • Plug.Swoosh.MailboxPreview now formats email fields in a more friendlier way.

Fixed

  • Use the sender's name in the From header with the Mailgun adapter.
  • Send custom headers set in %Swoosh.Email{}.headers when using the SMTP adapter.
  • Use the "Sender" header before the "From" header as the "MAIL FROM" when using the SMTP adapter.

[v0.2.0] - 2016-03-31

Added

  • Add support for runtime configuration using {:system, "ENV_VAR"} tuples
  • Add support for passing config as an argument to deliver/2

Changed

  • Adapters have consistent successful return value ({:ok, term})
  • Only compile Plug.Swoosh.MailboxPreview if Plug is loaded
  • Relax Poison version requirement (~> 1.5 or ~> 2.0)

Removed

  • Remove cowboy and plug from the list of applications as they are optional dependencies

[v0.1.0]

  • Initial version