[Python-Dev] cpython: Close issue #6210: Implement PEP 409 (original) (raw)

Antoine Pitrou solipsis at pitrou.net
Sun Feb 26 14:54:21 CET 2012


On Sun, 26 Feb 2012 09:02:59 +0100 nick.coghlan <python-checkins at python.org> wrote:

+ +No debugging capability is lost, as the original exception context remains +available if needed (for example, if an intervening library has incorrectly +suppressed valuable underlying details)::

That's debatable, since you now have to add code if you want to print the original exception as well. The new capability improves the terseness and clarity of error messages at the expense of debuggability.

+ def preparesubprocess(): + # don't create core file + try: + setrlimit(RLIMITCORE, (0, 0)) + except (ValueError, resourceerror): + pass

Really? This sounds quite wrong, but it should at least explain why a test of the "raise" statement would produce a core file! (but I think you should consider removing this part)

+ def getoutput(self, code, filename=None): + """ + Run the specified code in Python (in a new child process) and read the + output from the standard error or from a file (if filename is set). + Return the output lines as a list. + """

We already have assert_python_ok and friends. It's not obvious what this additional function achieves. Also, the "filename" argument is never used.

+ output = re.sub('Current thread 0x[0-9a-f]+', + 'Current thread XXX', + output)

This looks like output from the faulthandler module. Why would faulthandler kick in here?

Regards

Antoine.



More information about the Python-Dev mailing list