On 6 Apr 2002 at 20:18, Guido van Rossum wrote:
... When fixing a bug breaks code, it can mean two things: (a) the fix was to introduce a feature (sometimes the right thing to do); or (b) the bug was so pervasive that work-arounds became widespread, and the fix breaks the work-around. Both are relatively rare (but have happened).
I keep a fairly large body of code working with 1.5.2 onwards. If you broaden (b) to include cases where code that accidentally worked in an earlier release fails in a later release, then it covers 100% of the changes I've had to make. (1.5.2 to 2.0 was painful; the others have been easy).
Interesting. Two questions.
(1) Got any details on which changes caused the most pain?
(2) Was the pain worth it, or would you prefer we'd spent more time on being more backwards compatible?
(FWIW, the hardest post 1.5.2 feature for me to do without is augmented assignment.)
Since you're also a C programmer (I believe), I'm not surprised.
--Guido van Rossum (home page: http://www.python.org/~guido/)