Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / sam-t2 / devtools / v9 / html / python / lib / node596.html
CommitLineData
920dae64
AT
1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<html>
3<head>
4<link rel="STYLESHEET" href="lib.css" type='text/css' />
5<link rel="SHORTCUT ICON" href="../icons/pyfav.png" type="image/png" />
6<link rel='start' href='../index.html' title='Python Documentation Index' />
7<link rel="first" href="lib.html" title='Python Library Reference' />
8<link rel='contents' href='contents.html' title="Contents" />
9<link rel='index' href='genindex.html' title='Index' />
10<link rel='last' href='about.html' title='About this document...' />
11<link rel='help' href='about.html' title='About this document...' />
12<link rel="next" href="node597.html" />
13<link rel="prev" href="node595.html" />
14<link rel="parent" href="module-email.html" />
15<link rel="next" href="node597.html" />
16<meta name='aesop' content='information' />
17<title>12.2.12 Differences from mimelib</title>
18</head>
19<body>
20<DIV CLASS="navigation">
21<div id='top-navigation-panel' xml:id='top-navigation-panel'>
22<table align="center" width="100%" cellpadding="0" cellspacing="2">
23<tr>
24<td class='online-navigation'><a rel="prev" title="12.2.11 Package History"
25 href="node595.html"><img src='../icons/previous.png'
26 border='0' height='32' alt='Previous Page' width='32' /></A></td>
27<td class='online-navigation'><a rel="parent" title="12.2 email "
28 href="module-email.html"><img src='../icons/up.png'
29 border='0' height='32' alt='Up One Level' width='32' /></A></td>
30<td class='online-navigation'><a rel="next" title="12.2.13 Examples"
31 href="node597.html"><img src='../icons/next.png'
32 border='0' height='32' alt='Next Page' width='32' /></A></td>
33<td align="center" width="100%">Python Library Reference</td>
34<td class='online-navigation'><a rel="contents" title="Table of Contents"
35 href="contents.html"><img src='../icons/contents.png'
36 border='0' height='32' alt='Contents' width='32' /></A></td>
37<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
38 border='0' height='32' alt='Module Index' width='32' /></a></td>
39<td class='online-navigation'><a rel="index" title="Index"
40 href="genindex.html"><img src='../icons/index.png'
41 border='0' height='32' alt='Index' width='32' /></A></td>
42</tr></table>
43<div class='online-navigation'>
44<b class="navlabel">Previous:</b>
45<a class="sectref" rel="prev" href="node595.html">12.2.11 Package History</A>
46<b class="navlabel">Up:</b>
47<a class="sectref" rel="parent" href="module-email.html">12.2 email </A>
48<b class="navlabel">Next:</b>
49<a class="sectref" rel="next" href="node597.html">12.2.13 Examples</A>
50</div>
51<hr /></div>
52</DIV>
53<!--End of Navigation Panel-->
54
55<H2><A NAME="SECTION00142120000000000000000">
5612.2.12 Differences from <tt class="module">mimelib</tt></A>
57</H2>
58
59<P>
60The <tt class="module">email</tt> package was originally prototyped as a separate
61library called
62<a class="ulink" href="http://mimelib.sf.net/"
63 ><tt class="module">mimelib</tt></a>.
64Changes have been made so that
65method names are more consistent, and some methods or modules have
66either been added or removed. The semantics of some of the methods
67have also changed. For the most part, any functionality available in
68<tt class="module">mimelib</tt> is still available in the <tt class="module"><a href="module-email.html">email</a></tt> package,
69albeit often in a different way. Backward compatibility between
70the <tt class="module">mimelib</tt> package and the <tt class="module">email</tt> package was not a
71priority.
72
73<P>
74Here is a brief description of the differences between the
75<tt class="module">mimelib</tt> and the <tt class="module"><a href="module-email.html">email</a></tt> packages, along with hints on
76how to port your applications.
77
78<P>
79Of course, the most visible difference between the two packages is
80that the package name has been changed to <tt class="module"><a href="module-email.html">email</a></tt>. In
81addition, the top-level package has the following differences:
82
83<P>
84
85<UL>
86<LI><tt class="function">messageFromString()</tt> has been renamed to
87 <tt class="function">message_from_string()</tt>.
88
89<P>
90</LI>
91<LI><tt class="function">messageFromFile()</tt> has been renamed to
92 <tt class="function">message_from_file()</tt>.
93
94<P>
95</LI>
96</UL>
97
98<P>
99The <tt class="class">Message</tt> class has the following differences:
100
101<P>
102
103<UL>
104<LI>The method <tt class="method">asString()</tt> was renamed to <tt class="method">as_string()</tt>.
105
106<P>
107</LI>
108<LI>The method <tt class="method">ismultipart()</tt> was renamed to
109 <tt class="method">is_multipart()</tt>.
110
111<P>
112</LI>
113<LI>The <tt class="method">get_payload()</tt> method has grown a <var>decode</var>
114 optional argument.
115
116<P>
117</LI>
118<LI>The method <tt class="method">getall()</tt> was renamed to <tt class="method">get_all()</tt>.
119
120<P>
121</LI>
122<LI>The method <tt class="method">addheader()</tt> was renamed to <tt class="method">add_header()</tt>.
123
124<P>
125</LI>
126<LI>The method <tt class="method">gettype()</tt> was renamed to <tt class="method">get_type()</tt>.
127
128<P>
129</LI>
130<LI>The method <tt class="method">getmaintype()</tt> was renamed to
131 <tt class="method">get_main_type()</tt>.
132
133<P>
134</LI>
135<LI>The method <tt class="method">getsubtype()</tt> was renamed to
136 <tt class="method">get_subtype()</tt>.
137
138<P>
139</LI>
140<LI>The method <tt class="method">getparams()</tt> was renamed to
141 <tt class="method">get_params()</tt>.
142 Also, whereas <tt class="method">getparams()</tt> returned a list of strings,
143 <tt class="method">get_params()</tt> returns a list of 2-tuples, effectively
144 the key/value pairs of the parameters, split on the "<tt class="character">=</tt>"
145 sign.
146
147<P>
148</LI>
149<LI>The method <tt class="method">getparam()</tt> was renamed to <tt class="method">get_param()</tt>.
150
151<P>
152</LI>
153<LI>The method <tt class="method">getcharsets()</tt> was renamed to
154 <tt class="method">get_charsets()</tt>.
155
156<P>
157</LI>
158<LI>The method <tt class="method">getfilename()</tt> was renamed to
159 <tt class="method">get_filename()</tt>.
160
161<P>
162</LI>
163<LI>The method <tt class="method">getboundary()</tt> was renamed to
164 <tt class="method">get_boundary()</tt>.
165
166<P>
167</LI>
168<LI>The method <tt class="method">setboundary()</tt> was renamed to
169 <tt class="method">set_boundary()</tt>.
170
171<P>
172</LI>
173<LI>The method <tt class="method">getdecodedpayload()</tt> was removed. To get
174 similar functionality, pass the value 1 to the <var>decode</var> flag
175 of the get_payload() method.
176
177<P>
178</LI>
179<LI>The method <tt class="method">getpayloadastext()</tt> was removed. Similar
180 functionality
181 is supported by the <tt class="class">DecodedGenerator</tt> class in the
182 <tt class="module"><a href="module-email.Generator.html">email.Generator</a></tt> module.
183
184<P>
185</LI>
186<LI>The method <tt class="method">getbodyastext()</tt> was removed. You can get
187 similar functionality by creating an iterator with
188 <tt class="function">typed_subpart_iterator()</tt> in the
189 <tt class="module"><a href="module-email.Iterators.html">email.Iterators</a></tt> module.
190</LI>
191</UL>
192
193<P>
194The <tt class="class">Parser</tt> class has no differences in its public interface.
195It does have some additional smarts to recognize
196<span class="mimetype">message/delivery-status</span> type messages, which it represents as
197a <tt class="class">Message</tt> instance containing separate <tt class="class">Message</tt>
198subparts for each header block in the delivery status
199notification<A NAME="tex2html135"
200 HREF="#foot58638"><SUP>12.4</SUP></A>.
201
202<P>
203The <tt class="class">Generator</tt> class has no differences in its public
204interface. There is a new class in the <tt class="module"><a href="module-email.Generator.html">email.Generator</a></tt>
205module though, called <tt class="class">DecodedGenerator</tt> which provides most of
206the functionality previously available in the
207<tt class="method">Message.getpayloadastext()</tt> method.
208
209<P>
210The following modules and classes have been changed:
211
212<P>
213
214<UL>
215<LI>The <tt class="class">MIMEBase</tt> class constructor arguments <var>_major</var>
216 and <var>_minor</var> have changed to <var>_maintype</var> and
217 <var>_subtype</var> respectively.
218
219<P>
220</LI>
221<LI>The <code>Image</code> class/module has been renamed to
222 <code>MIMEImage</code>. The <var>_minor</var> argument has been renamed to
223 <var>_subtype</var>.
224
225<P>
226</LI>
227<LI>The <code>Text</code> class/module has been renamed to
228 <code>MIMEText</code>. The <var>_minor</var> argument has been renamed to
229 <var>_subtype</var>.
230
231<P>
232</LI>
233<LI>The <code>MessageRFC822</code> class/module has been renamed to
234 <code>MIMEMessage</code>. Note that an earlier version of
235 <tt class="module">mimelib</tt> called this class/module <code>RFC822</code>, but
236 that clashed with the Python standard library module
237 <tt class="module"><a href="module-rfc822.html">rfc822</a></tt> on some case-insensitive file systems.
238
239<P>
240Also, the <tt class="class">MIMEMessage</tt> class now represents any kind of
241 MIME message with main type <span class="mimetype">message</span>. It takes an
242 optional argument <var>_subtype</var> which is used to set the MIME
243 subtype. <var>_subtype</var> defaults to <span class="mimetype">rfc822</span>.
244</LI>
245</UL>
246
247<P>
248<tt class="module">mimelib</tt> provided some utility functions in its
249<tt class="module">address</tt> and <tt class="module">date</tt> modules. All of these functions
250have been moved to the <tt class="module"><a href="module-email.Utils.html">email.Utils</a></tt> module.
251
252<P>
253The <code>MsgReader</code> class/module has been removed. Its functionality
254is most closely supported in the <tt class="function">body_line_iterator()</tt>
255function in the <tt class="module"><a href="module-email.Iterators.html">email.Iterators</a></tt> module.
256
257<P>
258<BR><HR><H4>Footnotes</H4>
259<DL>
260<DT><A NAME="foot58638">...
261notification</A><A
262 HREF="node596.html#tex2html135"><SUP>12.4</SUP></A></DT>
263<DD>Delivery Status Notifications (DSN) are defined
264in <a class="rfc" id='rfcref-91000' xml:id='rfcref-91000'
265href="http://www.faqs.org/rfcs/rfc1894.html">RFC 1894</a>.
266
267</DD>
268</DL>
269<DIV CLASS="navigation">
270<div class='online-navigation'>
271<p></p><hr />
272<table align="center" width="100%" cellpadding="0" cellspacing="2">
273<tr>
274<td class='online-navigation'><a rel="prev" title="12.2.11 Package History"
275 href="node595.html"><img src='../icons/previous.png'
276 border='0' height='32' alt='Previous Page' width='32' /></A></td>
277<td class='online-navigation'><a rel="parent" title="12.2 email "
278 href="module-email.html"><img src='../icons/up.png'
279 border='0' height='32' alt='Up One Level' width='32' /></A></td>
280<td class='online-navigation'><a rel="next" title="12.2.13 Examples"
281 href="node597.html"><img src='../icons/next.png'
282 border='0' height='32' alt='Next Page' width='32' /></A></td>
283<td align="center" width="100%">Python Library Reference</td>
284<td class='online-navigation'><a rel="contents" title="Table of Contents"
285 href="contents.html"><img src='../icons/contents.png'
286 border='0' height='32' alt='Contents' width='32' /></A></td>
287<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
288 border='0' height='32' alt='Module Index' width='32' /></a></td>
289<td class='online-navigation'><a rel="index" title="Index"
290 href="genindex.html"><img src='../icons/index.png'
291 border='0' height='32' alt='Index' width='32' /></A></td>
292</tr></table>
293<div class='online-navigation'>
294<b class="navlabel">Previous:</b>
295<a class="sectref" rel="prev" href="node595.html">12.2.11 Package History</A>
296<b class="navlabel">Up:</b>
297<a class="sectref" rel="parent" href="module-email.html">12.2 email </A>
298<b class="navlabel">Next:</b>
299<a class="sectref" rel="next" href="node597.html">12.2.13 Examples</A>
300</div>
301</div>
302<hr />
303<span class="release-info">Release 2.4.2, documentation updated on 28 September 2005.</span>
304</DIV>
305<!--End of Navigation Panel-->
306<ADDRESS>
307See <i><a href="about.html">About this document...</a></i> for information on suggesting changes.
308</ADDRESS>
309</BODY>
310</HTML>