ANN: py lib 0.9.0: py.test, distributed execution, microthreads ...

ANN: py lib 0.9.0: py.test, distributed execution, microthreads ...

Post by holger kre » Fri, 16 Feb 2007 00:53:35


py lib 0.9.0: py.test, distributed execution, greenlets and more
======================================================================

Welcome to the 0.9.0 py lib release - a library aiming to
support agile and test-driven python development on various levels.

Main API/Tool Features:

* py.test: cross-project testing tool with many advanced features
* py.execnet: ad-hoc code distribution to SSH, Socket and local sub processes
* py.magic.greenlet: micro-threads on standard CPython ("stackless-light")
* py.path: path abstractions over local and subversion files
* rich documentation of py's exported API
* tested against Linux, OSX and partly against Win32, python 2.3-2.5

All these features and their API have extensive documentation,
generated with the new "apigen", which we intend to make accessible
for other python projects as well.

Download/Install: http://www.yqcomputer.com/
Documentation/API: http://www.yqcomputer.com/

Work on the py lib has been partially funded by the
European Union IST programme and by http://www.yqcomputer.com/
within the PyPy project.

best, have fun and let us know what you think!

Holger Krekel, Maciej Fijalkowski,
Guido Wesdorp, Carl Friedrich Bolz
 
 
 

ANN: py lib 0.9.0: py.test, distributed execution, microthreads ...

Post by Robin Beck » Fri, 16 Feb 2007 19:50:52


...........
...........

Good stuff, but my rather ancient win32 client could not work properly with
SshGateway; I think plink might work.

I hacked register.py so that the eventual command came out something like

plink -ssh "MYSESSION" "python -u -c 'exec input()'"

and then I can get a gateway open at least. The following script then works on
my win32 box

from py.execnet import SshGateway

gw = SshGateway('MYSESSION',remotepython='python25')
channel = gw.remote_exec('channel.send("Hello From the remote world!")')
print channel.receive()

and I see

C:\tmp>\tmp\tgw.py
Hello From the remote world!

C:\tmp>
--
Robin Becker