duplicity-team team mailing list archive
-
duplicity-team team
-
Mailing list archive
-
Message #04658
Re: Help with unicode branch (for Python3 support)
Hello all,
On 16/12/17 15:58, Kenneth Loafman wrote:
I'm sure that we will not want to maintain 2 and 3 versions of the
code, so I'm proposing that we cut off 2.x after the 0.8-series and
make 0.9-series be 3.x and above. Now, since I've been reading, where
do we start in the 3.x Python series? It seems that there's a break in
there, around 3.3 (?) where it would be difficult to maintain
backwards compatibility. I need some advice on this. Is there need
of supporting Python 3.0 thru 3.3?
So are you proposing that we get to full Python 2/3 support in duplicity
0.8 and then cut off the Python 2 support? Or do you mean Python 2 only
for 0.8 and Python 3 only for 0.9?
When we last discussed this:
https://lists.launchpad.net/duplicity-team/msg04087.html
https://lists.nongnu.org/archive/html/duplicity-talk/2017-01/msg00052.html
I think the consensus was that we should support both for one series
before going solely Python 3.
I am a big fan of ditching Python 2 asap, but do not have a strong view
on the process. Whatever the plan, we have a lot of basic work (making
strings clearly unicode/bytes, marking string literals, fixing remaining
2to3 exceptions etc) to do on the Python 2 code base that will help us
get to Python 3. One of the big risks is that we get stuck with an
incomplete Python 3 branch separate to a working Python 2 version, so an
advantage of the 2/3 approach for a series would be that we could at
least push the Python 3 work into trunk and avoid it getting out of sync.
Regarding version, I think Python 3.4 is a sensible minimum version for
now, but I think we bump that to 3.5 in April 2019 (when Ubuntu Trusty
14.04 is EOL and all supported Ubuntu versions are running Python 3.5+).
I would be tempted to take an even more aggressive position (e.g. only
supporting the latest Python 3 version) if we ever start distributing
packages that bundle the requirements (e.g. Snap packages or Flatpak) --
as I understand it, the main reason to support old versions is to let
people retrofit a new, non-system version of duplicity on an old OS,
which those package formats enable. I find it really frustrating not
being able to use a new language feature because of legacy Python support.
Just my thoughts.
Kind regards,
Aaron
Follow ups
References
-
Help with unicode branch (for Python3 support)
From: Aaron, 2017-11-14
-
Re: Help with unicode branch (for Python3 support)
From: Kenneth Loafman, 2017-11-15
-
Re: Help with unicode branch (for Python3 support)
From: Kenneth Loafman, 2017-11-18
-
Re: Help with unicode branch (for Python3 support)
From: Kenneth Loafman, 2017-11-19
-
Re: Help with unicode branch (for Python3 support)
From: Aaron, 2017-11-29
-
Re: Help with unicode branch (for Python3 support)
From: Kenneth Loafman, 2017-12-01
-
Re: Help with unicode branch (for Python3 support)
From: Aaron, 2017-12-02
-
Re: Help with unicode branch (for Python3 support)
From: Kenneth Loafman, 2017-12-02
-
Re: Help with unicode branch (for Python3 support)
From: Kenneth Loafman, 2017-12-03
-
Re: Help with unicode branch (for Python3 support)
From: Kenneth Loafman, 2017-12-16