I've been casually looking at this for a while. The main sticking point right now is that the current thinking is that we need to maintain Windows XP support, which means python 3.48 is the last version we can use. It is not easy to setup a development environment for pre 3.5 python as it requires compiling everything yourself (I did it and it is not for the faint of heart). Additionally the UI needs to be ported, and I ran into lots if issues using e.g. 2to3 and futurize. I'll try to dig out what I found and send an update on that effort. 


-------- Original message --------
From: Jens via chirp_devel <chirp_devel@intrepid.danplanet.com>
Date: 8/21/18 12:35 PM (GMT-08:00)
To: chirp_devel@intrepid.danplanet.com
Subject: Re: [chirp_devel] FYI: Python 2 Deprecation

+1
Also useful
https://pythonclock.org/

I wonder how much of the refactoring effort can be done by crowdsourcing from casual devs like myself. 

On Aug 21, 2018, at 2:01 PM, Jim Lieb via chirp_devel <chirp_devel@intrepid.danplanet.com> wrote:

Hi,

I'm currently working on the Wouxun KG-UV9D Plus driver. I was also an open source developer, particularly Linux and pNFS before I retired and I'm still connected to the community.

 

I'm on the Fedora Linux development distribution listserv and I received a devel list digest yesterday containing the following:

 

<quote>

Date: Mon, 20 Aug 2018 16:41:02 -0400

From: Ben Cotton <bcotton@redhat.com>

Subject: Fedora 30 System-Wide Change proposal: Mass Python 2 Package

Removal

To: devel@lists.fedoraproject.org,

devel-announce@lists.fedoraproject.org

Message-ID:

<CA+voJeVEOTQsq344WgzGoMMO7b2MhXBrHLwB8p3N_6+pJzEjEg@mail.gmail.com>

Content-Type: text/plain; charset="UTF-8"

</quote>

 

The wiki page is the contents of the digest message.

 

https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal

 

This proposed action is targeted for Fedora 30. For those unfamiliar with the distribution, we are currently at F28, released a few months ago. F29 will come out in mid-late Fall '18 (more or less) and F30 will come out in late Spring '19. As a proposal at this stage, it still needs to be approved by the team but given the source of the proposal and what the team has been discussing for the last few cycles, this is more than a probable action. Red Hat has already expended a lot of effort to get everything it maintains (a large part of its infrastructure) moved to Python3 and is motivated to reduce its technical debt.

 

What this means to Chirp is that its base interpreter infrastructure will no longer be available a year from now.

 

This train has been heading for end-of-track for a good while and now there is a serious date. I would not be surprised if other distributions such as Ubuntu will be doing the same given the same resource constraints. In addition, with the shakeup in the Python community with the resignation of Guido, there is not going to be a lot of mindshare/commitment to maintaining the old code base. They have already posted an EOL (Jan 1, 2020) for Python 2.x support.

 

The Linux distribution community is very conservative about deprecating old technologies but they are also very cautious about getting out on a limb supporting technologies/versions that upstream has abandoned.

 

In terms of distribution support, this means that Chirp needs to move to Python3 very soon. The pipeline for submitting packaging for Fedora 30 will close in about 6 months because F30 has code freeze milestones for packages. See:

 

https://fedoraproject.org/wiki/Releases/30/Schedule

 

for details. I have also worked for other distributions (Ubuntu) and they do the same thing. For those on other platforms such as Windows or OX/X, the situation may be even more at risk.

 

Jim KB6QT

--

Jim Lieb

 

Mobile: 831-295-9317

GPG Key: 79BB52C7BD0530F5

 

"If ease of use was the only requirement, we would all be riding tricycles"

- Douglas Engelbart 1925–2013

_______________________________________________
chirp_devel mailing list
chirp_devel@intrepid.danplanet.com
http://intrepid.danplanet.com/mailman/listinfo/chirp_devel
Developer docs: http://chirp.danplanet.com/projects/chirp/wiki/Developers