plasmodic / ecto

ecto is a dynamically configurable Directed Acyclic processing Graph (DAG) framework.
http://ecto.willowgarage.com/
BSD 3-Clause "New" or "Revised" License
98 stars 37 forks source link

Bugfix pythonic cell construction #261

Closed stonier closed 10 years ago

stonier commented 10 years ago

This does the following:

This was conspicuously causing an error if you tried - the c++ api for cell construction didn't take an arg. I noticed the python test was dodging this bullet by not passing along *args at all. I couldn't work out how to get this to work with the c++ constructor call, but managed to work around by delaying name setting till after the __init__.

This syncs it with c++ behaviour and opens up the possibility of getting it working with directed configuration (#260).

While messing around I had this getting thrown, but I think it was just hiding because it doesn't get accessed so often. Certainly not in the tests.

stonier commented 10 years ago

Just re-reading this issue and obviously looks like my brain was deep into the problem. Just to put it more simply this is what you can do for a c++ cell in an ecto script:

i1 = Increment('Inc 1', start=18)

which sets the name of the cell to 'Inc 1'. But, if the cell is a python cell, this causes problems. This pull request fixes that along with a couple of other minor things.

vrabaud commented 10 years ago

I was out for some time, sorry for the delay. I guess BlackBox is what is used mostly. Do you want to be maintainer for the ecto stuff ? I'll give you rights if you want: this way you can merge any trivial fix.

stonier commented 10 years ago

Do you want to be maintainer for the ecto stuff ? I'll give you rights if you want: this way you can merge any trivial fix.

Sure. Looks like we'll be using ecto for the foreseeable future.

stonier commented 10 years ago

I started using these python cells for directed configuration. Some things are just far easier in python and configuration isn't a step that needs speed.