pyiron / pyiron_workflow

Graph-and-node based workflows
BSD 3-Clause "New" or "Revised" License
14 stars 1 forks source link

Only allow each input to have one upstream connection #502

Open liamhuber opened 1 day ago

liamhuber commented 1 day ago

This should make the graph more reliable, and -- together with always pulling upstream data -- this should close #498.

The only real con I see is that then we need to rework the Channel architecture a little, since Input.connections and Output.connections would no longer be so similar, but rather we'd have the singular Input.connection.

Depends on #501, because currently the attack for while loops depends on having multiple inputs with different priority. AFAIK this is the only place that functionality is actually leveraged, but making the change and running the test suite will tell if my memory is right on that.