Hi Brian,<br><br>I ran into some more issues installing IPython on a different machine. This machine runs Python 2.4 and it seems that some of the IPython code is now using the 'with' statement, which I don't think is included in Python 2.4. Is 2.4 no longer supported?<br>
<br>The trace from my setup.py install attempt has been copied at the end of the message.<br><br>Thanks,<br>~Doug<br><br>Note: I'd already executed a python setup.py build without error.<br><br> python setup.py install --prefix=$HOME/local<br>
============================================================================<br>BUILDING IPYTHON<br>                python: 2.4.4 (#1, Jul 29 2007, 19:42:10)  [GCC 4.1.1<br>                        (Gentoo 4.1.1-r3)]<br>              platform: linux2<br>
<br>OPTIONAL DEPENDENCIES<br>        Zope.Interface: yes<br>               Twisted: 2.5.0<br>              Foolscap: 0.2.8<br>               OpenSSL: 0.6<br>                sphinx: 0.3<br>              pygments: 0.10<br>                  nose: 0.10.3<br>
               pexpect: 0.999<br>running install<br>running build<br>running build_py<br>running build_scripts<br>running install_lib<br>byte-compiling /home/djones/local/lib/python2.4/site-packages/IPython/config/config.py to config.pyc<br>
  File "/home/djones/local/lib/python2.4/site-packages/IPython/config/config.py", line 49<br>    with raw(self):<br>           ^<br>SyntaxError: invalid syntax<br>byte-compiling /home/djones/local/lib/python2.4/site-packages/IPython/kernel/contexts.py to contexts.pyc<br>
  File "/home/djones/local/lib/python2.4/site-packages/IPython/kernel/contexts.py", line 171<br>    with parallel as pr:<br>                ^<br>SyntaxError: invalid syntax<br>running install_scripts<br>changing mode of /home/djones/local/bin/pycolor to 755<br>
changing mode of /home/djones/local/bin/ipengine to 755<br>changing mode of /home/djones/local/bin/ipcontroller to 755<br>changing mode of /home/djones/local/bin/ipcluster to 755<br>changing mode of /home/djones/local/bin/ipython to 755<br>
changing mode of /home/djones/local/bin/irunner to 755<br>running install_data<br>Traceback (most recent call last):<br>  File "setup.py", line 174, in ?<br>    setup(**setup_args)<br>  File "/usr/lib/python2.4/distutils/core.py", line 149, in setup<br>
    dist.run_commands()<br>  File "/usr/lib/python2.4/distutils/dist.py", line 946, in run_commands<br>    self.run_command(cmd)<br>  File "/usr/lib/python2.4/distutils/dist.py", line 966, in run_command<br>
    cmd_obj.run()<br>  File "/usr/lib/python2.4/distutils/command/install.py", line 510, in run<br>    self.run_command(cmd_name)<br>  File "/usr/lib/python2.4/distutils/cmd.py", line 333, in run_command<br>
    self.distribution.run_command(command)<br>  File "/usr/lib/python2.4/distutils/dist.py", line 966, in run_command<br>    cmd_obj.run()<br>  File "/home/djones/ipython_src/ipython/setupext/install_data_ext.py", line 75, in run<br>
    (out, _) = self.copy_file(f, dir)<br>  File "/usr/lib/python2.4/distutils/cmd.py", line 376, in copy_file<br>    dry_run=self.dry_run)<br>  File "/usr/lib/python2.4/distutils/file_util.py", line 117, in copy_file<br>
    if not os.path.isfile(src):<br>  File "/usr/lib/python2.4/posixpath.py", line 208, in isfile<br>    st = os.stat(path)<br>TypeError: coercing to Unicode: need string or buffer, list found<br><br><br><br><br>
