On Mon, 3 Feb 2020 13:18:46 +0100 Petr Viktorin <encukou@gmail.com> wrote:
I agree with the sentiment that gradual deprecations are more easily managed, this statement about Python 3.0 is not true. The unicode transition was never thought to be small, and that's *why* 3.0 was such a big change.
Alright, "very small" is an overstatement. But it did seem much smaller than it turned out to be. https://docs.python.org/3.0/whatsnew/3.0.html lists it as the last of the big breaking changes, while most of the porting efforts were spent on it.
I don't think the order in this page has any relationship to the difficulty of each change. I'm not sure there was any particular reason to order them in this way, but it seems to me that the easier to understand changes were put first. AFAIR, we were all acutely aware that the text model overhaul was going to be the hardest change for many users (especially those who have never encountered non-ASCII input). Most other changes in Python 3 have a predetermined context-free repair, while migrating to the new text model requires *thinking* about the context in which each Python 2 bytestring is used. It forces people to think about the problem they're solving in ways many of them didn't think of it before. Regards Antoine.