source: contrib/MailArchiver/sources/vendor/mime4j/custom/RELEASE_NOTES.txt @ 6785

Revision 6785, 7.5 KB checked in by rafaelraymundo, 12 years ago (diff)

Ticket #2946 - Liberado codigo do MailArchiver?. Documentação na subpasta DOCS.

Line 
1Next Release
2------------
3
4Mime4J storage contains support for encrypted storage through the standard Java cryptography
5API. When used in conjunction with a JRE with strong cryptography enabled, this library will
6use strong cryptography. See README.
7
8Release 0.7
9-------------------
10
11Mime4J is a flexible MIME parsing library written in Java. SAX, DOM and pull parsing styles are
12supported.
13
14The 0.7 release brings another round of API enhancements, bug fixes and performance optimizations.
15A major effort has been put in code reorganization, separating parsing code from DOM manipulation
16code. Mime4J 0.7 introduces the "dom" package collecting base/abstract classes and interfaces for
17MIME-DOM manipulation aiming to provide the base for a full featured traversable DOM.
18Mime4J 0.7 improve support for headless messages, malformed separation between headers and body
19and adds support for "obsolete" rfc822 syntax (e.g: "Header<somespace>: " style).
20Parsing performance for quoted printable streams have been considerably improved.
21A "DecodeMonitor" object has been introduced in most code to define how to deal with malformed
22input (Lenient vs Strict behaviours).
23
24Upgrade Notes
25-------------
26
27 * The defualt field parsing logic has been moved from AbstractField to DefaultFieldParser.
28 * many classes have been moved from org.apache.james.mime4j.parser to
29   org.apache.james.mime4j.stream package (ContentHandler, DefaultBodyDescriptor, RawField..)
30 * "dom" classes/interfaces have been moved from the .message and .field package to the .dom
31   package tree.
32 * The method decodeBaseQuotedPrintable() of class o.a.j.mime4j.codec.DecoderUtil has been renamed
33   in decodeQuotedPrintable().
34 * Preamble and Epilogue are now correctly handled as optionals and the parser invoke their
35   tokens/events only when they are present in the message. So if your code rely on that events
36   being always called make sure to fix it.
37 * preamble and epilogue Strings in Multipart DOM object are now nullable: an empty preamble is
38   different from no preamble, so we had to update the dom contract to support this difference.
39   Make sure to add null checks if code using multipart.getPreamble and multipart.getEpilogue.
40 * the first event for headless parsing in MimeTokenStream is not the first BODY event.
41   You should not expect T_START_HEADER/T_END_HEADER any more.   
42
43Please also note that as of this release Mime4j requires a Java 1.5 compatible runtime.
44
45Release 0.6
46-------------------
47
48Mime4J is a flexible MIME parsing library written in Java. SAX, DOM and pull parsing styles are
49supported.
50
51The 0.6 release brings another round of API enhancements and performance optimizations. There has
52been a number of notable improvements in the DOM support. MIME stream parser is expected to be
5350% faster when line counting is disabled. Please also note that as of this release Mime4j
54requires a Java 1.5 compatible runtime.
55
56Notes
57-----
58
59 * Mime4j API is still considered unstable and is likely to change in future releases
60 * The DOM API has been now been comprehensively refactored and the known limitations
61   addressed. Please report any remaining issues to
62   https://issues.apache.org/jira/browse/MIME4J.
63 * Some low level functions are available only in the pull parser (recommended for
64   advanced users)
65 * 0.6 contains a mixture of approaches to the parsing of advanced MIME field types.
66   Limitations are known with these approaches with some relatively uncommon use cases.
67   A consistent and comprehensive rewrite is planned for 0.7 which should consolidate
68   and address these.
69 * The former interfaces TextBody and BinaryBody have been changed into abstract subclasses
70   of class SingleBody. Code that implements these interfaces has to be changed accordingly.
71   [https://issues.apache.org/jira/browse/MIME4J-111]
72 * A dedicated class for writing a message has been introduced. Class MessageWriter has now
73   to be used instead of Body.writeTo(OutputStream, int). A short-cut method
74   Message.writeTo(OutputStream) without a mode parameter is also available.
75   [https://issues.apache.org/jira/browse/MIME4J-110]
76 * Class NamedMailbox has been removed. Class Mailbox now has an additional name property.
77   [https://issues.apache.org/jira/browse/MIME4J-107]
78 * Class MessageUtils has been removed. The methods and constants can now be found in class
79   CharsetUtil in the same package.
80   [https://issues.apache.org/jira/browse/MIME4J-106]
81 * Package org.apache.james.mime4j.decoder has been renamed in org.apache.james.mime4j.codec.
82   [https://issues.apache.org/jira/browse/MIME4J-105]
83 * Class AbstractBody has been superseded by SingleBody. AbstractBody has been removed.
84 * BodyFactory introduced allowing more flexible storage for Message parts. TempFileTextBody
85   and TempFileBinaryBody removed.
86   [https://issues.apache.org/jira/browse/MIME4J-87]
87 * Mime4j now has a more flexible mechanism for storing message bodies. Class TempStorage
88   has been superseded by StorageProvider in package org.apache.james.mime4j.storage.
89   The classes TempStorage, TempPath, TempFile and SimpleTempStorage have been removed.
90   [https://issues.apache.org/jira/browse/MIME4J-83]
91 * Temporary text body storage for Message parts now defaults to US-ASCII (was ISO-8859-1)
92
93Detailed change log can be found here:
94
95http://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310521&styleName=Html&version=12313434
96
97
98Release 0.5
99-------------------
100
101Mime4J is a flexible MIME parsing library written in Java. SAX, DOM and pull parsing
102styles are supported.
103
104
105The 0.5 release addresses a number of important issues discovered since 0.4. In
106particular, it improves Mime4j ability to deal with malformed data streams including
107those intentionally crafted to cause excessive CPU and memory utilization that can
108lead to DoS conditions.
109
110This release also fixes a serious bug that can prevent Mime4j from correctly
111processing binary content.
112
113Detailed change log can be found here:
114
115https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310521&styleName=Html&version=12313178
116
117Notes
118-----
119 * Mime4j API is still considered unstable and is likely to change in future releases
120 * DOM support has known limitations and some roundtrip issues remain to be resolved
121 * Some low level functions are available only in the pull parser (recommended for
122   advanced users)
123
124
125
126Release 0.4
127-------------------
128
129Mime4J is a flexible MIME parsing library written in Java. SAX, DOM and pull parsing
130styles are supported.
131
132The 0.4 release brings a number of significant improvements in terms of
133supported capabilities, flexibility and performance:
134
135* Revised and improved public API with support for pull parsing
136
137* Support for parsing of 'headless' messages transmitted using non SMTP
138  transports such as HTTP
139
140* Reduced external dependencies. Mime4j is no longer directly dependent on log4j
141  and commons-io
142
143* Improved parsing performance (up to 10x for large messages)
144
145* More comprehensive header parsing including support for RFC1864, RFC2045,
146  RFC2183, RFC2557 and RFC3066
147
148* Revised packaging and exception hierarchy. MimeException now extends
149  IOException.
150
151Detailed change log can be found here:
152
153http://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310521&styleName=Html&version=12312483
154
155Notes
156-----
157 * 0.4 contains numerous API improvements and is not binary compatible with 0.3
158 * Mime4j API is still considered unstable and is likely to change in future releases
159 * DOM support has known limitations and some roundtrip issues remain to be resolved
160 * Some low level functions are available only in the pull parser (recommended for
161   advanced users)
Note: See TracBrowser for help on using the repository browser.