[Scons-users] scons 3.0.0 bug: Help() and site_tools

Bill Deegan bill at baddogconsulting.com
Sat Oct 14 17:35:34 EDT 2017


Bug should be fixed in master branch now.

https://github.com/SConsProject/scons/pull/14

It should have happened anytime you ran with python 3.5+ whether you called
Help() or not.
It was a bug in the logic used only when using python 3.5+.
(The way python imports modules changed with python 3 thus requiring
different code for py 3.5+ to load Tools)

Please try what's in master and let me know if you still see it.

Thanks,
Bill
p.s. Good catch!

On Fri, Oct 13, 2017 at 10:31 AM, Bassem Girgis <brgirgis at gmail.com> wrote:

> Thanks Bill for looking into it! Somehow I can not include your replies in
> my emails.
>
> However, by now I'm sure you have found that these paths gets added to the
> environment by the mere fact that site_tools directory and Help() exist in
> the same project. If any of these two components is missing, we don't get
> the repeated paths. And the site_tools directory does not have to contain
> any file for this to happen.
>
> It is true that these paths does not affect the build but it could be a
> source of performance degradation for large projects. I hope this info
> helps!
>
>
> Bassem Girgis, PhD
>
> Email: brgirgis at gmail.com
>
> On Thu, Oct 12, 2017 at 2:40 AM, Bassem Girgis <brgirgis at gmail.com> wrote:
>
>> Hi All,
>>
>> I have found another issue with scons 3.0.0 and python3. This issue is
>> visible if you have a simple project that uses both the Help() function and
>> also have a site_scons/site_tools directory. It is not there with python
>> 2.7.13.
>>
>> As you can see below the path to site_tools is added many times
>> unnecessarily.
>>
>> scons: Reading SConscript files ...
>> session python path:['/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src//site_scons/site_tools',
>>                           '/path/to/src/',
>>                           '/path/to/src//site_scons',
>>                           '/usr/bin/../engine',
>>                           '/usr/bin/scons-local-3.0.0',
>>                           '/usr/bin/scons-local',
>>                           '/usr/lib/scons-3.0.0',
>>                           '/usr/lib/scons-3.0.0',
>>                           '/usr/local/lib/scons-3.0.0',
>>                           '/usr/lib/python3.6/site-packages/scons-3.0.0',
>>                           '/usr/lib/python3.6/site-packages/scons-3.0.0',
>>                           '/usr/local/lib/python3.6/site
>> -packages/scons-3.0.0',
>>                           '/usr/lib64/scons-3.0.0',
>>                           '/usr/lib/scons',
>>                           '/usr/lib/scons',
>>                           '/usr/local/lib/scons',
>>                           '/usr/lib/python3.6/site-packages/scons',
>>                           '/usr/lib/python3.6/site-packages/scons',
>>                           '/usr/local/lib/python3.6/site-packages/scons',
>>                           '/usr/lib64/scons',
>>                           '/usr/lib/python36.zip',
>>                           '/usr/lib64/python3.6',
>>                           '/usr/lib64/python3.6/lib-dynload',
>>                           '/home/username/.local/lib/pyt
>> hon3.6/site-packages',
>>                           '/usr/lib64/python3.6/site-packages',
>>                           '/usr/lib64/python3.6/site-packages/PIL',
>>                           '/usr/lib64/python3.6/_import_failed',
>>                           '/usr/lib/python3.6/site-packages']
>> scons: done reading SConscript files.
>> scons: Building targets ...
>> scons: `.' is up to date.
>> scons: done building targets.
>>
>> Please find attached a simple project that reproduces the issue.
>>
>> Bassem Girgis, PhD
>>
>> Email: brgirgis at gmail.com
>>
>
>
> _______________________________________________
> Scons-users mailing list
> Scons-users at scons.org
> https://pairlist4.pair.net/mailman/listinfo/scons-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20171014/da1191fd/attachment.html>


More information about the Scons-users mailing list