0

Why was Python 3.7.7 released after Python 3.8.2? When its the same version, meaning python2 and python3 It says so on the website: https://www.python.org/downloads/

  • 4
    Why *wouldn't* it be? The 3.7 (or 3.6, or 3.5 - https://devguide.python.org/#status-of-python-branches) line can still get patches after 3.8 is released. – jonrsharpe Apr 12 '20 at 16:52
  • Because usually software gets patches in the next version. – xXxEpicCoderxXx Apr 12 '20 at 16:57
  • What do you mean *"usually"*? *Many* software projects manage multiple versions concurrently and offer e.g. long term support windows. See e.g. https://wiki.ubuntu.com/Releases, https://nodejs.org/en/about/releases/ for other examples. – jonrsharpe Apr 12 '20 at 16:58
  • So you want to know why 3.7 still exists if there is 3.8 already? – mkrieger1 Apr 12 '20 at 16:59
  • @mkrieger1 That I know. I didn't know why it still got updated but now i get that those are fixes to that version. – xXxEpicCoderxXx Apr 12 '20 at 17:10

2 Answers2

6

Each minor release (i.e. <major>.<minor>.<patch>) introduces new features and in some cases makes backwards incompatible fixes. That means that someone might need to still stay on 3.7 - but you still might want to fix bugs in the 3.7.x line of releases.

That bug fix release for the 3.7 line can then be released after any release to 3.8 (or any other 3.x release for that matter, if it's something only related to that minor release). In general older minor releases are abandoned after a while, and receive no further patches.

From the release notes for Python 3.7.7:

Python 3.8 is now the latest feature release series of Python 3. Get the latest release of 3.8.x here. We plan to continue to provide bugfix releases for 3.7.x until mid 2020 and security fixes until mid 2023.

Python 3.7.7 is the latest bugfix release of Python 3.7.

There is one more planned release for the 3.7.x branch, 3.7.8. After that only security fixes will be applied until 2023.

3.7.8 candidate 1: 2020-06-15 (expected)

3.7.8 final: 2020-06-27 (expected)

Community
  • 1
  • 1
MatsLindh
  • 37,884
  • 3
  • 33
  • 57
2

Imagine that you have a farm and a tractor, a plow on it and some workers. You want to improve performance in your farm so you buy a new tractor with new features and a new and better plow. Some workers may like to work with it but some others may prefer the classic one because they simply feel more comfortable using it! So the classic lovers want to get a better and bigger plow. So because you are a kind farmer, you upgrade the classic plow as you have eyes on the new tractor.

Now consider farmers as python language developers, farmers as programmers, tractor as python and plow as python versions.

Hope that was useful. :D