CHANGES 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379
  1. Changelog
  2. =========
  3. 6.2.7 (2021-03-09)
  4. ------------------
  5. * Allow egulias/email-validator 3.1+
  6. 6.2.6 (2021-03-05)
  7. ------------------
  8. * Fix Bcc support
  9. 6.2.5 (2021-01-12)
  10. ------------------
  11. * Don't trust properties at destruct time
  12. * Remove invalid PHPDocs param in EventDispatcher interface
  13. * Bump license year
  14. * Removes PHP version from README
  15. 6.2.4 (2020-12-08)
  16. ------------------
  17. * Prevent flushing of the bubble queue when event handler raises another event
  18. * Add support for PHP 8
  19. * Code cleanups
  20. 6.2.3 (2019-11-12)
  21. ------------------
  22. * no changes
  23. 6.2.2 (2019-11-12)
  24. ------------------
  25. * fixed compat with PHP 7.4
  26. * fixed error message when connecting to a stream raises an error before connect()
  27. 6.2.1 (2019-04-21)
  28. ------------------
  29. * reverted "deprecated Swift_CharacterStream_ArrayCharacterStream and Swift_CharacterStream_NgCharacterStream in favor of Swift_CharacterStream_CharacterStream"
  30. 6.2.0 (2019-03-10)
  31. ------------------
  32. * added support for symfony/polyfill-intl-dn
  33. * deprecated Swift_CharacterStream_ArrayCharacterStream and Swift_CharacterStream_NgCharacterStream in favor of Swift_CharacterStream_CharacterStream
  34. 6.1.3 (2018-09-11)
  35. ------------------
  36. * added auto-start to the SMTP transport when sending a message
  37. * tweaked error message when the response from an SMTP server is empty
  38. * fixed missing property in Swift_Mime_IdGenerator
  39. * exposed original body content type with Swift_Mime_SimpleMimeEntity::getBodyContentType()
  40. * fixed typo in variable name in Swift_AddressEncoder_IdnAddressEncoder
  41. * fixed return type in MessageLogger
  42. * fixed missing property addressEncoder in SimpleHeaderFactory class
  43. 6.1.2 (2018-07-13)
  44. ------------------
  45. * handled recipient errors when pipelining
  46. 6.1.1 (2018-07-04)
  47. ------------------
  48. * removed hard dependency on an IDN encoder
  49. 6.1.0 (2018-07-02)
  50. ------------------
  51. * added address encoder exceptions during send
  52. * added support for bubbling up authenticator error messages
  53. * added support for non-ASCII email addresses
  54. * introduced new dependencies: transport.smtphandlers and transport.authhandlers
  55. * deprecated Swift_Signers_OpenDKIMSigner; use Swift_Signers_DKIMSigner instead
  56. * added support for SMTP pipelining
  57. * added Swift_Transport_Esmtp_EightBitMimeHandler
  58. * fixed startTLS only allowed tls1.0, now allowed: tls1.0, tls1.1, tls1.2
  59. 6.0.2 (2017-09-30)
  60. ------------------
  61. * fixed DecoratorPlugin
  62. * removed usage of getmypid()
  63. 6.0.1 (2017-05-20)
  64. ------------------
  65. * fixed BC break that can be avoided easily
  66. 6.0.0 (2017-05-19)
  67. ------------------
  68. * added Swift_Transport::ping()
  69. * removed Swift_Mime_HeaderFactory, Swift_Mime_HeaderSet, Swift_Mime_Message, Swift_Mime_MimeEntity,
  70. and Swift_Mime_ParameterizedHeader interfaces
  71. * removed Swift_MailTransport and Swift_Transport_MailTransport
  72. * removed Swift_Encoding
  73. * removed the Swift_Transport_MailInvoker interface and Swift_Transport_SimpleMailInvoker class
  74. * removed the Swift_SignedMessage class
  75. * removed newInstance() methods everywhere
  76. * methods operating on Date header now use DateTimeImmutable object instead of Unix timestamp;
  77. Swift_Mime_Headers_DateHeader::getTimestamp()/setTimestamp() renamed to getDateTime()/setDateTime()
  78. * bumped minimum version to PHP 7.0
  79. * removed Swift_Validate and replaced by egulias/email-validator
  80. 5.4.9 (2018-01-23)
  81. ------------------
  82. * no changes, last version of the 5.x series
  83. 5.4.8 (2017-05-01)
  84. ------------------
  85. * fixed encoding inheritance in addPart()
  86. * fixed sorting MIME children when their types are equal
  87. 5.4.7 (2017-04-20)
  88. ------------------
  89. * fixed NTLMAuthenticator clobbering bcmath scale
  90. 5.4.6 (2017-02-13)
  91. ------------------
  92. * removed exceptions thrown in destructors as they lead to fatal errors
  93. * switched to use sha256 by default in DKIM as per the RFC
  94. * fixed an 'Undefined variable: pipes' PHP notice
  95. * fixed long To headers when using the mail transport
  96. * fixed NTLMAuthenticator when no domain is passed with the username
  97. * prevented fatal error during unserialization of a message
  98. * fixed a PHP warning when sending a message that has a length of a multiple of 8192
  99. 5.4.5 (2016-12-29)
  100. ------------------
  101. * SECURITY FIX: fixed CVE-2016-10074 by disallowing potentially unsafe shell characters
  102. Prior to 5.4.5, the mail transport (Swift_Transport_MailTransport) was vulnerable to passing
  103. arbitrary shell arguments if the "From", "ReturnPath" or "Sender" header came
  104. from a non-trusted source, potentially allowing Remote Code Execution
  105. * deprecated the mail transport
  106. 5.4.4 (2016-11-23)
  107. ------------------
  108. * reverted escaping command-line args to mail (PHP mail() function already does it)
  109. 5.4.3 (2016-07-08)
  110. ------------------
  111. * fixed SimpleHeaderSet::has()/get() when the 0 index is removed
  112. * removed the need to have mcrypt installed
  113. * fixed broken MIME header encoding with quotes/colons and non-ascii chars
  114. * allowed mail transport send for messages without To header
  115. * fixed PHP 7 support
  116. 5.4.2 (2016-05-01)
  117. ------------------
  118. * fixed support for IPv6 sockets
  119. * added auto-retry when sending messages from the memory spool
  120. * fixed consecutive read calls in Swift_ByteStream_FileByteStream
  121. * added support for iso-8859-15 encoding
  122. * fixed PHP mail extra params on missing reversePath
  123. * added methods to set custom stream context options
  124. * fixed charset changes in QpContentEncoderProxy
  125. * added return-path header to the ignoredHeaders list of DKIMSigner
  126. * fixed crlf for subject using mail
  127. * fixed add soft line break only when necessary
  128. * fixed escaping command-line args to mail
  129. 5.4.1 (2015-06-06)
  130. ------------------
  131. * made Swiftmailer exceptions confirm to PHP base exception constructor signature
  132. * fixed MAIL FROM & RCPT TO headers to be RFC compliant
  133. 5.4.0 (2015-03-14)
  134. ------------------
  135. * added the possibility to add extra certs to PKCS#7 signature
  136. * fix base64 encoding with streams
  137. * added a new RESULT_SPOOLED status for SpoolTransport
  138. * fixed getBody() on attachments when called more than once
  139. * removed dots from generated filenames in filespool
  140. 5.3.1 (2014-12-05)
  141. ------------------
  142. * fixed cloning of messages with attachments
  143. 5.3.0 (2014-10-04)
  144. ------------------
  145. * fixed cloning when using signers
  146. * reverted removal of Swift_Encoding
  147. * drop support for PHP 5.2.x
  148. 5.2.2 (2014-09-20)
  149. ------------------
  150. * fixed Japanese support
  151. * fixed the memory spool when the message changes when in the pool
  152. * added support for cloning messages
  153. * fixed PHP warning in the redirect plugin
  154. * changed the way to and cc-ed email are sent to only use one transaction
  155. 5.2.1 (2014-06-13)
  156. ------------------
  157. * SECURITY FIX: fixed CLI escaping when using sendmail as a transport
  158. Prior to 5.2.1, the sendmail transport (Swift_Transport_SendmailTransport)
  159. was vulnerable to an arbitrary shell execution if the "From" header came
  160. from a non-trusted source and no "Return-Path" is configured.
  161. * fixed parameter in DKIMSigner
  162. * fixed compatibility with PHP < 5.4
  163. 5.2.0 (2014-05-08)
  164. ------------------
  165. * fixed Swift_ByteStream_FileByteStream::read() to match to the specification
  166. * fixed from-charset and to-charset arguments in mbstring_convert_encoding() usages
  167. * fixed infinite loop in StreamBuffer
  168. * fixed NullTransport to return the number of ignored emails instead of 0
  169. * Use phpunit and mockery for unit testing (realityking)
  170. 5.1.0 (2014-03-18)
  171. ------------------
  172. * fixed data writing to stream when sending large messages
  173. * added support for libopendkim (https://github.com/xdecock/php-opendkim)
  174. * merged SignedMessage and Message
  175. * added Gmail XOAuth2 authentication
  176. * updated the list of known mime types
  177. * added NTLM authentication
  178. 5.0.3 (2013-12-03)
  179. ------------------
  180. * fixed double-dot bug
  181. * fixed DKIM signer
  182. 5.0.2 (2013-08-30)
  183. ------------------
  184. * handled correct exception type while reading IoBuffer output
  185. 5.0.1 (2013-06-17)
  186. ------------------
  187. * changed the spool to only start the transport when a mail has to be sent
  188. * fixed compatibility with PHP 5.2
  189. * fixed LICENSE file
  190. 5.0.0 (2013-04-30)
  191. ------------------
  192. * changed the license from LGPL to MIT
  193. 4.3.1 (2013-04-11)
  194. ------------------
  195. * removed usage of the native QP encoder when the charset is not UTF-8
  196. * fixed usage of uniqid to avoid collisions
  197. * made a performance improvement when tokenizing large headers
  198. * fixed usage of the PHP native QP encoder on PHP 5.4.7+
  199. 4.3.0 (2013-01-08)
  200. ------------------
  201. * made the temporary directory configurable via the TMPDIR env variable
  202. * added S/MIME signer and encryption support
  203. 4.2.2 (2012-10-25)
  204. ------------------
  205. * added the possibility to throttle messages per second in ThrottlerPlugin (mostly for Amazon SES)
  206. * switched mime.qpcontentencoder to automatically use the PHP native encoder on PHP 5.4.7+
  207. * allowed specifying a whitelist with regular expressions in RedirectingPlugin
  208. 4.2.1 (2012-07-13)
  209. ------------------
  210. * changed the coding standards to PSR-1/2
  211. * fixed issue with autoloading
  212. * added NativeQpContentEncoder to enhance performance (for PHP 5.3+)
  213. 4.2.0 (2012-06-29)
  214. ------------------
  215. * added documentation about how to use the Japanese support introduced in 4.1.8
  216. * added a way to override the default configuration in a lazy way
  217. * changed the PEAR init script to lazy-load the initialization
  218. * fixed a bug when calling Swift_Preferences before anything else (regression introduced in 4.1.8)
  219. 4.1.8 (2012-06-17)
  220. ------------------
  221. * added Japanese iso-2022-jp support
  222. * changed the init script to lazy-load the initialization
  223. * fixed docblocks (@id) which caused some problems with libraries parsing the dobclocks
  224. * fixed Swift_Mime_Headers_IdentificationHeader::setId() when passed an array of ids
  225. * fixed encoding of email addresses in headers
  226. * added replacements setter to the Decorator plugin
  227. 4.1.7 (2012-04-26)
  228. ------------------
  229. * fixed QpEncoder safeMapShareId property
  230. 4.1.6 (2012-03-23)
  231. ------------------
  232. * reduced the size of serialized Messages
  233. 4.1.5 (2012-01-04)
  234. ------------------
  235. * enforced Swift_Spool::queueMessage() to return a Boolean
  236. * made an optimization to the memory spool: start the transport only when required
  237. * prevented stream_socket_client() from generating an error and throw a Swift_TransportException instead
  238. * fixed a PHP warning when calling to mail() when safe_mode is off
  239. * many doc tweaks
  240. 4.1.4 (2011-12-16)
  241. ------------------
  242. * added a memory spool (Swift_MemorySpool)
  243. * fixed too many opened files when sending emails with attachments
  244. 4.1.3 (2011-10-27)
  245. ------------------
  246. * added STARTTLS support
  247. * added missing @return tags on fluent methods
  248. * added a MessageLogger plugin that logs all sent messages
  249. * added composer.json
  250. 4.1.2 (2011-09-13)
  251. ------------------
  252. * fixed wrong detection of magic_quotes_runtime
  253. * fixed fatal errors when no To or Subject header has been set
  254. * fixed charset on parameter header continuations
  255. * added documentation about how to install Swiftmailer from the PEAR channel
  256. * fixed various typos and markup problem in the documentation
  257. * fixed warning when cache directory does not exist
  258. * fixed "slashes are escaped" bug
  259. * changed require_once() to require() in autoload
  260. 4.1.1 (2011-07-04)
  261. ------------------
  262. * added missing file in PEAR package
  263. 4.1.0 (2011-06-30)
  264. ------------------
  265. * documentation has been converted to ReST
  266. 4.1.0 RC1 (2011-06-17)
  267. ----------------------
  268. New features:
  269. * changed the Decorator Plugin to allow replacements in all headers
  270. * added Swift_Mime_Grammar and Swift_Validate to validate an email address
  271. * modified the autoloader to lazy-initialize Swiftmailer
  272. * removed Swift_Mailer::batchSend()
  273. * added NullTransport
  274. * added new plugins: RedirectingPlugin and ImpersonatePlugin
  275. * added a way to send messages asynchronously (Spool)