1Changelog 2========= 3 46.2.7 (2021-03-09) 5------------------ 6 7 * Allow egulias/email-validator 3.1+ 8 96.2.6 (2021-03-05) 10------------------ 11 12 * Fix Bcc support 13 146.2.5 (2021-01-12) 15------------------ 16 17 * Don't trust properties at destruct time 18 * Remove invalid PHPDocs param in EventDispatcher interface 19 * Bump license year 20 * Removes PHP version from README 21 226.2.4 (2020-12-08) 23------------------ 24 25 * Prevent flushing of the bubble queue when event handler raises another event 26 * Add support for PHP 8 27 * Code cleanups 28 296.2.3 (2019-11-12) 30------------------ 31 32 * no changes 33 346.2.2 (2019-11-12) 35------------------ 36 37 * fixed compat with PHP 7.4 38 * fixed error message when connecting to a stream raises an error before connect() 39 406.2.1 (2019-04-21) 41------------------ 42 43 * reverted "deprecated Swift_CharacterStream_ArrayCharacterStream and Swift_CharacterStream_NgCharacterStream in favor of Swift_CharacterStream_CharacterStream" 44 456.2.0 (2019-03-10) 46------------------ 47 48 * added support for symfony/polyfill-intl-dn 49 * deprecated Swift_CharacterStream_ArrayCharacterStream and Swift_CharacterStream_NgCharacterStream in favor of Swift_CharacterStream_CharacterStream 50 516.1.3 (2018-09-11) 52------------------ 53 54 * added auto-start to the SMTP transport when sending a message 55 * tweaked error message when the response from an SMTP server is empty 56 * fixed missing property in Swift_Mime_IdGenerator 57 * exposed original body content type with Swift_Mime_SimpleMimeEntity::getBodyContentType() 58 * fixed typo in variable name in Swift_AddressEncoder_IdnAddressEncoder 59 * fixed return type in MessageLogger 60 * fixed missing property addressEncoder in SimpleHeaderFactory class 61 626.1.2 (2018-07-13) 63------------------ 64 65 * handled recipient errors when pipelining 66 676.1.1 (2018-07-04) 68------------------ 69 70 * removed hard dependency on an IDN encoder 71 726.1.0 (2018-07-02) 73------------------ 74 75 * added address encoder exceptions during send 76 * added support for bubbling up authenticator error messages 77 * added support for non-ASCII email addresses 78 * introduced new dependencies: transport.smtphandlers and transport.authhandlers 79 * deprecated Swift_Signers_OpenDKIMSigner; use Swift_Signers_DKIMSigner instead 80 * added support for SMTP pipelining 81 * added Swift_Transport_Esmtp_EightBitMimeHandler 82 * fixed startTLS only allowed tls1.0, now allowed: tls1.0, tls1.1, tls1.2 83 846.0.2 (2017-09-30) 85------------------ 86 87 * fixed DecoratorPlugin 88 * removed usage of getmypid() 89 906.0.1 (2017-05-20) 91------------------ 92 93 * fixed BC break that can be avoided easily 94 956.0.0 (2017-05-19) 96------------------ 97 98 * added Swift_Transport::ping() 99 * removed Swift_Mime_HeaderFactory, Swift_Mime_HeaderSet, Swift_Mime_Message, Swift_Mime_MimeEntity, 100 and Swift_Mime_ParameterizedHeader interfaces 101 * removed Swift_MailTransport and Swift_Transport_MailTransport 102 * removed Swift_Encoding 103 * removed the Swift_Transport_MailInvoker interface and Swift_Transport_SimpleMailInvoker class 104 * removed the Swift_SignedMessage class 105 * removed newInstance() methods everywhere 106 * methods operating on Date header now use DateTimeImmutable object instead of Unix timestamp; 107 Swift_Mime_Headers_DateHeader::getTimestamp()/setTimestamp() renamed to getDateTime()/setDateTime() 108 * bumped minimum version to PHP 7.0 109 * removed Swift_Validate and replaced by egulias/email-validator 110 1115.4.9 (2018-01-23) 112------------------ 113 114 * no changes, last version of the 5.x series 115 1165.4.8 (2017-05-01) 117------------------ 118 119 * fixed encoding inheritance in addPart() 120 * fixed sorting MIME children when their types are equal 121 1225.4.7 (2017-04-20) 123------------------ 124 125 * fixed NTLMAuthenticator clobbering bcmath scale 126 1275.4.6 (2017-02-13) 128------------------ 129 130 * removed exceptions thrown in destructors as they lead to fatal errors 131 * switched to use sha256 by default in DKIM as per the RFC 132 * fixed an 'Undefined variable: pipes' PHP notice 133 * fixed long To headers when using the mail transport 134 * fixed NTLMAuthenticator when no domain is passed with the username 135 * prevented fatal error during unserialization of a message 136 * fixed a PHP warning when sending a message that has a length of a multiple of 8192 137 1385.4.5 (2016-12-29) 139------------------ 140 141 * SECURITY FIX: fixed CVE-2016-10074 by disallowing potentially unsafe shell characters 142 143 Prior to 5.4.5, the mail transport (Swift_Transport_MailTransport) was vulnerable to passing 144 arbitrary shell arguments if the "From", "ReturnPath" or "Sender" header came 145 from a non-trusted source, potentially allowing Remote Code Execution 146 * deprecated the mail transport 147 1485.4.4 (2016-11-23) 149------------------ 150 151 * reverted escaping command-line args to mail (PHP mail() function already does it) 152 1535.4.3 (2016-07-08) 154------------------ 155 156 * fixed SimpleHeaderSet::has()/get() when the 0 index is removed 157 * removed the need to have mcrypt installed 158 * fixed broken MIME header encoding with quotes/colons and non-ascii chars 159 * allowed mail transport send for messages without To header 160 * fixed PHP 7 support 161 1625.4.2 (2016-05-01) 163------------------ 164 165 * fixed support for IPv6 sockets 166 * added auto-retry when sending messages from the memory spool 167 * fixed consecutive read calls in Swift_ByteStream_FileByteStream 168 * added support for iso-8859-15 encoding 169 * fixed PHP mail extra params on missing reversePath 170 * added methods to set custom stream context options 171 * fixed charset changes in QpContentEncoderProxy 172 * added return-path header to the ignoredHeaders list of DKIMSigner 173 * fixed crlf for subject using mail 174 * fixed add soft line break only when necessary 175 * fixed escaping command-line args to mail 176 1775.4.1 (2015-06-06) 178------------------ 179 180 * made Swiftmailer exceptions confirm to PHP base exception constructor signature 181 * fixed MAIL FROM & RCPT TO headers to be RFC compliant 182 1835.4.0 (2015-03-14) 184------------------ 185 186 * added the possibility to add extra certs to PKCS#7 signature 187 * fix base64 encoding with streams 188 * added a new RESULT_SPOOLED status for SpoolTransport 189 * fixed getBody() on attachments when called more than once 190 * removed dots from generated filenames in filespool 191 1925.3.1 (2014-12-05) 193------------------ 194 195 * fixed cloning of messages with attachments 196 1975.3.0 (2014-10-04) 198------------------ 199 200 * fixed cloning when using signers 201 * reverted removal of Swift_Encoding 202 * drop support for PHP 5.2.x 203 2045.2.2 (2014-09-20) 205------------------ 206 207 * fixed Japanese support 208 * fixed the memory spool when the message changes when in the pool 209 * added support for cloning messages 210 * fixed PHP warning in the redirect plugin 211 * changed the way to and cc-ed email are sent to only use one transaction 212 2135.2.1 (2014-06-13) 214------------------ 215 216 * SECURITY FIX: fixed CLI escaping when using sendmail as a transport 217 218 Prior to 5.2.1, the sendmail transport (Swift_Transport_SendmailTransport) 219 was vulnerable to an arbitrary shell execution if the "From" header came 220 from a non-trusted source and no "Return-Path" is configured. 221 222 * fixed parameter in DKIMSigner 223 * fixed compatibility with PHP < 5.4 224 2255.2.0 (2014-05-08) 226------------------ 227 228 * fixed Swift_ByteStream_FileByteStream::read() to match to the specification 229 * fixed from-charset and to-charset arguments in mbstring_convert_encoding() usages 230 * fixed infinite loop in StreamBuffer 231 * fixed NullTransport to return the number of ignored emails instead of 0 232 * Use phpunit and mockery for unit testing (realityking) 233 2345.1.0 (2014-03-18) 235------------------ 236 237 * fixed data writing to stream when sending large messages 238 * added support for libopendkim (https://github.com/xdecock/php-opendkim) 239 * merged SignedMessage and Message 240 * added Gmail XOAuth2 authentication 241 * updated the list of known mime types 242 * added NTLM authentication 243 2445.0.3 (2013-12-03) 245------------------ 246 247 * fixed double-dot bug 248 * fixed DKIM signer 249 2505.0.2 (2013-08-30) 251------------------ 252 253 * handled correct exception type while reading IoBuffer output 254 2555.0.1 (2013-06-17) 256------------------ 257 258 * changed the spool to only start the transport when a mail has to be sent 259 * fixed compatibility with PHP 5.2 260 * fixed LICENSE file 261 2625.0.0 (2013-04-30) 263------------------ 264 265 * changed the license from LGPL to MIT 266 2674.3.1 (2013-04-11) 268------------------ 269 270 * removed usage of the native QP encoder when the charset is not UTF-8 271 * fixed usage of uniqid to avoid collisions 272 * made a performance improvement when tokenizing large headers 273 * fixed usage of the PHP native QP encoder on PHP 5.4.7+ 274 2754.3.0 (2013-01-08) 276------------------ 277 278 * made the temporary directory configurable via the TMPDIR env variable 279 * added S/MIME signer and encryption support 280 2814.2.2 (2012-10-25) 282------------------ 283 284 * added the possibility to throttle messages per second in ThrottlerPlugin (mostly for Amazon SES) 285 * switched mime.qpcontentencoder to automatically use the PHP native encoder on PHP 5.4.7+ 286 * allowed specifying a whitelist with regular expressions in RedirectingPlugin 287 2884.2.1 (2012-07-13) 289------------------ 290 291 * changed the coding standards to PSR-1/2 292 * fixed issue with autoloading 293 * added NativeQpContentEncoder to enhance performance (for PHP 5.3+) 294 2954.2.0 (2012-06-29) 296------------------ 297 298 * added documentation about how to use the Japanese support introduced in 4.1.8 299 * added a way to override the default configuration in a lazy way 300 * changed the PEAR init script to lazy-load the initialization 301 * fixed a bug when calling Swift_Preferences before anything else (regression introduced in 4.1.8) 302 3034.1.8 (2012-06-17) 304------------------ 305 306 * added Japanese iso-2022-jp support 307 * changed the init script to lazy-load the initialization 308 * fixed docblocks (@id) which caused some problems with libraries parsing the dobclocks 309 * fixed Swift_Mime_Headers_IdentificationHeader::setId() when passed an array of ids 310 * fixed encoding of email addresses in headers 311 * added replacements setter to the Decorator plugin 312 3134.1.7 (2012-04-26) 314------------------ 315 316 * fixed QpEncoder safeMapShareId property 317 3184.1.6 (2012-03-23) 319------------------ 320 321 * reduced the size of serialized Messages 322 3234.1.5 (2012-01-04) 324------------------ 325 326 * enforced Swift_Spool::queueMessage() to return a Boolean 327 * made an optimization to the memory spool: start the transport only when required 328 * prevented stream_socket_client() from generating an error and throw a Swift_TransportException instead 329 * fixed a PHP warning when calling to mail() when safe_mode is off 330 * many doc tweaks 331 3324.1.4 (2011-12-16) 333------------------ 334 335 * added a memory spool (Swift_MemorySpool) 336 * fixed too many opened files when sending emails with attachments 337 3384.1.3 (2011-10-27) 339------------------ 340 341 * added STARTTLS support 342 * added missing @return tags on fluent methods 343 * added a MessageLogger plugin that logs all sent messages 344 * added composer.json 345 3464.1.2 (2011-09-13) 347------------------ 348 349 * fixed wrong detection of magic_quotes_runtime 350 * fixed fatal errors when no To or Subject header has been set 351 * fixed charset on parameter header continuations 352 * added documentation about how to install Swiftmailer from the PEAR channel 353 * fixed various typos and markup problem in the documentation 354 * fixed warning when cache directory does not exist 355 * fixed "slashes are escaped" bug 356 * changed require_once() to require() in autoload 357 3584.1.1 (2011-07-04) 359------------------ 360 361 * added missing file in PEAR package 362 3634.1.0 (2011-06-30) 364------------------ 365 366 * documentation has been converted to ReST 367 3684.1.0 RC1 (2011-06-17) 369---------------------- 370 371New features: 372 373 * changed the Decorator Plugin to allow replacements in all headers 374 * added Swift_Mime_Grammar and Swift_Validate to validate an email address 375 * modified the autoloader to lazy-initialize Swiftmailer 376 * removed Swift_Mailer::batchSend() 377 * added NullTransport 378 * added new plugins: RedirectingPlugin and ImpersonatePlugin 379 * added a way to send messages asynchronously (Spool) 380