learn-ocaml
learn-ocaml copied to clipboard
Bug: `learn-ocaml build` does not rebuild exercises with changes in dependencies listed in `depend.txt`
Repro steps:
- Set up an exercise with grader code dependencies in
depend.txtas described in https://github.com/lsylvestre/learn-ocaml/blob/master/docs/tutorials/step-8.md. Get the exercise to build successfully usinglearn-ocaml build. - Make a breaking change in on the dependencies and rerun
learn-ocaml build. Expected result: failed build Actual result: build command reports no changes
As a temporary workaround, how can I clear the previously cached build state?
Hi @dmoon1221, thanks a lot for your report!
As a temporary workaround, how can I clear the previously cached build state?
I didn't attempt to reproduce it yet, but meanwhile, a workaround should just be to remove the www folder generated by learn-ocaml build (generally in the current directory), and run learn-ocaml build anew.
Let us know if this sidesteps the issue.
BTW just out of curiosity: which distribution of the learn-ocaml program are you using? − I mean:
- a
learn-ocamlbinary taken from the release assets - the
learn-ocamlbinary built from anopam install - or another flavor? :)
Thanks! That was helpful. Specifically I wanted to clear the build cache for the specific exercise I was developing, so that I wouldn't have to wait to build every other exercise in our corpus to get feedback. I was able to do that by removing the exercise-specific json file within the www directory.
We're using our own fork of learn-ocaml, the tiny difference from current master being a modification to the compile button so that it also syncs the edit state.
OK, thanks for your feedback!
Regarding your other remark, BTW:
We're using our own fork of learn-ocaml, the tiny difference from current master being a modification to the compile button so that it also syncs the edit state.
I'd be curious to know if this change was especially useful
(1) for your workflow as a teacher (e.g. to better see the impact of the Compile feedback on students' answer),
or (2) because some students lost their code at some point… e.g. because of #316 (which fortunately, is now solved in v0.14.0)
(Anyway, if you think it's worth it to discuss further this point about Compile / Sync, feel free to open a separated issue for this one :)