[Scons-dev] Re PR #171

anatoly techtonik techtonik at gmail.com
Mon Sep 8 06:35:32 EDT 2014


On Mon, Sep 8, 2014 at 12:56 PM, Gary Oberbrunner <garyo at oberbrunner.com> wrote:
> On Mon, Sep 8, 2014 at 4:16 AM, anatoly techtonik <techtonik at gmail.com>
> wrote:
>>
>> On Sun, Aug 31, 2014 at 8:54 PM, Gary Oberbrunner <garyo at oberbrunner.com>
>> wrote:
>> > On Sun, Aug 31, 2014 at 1:42 PM, Russel Winder <russel at winder.org.uk>
>> > wrote:
>> >>
>> >> The whole ASCII string / Unicode codepoint sequence thing brings the
>> >> Python 2/Python 3 thing to a head. If we want a codebase that runs
>> >> under
>> >> both Python 2 and Python 3 then we almost certainly have to use six to
>> >> provide the indirection layer for things like strings (unless we write
>> >> our own). Alternatively the Python 3 codebase can be separate (which is
>> >> what Anatoly was advocating if I remember correctly) and then do
>> >> careful
>> >> cherry picks from the Python 2 codebase.
>> >
>> > six.py is now included in the python3 branch.  At this point not
>> > everything
>> > works (still a long way from it) but I see no showstopping issues that
>> > have
>> > cropped up yet.  (By showstopping I mean something that would prevent
>> > shipping a single codebase that works in 2.7 and 3.x.)
>>
>> With new workflow can you rebase Python 3 changes on top of current
>> HEAD so that it becomes a single lineage of commits and make them
>> drafts?
>
> So far I have just merged the default branch into python3 periodically
> rather
> than rebasing it onto default, which would change the commit IDs.  This
> seems OK so far.

I doubt that it is possible to do a good review of the ported code, but it will
at least make it more suitable for review. In ideal world there should be
incremental enhancements so that the final Python 3 merge won't end up
with FUBAR.

>> This way everybody can see what it takes to go Python 3 step by
>> step. (Too bad there are no hostings that support Evolve extension yet).
>>
>> Have also tried https://github.com/python-modernize/python-modernize ?
>
> The python3 branch already has had 2to3 run on it, as the very first step I
> believe.
> What does python-modernize add?  It says it's a very thin shim around 2to3.

2to3 makes code incompatible with Python 2.

With modernize it is possible to go one fixer at a time and bisect errors later.
-- 
anatoly t.


More information about the Scons-dev mailing list