Page MenuHomePhabricator

Drop support of Python 3.4
Closed, ResolvedPublic

Description

  • The end of life cycle of Python 3.4 has been reached since 18th March 2019.
  • For Python 2.7 users there is a deprecation warning which is recommondating Python 3.5 or higher
  • A vulnerability was found with Pillow but this package cannot be updated (T239539)
  • Other packages aren't supporting Python 3.4 with new releases any longer like pywinauto, pywin32, pytest

Event Timeline

Xqt triaged this task as Low priority.Dec 1 2019, 6:10 PM

Change 553860 had a related patch set uploaded (by Xqt; owner: Xqt):
[pywikibot/core@master] [tests] Remove CI tests for Python 3.4

https://gerrit.wikimedia.org/r/553860

Change 553861 had a related patch set uploaded (by Xqt; owner: Xqt):
[pywikibot/core@master] [Python] Deprecation warning for Python 3.4

https://gerrit.wikimedia.org/r/553861

Change 553869 had a related patch set uploaded (by Xqt; owner: Xqt):
[pywikibot/core@master] [IMPR] Check whether scripts need Python 3.5 or higher

https://gerrit.wikimedia.org/r/553869

Change 553860 merged by jenkins-bot:
[pywikibot/core@master] [tests] Remove CI tests for Python 3.4

https://gerrit.wikimedia.org/r/553860

Change 553861 merged by jenkins-bot:
[pywikibot/core@master] [Python] Deprecation warning for Python 3.4

https://gerrit.wikimedia.org/r/553861

Dvorapa renamed this task from Drop support for Python 3.4 to Drop support of Python 3.4.Mar 4 2020, 6:45 PM

While waiting to Python 2.7 last release, can we drop Python 3.4?

While waiting to Python 2.7 last release, can we drop Python 3.4?

Together with py 2?

While waiting to Python 2.7 last release, can we drop Python 3.4?

Together with py 2?

Could be

Change 553869 abandoned by Xqt:
[IMPR] Check whether a scripts needs a specific Python version

Reason:
don't remember

https://gerrit.wikimedia.org/r/553869

Change 594106 had a related patch set uploaded (by Xqt; owner: Xqt):
[pywikibot/core@master] [doc] The next tagged release is the last supporting Python 2 and 3.4

https://gerrit.wikimedia.org/r/594106

! In T248376#6045157, @bd808 wrote:
The only place we have py3.4 in Toolforge is on the Kubernetes cluster via an old Jessie based image. We are hoping to deprecate that before July 2020. At the time I write this
there are 107 pods on the Kubernetes cluster using the python3.4 image. It is actually scarily the 2nd most popular image. Php5 is the most popular and also one we need to
deprecate.

Therefore I propose to postpone dropping Python 3.4 until that date.

Python 2 is still in all Toolforge instances too and also popular (maybe still the most popular of all)

Change 594114 had a related patch set uploaded (by Xqt; owner: Xqt):
[pywikibot/core@master] [tests] Potpone dropping python 3.4 and restore testing

https://gerrit.wikimedia.org/r/594114

@bd808: is it known which minor release of Python 3.4 is used there? The reason for askin is that Python 3.4.0 is unable for tests and the minimum Python 3.4 release which can be supported currently is 3.4.1

I think Kubernetes run mostly Flask tools, so most of them will probably not use Pywikibot.

Per @Urbanecm statistics, Python 3.4 does just 0,3 % of Pywikibot Wikimedia wikis traffic in last 30 days:

95884946_451438239027827_7364263355080507392_n.png (173×330 px, 5 KB)

The most used 100 Pywikibot user-agent strings (56 % of all Pywikibot Wikimedia wikis traffic) does not contain any Python 3.4 at all (again in last 30 days):

image.png (308×296 px, 13 KB)

@bd808: is it known which minor release of Python 3.4 is used there?

I think 3.4.2 (https://packages.debian.org/jessie/python3)

Change 594114 abandoned by Xqt:
[tests] Postpone dropping python 3.4 and restore testing

Reason:
Ok, I am fine with dropping this release soon

https://gerrit.wikimedia.org/r/594114

Change 609486 had a related patch set uploaded (by Xqt; owner: Xqt):
[pywikibot/core@master] [4.0] Prepare next release 4.0

https://gerrit.wikimedia.org/r/609486

Change 609486 merged by jenkins-bot:
[pywikibot/core@master] [4.0] Remove Python 2 dependencies

https://gerrit.wikimedia.org/r/609486

Change 610062 had a related patch set uploaded (by Xqt; owner: Xqt):
[pywikibot/core@master] [4.0] Remove code duplication of pwb.py and setup.py

https://gerrit.wikimedia.org/r/610062

Change 610062 merged by jenkins-bot:
[pywikibot/core@master] [4.0] Remove code duplication of pwb.py and setup.py

https://gerrit.wikimedia.org/r/610062

Change 610791 had a related patch set uploaded (by Xqt; owner: Xqt):
[pywikibot/core@master] [4.0] Remove Python 2 code from pywikibot/__init__.py

https://gerrit.wikimedia.org/r/610791

Xqt claimed this task.

Change 610791 merged by jenkins-bot:
[pywikibot/core@master] [4.0] Remove Python 2 code from pywikibot/__init__.py

https://gerrit.wikimedia.org/r/610791

Change 612728 had a related patch set uploaded (by Lokal Profil; owner: Lokal Profil):
[pywikibot/core@master] Drop py3.4 from documentation

https://gerrit.wikimedia.org/r/612728

Change 612728 abandoned by Lokal Profil:
[pywikibot/core@master] Drop py3.4 from documentation

Reason:
Duplicates https://gerrit.wikimedia.org/r/c/pywikibot/core/ /612727

https://gerrit.wikimedia.org/r/612728