It took a long time for Red Hat and Canonical because a lot of the OS was written in Python 2.x, but Apple doesn't have that excuse.
It took a long time for Red Hat and Canonical because a lot of the OS was written in Python 2.x, but Apple doesn't have that excuse.
I wouldn't be surprised if Apple just stays on Python 2 forever. Apple already does some patching to their copy of python when they upgrade OS, and it would require a fairly small amount of manpower to keep Python 2 running forever.
Maybe for e.g. RHEL it makes sense to maintain Python 2 beyond end of life, since they can charge an arm and a leg for companies who have been too lazy or complacent to port and upgrade their stuff, despite clear and generous deprecation timelines. But I don't buy this for Apple.
There are many pieces of software (bash and clang as major examples) where Apple keep custom branches, often of otherwise unsupported versions.
I'm writing this on a MacBook Pro that was released with a CPU one full generation behind its competition.
Apple would break compatibility if it removed Python 2, which it could do, if they really wanted.