On 02/09/07, Phillip J. Eby <pje@telecommunity.com> wrote:
At 01:12 PM 9/2/2007 -0700, Toshio Kuratomi wrote:
What is the real way to allow people to do quick and dirty scripting and experimentation from the interpreter shell in this environment?
Either:
1. Select the desired default version using "easy_install package==version", or 2. Have *no* default version, and always use require() (or automatically-managed dependencies declared via a setup.py script).
Is it really setuptools job to attempt to address "quick & dirty scripting" or "interactive experimentation" ? I mean, as I understand it, easy_install is specifically about giving you a clean painless install of a piece of python software without having to care about the details and without needing to understand anything about python. But the expectations and needs of the user in Toshio's scenario are completely at odds with this. This is a person who is clearly interested in, or needs to understand, the details of some piece of python software but who does not want to be concerned with all the horrors of installation / distribution management. Or perhaps it's simply a person who is *considering* system wide installation of some python package and wishes to "try before they buy". I frequently want to do exactly this sort of thing - often in circumstances where I can not count on having a consistent setuptools environment. Or, where I want to use a mix of installed and non installed python packages. I almost always need to deal with a mix of distutils installed, egg installed and plain old python. Occasionally I'm in the situation where I have a setuptools egg on disc, I'd like to use it, but I do not want to or simply can't install it. Almost by definition anything that needs to be "installed" is not going to help; Bootstrapping issues abound. But I *know* roughly where the python code is that I want to make use of. And heck & damn it all; There are a great many python packages whose source distributions are perfectly capable of running in place - why should I have to "install" such software before I'm satisfied it makes a useful addition to my system ? In something of a fit of frustration I wrote this ~1000 line python module: http://svn.wiretooth.com/svn/open/pyrun/trunk/pyrun.py http://svn.wiretooth.com/svn/open/pyrun/trunk/pyrun.html wget is all the installation it needs. The -i -d and -p modes of operation are the ones I think might address "quick & dirty scripting" and "experimentation" from Toshios scenario. I've not released it on cheeseshop because I wasn't really convinced there would be much demand. And also because I didn't like the thought that it might be confused as "general script stub" - I really would not like to encounter a site installed script that used pyrun.py to shim around installation / packaging issues. I'm not sure I fully appreciate the issues your facing Toshio but your posts struck something of a chord with me. If you think pyrun.py can be made to help please let me know. Cheers, Robin