Heron-Repositories / Heron

A python only framework for connecting hardware and closing loops
MIT License
53 stars 6 forks source link

Save and Load with git #13

Open georgedimitriadis opened 5 months ago

georgedimitriadis commented 5 months ago

Currently when Heron saves a Graph it saves the attributes of each Node and their links. But as Heron's code base and the Nodes' code bases evolve when one loads an old experiment it is very likely that the new code will not correspond to the save information in the Graph's .json file. Even if it does the user has no way of knowing whether the rnning experiment as it is running now is the way it actually run when it was initially saved.

To mitigate this Heron should save, together with all Nodes' attributes and their links also the versions of all git repositories used by the Graph. It must also use these code bases when loading a Graph. Finally it must allow the user to duplicate a saved .json but using different code versions chossen by the user (default, the main ones).