[webkit-dev] Moving to Python 3

Jonathan Bedard jbedard at apple.com
Fri Jul 12 13:04:40 PDT 2019



> On Jul 12, 2019, at 12:49 PM, Michael Catanzaro <mcatanzaro at igalia.com> wrote:
> 
> On Fri, Jul 12, 2019 at 2:18 PM, Jonathan Bedard <jbedard at apple.com> wrote:
>> The trouble I foresee us encountering with any scheme which attempts a conversion which retains both Python 2.7 and Python 3 compatibility is code like this:
> 
> Is python2 support required for a well-motivated transitional purpose?
> 
> I had previously proposed making all our scripts work with both python2 and python3 only because I thought Apple was going to require python2 indefinitely. Now that you're interested in this transition, there's probably no need to continue python2 support. Anyone building WebKit on older versions of macOS can reasonably be expected to manually install python3, right? And it's clear that you're prepared to do this for infrastructure/bots already.

We still need to figure out whether (and for how long) we intend to retain Python 2 support. Over the last few months, opinions on this have changed quite a bit, so I’m trying to determine what our path forward is going to be.

In my opinion, a few months after Catalina GMs, we no longer need to maintain Python 2 support, assuming that we provide adequate automation for installing Python 3 on pre-Catalina macOS (ie, Mojave, High Sierra) and are explicit about shebangs.

> 
> Then million-dollar question is: what shebangs will we use for our scripts? Will #!/usr/bin/env python3 work for Apple?

If we move straight to Python 3, we would need to use the Python 3 shebang. Catalina has both Python 2.7 (name ‘python’) and Python 3 (named ‘python3’). I think that this is what we would want to do because it allows us to pretty explicitly convert scripts one at a time.

> 
> Michael
> 
> 



More information about the webkit-dev mailing list