[Scons-dev] Hummm... rant on

Bill Deegan bill at baddogconsulting.com
Sun Mar 2 15:37:30 EST 2014


That's cruft leftover from Greg Noel.
I actually made a change many moons ago so you're test environment could be
setup based on your PATH, thus reducing the number of VM's needed to test
different combinations of tools.
It gets ridiculous really fast otherwise.

Greg pulled it all out with some curmudgeonly reason and it never got
reverted from that point.

I would be supportive of enabling test environment to pick up tools from
the USER path, and not some hardcoded path anywhere in the tools or test
framework.

-Bill




On Sun, Mar 2, 2014 at 11:55 AM, Gary Oberbrunner <garyo at oberbrunner.com>wrote:


> As far as I understand it, env.Detect calls env.WhereIs with path=None,

> which means it uses env['ENV']['PATH']. By default, a new Environment

> doesn't inherit the user's shell environment into env['ENV'], but users can

> modify it as they want. So in a real user's code, the path Detect will use

> depends on what they put into their SConstruct.

>

> I see your point about the tests being more lenient in where they look; it

> makes it hard to skip tests reliably. Perhaps the tests that do that

> should add their executable's dir to env['ENV']['PATH'] when running the

> tests? If you like that, perhaps we could codify it by making it easy to

> do from the test framework.

>

>

>

> On Sun, Mar 2, 2014 at 2:40 PM, Russel Winder <russel at winder.org.uk>wrote:

>

>> I think I have ranted about this before, but the red haze must have been

>> so strong I failed to note the well reasoned responses you folk will

>> have provided.

>>

>> The core problem is that TestSCons.TestSCons().where_is(x) uses the

>> user's path for executable look up whereas Environment.Detect(x) does

>> not. Thus canonical, idiomatic tests (based on the tests in the SCons

>> codebase) are inconsistent with canonical, idiomatic tools (based on the

>> tools in the SCons codebase). Basically there is a fundamental

>> assumption that all executables are in (for Linux and OSX) /usr/bin

>> without fail, and that anything else is unacceptable.

>>

>> If the assumption SCons wants to make is that there is /usr/bin and

>> nothing else fine, but the tests framework should reflect that - even

>> though it would be wrong ;-)

>>

>> So can someone ignore all the tests of the SCons system and tell me how

>> to make the decision in a test of whether env.Detect(x) will find the

>> executable.

>>

>> I'm off for more Ricard so all future emails tonight will be

>> incomprehensible...

>>

>> --

>> 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

>> http://two.pairlist.net/mailman/listinfo/scons-dev

>>

>

>

>

> --

> Gary

>

> _______________________________________________

> Scons-dev mailing list

> Scons-dev at scons.org

> http://two.pairlist.net/mailman/listinfo/scons-dev

>

>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://two.pairlist.net/pipermail/scons-dev/attachments/20140302/a2a6e479/attachment.htm>


More information about the Scons-dev mailing list