12

What the absolute hell is going on with Python 3 releases?? Can anyone explain this

Python 3.5.9 - Nov. 2, 2019
Python 3.5.8 - Oct. 29, 2019
Python 3.7.5 - Oct. 15, 2019
Python 3.8.0 - Oct. 14, 2019
Python 3.7.4 - July 8, 2019
Python 3.6.9 - July 2, 2019
Python 3.4.10 - March 18, 2019
Python 3.5.7 - March 18, 2019

Comments
  • 8
    @FrodoSwaggins I'd rather call it branching, given that forking usually means to split off shit into a completely different project.
  • 4
    @FrodoSwaggins Why the hell would you need 3.5.4 when 3.6 is fully compatible? And why do you need to backport fixes to an old minor version for a *high level scripting language*??

    Are they breaking compatibility on each minor release or what? Continuing support for v2 makes sense. Continuing support for v3 *minor* versions seems like they have a serious problem somewhere...
  • 3
    @12bitfloat take a look at the support dates for each version. Each minor version (major.minor.patch) has it's own amount of time that it is supported. Basically they are their own releases.
  • 1
    @12bitfloat Because e.g. Debian will only backport security fixes into their stable branch. Then again, you don't want Debian maintainers to fudge around trying to extract security fixes because that was what lead to Heartbleed.

    The bullet-proof way is to release security fixes for old branches by people who actually know the software, i.e. the devs, and thus make sure that updates don't get fucked up.

    Also, Python may be high level, but the interpreter itself is written in C.
  • 2
    As someone whos about to start learning python in school this post clears up some of my confusion. And an updoot for you, and an updoot for you....
  • 2
    At 3.8.0 they gave up and started to downgrade
  • 2
    @12bitfloat
    „Are they breaking compatibility on each minor release?”

    Yes.
    I’m not sure if that’s a language problem or the ecosystem, but the topic of compatibility is a horror in Python.
    And you cannot escape it by saying „fuck this Python crap, I’ll write my scripts in bash”, because many tools depend on it. For example, AWS cli is written in Python.
  • 1
    @matste Usually, it's about removing stuff that has been deprecated for years, and ignoring deprecation warnings in Python is a bad idea. Still, that will hit perfectly working, but unmaintained software.

    That's why languages like C and C++ have versioned standards, and every C compiler still supports the 1989 ANSI C standard via CLI setting so that you can compile decades old code.

    The catch is that the code has to be actually conforming to the standard from back then, which most old code isn't, so it will still break because of undefined behaviour that compilers back then didn't exploit, but current ones will.

    Sucks either way. :-)
Add Comment