PackageTrack
Sign in Get early access

zendframework/zend-mail

Abandoned; use laminas/laminas-mail. Provides generalized functionality to compose and send both text and MIME-compliant multipart e-mail messages

2.10.0 14M downloads/mo #4490 most downloaded on Packagist zendframework/zend-mail

What this package is like to depend on

Last release 8 years ago

no release in 18 months

Ships fairly regularly

a new release about every 3 months

Rarely documented

notes for 14 of 71 stable releases

Nothing withdrawn

no release was ever pulled

14 years old

71 releases · first in 2012

0 releases in the last 12 months

see the full history below

Release timeline

59 releases · Oct 2012 to Jun 2018
2013 2015 2017 2019 2021 2023 2025
Release Pre-release

Releases

latest 60 of 71
  1. 2.10.0 07 Jun 2018
    Release notes

    Added

    • #213 re-adds support for PHP 5.6 and 7.0; ZF policy is never
      to bump the major version of a PHP requirement unless the package is bumping major version.

    • #172 adds the flag connection_time_limit to the possible Zend\Mail\Transport\Smtp options.
      This flag, when provided as a positive integer, and in conjunction with the use_complete_quit flag, will
      reconnect to the server after the specified interval.

    • #166 adds functionality for handling References and In-Reply-To headers.

    • #148 adds the optional constructor argument $comment and the method getComment() to the class
      Zend\Mail\Address. When a comment is present, toString() will include it in the representation.

    • #148 adds the method Zend\Mail\Address::fromString(string $address, $comment = null) : Address.
      The method can be used to generate an instance from a string containing a (name)?<email> value.
      The $comment argument can be used to associate a comment with the address.

    Changed

    • #196 updates how the Headers::fromString() handles header line continuations
      that include a single empty line, ensuring they are concatenated to the
      header value.

    • #165 changes the AbstractAddressList IDN<->ASCII conversion; it now no longer requires
      ext-intl, but instead uses a bundled true/punycode library to accomplish it. This also means that
      the conversions will work on any PHP installation.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #211 fixes how the ContentType header class parses the value it receives. Previously,
      it was incorrectly splitting the value on semi-colons that were inside quotes; in now correctly
      ignores them.

    • #204 fixes HeaderWrap::mimeDecodeValue() behavior when handling a multiline UTF-8
      header split across a character. The fix will only work when ext-imap is present, however.

    • #164 fixes the return value from Zend\Mail\Protocol\Imap::capability() when no response is
      returned from the server; previously, it returned false, but now correctly returns an empty array.

    • #148 fixes how Zend\Mail\Header\AbstractAddressList parses address values, ensuring
      that they now retain any address comment discovered to include in the generated Zend\Mail\Address instances.

    • #147 fixes how address lists are parsed, expanding the functionality to allow either
      , or ; delimiters (or both in combination).

    Open source →
    Release notes

    Added

    • #213 re-adds support for PHP 5.6 and 7.0; ZF policy is never to bump the major version of a PHP requirement unless the package is bumping major version.

    • #172 adds the flag connection_time_limit to the possible Zend\Mail\Transport\Smtp options. This flag, when provided as a positive integer, and in conjunction with the use_complete_quit flag, will reconnect to the server after the specified interval.

    • #166 adds functionality for handling References and In-Reply-To headers.

    • #148 adds the optional constructor argument $comment and the method getComment() to the class Zend\Mail\Address. When a comment is present, toString() will include it in the representation.

    • #148 adds the method Zend\Mail\Address::fromString(string $address, $comment = null) : Address. The method can be used to generate an instance from a string containing a (name)?<email> value. The $comment argument can be used to associate a comment with the address.

    Changed

    • #196 updates how the Headers::fromString() handles header line continuations that include a single empty line, ensuring they are concatenated to the header value.

    • #165 changes the AbstractAddressList IDN<->ASCII conversion; it now no longer requires ext-intl, but instead uses a bundled true/punycode library to accomplish it. This also means that the conversions will work on any PHP installation.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #211 fixes how the ContentType header class parses the value it receives. Previously, it was incorrectly splitting the value on semi-colons that were inside quotes; in now correctly ignores them.

    • #204 fixes HeaderWrap::mimeDecodeValue() behavior when handling a multiline UTF-8 header split across a character. The fix will only work when ext-imap is present, however.

    • #164 fixes the return value from Zend\Mail\Protocol\Imap::capability() when no response is returned from the server; previously, it returned false, but now correctly returns an empty array.

    • #148 fixes how Zend\Mail\Header\AbstractAddressList parses address values, ensuring that they now retain any address comment discovered to include in the generated Zend\Mail\Address instances.

    • #147 fixes how address lists are parsed, expanding the functionality to allow either , or ; delimiters (or both in combination).

    Open source →
  2. 2.9.0 01 Mar 2018
    Release notes

    zend-mail 2.9.0

    Added

    • #177
      #181
      #192
      #189 PHP 7.2 support
    • #73
      #160 Support for
      mails that don't have a To, as long as Cc or Bcc are set.
    • #161 removed
      useless try-catch that just re-throws.
    • #134 simplified
      checks for the existence of some string sub-sequences, which were
      needlessly performed via regular expressions

    Deprecated

    • Nothing.

    Removed

    Fixed

    • #188 split strings
      before calling iconv_mime_decode(), which destroys newlines, rendering
      DKIM parsing useless.
    • #156 fixed a
      regression in which < and > would appear doubled in message
      identifiers.
    • #143 fixed parsing
      of < and > being part of the email address comment.

    Full log

    Total issues resolved: 18

    Open source →
    Release notes

    Added

    • #177 #181 #192 #189 PHP 7.2 support
    • #73 #160 Support for mails that don't have a To, as long as Cc or Bcc are set.
    • #161 removed useless try-catch that just re-throws.
    • #134 simplified checks for the existence of some string sub-sequences, which were needlessly performed via regular expressions

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #188 split strings before calling iconv_mime_decode(), which destroys newlines, rendering DKIM parsing useless.
    • #156 fixed a regression in which < and > would appear doubled in message identifiers.
    • #143 fixed parsing of < and > being part of the email address comment.
    Open source →
  3. 2.8.0 08 Jun 2017
    Release notes

    Added

    • #117 adds support configuring whether or not an SMTP transport should issue a QUIT at __destruct() and/or end of script execution. Use the use_complete_quit configuration flag and/or the setuseCompleteQuit($flag) method to change the setting (default is to enable this behavior, which was the previous behavior).
    • #128 adds a requirement on ext/iconv, as it is used internally.
    • #132 bumps minimum php version to 5.6
    • #144 adds support for TLS versions 1.1 and 1.2 for all protocols supporting TLS operations.

    Changed

    • #140 updates the Sendmail transport such that From and Sender addresses are passed to escapeshellarg() when forming the -f argument for the sendmail binary. While malformed addresses should never reach this class, this extra hardening helps ensure safety in cases where a developer codes their own AddressInterface implementations for these types of addresses.
    • #141 updates Zend\Mail\Message::getHeaders() to throw an exception in a case where the $headers property is not a Headers instance.
    • #150 updates the Smtp protocol to allow an empty or none value for the SSL configuration value.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #151 fixes a condition in the Sendmail transport whereby CLI parameters were not properly trimmed.
    Open source →
    Release notes

    Added

    • #117 adds support configuring whether or not an SMTP transport should issue a QUIT at __destruct() and/or end of script execution. Use the use_complete_quit configuration flag and/or the setuseCompleteQuit($flag) method to change the setting (default is to enable this behavior, which was the previous behavior).
    • #128 adds a requirement on ext/iconv, as it is used internally.
    • #132 bumps minimum php version to 5.6
    • #144 adds support for TLS versions 1.1 and 1.2 for all protocols supporting TLS operations.

    Changed

    • #140 updates the Sendmail transport such that From and Sender addresses are passed to escapeshellarg() when forming the -f argument for the sendmail binary. While malformed addresses should never reach this class, this extra hardening helps ensure safety in cases where a developer codes their own AddressInterface implementations for these types of addresses.
    • #141 updates Zend\Mail\Message::getHeaders() to throw an exception in a case where the $headers property is not a Headers instance.
    • #150 updates the Smtp protocol to allow an empty or none value for the SSL configuration value.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #151 fixes a condition in the Sendmail transport whereby CLI parameters were not properly trimmed.
    Open source →
  4. 2.7.3 14 Feb 2017
    Release notes

    Added

    • Nothing.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #93 fixes a situation whereby getSender() was unintentionally creating a blank Sender header, instead of returning null if none exists, fixing an issue in the SMTP transport.
    • #105 fixes the header implementation to allow zero (0) values for header values.
    • #116 fixes how the AbstractProtocol handles stream_socket_client() errors, ensuring an exception is thrown with detailed information regarding the failure.
    Open source →
    Release notes

    Added

    • Nothing.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #93 fixes a situation whereby getSender() was unintentionally creating a blank Sender header, instead of returning null if none exists, fixing an issue in the SMTP transport.
    • #105 fixes the header implementation to allow zero (0) values for header values.
    • #116 fixes how the AbstractProtocol handles stream_socket_client() errors, ensuring an exception is thrown with detailed information regarding the failure.
    Open source →
  5. 2.7.2 19 Dec 2016
    Release notes

    Added

    • Nothing.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    Open source →
    Release notes

    Added

    • Nothing.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    Open source →
  6. 2.7.1 09 May 2016
    Release notes

    Added

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #9 fixes the Zend\Mail\Header\Sender::fromString() implementation to more closely follow the ABNF defined in RFC-5322, specifically to allow addresses in the form user@domain (with no TLD).
    • #28 and #87 fix header value validation when headers wrap using the sequence \r\n\t; prior to this release, such sequences incorrectly marked a header value invalid.
    • #37 ensures that empty lines do not result in PHP errors when consuming messages from a Courier IMAP server.
    • #81 fixes the validation in Zend\Mail\Address to also DNS hostnames as well as local addresses.
    Open source →
    Release notes

    Added

    • #38 adds support in the IMAP protocol adapter for fetching items by UID.
    • #88 adds and publishes documentation to https://zendframework.github.io/zend-mail/

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #9 fixes the Zend\Mail\Header\Sender::fromString() implementation to more closely follow the ABNF defined in RFC-5322, specifically to allow addresses in the form user@domain (with no TLD).
    • #28 and #87 fix header value validation when headers wrap using the sequence \r\n\t; prior to this release, such sequences incorrectly marked a header value invalid.
    • #37 ensures that empty lines do not result in PHP errors when consuming messages from a Courier IMAP server.
    • #81 fixes the validation in Zend\Mail\Address to also DNS hostnames as well as local addresses.
    Open source →
  7. 2.7.0 11 Apr 2016
    Release notes

    Added

    • #41 adds support for IMAP delimiters in the IMAP storage adapter.
    • #80 adds:
      • Zend\Mail\Protocol\SmtpPluginManagerFactory, for creating and returning an SmtpPluginManagerFactory instance.
      • Zend\Mail\ConfigProvider, which maps the SmtpPluginManager to the above factory.
      • Zend\Mail\Module, which does the same, for zend-mvc contexts.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • Nothing.
    Open source →
  8. 2.6.2 11 Apr 2016
    Release notes

    Added

    • Nothing.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #44 fixes an issue with decoding of addresses where the full name contains a comma (e.g., "Lastname, Firstname").
    • #45 ensures that the message parser allows deserializing message bodies containing multiple EOL sequences.
    • #78 fixes the logic of HeaderWrap::canBeEncoded() to ensure it returns correctly for header lines containing at least one multibyte character, and particularly when that character falls at specific locations (per a reported bug at php.net).
    Open source →
  9. 2.6.1 24 Feb 2016
    Release notes

    Added

    • Nothing.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #72 re-implements SmtpPluginManager as a zend-servicemanager AbstractPluginManager, after reports that making it standalone broke important extensibility use cases (specifically, replacing existing plugins and/or providing additional plugins could only be managed with significant code changes).
    Open source →
  10. 2.6.0 18 Feb 2016
    Release notes

    Added

    • Nothing.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #47 updates the component to remove the (soft) dependency on zend-servicemanager, by altering the SmtpPluginManager to implement container-interop's ContainerInterface instead of extending from AbstractPluginManager. Usage remains the same, though developers who were adding services to the plugin manager will need to instead extend it now.
    • #70 updates dependencies to stable, forwards-compatible versions, and removes unused dependencies.
    Open source →
  11. 2.5.2 10 Sep 2015
    Release notes

    Added

    • #12 adds support for simple comments in address lists.
    • #13 adds support for groups in address lists.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #26 fixes the ContentType header to properly handle parameters with encoded values.
    • #11 fixes the behavior of the Sender header, ensuring it can handle domains that do not contain a TLD, as well as addresses referencing mailboxes (no domain).
    • #24 fixes parsing of mail messages that contain an initial blank line (prior to the headers), a situation observed in particular with GMail.
    Open source →
  12. 2.5.1 03 Jun 2015

    Nothing published for this version

  13. 2.5.0 03 Jun 2015

    Nothing published for this version

  14. 2.4.13 13 Jul 2017
    Release notes

    Added

    • Nothing.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • Fixes issues caused by using PHP 5.4+ short-array notation within the HeaderValue class.
    Open source →
  15. 2.4.12 19 Dec 2016

    Nothing published for this version

  16. 2.4.11 no date
    Release notes

    Added

    • Nothing.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • Fixes the ZF2016-04 advisory
      ("Potential remote code execution in zend-mail via Sendmail adapter").
    Open source →
  17. 2.4.10 09 May 2016
    Release notes

    Added

    • Nothing.

    Deprecated

    • Nothing.

    Removed

    • Nothing.

    Fixed

    • #28 and #87 fix header value validation when headers wrap using the sequence \r\n\t; prior to this release, such sequences incorrectly marked a header value invalid.
    Open source →
  18. 2.4.9 10 Sep 2015

    Nothing published for this version

  19. 2.4.8 no date

    Nothing published for this version

  20. 2.4.7 11 May 2015

    Nothing published for this version

  21. 2.4.6 no date

    Nothing published for this version

  22. 2.4.5 no date

    Nothing published for this version

  23. 2.4.4 no date

    Nothing published for this version

  24. 2.4.3 no date

    Nothing published for this version

  25. 2.4.2 no date

    Nothing published for this version

  26. 2.4.1 07 May 2015

    Nothing published for this version

  27. 2.4.0 31 Mar 2015

    Nothing published for this version

  28. 2.3.9 11 May 2015

    Nothing published for this version

  29. 2.3.8 07 May 2015

    Nothing published for this version

  30. 2.3.7 12 Mar 2015

    Nothing published for this version

  31. 2.3.6 12 Mar 2015

    Nothing published for this version

  32. 2.3.5 18 Feb 2015

    Nothing published for this version

  33. 2.3.4 14 Jan 2015

    Nothing published for this version

  34. 2.3.3 16 Sep 2014

    Nothing published for this version

  35. 2.3.2 12 Aug 2014

    Nothing published for this version

  36. 2.3.1 15 Apr 2014

    Nothing published for this version

  37. 2.3.0 12 Mar 2014

    Nothing published for this version

  38. 2.2.10 06 Mar 2014

    Nothing published for this version

  39. 2.2.9 no date

    Nothing published for this version

  40. 2.2.8 no date

    Nothing published for this version

  41. 2.2.7 no date

    Nothing published for this version

  42. 2.2.6 no date

    Nothing published for this version

  43. 2.2.5 31 Oct 2013

    Nothing published for this version

  44. 2.2.4 26 Aug 2013

    Nothing published for this version

  45. 2.2.3 21 Aug 2013

    Nothing published for this version

  46. 2.2.2 24 Jul 2013

    Nothing published for this version

  47. 2.2.1 12 Jun 2013

    Nothing published for this version

  48. 2.2.0 15 May 2013

    Nothing published for this version

  49. 2.1.6 17 Apr 2013

    Nothing published for this version

  50. 2.1.5 no date

    Nothing published for this version

  51. 2.1.4 13 Mar 2013

    Nothing published for this version

  52. 2.1.3 21 Feb 2013

    Nothing published for this version

  53. 2.1.2 20 Feb 2013

    Nothing published for this version

  54. 2.1.1 06 Feb 2013

    Nothing published for this version

  55. 2.1.0 30 Jan 2013

    Nothing published for this version

  56. 2.0.8 13 Mar 2013

    Nothing published for this version

  57. 2.0.7 29 Jan 2013

    Nothing published for this version

  58. 2.0.6 19 Dec 2012

    Nothing published for this version

  59. 2.0.5 29 Nov 2012

    Nothing published for this version

  60. 2.0.4 20 Nov 2012

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive