[Scons-dev] scons --tree=status raises an exception

Joel Ostraat joel.ostraat.os at gmail.com
Thu Sep 29 10:25:34 EDT 2016


I chatted with Bill Deegan on IRC yesterday.  He encouraged me to file a
bug report (http://scons.tigris.org/issues/show_bug.cgi?id=3033) and ask
how this might be fixed.  To reiterate my thoughts and questions from the
bug report:

Looking into it a little, I think that SCons.Node.FS.File.executor should
never be None.  The uses of get_executor() prior to this change seem to
expect it to return either a valid Executor object, or raise an exception
leaving the executor attribute non-existent.

I was able to prevent the problem by changing the line
https://bitbucket.org/scons/scons/commits/a8570fab2b7b2f3f1ce520528908904b9584e1f9#Lsrc/engine/SCons/Node/FS.pyT2786
to self.reset_executor() and removing a few other checks for "self.executor
is None" also added in that commit.  But I don't know if that's the right
solution.

Perhaps there is some extra meaning meant to be conveyed when that executor
attribute is be None.  If that's true, then there are many other places
where the return value of get_executor() should be checked against None.

I've been using SCons for a while, but know very little about the internals
of SCons.  Any direction on how to fix this would be appreciated.

Thanks,
Joel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist2.pair.net/pipermail/scons-dev/attachments/20160929/03bb21c1/attachment.html>


More information about the Scons-dev mailing list