1------- 2v2.11.0 3------- 4 5[mjr] Allow ignoring Idn encoding when parsing address headers. 6 7 8------- 9v2.10.3 10------- 11 12[jan] Correctly encode IP address literal in first Received: header (Bug 13 #14574). 14 15 16------- 17v2.10.2 18------- 19 20[mjr] Fix regression caused by incorrect fix and test for Bug #14456 (Bug 21 #14505). 22 23 24------- 25v2.10.1 26------- 27 28[mjr] Fix parsing headers containing MIME encoded email addresses (Bug #14456). 29 30 31------- 32v2.10.0 33------- 34 35[jan] Add Horde_Mime_Part#isAttachment(). 36[mjr] Add workaround for failures due to sending broken rfc822/message 37 attachments (Bug #14324). 38[mjr] Catch incorrectly localized Date headers. 39 40 41------ 42v2.9.5 43------ 44 45[mjr] Add sanity check for malformed offset in Date header (Bug #14381). 46 47 48------ 49v2.9.4 50------ 51 52[jan] Update Greek translation (Limperis Antonis <limperis@cti.gr>). 53 54 55------ 56v2.9.3 57------ 58 59[jan] Mark PHP 7 as supported. 60 61 62------ 63v2.9.2 64------ 65 66[mjr] Correctly work around PHP bug 65776. 67 68 69------ 70v2.9.1 71------ 72 73[mms] Correctly output MIME headers when generating multipart/digest parts (RFC 74 2047 [5.1.5]). 75 76 77------ 78v2.9.0 79------ 80 81[mms] Fix rare errors when multiple iterations are occurring on the same set of 82 MIME parts. 83[jan] Fix issues with certain locales like Turkish. 84[mms] Fix indexing MIME part when base is a multipart object. 85 86 87------ 88v2.8.1 89------ 90 91[mms] Ignore broken headers when parsing header text. 92 93 94------ 95v2.8.0 96------ 97 98[mms] Subpart manipulation should now be done via array access. 99[mms] Add recurisve iteration to the Horde_Mime_Part object. 100[mms] Work around broken line-oriented data when transfer encoding (Bug 101 #13835). 102[mms] Fix regression in using the deprecated Horde_Mime::generateMessageId() 103 method (Bug #13846). 104[mms] Add Horde_Mime_Headers_ContentId class. 105[mms] Add Horde_Mime_Headers_ContentTransferEncoding class. 106[mms] Added Horde_Mime_Headers_Element#isDefault(). 107[mms] Add interface to differentiate between MIME and non-MIME headers. 108[mms] Content-Type and Content-Disposition related data is now handled 109 internally in Horde_Mime_Part object by using Horde_Mime_Headers. 110[mms] Added the Horde_Mime_Headers_ContentLanguage class. 111[mms] Fix cloning of the Content-Type and Content-Disposition header objects. 112[mms] Ensure that null bytes are filtered from MIME data that is contained in 113 the headers. 114[mms] Fix cloning of the Content-Type and Content-Disposition header objects. 115 116 117------ 118v2.7.0 119------ 120 121[mms] Fix setting a MIME part's contents when the data is the current stream 122 resource of that part. 123[mms] Fix MIME encoding the Content-Description header (Bug #13814). 124[mms] Fix setting MIME IDs when a message/rfc822 part is the base of the part 125 object. 126 127 128------ 129v2.6.1 130------ 131 132[jan] Fix Horde_Mime::quotedPrintableEncode() (Bug #13769). 133 134 135------ 136v2.6.0 137------ 138 139[mjr] Fix issue where long lines were not properly dealt with when binary 140 transfer encoding was used (Bug #13709). 141[mms] Added Horde_Mime_Filter_Encoding class. 142[mms] MIME decoding uses windows-1252 charset by default when iso-8859-1 is 143 identified in the MIME encoded string. 144[mms] Move mime.mapping.php generation code from horde-support repository into 145 doc/ directory. 146 147 148------ 149v2.5.2 150------ 151 152[mms] Improved sanity checking when adding header data. 153 154 155------ 156v2.5.1 157------ 158 159[mms] Fix Horde_Mime_Headers_Deprecated#addReceivedHeader(). 160[mms] Fix Horde_Mime_Headers_Deprecated#listHeadersExists(). 161 162 163------ 164v2.5.0 165------ 166 167[mms] Horde_Mime_Headers has been rewritten. 168[mms] Correctly handle content parameters in a case-insensitive manner. 169[mms] Correctly pass the 'no_body' parameter to parts embedded in a 170 message/rfc822 part in Horde_Mime_Part#parseMessage(). 171[mms] Fix parsing a base MIME-compliant message with no Content-Type 172 information. 173[mms] Horde_Mime::is8bit() no longer requires the charset parameter. 174[mms] Improved MIME encoding. 175[mms] Deprecated Horde_Mime::quotedPrintableEncode() and move to 176 Horde_Mime_QuotedPrintable. 177[mms] Moved MIME ID manipulation/query methods out of Horde_Mime and into 178 Horde_Mime_Id. 179[mms] Use string-based ABNF-based parser for scanning MIME content parameters 180 instead of a regular expression (Bug #13587). 181[mms] Moved content parameter handling methods out of Horde_Mime and into 182 Horde_Mime_ContentParam. 183[mms] Deprecated Horde_Mime::generateMessageId() and move to 184 Horde_Mime_Headers. 185[mms] Deprecated Horde_Mime::uudecode() and move to new Horde_Mime_Uudecode 186 class. 187[mms] Add Auto-Submitted header to outgoing MDN messages. 188 189 190------ 191v2.4.5 192------ 193 194[mms] Fix generation of Original-Message-ID header in MDN notification (Bug 195 #13526). 196[mms] Fix determination of MDN user confirmation in certain instances. 197 198 199------ 200v2.4.4 201------ 202 203[mms] Fix fatal error in Horde_Mime_Mail#getBasePart() (Thomas Müller 204 <thomas.mueller@tmit.eu>). 205 206 207------ 208v2.4.3 209------ 210 211[mms] Fix determination of part size when the part contains explicit sizing 212 information. 213 214 215------ 216v2.4.2 217------ 218 219[mjr] Fix returning raw data of sent email. 220 221 222------ 223v2.4.1 224------ 225 226[mjr] Fix returning stream containing raw email data. 227 228 229------ 230v2.4.0 231------ 232 233[mjr] Add Horde_Mime_Mail#getRaw() for returning the raw email email data. 234 235 236------ 237v2.3.5 238------ 239 240[mms] Ensure return from Horde_Mime_Part#getBytes() is an integer. 241 242 243------ 244v2.3.4 245------ 246 247[mms] Fix regression in part size calculation for parts that contain the raw 248 contents. 249 250 251------ 252v2.3.3 253------ 254 255[mms] Add Importance to list of headers that expects a single value. 256 257 258------ 259v2.3.2 260------ 261 262[mms] Correctly set size of part when using Horde_Mime_Part::parseMessage() and 263 the 'no_body' option. 264 265 266------ 267v2.3.1 268------ 269 270[mms] Fix Horde_Mime_Part#buildMimeIds() when called on the base embedded 271 object of a parent part (Bug #13117). 272 273 274------ 275v2.3.0 276------ 277 278[mms] Horde_Mime_Headers#parseHeaders() now accepts resources and Horde_Stream 279 objects. 280 281 282------ 283v2.2.9 284------ 285 286[mms] Fixed access to a non-visible internal method when performing actions on 287 parts. 288 289 290------ 291v2.2.8 292------ 293 294[mms] Fix parsing MIME message that contains mixed EOLs (Bug #12842). 295 296 297------ 298v2.2.7 299------ 300 301[mms] Fix regression that broke quoted-printable encoding. 302 303 304------ 305v2.2.6 306------ 307 308[mjr] Work around broken PHP behavior that could cause a segfault when encoding 309 certain strings as quoted-printable. 310 311 312------ 313v2.2.5 314------ 315 316[mms] Remove stream filters before returning stream to calling code. 317[mms] Support Horde_Mail_Transport_Smtphorde when sending messages. 318[mms] Net_SMTP does not support sending via BINARYMIME. 319 320 321------ 322v2.2.4 323------ 324 325[mms] Fix parsing broken multipart messages (Bug #12536). 326[mms] Use the correct EOL string when transfer encoding content (Bug #12452). 327 328 329------ 330v2.2.3 331------ 332 333[jan] Fix setting a different body if reusing a Horde_Mime_Mail object. 334 335 336------ 337v2.2.2 338------ 339 340[mms] Update MIME extension mapping. 341 342 343------ 344v2.2.1 345------ 346 347[mms] Fix Horde_Mime_Part::getRawPartText() when obtaining the first body part 348 of a single part message. 349 350 351------ 352v2.2.0 353------ 354 355[mms] Add 'no_body' parameter to Horde_Mime_Part#parseMessage(). 356 357 358------ 359v2.1.1 360------ 361 362[mms] Fix parsing wrapped header lines that contain no atom data (Bug #12189). 363 364 365------ 366v2.1.0 367------ 368 369[mms] Allow a Horde_Domhtml object to be directly passed in to 370 Horde_Mime_Related#cidReplace(). 371[mms] Content-Type parameters are case-insensitive (Bug #12161). 372[mms] Sanity checking: ignore empty values for Content-Transfer-Encoding MIME 373 header (Bug #12146). 374[mms] Null characters are no longer allowed in e-mail headers as of RFC 2822. 375[mms] More accurate/comprehensive Horde_Mime::is8bit() check (Bug #12127). 376[mms] Only use non-ASCII in MIME parameters when absolutely necessary. 377[mms] Need to always add charset information to MIME encoded parameters if they 378 are not displayable in pure US-ASCII (Bug #12127). 379[mms] Correctly quote forbidden characters in MIME parameter data (Bug #12127). 380[mms] Round up size output in Horde_Mime_Part#getSize(). 381 382 383------ 384v2.0.4 385------ 386 387[mms] Fix regression in outputting Content-Disposition 'size' parameter if no 388 other Content-Disposition parameter is present. 389 390 391------ 392v2.0.3 393------ 394 395[mms] Never return decimal values from Horde_Mime_Part#getSize(). 396[mms] Added parsing limit for deeply nested MIME parts. 397 398 399------ 400v2.0.2 401------ 402 403[mjr] Fix issue where parsing multipart/alternative messages would turn the 404 parts into attachments. 405[jan] Update Basque translation (Ibon Igartua <ibon.igartua@ehu.es>). 406 407 408------ 409v2.0.1 410------ 411 412[jan] Update Dutch translation (Arjen de Korte <build+horde@de-korte.org>). 413 414 415------ 416v2.0.0 417------ 418 419First stable release for Horde 5. 420 421 422----------- 423v2.0.0beta3 424----------- 425 426[mjr] Add method for returning the message's base MIME part. 427[mms] Update MIME mapping file. 428 429 430----------- 431v2.0.0beta2 432----------- 433 434[mms] Catch/fix malformed undisclosed-recipients address headers. 435 436 437----------- 438v2.0.0beta1 439----------- 440 441First beta release for Horde 5. 442 443 444------------ 445v2.0.0alpha1 446------------ 447 448First alpha release for Horde 5. 449[mjr] Fix issue that could cause outputting of duplicate data from a parsed 450 mulitpart mime message. 451[mms] Added Horde_Mime_Related class. 452[mms] Implement new 2.0 API. See UPGRADING for full details of changes. 453 454 455------ 456v1.6.2 457------ 458 459[mms] Workaround broken base64 data. 460 461 462------ 463v1.6.1 464------ 465 466[mms] Workaround PHP's broken convert_uudecode() function. 467 468 469------ 470v1.6.0 471------ 472 473[jan] Work around broken messages with multiple address headers. 474[mms] Add option to allow encoding options to be defined for 475 Horde_Mime_Part#send() (Bug #11058). 476 477 478------ 479v1.5.1 480------ 481 482[mms] Add MIME headers to the list of single-value headers. 483[mms] Don't add personal part to e-mail address if it is identical to the 484 address itself. 485 486 487------ 488v1.5.0 489------ 490 491[mms] Support Horde_Mail_Rfc822_Address objects. 492[mms] A false value for 'idn' in Horde_Mime_Address#writeAddress() now causes 493 the domain name to be converted TO punycode, if necessary. 494 495 496------ 497v1.4.1 498------ 499 500[jan] Improve compatibility with some broken text MIME parts (Bug #10925). 501 502 503------ 504v1.4.0 505------ 506 507[mms] Allow Horde_Mime_Part::getRawPartText() to accept stream input. 508[mms] Workaround incoming message data to Horde_Mime_Part::getRawPartText() 509 that contains varying EOL characters (Bug #10809). 510[mms] Fix detection of MIME boundaries at beginning of string (Bug #10809). 511[mms] Abstract charset detection code out into 512 Horde_Mime_Headers::sanityCheck(). 513 514 515------ 516v1.3.3 517------ 518 519[mms] Improved detection of charsets in broken (8-bit) MIME headers. 520 521 522------ 523v1.3.2 524------ 525 526[mms] Fix for broken 8BITMIME/BINARYMIME SMTP capability detection 527 (christof@buergi.lugs.ch, Bug #10820). 528 529 530------ 531v1.3.1 532------ 533 534[mms] Work around broken number_format() in PHP < 5.4.0. 535 536 537------ 538v1.3.0 539------ 540 541[jan] Make unit tests locale independent. 542[mms] Added 'canonical' parameter to Horde_Mime_Headers#toArray() and 543 Horde_Mime_Headers#toString() (Bug #10696). 544 545 546------ 547v1.2.1 548------ 549 550[mms] Horde_Mime_Part::getRawPartText() was incorrectly returning a trailing 551 EOL for body data. 552 553 554------ 555v1.2.0 556------ 557 558[jan] Add Horde_Mime_Mail#clearParts(). 559 560 561------ 562v1.1.0 563------ 564 565[mms] Provide method to return approximate size of parts if it contains base64 566 encoded data (Request #9783). 567[mms] Support Content-Duration MIME header (RFC 3803). 568[mms] MIME body part can not have disposition of 'attachment' (Bug #10458). 569 570 571------ 572v1.0.6 573------ 574 575[mms] Fix quoted-printable encoding for message parts contained in a multipart 576 that do not share the same EOLs as the parent part (Bug #10324). 577 578 579------ 580v1.0.5 581------ 582 583[mms] Fix generation of MDN messages. 584[jan] Update Latvian translation. 585[mms] Explicitly build MIME IDs when doing a findBody() search. 586 587 588------ 589v1.0.4 590------ 591 592[jan] Fix accessing the MIME part content after serialization (Bug #10252). 593 594 595------ 596v1.0.3 597------ 598 599[mms] Fix error when determining part size if contents is empty 600 (rick@havokmon.com, Bug #10223). 601 602 603------ 604v1.0.2 605------ 606 607[mms] Fix encoding of headers if charset passed to toArray() is empty (Bug 608 #10054). 609 610 611------ 612v1.0.1 613------ 614 615[mms] Fix unserializing Horde_Mime_Part containing data (Bug #9819). 616 617 618------ 619v1.0.0 620------ 621 622First stable release for Horde 4. 623[mms] Fix Horde_Mime::isChild(). 624 625 626--------- 627v1.0.0RC3 628--------- 629 630[mms] Provide option to always use Windows-1252 when decoding ISO-8859-1 data. 631 632 633--------- 634v1.0.0RC2 635--------- 636 637Second release candidate for Horde 4. 638[mms] Improve handling of empty address groups. 639 640 641--------- 642v1.0.0RC1 643--------- 644 645First release candidate for Horde 4. 646 647 648----------- 649v1.0.0beta1 650----------- 651 652Simplify charset handling in Horde_Mime_Mail. 653 654 655------------ 656v1.0.0alpha1 657------------ 658 659First alpha release for Horde 4. 660Add RFC 3282 language support to Horde_Mime_Part. 661Add workaround for Horde Bug #8747. 662Honor the Content-Disposition 'size' parameter (RFC 2183 [2.7]). 663Converted tests to PHPUnit. 664Moved viewer code to horde/Mime_Viewer package. 665Removed Webcpp and Enscript viewers. Source code highlighting is now 666 exclusively handled by the Srchighlight driver. 667No need to generate Content-Transfer-Encoding header if part data is 7bit. 668Default disposition should be empty by default, not inline (RFC 2183 [2]). 669Request #8556: Allow specifying a header charset for a part. 670Add 'raw' render view to Horde_Mime_Viewer. 671Horde_Mime_Part::parseMessage() correctly parses non-MIME parts. 672Remove dependence on PEAR's Mail_mimeDecode::. 673Added Horde_Mime::uudecode(). 674Remove support for deprecated mime_magic module. 675Use Gnumeric to display MS Excel documents. 676Use AbiWord to display MS Word documents (Request #8011). 677Add support for decoding IDN (RFC 3490) names (Request #5836). 678