On Mon, 26 May 2014 08:44:51 -0400, Roy Smith wrote: >> That makes even less sense. The build system runs under whatever >> version of Python it needs, and your code runs under whatever version >> of Python you like. The two don't affect each other at run time, and >> don't affect each other's testing dependencies. > > The are tightly integrated, and share code.
Well there's your problem, right there. Tight coupling is a *bad* thing, you're supposed to minimize it, not maximize it :-) I'm having trouble understanding why your build system should be integrated with your production code. You should, in principle, be able to replace your build system with one written in Perl or bash without having to touch a single line of your application. If what you say is correct, your design tends towards the sort of perplexing errors like "We added extra debugging code to the build script, and now the application won't print!" The programmer's attitude towards tightly coupled code ought to be like Batman's attitude towards crime: something to be stamped out, at any cost, unless it is absolutely for the purpose of a higher cause. In Batman's case that higher cause is justice and the good of Gotham City. What's your higher cause? -- Steven D'Aprano http://import-that.dreamwidth.org/ -- https://mail.python.org/mailman/listinfo/python-list