Python custom evaluators #88
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hi!
I've added the ability to set custom evaluators for problems in CloudCoder. That is, if you don't want to check the results literally or with a regex, you can write your own code to check the results. It only works with python functions now, where the evaluator code must also be written in python. It's backwards compatible, it has the same default evaluator code as the old python checker, so it should give the same results.
I might make it work for C programs/functions too in the future, because I'm teaching C for the rest of the semester.
I've also added some new UI stuff to support this, so all the evaluator stuff in the Edit Problem page is greyed out when the problem type doesn't support custom evaluators.