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

Russel Winder russel at winder.org.uk
Thu May 26 01:26:36 EDT 2016


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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <https://pairlist2.pair.net/pipermail/scons-dev/attachments/20160526/97b89f55/attachment.pgp>


More information about the Scons-dev mailing list