29103 Commits

Author SHA1 Message Date
Georg Brandl
6c52d76db8 Close 2.3 branch. 2.3 2011-03-05 14:55:46 +01:00
Georg Brandl
ccffc9efb3 Fix tag references in 2.3 branch. 2011-03-05 14:55:41 +01:00
Martin v. Löwis
5a92c10991 Tag 2.3.7. 2008-03-11 18:00:58 +00:00
Martin v. Löwis
b0f9635265 Prepare for 2.3.7. v2.3.7 2008-03-11 18:00:08 +00:00
Martin v. Löwis
06fa53232d Tag 2.3.7c1. 2008-03-02 20:40:14 +00:00
Martin v. Löwis
cb6727e811 Prepare for 2.3.7c1. v2.3.7c1 2008-03-02 20:39:32 +00:00
Martin v. Löwis
d254ca8813 Backport of r61180:
Added checks for integer overflows, contributed by Google. Some are
only available if asserts are left in the code, in cases where they
can't be triggered from Python code.
2008-03-02 20:32:57 +00:00
Martin v. Löwis
80bdb4841c Revert r52798, r52803, r52824, r54342, as they don't fix
security issues.
2008-03-02 17:15:58 +00:00
Barry Warsaw
c3506024d8 SF patch #1556895; Typo in encoding name in email package.
Patch supplied by Guillaume Rousse.
2007-03-13 18:16:52 +00:00
Andrew M. Kuchling
79aa580537 [Jython patch #1599050] Avoid crash when os module lacks fstat() 2006-11-22 19:50:21 +00:00
Andrew M. Kuchling
f3caca28ea Jython compatibility fix: if uu.decode() opened its output file, be sure to
close it.
2006-11-20 13:40:36 +00:00
Andrew M. Kuchling
b15f4739c4 Add extra SHA tests 2006-11-20 13:31:37 +00:00
Anthony Baxter
3182172519 Tagging for release of Python 2.3.6 2006-11-01 07:09:04 +00:00
Anthony Baxter
427f6ca969 update patchlevel.h correctly, this time v2.3.6 2006-11-01 07:07:27 +00:00
Anthony Baxter
5c099d7ce1 updates for 2.3.6 final 2006-11-01 07:04:56 +00:00
Anthony Baxter
0781357642 Tagging for release of Python 2.3.6c1 2006-10-23 15:46:01 +00:00
Anthony Baxter
b4c8cba4b4 set svn:ignore. anal retentiveness, makes it easier to spot actual problems v2.3.6c1 2006-10-23 15:38:59 +00:00
Anthony Baxter
9f839d5b23 preparing for 2.3.6c1 2006-10-23 15:27:22 +00:00
Anthony Baxter
1785d3fce8 patch for PSF-2006-001. 2006-10-23 15:23:22 +00:00
Barry Warsaw
8752f7116a Fix the tests to work with Python 2.1, which email 2.5 must do. 2006-07-26 03:55:09 +00:00
Barry Warsaw
2bfcf5d1f1 Back port r50693 and r50754 from the trunk (and 2.4 branch):
decode_rfc2231(): Be more robust against buggy RFC 2231 encodings.
Specifically, instead of raising a ValueError when there is a single
tick in the parameter, simply return that the entire string unquoted, with
None for both the charset and the language.  Also, if there are more than 2
ticks in the parameter, interpret the first three parts as the standard RFC
2231 parts, then the rest of the parts as the encoded string.

More RFC 2231 improvements for the email 4.0 package.  As Mark Sapiro
rightly points out there are really two types of continued headers
defined in this RFC (i.e. "encoded" parameters with the form
"name*0*=" and unencoded parameters with the form "name*0="), but we
were were handling them both the same way and that isn't correct.

This patch should be much more RFC compliant in that only encoded
params are %-decoded and the charset/language information is only
extract if there are any encoded params in the segments.  If there are
no encoded params then the RFC says that there will be no
charset/language parts.

Note however that this will change the return value for
Message.get_param() in some cases.  For example, whereas before if you
had all unencoded param continuations you would have still gotten a
3-tuple back from this method (with charset and language == None), you
will now get just a string. I don't believe this is a backward
incompatible change though because the documentation for this method
already indicates that either return value is possible and that you
must do an isinstance(val, tuple) check to discriminate between the
two.  (Yeah that API kind of sucks but we can't change /that/ without
breaking code.)

Test cases, some documentation updates, and a NEWS item accompany this
patch.

Original fewer-than-3-parts fix by Tokio Kikuchi.

Resolves SF bug # 1218081.

Also, bump the package version number to 2.5.8 for release.
2006-07-25 13:06:56 +00:00
Barry Warsaw
e3e785180b Back port from 2.4 branch:
Patch #1464708 from William McVey: fixed handling of nested comments in mail
addresses.  E.g.

"Foo ((Foo Bar)) <foo@example.com>"

Fixes for both rfc822.py and email package.
2006-05-01 03:21:25 +00:00
Barry Warsaw
dc74e34e24 Resolve SF bug 1409403: email.Message should supress warning from uu.decode.
However, the patch in that tracker item is elaborated such that the newly
included unit test pass on Python 2.1 through 2.5.  Note that Python 2.1's
uu.decode() does not have a 'quiet' argument, so we have to be sneaky.

Will port to email 3.0 (although without the backward compatible sneakiness).
2006-02-09 04:03:22 +00:00
Barry Warsaw
f5853f7592 Patches to address SF bugs 1409538 (Japanese codecs in CODEC_MAP) and 1409455
(.set_payload() gives bad .get_payload() results).  Specific changes include:

Simplfy the default CODEC_MAP in Charset.py to not include the Japanese and
Korean codecs.  The names of the codecs are different depending on whether
you're using Python 2.4 and 2.5, which include the codecs by default, or
earlier Python's which provide the codecs under different names as a third
party library.  Now, we attempt to discover which (if either) is available and
populate the CODEC_MAP as appropriate.

Message.set_charset(): When the message does not already have a
Content-Transfer-Encoding header, instead of just adding the header, we also
encode the body as defined by the assigned Charset.  As before, if the
body_encoding is callable, we just call that.  If not, then we add a call to
body_encode() before setting the header.  This way, we guarantee that a
message's text payload is always encoded properly.

Remove the payload encoding code from Generator._handle_text().  With the
above patch, this would cause the body to be doubly encoded.  Doing this in
the Message class is better than only doing it in the Generator.

Added some new tests to ensure everything works correctly.  Also changed the
way the test_email_codecs.py tests get added (using the same lookup code that
the CODEC_MAP adjustments use).

This resolves both issues for email 2.5/Python 2.3.  I will patch forward to
email 3.0 for both Python 2.4 and 2.5.
2006-02-08 13:33:20 +00:00
Barry Warsaw
784fccf810 Resolves SF bug #1423972. 2006-02-04 23:48:22 +00:00