Peter Maydell <peter.mayd...@linaro.org> writes: > On 31 August 2017 at 07:35, Markus Armbruster <arm...@redhat.com> wrote: >> So, first we'll invest in work-arounds to make both 2 and 3 work. Once >> 2 is gone, we can invest some more to clean them up. Which probably >> won't happen, so we'll continue to carry work-arounds that no longer >> make sense. >> >> I maintain roughly one fourth of all Python code in qemu, and I'm not >> looking forward to this hoop-jumping at all. >> >> Are we really, really sure we want to go this way? What exactly are we >> hoping to accomplish by it? > > My take is that we have the following goals we want to achieve: > > (1) We need to continue to build and run on older (long-term-support) > distros that still ship only Python 2.x (alas even back to 2.6)
That's an assertion, not an answer to my question :) What exactly are we hoping to accomplish by supporting what distros exactly? > (2) We need to be able to build and run on newer distros that > have dropped Python 2 altogether in favour of Python 3 > (I don't know if there are any such today, but presumably by > 2020 there will be) Yup. > Unless we can confidently say that either (1) or (2) is the > empty set, we need to handle both 2 and 3 in the same codebase. > This is a pain, but unfortunately Python upstream have forced > us into it by breaking source code compatibility. > > I think (1) is pretty clearly not (yet) an empty set, so the > only alternative I see to "support 2 and 3 now" is "keep supporting > only 2 for the moment and hope that no distro drops 2 support > before all the LTS 2-only distro versions vanish into history". I don't buy the "clearly" in "pretty clearly not (yet) an empty set", because I don't understand *why* we need to support "older (long-term-support) distros". If we can leave Python 2 behind, I'm all for porting to Python 3 now. If we can't yet, then I don't see why I should do work *now* just because "some" distro might drop support for Python 2 "before all the LTS 2-only distro versions vanish into history". If it ain't broke, don't fix it!