= Changelog

== 1.25.1
* Fix: Postmark::AccountApiClient would mutate "options" argument 

== 1.25.0
* Add support for https://postmarkapp.com/developer/api/data-removals-api

== 1.24.1
* Fixed support for text/calendar attachments by using content_type instead of mime_type.
* Added missing fields to Bounce

== 1.24.0
* Added configurable warnings when referencing deprecated classes.

== 1.23.0
* Deprecated `InvalidEmailAddressError`. New name is `InvalidEmailRequestError`.

== 1.22.3
* Increased default timeout values

== 1.22.2
* Updated Postmark::InactiveRecipientError.parse_recipients method to handle current error message
* Update post install message to use https URL

== 1.22.1
* Migrated to ActiveCampaign

== 1.22.0

* Disabled automatic retries of failed requests by default. You can enabled it by passing `max_retries` option to the client constructor.

== 1.21.8

* Fixed passing and receiving SubscriptionManagementConfiguration when creating/updating message streams (#94).

== 1.21.7

* Improved parsing recipients with Postmark::InactiveRecipientError.parse_recipients method

== 1.21.6

* Improved error handling for email sending related to invalid email addresses

== 1.21.5

* Added support for archiving/unarchiving message streams

== 1.21.4

* Fixed Postmark::ApiClient#deliver_messages_with_templates (#104)

== 1.21.3

* Remove default SSL version setting and rely on Net::HTTP/OpenSSL default.

== 1.21.2

* Ensure sending via message stream uses the correct message stream

== 1.21.1

* Fixed Postmark::ApiClient#get_message_streams

== 1.21.0

* Added support for message streams and suppressions

== 1.20.0

* Removed deprecated trigger endpoints

== 1.19.2

Allow possibility to change TLS version for HTTP client.

== 1.19.1

Bounce tags endoint removed, since it's no longer supported by API.

== 1.19.0

Webhooks management support is added.

== 1.18.0

Custom headers with any type of character casing is supported now.

== 1.17.0

* Update sent email message properly and not altering it's Message-ID with Postmark unique message id.

== 1.16.0

* Added support for template pushes.

== 1.15.0

* Extended Mail::Message objects with support for Postmark templates.
* Added ApiClient#deliver_message_with_template and ApiClient#deliver_messages_with_templates
* Removed Rake from dependencies.

== 1.14.0

* Added support for verifying DKIM/Return-Path.
* Added support for searching inbound rules.
* Updated README.

== 1.13.0

* Changed default value returned by Mail::Message#metadata to a mutable hash (makes things easier for postmark-rails).
* All message JSON payloads now include an empty metadata object even if metadata is unset.

== 1.12.0

* Added support for attaching metadata to messages.

== 1.11.0

* New, improved, and backwards-compatible gem errors (see README).
* Added support for retrieving message clicks using the Messages API.
* Added support for sending templated message in batches.
* Added support for assigning link tracking mode via `Mail::Message` headers.

== 1.10.0

* Fix a bug when open tracking flag is set to false by default, when open tracking flag is not set by a user.
* Added support for link tracking

== 1.9.1

* Fix a bug when port setting is not respected.
* Made `Postmark::HttpClient#protocol` method public.

== 1.9.0

* Added methods to access domains API endoints.

== 1.8.1

* Technical release. Fixed gemspec.

== 1.8.0

* Added missing `description` attribute to `Postmark::Bounce` #50.
* Restricted `rake` dependency to `< 11.0.0` for Ruby < 1.9 via gemspec.
* Restricted `json` dependency to `< 2.0.0` for Ruby < 2.0 via gemspec.

== 1.7.1

* Explicitly set TLS version used by the client.

== 1.7.0

* Add methods to access stats API endpoints.

== 1.6.0

* Add methods to access new templates API endpoints.

== 1.5.0

* Call API access strings tokens instead of keys. Keep backwards compatibility.

== 1.4.3

* Fix a regression when using the gem with older mail gem versions not implementing Mail::Message#text?.

== 1.4.2

* Fix a regression when using the gem with older mail gem versions introduced in 1.4.1. Affected mail gem versions are 2.5.3 and below.

== 1.4.1

* Fix an exception when sending a Mail::Message containing quoted-printable parts with unicode characters.

== 1.4.0

* Add descriptive User-Agent string.
* Enable secure HTTP connections by default.

== 1.3.1

* Allow track_open header to be String for compatibility with older versions of the mail gem.

== 1.3.0

* Add support for TrackOpens flag of the Delivery API.
* Add support for the Opens API.
* Add support for the Triggers API.

== 1.2.1

* Fixed a bug in Postmark::ApiClient causing #get_bounces to return unexpected value.

== 1.2.0

* Added support for the Postmark Account API.
* Added #bounces and #messages methods to Postmark::ApiClient returning Ruby enumerators.

== 1.1.2

* Fixed HTTP verb used to update server info from POST to PUT to support the breaking change in the API.

== 1.1.1

* Fixed inbound support for the Postmark Messages API.

== 1.1.0

* Added support for inline attachments when using the Mail gem.
* Added support for the Postmark Messages API.

== 1.0.2

* Removed metaprogramming executed at runtime. [#37]
* Fixed invalid check for a blank recipient. [#38]

== 1.0.1

* Fixed an issue causing recipient names to disappear from "To", "Cc" and "Reply-To" headers when using with Mail library.

== 1.0.0

* Introduced new instance-based architecture (see README for more details).
* Removed TMail support.
* Added support for sending emails in batches.
* Added API to send emails without Mail library.
* Introduced lock-free approach for Mail::Postmark delivery method.
* Deprecated the Mail::Message#postmark_attachments method
* Added Postmark::Inbound module.
* Added integration tests.
* Added support for the "server" endpoint of the Postmark API.
* Improved unit test coverage.
* Added more examples to the README file.
* Added official JRuby support.
* Fixed the inconsistent behaviour of Mail::Message#tag method added by the gem.
* Added Mail::Message#delivered property and Mail::Message#delivered? predicate.
* Added Mail::Message#postmark_response method.
* Removed Postmark::AttachmentsFixForMail class (that hack no longer works).
* Added Travis-CI for integration tests.

== 0.9.19

* Added support for native attachments API provided by Ruby Mail library.

== 0.9.18

* Fixed regression introduced by removing ActiveSupport#wrap in case when a Hash instance is passed.
* Fixed broken Ruby 1.8.7 support (uninitialized constant Postmark::HttpClient::Mutex (NameError)).
* Added unit tests for attachments handling.
* Removed unneeded debug output from shared RSpec examples.

== 0.9.17

* Removed date from gemspec.
* Removed unneeded debug output when sending attachments.

== 0.9.16

* Thread-safe HTTP requests.
* Fixed inproper method of ActiveSupport::JSON detection.
* Removed unexpected ActiveSupport dependency from Postmark::SharedMessageExtensions#postmark_attachments= method.
* Used Markdown to format README.
* Updated README.

== 0.9.15

* Save a received MessageID in message headers.

== 0.9.14

* Parse Subject and MessageID from the Bounce API response.

== 0.9.13

* Added error_code to DeliveryError.
* Added retries for Timeout::Error.

== 0.9.12

* Fixed a problem of attachments processing when using deliver! method on Mail object.
* Removed activesupport dependency for Postmark::AttachmentsFixForMail.
* Added specs for AttachmentFixForMail.

== 0.9.11

* Replaced Jeweler by Bundler.
* Updated RSpec to 2.8.
* Fixed specs.
* Refactored the codebase.

== 0.9.10

* Fixed Ruby 1.9 compatibility issue.

== 0.9.9

* Added support for non-array reply_to addresses.

== 0.9.8

* Fixed bug that caused unexpected multiple email deliveries on Ruby 1.9.2/Rails 3.0.7.

== 0.9.7

* All delivery exceptions are now childs of Postmark::DeliveryError. Easier to rescue that way.

== 0.9.6

* Fixed exception when content-type wasn't explicitly specified.
* Removed tmail from the list of dependencies.

== 0.9.5

* Fixed a problem of HTML content detection when using Mail gem.

== 0.9.4

* Fixed bug that caused full name to be dropped from From address.

== 0.9.3

* Removed all "try" calls from the code. It's not always available and not essential anyway.

== 0.9.2

* Fixed "Illegal email address ']'" bug on Ruby 1.9

== 0.9.1

* Fixed TypeError when calling Bounce.all.
* Fixed NoMethodError when trying to read bounce info.

== 0.9.0

* Added support for attachments.

== 0.8.0

* Added support for Rails 3.
