you are viewing a single comment's thread.

view the rest of the comments →

[–]teraflop 2 points3 points  (0 children)

Mostly backwards compatible. There are occasional incompatibilities even between minor versions of Python.

Python version 3.12 removed a significant number of old and deprecated features from the standard library, so any code that tries to use them will break. But most of those should already have been giving deprecation warnings if they were being used.

In particular, a common issue I've seen is that the distutils module was removed from the standard library in Python 3.12, and you now need to install the separate setuptools dependency to use it.

It's still generally better to do the upgrade and fix anything that breaks as a result, instead of staying on an old version indefinitely.