From mboxrd@z Thu Jan  1 00:00:00 1970
From: Adolf Belka <adolf.belka@ipfire.org>
To: development@lists.ipfire.org
Subject: Re: Dropping Python 2 (python-distutils & python-distutils-extra)
Date: Wed, 12 May 2021 13:07:18 +0200
Message-ID: <9dfc7131-6980-0eea-201a-eeffa1797cb5@ipfire.org>
In-Reply-To: <74B08C60-EBDB-4C2E-83E0-A5EB5A0C3C5E@ipfire.org>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============5921088596287032473=="
List-Id: <development.lists.ipfire.org>

--===============5921088596287032473==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Hi All,

I was looking at python-distutils and python-distutils-extra as the next file=
s to convert from python2 to python3 but I am wondering if this makes sense.


python-distutils has a lfs file that is missing most of the content. python-d=
istutils is not listed in make.sh so it is not being built. However the rootf=
ile and the addon install are still in place and working.

python-distutils is listed as a dependency for python-distutils-extra. This p=
ackage is provided by Ubuntu launchpad. The current IPFire version is 2.25 fr=
om 2011. The most up to date version available is 2.39 from 2016. There looks=
 to be no more development of this module. This addon package is not listed a=
nywhere in IPFire as a dependency.

Looking up python-distutils in the python.org documentation it says that it h=
as been replaced by python-setuptools.

PyPI indicates that distutils development stopped in 2012 and that setuptools=
 and pip should be used.


The current version of python-setuptools in IPFire is 0.6c11 and the version =
available in PyPI is 56.2.0

It would seem to me that python-distutils and python-distutils-extra should b=
e removed and python-setuptools should be updated to version 56.2.0 and conve=
rted to python3

Is my conclusion reasonable or am I missing things.

Thanks,

Adolf.

On 05/05/2021 16:27, Michael Tremer wrote:
> Hello,
>
> I would like to talk about what has been discussed at the last developer co=
nference call this week: Dropping Python 2
>
> This version of Python has reached its end of life and will no longer recei=
ve any security fixes. Hence we need to get rid of it as soon as possible.
>
> However, there is lots of software that still depends on it which has to be=
 migrated away first.
>
> There are at least the following packages:
>
> boost
> fetchmail
> fireinfo
> iotop
> ipaddr
> libxml2
> libxslt
> newt
> nmap
> python
> python-clientform
> python-daemon
> python-distutils
> python-distutils-extra
> python-docutils
> python-feedparser
> python-inotify
> python-ipaddress
> python-m2crypto
> python-mechanize
> python-optional-src
> python-pyparsing
> python-rssdler
> python-setuptools
> python-six
> python-typing
>
> We also have the following scripts:
>
> config/ca-certificates/certdata2pem.py
> config/unbound/unbound-dhcp-leases-bridge
>
> Fireinfo is written by us and has a lot of C which will make it a little bi=
t more difficult to migrate. We would also have to be very careful to not cha=
nge any behaviour of the current implementation.
>
> The rest is probably either software that is entirely written in Python 2 o=
r software that brings bindings for Python. The latter case is easy because w=
e can either force it to build with Python 3 or we just disable the bindings.
>
> Ultimately we might need to keep Python around in the build system if there=
 are other packages that rely on it. However, it would be great if we were ab=
le to remove it from the distribution very soon. Looking at his list, it does=
 not seem to be too difficult.
>
> Would anyone be up to help and remove Python from any of those packages abo=
ve? I would like to aim for Core Update 158 and remove as much stuff as possi=
ble - if we can everything - and then remove Python 2 in the update after tha=
t. If anyone has any custom scripts or applications, people will have some ti=
me to migrate away.
>
> Best,
> -Michael

--===============5921088596287032473==--