DeprecationWarning is now silent by default.
This was originally suggested by Guido, discussed on the stdlib-sig mailing
list, and given the OK by Guido directly to me. What this change essentially
means is that Python has taken a policy of silencing warnings that are only
of interest to developers by default. This should prevent users from seeing
warnings which are triggered by an application being run against a new
interpreter before the app developer has a chance to update their code.
Closes issue #7319. Thanks to Antoine Pitrou, Ezio Melotti, and Brian Curtin
for helping with the issue.
diff --git a/Lib/test/test_ascii_formatd.py b/Lib/test/test_ascii_formatd.py
index 5ee84fa..77759fe 100644
--- a/Lib/test/test_ascii_formatd.py
+++ b/Lib/test/test_ascii_formatd.py
@@ -4,6 +4,7 @@
import unittest
from test_support import check_warnings, run_unittest, cpython_only
+import warnings
class FormatDeprecationTests(unittest.TestCase):
@@ -17,6 +18,7 @@
buf = create_string_buffer(' ' * 100)
with check_warnings() as w:
+ warnings.simplefilter('default')
PyOS_ascii_formatd(byref(buf), sizeof(buf), '%+.10f',
c_double(10.0))
self.assertEqual(buf.value, '+10.0000000000')
diff --git a/Lib/test/test_exceptions.py b/Lib/test/test_exceptions.py
index a30f42b..3a2bdf5 100644
--- a/Lib/test/test_exceptions.py
+++ b/Lib/test/test_exceptions.py
@@ -309,6 +309,7 @@
# BaseException.__init__ triggers a deprecation warning.
exc = BaseException("foo")
with warnings.catch_warnings(record=True) as w:
+ warnings.simplefilter('default')
self.assertEquals(exc.message, "foo")
self.assertEquals(len(w), 1)
self.assertEquals(w[0].category, DeprecationWarning)