[PATCH evolve-ext v2] py3: broad pass for python3 compatibility

Pierre-Yves David pierre-yves.david at ens-lyon.org
Thu Jul 25 06:35:04 EDT 2019

For those following at home:

* We now have a evolve + py3 build https://ci.octobus.net/job/EvolvePy3/

* Martin's patch that apply most of the py3 compatibility changes have 
been merged (and should be in the next evolve version).

* Raphaƫl is now looking into using format-source + the 
`byteify-strings.py` script to produce the last necessary patch.

There are a couple of reasons why we would like to take that route. 
First, code-formatting is becoming an important topic, we need features 
like format-source to work smoothly. Having more dog fooding in 
repositories closer to core-developer is important. Second, there will 
be more important extensions to convert (eg: hg-git, hg-subversion, 
etc). Investing in making the tooling (both format-source and 
byteify-string) simpler to use should help with their migrations.

On 7/2/19 4:58 PM, Ludovic Chabant wrote:
>> I'm curious to hear what Ludovic thinks, but I'm doubtful that saves
>> other contributors more time than it costs for Ludovic, so it's a net
>> negative.
>> I assume you know that Python 2's end of life is Jan 1 2020, so this
>> is getting urgent. I don't know about others, but my team will need to
>> have Mercurial and extensions on Python 3 by then.
> At this point it's not too costly for me to update the patch (although
> it's a bit annoying), especially since I'm not even running any tests
> yet at this point: I just need a py3 mercurial that doesn't crash when
> evolve is enabled, and seems to run ok for pull/push.
> However, I would indeed prefer if someone from Octobus was to take it
> away from me and deal with it ASAP. It's blocking several new features
> for sourcehut, and, indeed, py3 EOL is approaching fast and both Drew
> (lead dev on sourcehut) and Alpine (the distro on which sourcehut runs)
> have aggressive timelines to completely remove any trace of py2 before
> that date.
> Plus, if someone from Octobus was to take this, it could also be part of
> a broader "kickstart py3 support" task that would include setting up py3
> builds on the CI, and other related tasks.
> Cheers!

Pierre-Yves David

More information about the Mercurial-devel mailing list