-
Notifications
You must be signed in to change notification settings - Fork 62
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add learning exercises #1771
Add learning exercises #1771
Conversation
I just have a couple of concerns here.
I would prefer to see 2a addressed as a minimum (and 3 checked/confirmed if not consolidated), but the rest of this is subjective and I'd welcome any discussion that brings in other considerations (like the ability to use examples for students). |
A less invasive alternative is to compile each |
Oh, that's a nice flag, I wasn't aware of that one. I still would suggest a filename difference, because we might want to run some of these tests against different llvm versions (i.e. we may have the same |
Thanks for the feedback! I made the following changes:
@kquick Can you please take another look when you get a chance? My |
@bboston7 , can you check the output of the "run exercises" step in the CI: https://github.com/GaloisInc/saw-script/actions/runs/3642679289/jobs/6150910776. It doesn't fail, but there are errors reported from the saw runs: are those expected or is this CI process not detecting failures properly? If it's the former, we probably want a note about this somewhere (possibly the ci.yaml) but I'm wondering how we would tell the difference between an expected failure and an actual failure? |
This was confusing to me too, but these aren't errors. It looks like at some point the behavior of
The proof succeeds (as evinced by the "Proof succeeded!" text), but the goals have been annotated with their error messages. I'm not sure when this change happened, but it's definitely new since SAW 0.9. The most relevant thing I can find is ticket #1372, which exhibits the same behavior. @RyanGlScott, did you end up adding the feature in that ticket? |
As far as detecting failures goes, the docker image returns a non-zero exit code if a proof fails. I assume that's enough for the CI to detect the error? |
Sadly `print_goal` currently prints a misleading message that makes it appear that an error has occurred
This reverts commit ea46f09.
The last few commits did a few things:
I've now reverted the broken proof, so the job should pass again. |
Nope. I have no idea why the behavior has changed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, thanks for the updates!
This PR adds exercises for learning SAW to the repository and integrates those exercises into the CI system so they do not go stale with future SAW changes. This is a large PR, but I'm only looking for feedback on a small portion of it. Specifically I'm looking for feedback on the CI integration, as well as the placement of the exercises within the repo itself. I'm not so much looking for feedback on the content of the exercises themselves, which have already through review via other channels.