[issue2786] Names in function call exception should have class names, if they're methods
Robert Collins
report at bugs.python.org
Fri Aug 28 00:43:21 CEST 2015
Robert Collins added the comment:
Here are some options.
a) Don't make the new thing public - instead export within Python.exe the existing private symbol _...withNames. Pros: no change to public API. Cons: extension modules using the public API cannot make these sorts of errors clearer.
b) Add a new API. Either narrow (add the parameter) or big (add a struct). Pros: everyone treated equally. Cons: More API surface area, and more complex calling convention.
c) use symbol versioning to change the existing API. Cons: more complex build-time detection for users. Pros: API surface area held constant.
d) Don't fix it. :)
I don't have a particular preference, though the struct thing is a wash IMO - it saves adding a serial to the API, at the cost of having a versioned datastructure which needs an embedded serial number. [Except perhaps that you can use symbol versioning to deal with evolutions of the struct - but thats fairly complex to carry off well, and I think this would be the first example w/in Python].
----------
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue2786>
_______________________________________
More information about the Python-bugs-list
mailing list