ResearchOS / Biomech-Analysis-Platform-MATLAB

A GUI-based operating system framework to facilitate biomechanical data analysis. This platform attempts to manage the non-scientific part of coding without restricting the direction or method of scientific analysis.
MIT License
4 stars 0 forks source link

Adopt Snakemake-esque approach to propagating changes made in Process tab #147

Closed mtillman14 closed 1 year ago

mtillman14 commented 2 years ago

When running a function, I should automatically check that the inputs are up-to-date. Do this by looking at date modified for each variable (stored in the project settings variable?). If date of any input is newer than date of any output, then need to redo that function. Also, if the date modified of the function itself is newer than any output, then need to redo that function.

Because it's possible for some intermediate steps to not appear to need updating (even though prior steps means they do), each time a function is run it should check back all the way to the very first processing step to make sure all variables are up to date.

mtillman14 commented 2 years ago

68 #90 related.

This method eliminates the need for a manual Propagate checkbox.

mtillman14 commented 1 year ago

Can use a network graph with Python's networkX package to facilitate identifying dependency variables/functions!

mtillman14 commented 1 year ago

Digraph implemented