On 24 May 2016 at 15:11, Koos Zevenhoven <k7ho...@gmail.com> wrote: >> Please, no. We learned that lesson in Python 2.2.1 with True/False. > > What happened? True was included in 2.2.1 but not False?-). Anyway, I > guess you are probably right, and "3.6->" is the way to go. Besides, > Guido already wrote that in the first response.
The history is at http://python-history.blogspot.co.uk/2013/11/the-history-of-bool-true-and-false.html but basically we added new *constants* for True/False in a point release. Some people used them, and their code only worked on 2.2.1 and above but not 2.2.0. Others were using variables called True and False, and the 2.2.1 change broke their code (you could no longer assign to those names). So essentially it ended up that people couldn't say "works on 2.2" and had to distinguish between 2.2.0 and 2.2.1+. Python's strict backward compatibility rules basically stem from the grief caused by that change. Paul _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com