This files describes API changes in the quiz code.

=== 2.7.1 ===

* The function quiz_fire_attempt_started_event has been removed. This function
  should not have been used outside the quiz, but if you were using it, you should
  trigger the event outside this function. Note that the appropriate start event is
  fired automatically by the quiz_attempt_save_started function.

=== 2.7 ===

* The old quiz.questions database column (comma-separated list of question ids)
  is gone, and instead the quiz_question_instances table has been renamed to
  to quiz_slots. Some of the columns of that table have been renamed to match
  the coding guidelines. Specifically:
      quiz     -> quizid
      question -> questionid
      grade    -> maxmark
  also there are two new columns:
      slot     -  numbers the questions in the quiz in order, as on the edit quiz page.
      page     -  new way to determine which question is on which page.
  naturally, other parts of the code and APIs have been updated to reflect that
  change.

* The following functions, which were part of the internal workings of the quiz,
  have been removed.
      quiz_get_slot_for_question
      quiz_number_of_questions_in_quiz
      quiz_repaginate               (there is now a quiz_repaginate_questions with a different API).
      quiz_add_page_break_at        (see quiz_add_page_break_after_slot)
      quiz_add_page_break_after     (see quiz_add_page_break_after_slot)
      quiz_number_of_pages
      quiz_remove_question          (see quiz_remove_slot)
      quiz_update_question_instance (see quiz_update_slot_maxmark)

* The following internal functions have had their API changed.
      quiz_delete_empty_page: has had its arguments changed to $quiz and $pagenumber.
      quiz_has_question_use: now takes $quiz and $slot, not $questionid.

=== 2.6 ===

* As part of improving the page usability and accessibility, we updated the
  heading levels for quiz module so it has a proper nesting. (MDL-41615)

* mod_quiz_renderer::view_best_score has been removed. (It did not do what the
  name suggested anyway.)


=== 2.4 ===

* mod_quiz_renderer::finish_review_link now requires $attemptobj to be passed in
  instead of a moodle_url.


=== Earlier changes ===

* Were not documented in this way. Sorry.
