[py-dev] outlining what i intend to do with execnet + what additional features could be helpfull

Ronny Pfannschmidt Ronny.Pfannschmidt at gmx.de
Mon Aug 24 15:42:45 CEST 2009


On Mon, 2009-08-24 at 14:34 +0200, holger krekel wrote:
> Hi Ronny, 
> 
> from IRC i also know that you are wondering how/if to best apply 
> py.execnet for the tasks.  Can you post an example of
> a frontend command/API you want to implement and some 
> code of how that translates to one particular API? 
> I'd then consider and suggest a way/method to apply execnet.

i think a good initial example for anyvc would be one of the unittests

def test_build_first_commit(mgr):
    repo = mgr.make_repo('repo')
    with repo.transaction(message='initial', author='test') as root:
        with root.join('test.txt').open('w') as f:
            f.write("text")

    with repo.get_default_head() as root:
        with root.join("test.txt").open() as f:
            content = f.read()
            assert content == 'text'

this test creates a repo, an initial commit, then asserts the content
mgr is a utility to manage the directories where tests dump their data
make_repo creates the repository object that should "be" in another
object when using py.execnet

i'll try to extract something semilar for pida later

> 
> cheers,
> holger
> 
> 
> On Mon, Aug 24, 2009 at 13:51 +0200, Ronny Pfannschmidt wrote:
> > hi,
> > 
> > first let me outline my needs for
> > 
> > anyvc
> >   a vcs abstraction lib
> > pida
> >   a ide based on the idea that everything is a plugin
> > 
> > 
> > anyvc
> > ------
> > 
> > * execute backends in a different process 
> >   * circumvent gpl/gpl2only of hg/dulwich/bzr
> > * execute the fontend on python platforms not supported by the backends
> >   * python 3
> >   * jython
> >   * ironpython
> >   * pypy
> > 
> > pida
> > ----
> > 
> > an ide based on plugins
> > 
> > * run parts of plugins in different processes
> >   * avoid gil races for cpu-intensive tasks
> > * run parts of plugins on different computers/platforms
> >   * test execution
> >   * introspectiong of test/deployment environments
> >   * general work on remote data/projects
> > 
> > 
> > In order to archieve those goals 
> > i think i need a few conceptual ideas 
> > for installing the different libs on the different platforms
> > as well as a tool to help proxying method calls to remote objects.
> > 
> > regards Ronny
> > 




More information about the Pytest-dev mailing list