On Sat, Sep 11, 2010 at 9:42 AM, Glyph Lefkowitz <glyph at twistedmatrix.com> wrote: > > On Sep 10, 2010, at 5:10 PM, Amaury Forgeot d'Arc wrote: > >> 2010/9/10 Fred Drake <fdrake at acm.org>: >>> On Fri, Sep 10, 2010 at 4:32 PM, Georg Brandl <g.brandl at gmx.net> wrote: >>>> IMO this runs contrary to the decision we made when DeprecationWarnings were >>>> made silent by default: it spews messages not only at developers, but also at >>>> users, who don't need it and probably are going to be quite confused by it, >>> >>> Agreed; this should be silent by default. >> >> +1. I suggest to enable it only when Py_DEBUG (or Py_TRACE_REFS or >> Py_REF_DEBUG?) is defined. > > Would it be possible to treat it the same way as a deprecation warning, and show it under the same conditions? It would be nice to know if my Python program is leaking uncollectable objects without rebuilding the interpreter. My suggestion: 1. Add a gc.WARN_UNCOLLECTABLE flag on gc.set_debug that enables the warning message. 2. Have regrtest explicitly set this for our own test suite As far as automatically turning it on for third party test suites goes, we could either: - require them to turn it on explicitly via gc.set_debug - have gc.WARN_UNCOLLECTABLE default to true for non-optimised runs (__debug__ == True) and false for runs with -O or -OO (__debug__ == False) - set it by looking at the -W arguments passed in at interpreter startup (e.g. enable it when all warnings are enabled, leave it disabled by default otherwise) Cheers, Nick. -- Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4