[Python-checkins] r65665 - in python/trunk: Lib/mimetools.py Misc/NEWS

brett.cannon python-checkins at python.org
Thu Aug 14 07:00:04 CEST 2008


Author: brett.cannon
Date: Thu Aug 14 07:00:03 2008
New Revision: 65665

Log:
Silence the DeprecationWarning of rfc822 triggered by its importation in
mimetools.

This has an unfortunate side-effect of potentially not letting any warning
about rfc822's deprecation be seen by user-visible code if rfc822 is not
imported before mimetools. This is because modules are cached in sys.modules
and thus do not have their deprecation triggered more than once. But this
silencing would have happened by other code that silences the use of mimetools
or rfc822 anyway in the stdlib or user code, and thus seems justified to be
done here.


Modified:
   python/trunk/Lib/mimetools.py
   python/trunk/Misc/NEWS

Modified: python/trunk/Lib/mimetools.py
==============================================================================
--- python/trunk/Lib/mimetools.py	(original)
+++ python/trunk/Lib/mimetools.py	Thu Aug 14 07:00:03 2008
@@ -2,8 +2,12 @@
 
 
 import os
-import rfc822
 import tempfile
+from test.test_support import catch_warning
+from warnings import filterwarnings
+with catch_warning(record=False):
+    filterwarnings("ignore", ".*rfc822 has been removed", DeprecationWarning)
+    import rfc822
 
 from warnings import warnpy3k
 warnpy3k("in 3.x, mimetools has been removed in favor of the email package",

Modified: python/trunk/Misc/NEWS
==============================================================================
--- python/trunk/Misc/NEWS	(original)
+++ python/trunk/Misc/NEWS	Thu Aug 14 07:00:03 2008
@@ -48,6 +48,10 @@
 Library
 -------
 
+- Silence the DeprecationWarning of rfc822 when it is imported by mimetools
+  since mimetools itself is deprecated. Because modules are cached, all
+  subsequent imports of rfc822 will not raise a visible DeprecationWarning.
+
 - Issue #3134: shutil referenced undefined WindowsError symbol.
 
 - Issue #1342811: Fix leak in Tkinter.Menu.delete. Commands associated to


More information about the Python-checkins mailing list