Reputation: 1551
I'm aware this is rather opinionated topic but I need to ask just to fill any knowledge gaps I may have. I'm using Python 3.6.8 knowing there's supposedly "better" performing Python 3.7
Python 3.7 introduced data classes and breakpoints that you no longer have to import to use it for debugging but it is rather a built-in function now.
My question is if I don't necessarily use the features of 3.7 am I making myself disadvantaged in any way by not using 3.7 and sticking with 3.6.x ? As of now I don't really feel compelled to install 3.7 unless I have good reason for doing so.
Upvotes: 3
Views: 18678
Reputation: 2788
I guess it can be answered generally, answer would be the same as if you were asking about 3.7 to 3.8 and so forth.
Older versions: more stable, we know what to expect, but "rot" as after some time support will drop either in development or at where you deploy it (say a PaaS service). Then you will be forced to upgrade and will need to stop what you are doing in order to fix - migrate is a better word - your application.
Newer versions: have new features. Specially for DataClasses in 3.7's case, initially did not feel the need to use them initially but they paid up the time upgrading from 3.6 to 3.7 a lot. Newer versions on the wrong side almost always introduce bugs.
General advice: upgrade if a bit later once new version has been released and do those small changes sooner rather than later. Specially for the Python programming language see what happened with projects stuck into 2.x version.
Upvotes: 2