Nick Coghlan <[EMAIL PROTECTED]> added the comment: Fully reverting the relocation also required reverting r66197 (a belated checkin of test_py3kwarn for the r66135 changes).
There was also a change to test_warnings that had to be reverted (it appeared to have been mistakenly checked in as part of the checkin that added the bsddb Py3k warnings). Running tests now for the full reversion patch. The major objection to that approach (aside from the issue with external testing of warnings) is the problem that actually lead to catch_warnings() being relocated in the first place: suppressing spurious Py3k warnings in modules like cgi.py. So as much as I was pushing that option earlier, it looks like it isn't going to be viable. It's past 1 am here, so I'll be working on the other (cleaner) patch tomorrow evening. The intended end result of that other patch: A warnings.catch_warnings() implementation with the current interface (i.e. return a list on entry if record=True, None otherwise) that is intended either to suppress warnings, or to serve as a building block for better warning testing tools. The patch will also fix the re-entrancy problem by adding explicit self._entered state guards. A test_support.catch_warning() implementation which is tailored towards the needs of the Python regression test suite (probably the list-with-attributes interface provided by the previous incarnation of warnings.catch_warning, but with __getattr__ adjusted to return None when there is no warning caught). _______________________________________ Python tracker <[EMAIL PROTECTED]> <http://bugs.python.org/issue3781> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com