Terry Reedy wrote:
On 12/9/2011 5:17 AM, Nick Coghlan wrote:

As Chris pointed out though, the real problem with the "repeatedly run
2to3" workflow is that it can make interpreting tracebacks from the
field *really* hard.

This just gave me the idea of tagging tracebacks with the Python version number. Something like

Traceback (Py3.2.2, most recent call last):

and perhaps with the platform also

Traceback (most recent call last) [Py3.2.2 on win23]:

Since computation has stopped, the few extra milliseconds is trivial. This would certainly help on Python list and the tracker when people do post the traceback (which they do not always) without version and system (which they often do not, especially on Python list). It might suggest to people that this is important info to include.
[...]

But how often is it actually important information to include?

I am active on both the tutor and the python-list lists, and it seems to me that this proposed feature won't be very useful in either place. In my experience, the version number is rarely important for the sorts of questions that are commonly asked. Python is quite a stable language, and alist = alist.append(1) has confused newbies since version 1.5 and will probably continue confusing them in version 4000. (Aside: I was reading historical What's New docs today, and was stunned to realise how many cool features go back all the way to version 2.0.)

Obviously there are times where knowing the version is useful, but often you can often derive the version number from the error (at least to 1 significant figure):

>>> map(chr, (40, 41, 42))[1]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'map' object is not subscriptable

Assuming map has not been shadowed, this is obviously Python 3.

If the question involves tracking down an actual bug in Python, the version number becomes important. E.g. "it works as documented in 2.6 on Linux, but not in 2.7 on OS-X" sort of thing. But that's quite unusual.

Newbies barely read tracebacks at all. Adding the version number and platform will just add more text which they won't read and will probably discourage them further from reading it (more text = less chance they read it). Experienced coders tend to know when the version number is important and provided it only when necessary. So it's hard to see who this is aimed at... users experienced enough to pay attention to tracebacks but not experienced enough to know when to provide the version number?

YMMV, but I don't see much value in this. If it comes at the cost of making doctest harder to use, I'm actively against it. Otherwise I'm just mildly "meh, why bother?".



--
Steven

_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to