Mail Gem version 1.3.0

So, mail Gem version 1.3.0 has been released.

The upgrades have been mainly in getting ActionMailer to work with Mail
instead of TMail.

This really put Mail through it’s paces and I found a lot of little edge
case bugs to fix.

The good news is that ActionMailer now runs with Mail with all tests
on MRI 1.8.6, 1.8.7 and 1.9.1

Mail of course, still passes all specs in MRI 1.8.6, 1.8.7 and 1.9.1

Basically, if you are using Mail 1.x, upgrade to the latest version, you
should not get any breakage in your code. Please let me know if you do.

Also, anyone using TMail could upgrade to Mail 1.3.0 now without loss of

The change log is below:

== Mon Nov 23 23:34:22 UTC 2009 Mikel L. [email protected]

  • Resolved Issue #12 - Wrong comment in smtp.rb

== Mon Nov 23 22:35:50 UTC 2009 Mikel L. [email protected]

  • Changed the way attachments are added so that it does not break
    on the order
    of the Hash passed in.
  • Version bump to 1.3.0 - Now works with Edge ActionMailer, MRI 1.8.6,
    1.8.7, 1.9.1, all tests passing

== Sun Nov 22 12:19:44 UTC 2009 Mikel L. [email protected]

  • Added check on add_part to make sure if there is already a body, and
    so, make a text_part of the body
  • Fixing up attachment adding and making sure multipart emails always
  • Change Message#attachments to now recursively return all attachments
    the email in an ordered flattened array
  • Added ability for Mail::Message to accept {:headers =>
    {‘custom-header’ =>
    ‘value’, ‘another-custom-header’ => ‘value’}} as a param on init
  • Adding ability to Mail::Message to add a part via :part(params) with
    optional block
  • Fixed up QP encoding forcing underscores into everything with a space
  • Added ReturnPathField#address
  • Updating gem loads and active support loads

== Sat Nov 21 12:52:46 UTC 2009 Mikel L. [email protected]

  • Changed Mail::Encodings to clean it up, added in
    unquote_and_convert_to as
    well as refactor in this area

== Thu Nov 19 04:16:10 UTC 2009 Mikel L. [email protected]

  • Added sendmail support from (Simon R.)
  • Changed to bundler for gem dependancies and moved gem generation into
    rakefile (Simon R.)
  • Bumped to 1.2.6 for sendmail support

== Wed Nov 18 04:26:21 UTC 2009 Mikel L. [email protected]

  • Changed Encodings.param_encode(string) so it intelligently encodes and
    quotes needed
    items and leaves plain, no special char, US-ASCII alone unquoted.

== Sat Nov 14 08:20:21 UTC 2009 Mikel L. [email protected]

  • Resolved Issue #10 - empty/nil cc/bcc field causes exception

== Fri Nov 13 00:31:04 UTC 2009 Mikel L. [email protected]

  • Hacked and mutilated the network section, made it easier to extend out
    with other
    delivery and retriever methods. API changed SLIGHTLY with this.
    check the
  • Resolved Issue #8 - Mail::SMTP now delivers to all mail.destinations
  • Version bump to 1.2.5

== Thu Nov 12 02:58:01 UTC 2009 Mikel L. [email protected]

  • Resolved Issue #5 - Message ID not handling multiple periods in left
  • Resolved Issue #6 - Ordering of add_file and body items causes invalid

== Tue Nov 10 08:15:14 UTC 2009 Mikel L. [email protected]

  • Resolved Issue #5 - Message ID generation issue
  • Resolved Issue #7 - README add_file examples don’t seem to work -
    readme and
    rdoc in Message#add_file

== Mon Nov 9 23:38:33 UTC 2009 Mikel L. [email protected]

  • Added ability to create new email via a hash or hash-like object.
  • Moved all of the Part init into the Message class. Part now just uses
    Message’s init,
    also moved all the attachment related functions into Message. As Part
    a subclass
    of message, you shouldn’t see any interface changes here.

== Fri Nov 6 22:52:10 UTC 2009 Mikel L. [email protected]

  • a6ef2b4: Fixed Issue #4 - Can’t call encoding on non existant
    content-transer-encoding header

== Fri Nov 6 00:51:55 UTC 2009 Mikel L. [email protected]

  • Handled unstructured field folding “blank” lines
  • Fixed error in header.rb that created fields into an array, instead of
    FieldList, resulting
    in mail.encode returning a random sort order on the header.
  • Made unstructured fields attempt to decode their values on :decode

== Thu Nov 5 04:45:31 UTC 2009 Mikel L. [email protected]

  • 2acb70a: Closes Issue #1 - Handling badly formatted content-type

== Wed Nov 4 23:24:32 UTC 2009 Mikel L. [email protected]

  • 2b5d608: Closes Issue #2 - Empty header field values not parsing
  • Version bumb to 1.2.1

== Wed Nov 4 12:54:43 UTC 2009 Mikel L. [email protected]

  • Renamed Mail::Message.encode! to Mail::Message.ready_to_send!,
  • Rewrote encoding and decoding methods on all classes. Adds a lot of
    boiler plate code, but allows us to
    be really precise in each field type that needs custom encoding. Now
    encoding is done by the field_type
    itself. Need to follow through on the body.
  • Bump version to 1.2.0 due to changes of :encoded, :decoded behaviour

== Tue Nov 3 00:59:45 UTC 2009 Mikel L. [email protected]

  • Tested mail against entire Enron set (2.3gb) and the Trec 2005 set
    (0.5gb), ~ half a million emails without crashing
  • Some headers only can appear once, enforce during header parse
  • Convert empty bodies into empty arrays instead of nil.
  • Handle blank content dispositions.
  • Mention Trec 2005 Spam Corpus in readme
  • Add ‘rake corpus:verify_all’ to allow parse checks in bulk.
  • Added handling of multi value parameters, like
    filename1=“us-ascii’en’blah” filename*2=“bleh”
  • Added dependency on ActiveSupport 2.3 or higher

== Sun Nov 1 12:00:00 UTC 2009 Mikel L. [email protected]

  • handle OpenSSL::SSL::VERIFY_NONE returning 0
  • doing { content_type [text, plain, { charset => UTF-8 }] } is
    possible (content type accepts an array)

== Sat Oct 31 11:00:41 UTC 2009 Mikel L. [email protected]

  • Fixed attachment handling, so mail can find attachment from a
    content-disposition or content-location
  • Added content-location field and parser
  • Added message.has_attachments? for ActionMailer friendliness
  • Added attachment.original_filename for ActionMailer friendliness