Question Authors' Forum

CodeRunner V3.1 released

Picture of Richard Lobb
CodeRunner V3.1 released
by Richard Lobb - Monday, 9 January 2017, 4:07 PM

Version 3.1.0 of CodeRunner has now been pushed to github. Significant new functionality includes:

  1. A 'Precheck' capability presents students with an extra button (beside the 'Check' button) that gives a penalty-free submission with limited checking. The question author can specify what type of checks can be performed on a Precheck. For example, the code may be compiled but not run, or the code may be passed through a code style checker like pylint, or the "Use as examples" tests might be run but no other, as in the following figure:
  2. An answerbox preload capability allows the question author to define some initial text to appear in the question answer box. This can be used to provide students with a skeleton answer, such as (for C):
    /* Return the square of a given int parameter n */
    int sqr(int n) {
         // **** your code goes here ****
  3. Question authors can request that their sample answer be validated whenever a question is saved.
  4. Adaptive behaviour is now forced for CodeRunner questions regardless of the question behaviour chosen for the quiz in which the question is running. This allows teachers to set tests in which standard questions like multichoice and short-answer run in, say, a deferred feedback mode while CodeRunner questions still allow students to correct wrong answers on the fly.
  5. The template mechanism has been simplified by combining the combinator template and the per-test template into a single template plus an iscombinator boolean.
  6. The Show differences button has been re-implemented entirely in JavaScript, removing the complication of having to specify it via the column header.
  7. C++ 'write-a-function' and 'write-a-program' question types have been added to the set of built-in question types.
  8. Accessibility for visually-impaired students has been improved (thanks to Tim Hunt). The tab key now moves focus through all fields in the question-answering form until the student types or clicks in a field. The Ace editor can be switched off with CTRL/M.
  9. The 'Multiple tries' section of the authoring form has been removed and a penalty regime is now mandatory. This eliminates the confusion between the standard Moodle static question penalty (now hidden) and the formerly optional penalty regime. The behaviour of legacy questions is unaffected.
  10. A bulk tester allows administrators and authors to check that all question sample answers pass all tests (copied, with modifications, from the Stack question type).
It should be possible to upgrade to this latest version from any CodeRunner version greater than or equal to 2.4.0 simply by updating the code in the following two plugin folders with the latest versions from Github:

  • <moodlehome>/question/type/coderunner/
  • <moodlehome>/question/behaviour/adaptive_adapted_for_coderunner/

If you installed the plugins with a git clone command, you should be able to upgrade each of them simply with a git pull. Alternatively you can fetch the code from the Github repositories at and respectively.

You will then need to log in as a Moodle administrator (select Notifications from the administrator menu if necessary)click Upgrade database when told that new versions of the two plugins have been found. You will also be prompted for the site-wide default value for a penalty regime to be used with all new questions. The default value is 10, 20, ... meaning that a cumulative penalty of 10% is applied for each wrong submission.

As usual, however, you should backup your database before performing such an upgrade.