baumer-lab / fertile

creating optimal conditions for reproducibility
GNU General Public License v3.0
52 stars 4 forks source link

Should has_*() functions be user-facing? #34

Open beanumber opened 5 years ago

beanumber commented 5 years ago

If a has_*() function, for example, has_only_portable_paths() requires compilation, then what is the best way to check if the project needs to be re-compiled?

In check(), we are going to run a bunch of these, so we compile once first, then do the checks. But if you just want to run one of these functions as a one-off, how is it supposed to know whether the log file accurately captures what happens during compilation? If we allow each function to trigger proj_render(), then this will be horribly inefficient.

beanumber commented 5 years ago

write .fertile file and record timestamp, then compare timestamp to file dates when function is called.