Project

General

Profile

Actions

Task #5095

closed

Switch build system to python3 only

Added by Davide Pesavento about 4 years ago. Updated about 4 years ago.

Status:
Closed
Priority:
Normal
Category:
Build
Target version:
Start date:
Due date:
% Done:

100%

Estimated time:

Description

Python 2 reached its EOL on Jan 1, 2020

macOS 10.15 deprecated python and python2, urging users to switch to python3 (3.7.3 at the moment). It is very likely that macOS 10.16 will not include python 2 anymore. Homebrew does not offer a python 2 formula anymore.
Ubuntu 18.04 comes with python 3.6 only in the default install. 2.7 is still available in the official repo, but it's an additional package that we're requiring users to install.
CentOS 8 similarly does not provide python 2 by default, and goes a step further by not providing a /usr/bin/python symlink even if python 2 is installed by the user. Other RHEL-derived distros are presumably following the same approach.
Fedora uses python 3 as default since version 23, and has recently switched /usr/bin/python to point to python 3 with the Fedora 31 release.
Debian is working on removing python 2 support.
On Arch Linux, python 3 has been the default for several years.
Gentoo has a configurable /usr/bin/python symlink, pointing to python 3 by default.

It's time to switch our build system (waf) to require python 3. Initially the minimum required version should be 3.5 in order to support Ubuntu 16.04; after #5087, the requirement can be raised to >=3.6.


Related issues 1 (0 open1 closed)

Blocks NFD - Task #5040: Deploy CentOS 8 Jenkins agentsClosedDavide Pesavento

Actions
Actions #1

Updated by Davide Pesavento about 4 years ago

  • Blocks Task #5040: Deploy CentOS 8 Jenkins agents added
Actions #2

Updated by Davide Pesavento about 4 years ago

  • Description updated (diff)
Actions #3

Updated by Davide Pesavento about 4 years ago

  • Description updated (diff)
Actions #4

Updated by Eric Newberry about 4 years ago

What is the version of Python 3 provided by CentOS 8? Is it >= 3.5? I know they tend to have older versions than Ubuntu uses.

Actions #5

Updated by Davide Pesavento about 4 years ago

Eric Newberry wrote:

What is the version of Python 3 provided by CentOS 8? Is it >= 3.5?

It has 3.6.x if I remember correctly, but in any case it's not older than what ubuntu 16.04 provides, otherwise I wouldn't have suggested 3.5 as minimum version.

Actions #6

Updated by Eric Newberry about 4 years ago

Davide Pesavento wrote:

Eric Newberry wrote:

What is the version of Python 3 provided by CentOS 8? Is it >= 3.5?

It has 3.6.x if I remember correctly, but in any case it's not older than what ubuntu 16.04 provides, otherwise I wouldn't have suggested 3.5 as minimum version.

Ok cool, just wanted to make sure since it wasn't mentioned above. :-)

Actions #7

Updated by Davide Pesavento about 4 years ago

  • % Done changed from 0 to 20
Actions #8

Updated by Davide Pesavento about 4 years ago

  • % Done changed from 20 to 30
Actions #9

Updated by Davide Pesavento about 4 years ago

  • % Done changed from 30 to 50
Actions #10

Updated by Davide Pesavento about 4 years ago

  • Status changed from In Progress to Closed
  • % Done changed from 50 to 100
Actions

Also available in: Atom PDF