[Scons-dev] python3-port branch merged to default and then closed

Bill Deegan bill at baddogconsulting.com
Thu May 26 12:47:20 EDT 2016


Russel,

Can you refresh my memory what futurize -2 does?

I'm pretty sure no automated script is going to resolve the remaining
issues based on spending some time on them.
The main issues with the tests besides the tool loading was that the logic
which checks the expected output has /n and when running on windows the
\n\r breaks it since it's not handled when loading the file as bytes rather
than as a normal text file.

Likely there's a simple fix but I ran out of steam and time for a bit.

-Bill

On Wed, May 25, 2016 at 10:26 PM, Russel Winder <russel at winder.org.uk>
wrote:

> On Mon, 2016-05-23 at 16:39 -0700, Bill Deegan wrote:
> > Greetings,
> >
> > After a bunch of work py2 is passing all tests on python3-port
> > branch.
> > So I've merged that to default and closed the python3-port branch.
>
> Thanks for all your work on this, it's great to have a single branch
> that is the focus of all effort.
>
> > All further changes/pull requests for py2/3 should be done against
> > default.
>
> I will try and get the "futurize -2" stuff going now. I think there are
> no remnants of the earlier six based effort that are not consistent
> with future. I think the six based effort was well worth it when it was
> tried, but now we do not have to support 2.6 removing six and using
> future is the right thing to do.
>
> > Currently the bulk of the py3 issues are the following:
> > 1) dynamic loading of python modules (Specifically the tool modules)
> > doesn't work with the imp module (which is what's currently used) and
> > works
> > differently under python3. I have some trial work using importlib
> > which is
> > used when run under python3 (see src/engine/SCons/Tool/__init__.py
> > and
> > search for importlib)
>
> There may be alternate ways of achieving the goal here rather than just
> trying to port. I'll see if I can get into this as soon as I have my
> DevoxxUK 2016 and /dev/summer 2016 sessions prepared.
>
> > 2) many tests are failing based on unicode/str differences.  In many
> > cases
> > this is due to diff'ing done in scons's test infrastructure expecting
> > ascii
> > string (py2) and not unicode (py3) or byte (py3).
>
> I am fairly sure the futurize -2 phase deal with this.  I suspect that
> if we start having to do anything manual about this, we are doing it
> wrong. :-)
>
>
> On Debian Sif with Python 2.7.11+ (I have no idea why the +) I still
> get the errors:
>
> Failed the following 7 tests:
>         test/D/GDC.py
>         test/D/GDC_Alt.py
>         test/D/HelloWorld/CompileAndLinkOneStep/sconstest-gdc.py
>         test/D/HelloWorld/CompileThenLinkTwoSteps/sconstest-gdc.py
>         test/D/Issues/2939_Ariovistus/sconstest-
> correctLinkOptions_gdc.py
>         test/D/Issues/2940_Ariovistus/sconstest-
> correctLinkOptions_gdc.py
>         test/VariantDir/VariantDir.py
>
> and a whole slew of no results, a few of which I am not convinced
> should be no results – I'll investigate further. For the GDC fails
> above I think we know the problem causing this: a Debian packaging
> problem between the gdc and ldc packages. This is therefore a null
> problem for the SCons codebase. The knock-on consequence for SCons
> BuildBots and any other CI is that you cannot have both gdc and ldc
> installed and Debian (and Ubuntu and Mint?) and expect to get a green.
> I have asked the appropriate people to "do something", but…
>
> The VariantDir fail is definitely gfortran related. If the test relies
> on the -lg2c flag then perhaps it should test for its presence with the
> gfortran being used? If the -lg2c option is not needed then mayhap we
> should get rid of it?
>
>
> |> ./runtest.py test/VariantDir/VariantDir.py
> 1/1 (100.00%) /usr/bin/python -tt test/VariantDir/VariantDir.py
> /home/users/russel/Repositories/Mercurial/SCons/src/script/scons.py
> returned 2
> STDOUT
> =========================================================================
> scons: Reading SConscript files ...
> scons: done reading SConscript files.
> scons: Building targets ...
> gfortran -o build/var1/b1.o -c -Isrc build/var1/b1.f
> buildIt(["build/var1/b2.f"], ["build/var1/b2.in"])
> gfortran -o build/var1/b2.o -c -Isrc build/var1/b2.f
> gfortran -o build/var1/bar1 build/var1/b1.o -lg2c
> scons: building terminated because of errors.
>
> STDERR
> =========================================================================
> /usr/bin/ld: cannot find -lg2c
> collect2: error: ld returned 1 exit status
> scons: *** [build/var1/bar1] Error 1
>
> FAILED test of
> /home/users/russel/Repositories/Mercurial/SCons/src/script/scons.py
>         at line 607 of
> /home/users/russel/Repositories/Mercurial/SCons/QMTest/TestCommon.py
> (_complete)
>         from line 710 of
> /home/users/russel/Repositories/Mercurial/SCons/QMTest/TestCommon.py (run)
>         from line 391 of
> /home/users/russel/Repositories/Mercurial/SCons/QMTest/TestSCons.py (run)
>         from line 234 of test/VariantDir/VariantDir.py
>
>
>
> --
> Russel.
>
> =============================================================================
> Dr Russel Winder      t: +44 20 7585 2200   voip:
> sip:russel.winder at ekiga.net
> 41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel at winder.org.uk
> London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder
> _______________________________________________
> Scons-dev mailing list
> Scons-dev at scons.org
> https://pairlist2.pair.net/mailman/listinfo/scons-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist2.pair.net/pipermail/scons-dev/attachments/20160526/62456e9e/attachment-0001.html>


More information about the Scons-dev mailing list