<div class="gmail_quote">On Wed, Jun 11, 2008 at 4:49 PM, Brian Granger <<a href="http://ellisonbg.net">ellisonbg.net</a>@<a href="http://gmail.com">gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">> Connecting with the MultiEngineClient is working now. It seems that it was<br>
> simply from passing the wrong arguments to the constructor that I was having<br>
> problems before.<br>
><br>
> All in all, I think the furl files are an improvement and the addition of<br>
> secure connections is certainly appreciated.<br>
<br>
</div>Thanks for the feedback.  We _really_ needed to address the security<br>
issue and I think Foolscap and the furls really work well.  They give<br>
a high level of security, but make it pretty easy to setup.<br>
<font color="#888888"><br>
Brian<br>
</font><div><div></div><div class="Wj3C7c"><br>
> Thanks,<br>
> ~doug<br>
><br>
> On Tue, Jun 10, 2008 at 4:22 PM, Brian Granger <<a href="http://ellisonbg.net" target="_blank">ellisonbg.net</a>@<a href="http://gmail.com" target="_blank">gmail.com</a>><br>
> wrote:<br>
>><br>
>> > Thanks for the information. I thought I had used the configuration<br>
>> > creation<br>
>> > command to create .furl files in my home directory. Right now, i'm using<br>
>> > mpiexec to start the engines, so perhaps this is creating some sort of<br>
>> > issue<br>
>> > with the shell environment the engines are created in. I'll double check<br>
>> > and<br>
>> > let you know if I continue to have problems.<br>
>><br>
>> Hmm, if you are editing the ipython config files to set the locations<br>
>> of the furl files, that should work.  Maybe the only thing you need to<br>
>> change is how you are creating the MultiEngineClient.<br>
>><br>
>> It no longer takes the (ip, port) tuple.  It now takes the name of the<br>
>> furl file, or if empty it will use the location given in the config<br>
>> files.<br>
>><br>
>> Keep me posted.<br>
>><br>
>> Brian<br>
>><br>
>> > ~doug<br>
>> ><br>
>> ><br>
>> > On Tue, Jun 10, 2008 at 3:55 PM, Brian Granger <<a href="http://ellisonbg.net" target="_blank">ellisonbg.net</a>@<a href="http://gmail.com" target="_blank">gmail.com</a>><br>
>> > wrote:<br>
>> >><br>
>> >> This is not a unicode error, but rather, our API for starting the<br>
>> >> client has changed due to the new security stuff.  This is the stuff<br>
>> >> that I am working on documenting as we speak.<br>
>> >><br>
>> >> Here is a minimal description:<br>
>> >><br>
>> >> 1) When the controller now starts, it creates a set of files (in your<br>
>> >> .ipython directory by default)<br>
>> >><br>
>> >> ipcontroller-tc.furl<br>
>> >> ipcontroller-mec.furl<br>
>> >> ipcontroller-engine.furl<br>
>> >><br>
>> >> 2)  These files contain a secure URL that 1) tells the engine and<br>
>> >> clients where the controller is running and 2) gives the engine and<br>
>> >> clients authority to connect to the controller in a secure manner.<br>
>> >><br>
>> >> 3) To use these files, they have to be available to the client and<br>
>> >> engines when they start.  The easiest way of handling this is to<br>
>> >><br>
>> >> a) copy ipcontroller-engine.furl to the .ipython directory on the<br>
>> >> machine(s) where the engines will run<br>
>> >><br>
>> >> b) copy ipcontroller-tc and -mec to the .ipython dir of the machine<br>
>> >> where the clients will run.<br>
>> >><br>
>> >> Then everything will "just work".  By this, I mean that you can create<br>
>> >> the clients with no arguments:<br>
>> >><br>
>> >> mec = client.MultiEngineClient()<br>
>> >><br>
>> >> If you have put the .furl files in different locations you can do:<br>
>> >><br>
>> >> mec =<br>
>> >> client.MultiEngineClient('/Users/me/furlfiles/ipcontroller-mec.furl')<br>
>> >><br>
>> >> In all of this, you can think of the furl files as being keys (just<br>
>> >> like a house key) that grants an entity access to a particular<br>
>> >> resource.  The controller creates the keys and the engines/client must<br>
>> >> present/use them to use the capabilities of the controller.<br>
>> >><br>
>> >> See if you can use this to get things working.  The big benefit of<br>
>> >> using all this is:<br>
>> >><br>
>> >> 1) Users don't have to track what ip/port the controller is running on.<br>
>> >><br>
>> >> 2) Everything is secure by default - authentication + encryption (if<br>
>> >> you have pyOpenSSL installed<br>
>> >><br>
>> >> 3) The controller now uses random port numbers, making it even more<br>
>> >> difficult for hostiles to discover.<br>
>> >><br>
>> >> Let me know if you have any more problems getting this working.  We<br>
>> >> would love feedback if you have ideas of how things could be made<br>
>> >> easier.<br>
>> >><br>
>> >> Also, check out the new command line flags on the ipcontroller and<br>
>> >> ipengine scripts to control where the furl files are created and<br>
>> >> looked for.<br>
>> >><br>
>> >> Cheers,<br>
>> >><br>
>> >> Brian<br>
>> >><br>
>> >> On Tue, Jun 10, 2008 at 12:57 PM, Doug Jones <<a href="mailto:dfj225@gmail.com">dfj225@gmail.com</a>> wrote:<br>
>> >> > Hi all,<br>
>> >> ><br>
>> >> > I tried a simple test of the latest IPython branch and the<br>
>> >> > MultiEngineClient. When I attempted to connect to a running cluster<br>
>> >> > on<br>
>> >> > my<br>
>> >> > local machine, I got the following error:<br>
>> >> ><br>
>> >> >  mec = client.MultiEngineClient(('localhost', 10105))<br>
>> >> ><br>
>> >> ><br>
>> >> > ---------------------------------------------------------------------------<br>
>> >> > TypeError                                 Traceback (most recent call<br>
>> >> > last)<br>
>> >> ><br>
>> >> > /home/djones/svn/basin_remote/trunk/scripts/<ipython console> in<br>
>> >> > <module>()<br>
>> >> ><br>
>> >> ><br>
>> >> ><br>
>> >> > /home/djones/local/lib64/python2.5/site-packages/IPython/kernel/client.pyc<br>
>> >> > in get_multiengine_client(furl_or_file)<br>
>> >> >      67     """<br>
>> >> >      68     client =<br>
>> >> > blockingCallFromThread(_client_tub.get_multiengine_client,<br>
>> >> > ---> 69         furl_or_file)<br>
>> >> >      70     return client.adapt_to_blocking_client()<br>
>> >> >      71<br>
>> >> ><br>
>> >> ><br>
>> >> ><br>
>> >> > /home/djones/local/lib64/python2.5/site-packages/IPython/kernel/twistedutil.pyc<br>
>> >> > in blockingCallFromThread(f, *a, **kw)<br>
>> >> >      97                 result.raiseException()<br>
>> >> >      98             except Exception, e:<br>
>> >> > ---> 99                 raise e<br>
>> >> >     100         return result<br>
>> >> >     101<br>
>> >> ><br>
>> >> > TypeError: coercing to Unicode: need string or buffer, tuple found<br>
>> >> ><br>
>> >> ><br>
>> >> ><br>
>> >> > Thanks,<br>
>> >> > ~Doug<br>
>> >> ><br>
>> >> > _______________________________________________<br>
>> >> > IPython-dev mailing list<br>
>> >> > <a href="mailto:IPython-dev@scipy.org">IPython-dev@scipy.org</a><br>
>> >> > <a href="http://lists.ipython.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://lists.ipython.scipy.org/mailman/listinfo/ipython-dev</a><br>
>> >> ><br>
>> >> ><br>
>> ><br>
>> ><br>
><br>
><br>
</div></div></blockquote></div><br>