From ea7e6bc0f2fc12cdab1626ffaa0b12d1244c9a78 Mon Sep 17 00:00:00 2001 From: "R. David Murray" Date: Sun, 10 Jan 2010 19:02:16 +0000 Subject: [PATCH] Merged revisions 77412 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r77412 | r.david.murray | 2010-01-10 12:41:28 -0500 (Sun, 10 Jan 2010) | 3 lines Issue #7119: document that a program-generated Message object tree may be mutated when serialized. ........ --- Doc/library/email.generator.rst | 5 ++++- Doc/library/email.message.rst | 5 ++++- Doc/library/email.mime.rst | 3 ++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/Doc/library/email.generator.rst b/Doc/library/email.generator.rst index 8ba426a296b..f02e7d86a25 100644 --- a/Doc/library/email.generator.rst +++ b/Doc/library/email.generator.rst @@ -17,7 +17,10 @@ yourself. However the bundled generator knows how to generate most email in a standards-compliant way, should handle MIME and non-MIME email messages just fine, and is designed so that the transformation from flat text, to a message structure via the :class:`~email.parser.Parser` class, and back to flat text, -is idempotent (the input is identical to the output). +is idempotent (the input is identical to the output). On the other hand, using +the Generator on a :class:`~email.message.Message` constructed by program may +result in changes to the :class:`~email.message.Message` object as defaults are +filled in. Here are the public methods of the :class:`Generator` class, imported from the :mod:`email.generator` module: diff --git a/Doc/library/email.message.rst b/Doc/library/email.message.rst index 0e79b6c8a44..85a5d83eba0 100644 --- a/Doc/library/email.message.rst +++ b/Doc/library/email.message.rst @@ -40,7 +40,10 @@ Here are the methods of the :class:`Message` class: Return the entire message flattened as a string. When optional *unixfrom* is ``True``, the envelope header is included in the returned string. - *unixfrom* defaults to ``False``. + *unixfrom* defaults to ``False``. Flattening the message may trigger + changes to the :class:`Message` if defaults need to be filled in to + complete the transformation to a string (for example, MIME boundaries may + be generated or modified). Note that this method is provided as a convenience and may not always format the message the way you want. For example, by default it mangles diff --git a/Doc/library/email.mime.rst b/Doc/library/email.mime.rst index 94df8f04820..10f3e37f80e 100644 --- a/Doc/library/email.mime.rst +++ b/Doc/library/email.mime.rst @@ -71,7 +71,8 @@ Here are the classes: also be added. Optional *boundary* is the multipart boundary string. When ``None`` (the - default), the boundary is calculated when needed. + default), the boundary is calculated when needed (for example, when the + message is serialized). *_subparts* is a sequence of initial subparts for the payload. It must be possible to convert this sequence to a list. You can always attach new subparts