Fix bugs without breaking down existing code

exarkun at twistedmatrix.com exarkun at twistedmatrix.com
Sun Apr 25 16:39:41 CEST 2010


On 10:02 am, elvismoodbidri at gmail.com wrote:
>Say, a Standard Library function works in a way it was not supposed
>to.
>
>Developers (who use Python) handle this issue themselves.
>And then, you (a python-core developer) fix the behavior of the
>function.
>
>Although you have  1Cfixed 1D the bug, anyone who upgrades, will be in
>trouble.
>Their code may no longer work.
>
>How do you go about this issue?
>How do you fix things without breaking down existing systems?

CPython itself has no policy about such things.  Each case is handled 
independently by whomever is working on it.

http://twistedmatrix.com/trac/wiki/CompatibilityPolicy might be 
interesting, though.  The general idea there (and I'm not sure how well 
it's actually expressed there) is that if you want new behavior, then 
(with a few exceptions) you add a new API: you don't change an existing 
API.

Jean-Paul



More information about the Python-list mailing list