Releases: FormulasQuestion/moodle-qtype_formulas
v6.2.1 (20251006)
- bugfix: use float datatype to calculate factorials
- bugfix: allow ° symbol as a unit
- improvement: allow <> as alternative to !=
- internal: assure full compatibility with Moodle 5.1
Note: The plugin now allows to calculate factorials larger than 20! in the same way as older (5.x) versions. However, due to limited precision, the result for factorials larger than 27! will generally not be accurate -- in the same way as in older versions.
v6.2.0 (20250921)
- improvement: add option to hide "Number" tooltip
- improvement: increased robustness when importing/restoring bad data
- bugfix: allow Ω, µ and % symbols in units
v6.1.2 (20250820)
- improvement: allow :MC suffix for radio-box multi-choice
- improvement: better UX for on-the-fly validation of student answers
- bugfix: certain Unicode characters caused a parse error
- bugfix: fix problem with rendering of formatted combined unit field
- internal: update CI to use PostgreSQL 15
v6.1.1 (20250727)
- bugfix: allow assigning values to elements of shuffled lists
v6.1.0 (20250726)
- improvement: allow use of local decimal separator (comma) in student answers
- improvement: use local decimal separator when displaying numbers in feedback or question text
- improvement: simplifiy shuffling options in multi-choice answer fields using ":MCS" or ":MCES"
- improvement: implement basic formatting of input fields (width, color, alignment)
- improvement: add option to skip checking correctness of model answer when importing questions
- improvement: better error reporting if importing a question fails
- bugfix: ignore empty statements or subsequent semicolons in variable definitions
- bugfix: avoid undesired linebreak around dropdown fields with Moodle 5.0 and above
- bugfix: avoid re-activation of outdated MathJax preview
- bugfix: fix instantiation check for variables that contain HTML
- bugfix: allow setting individual elements in lists that are initialised with fill()
- bugfix: allow large reservoirs for random and algebraic variables
- bugfix: fix rendering of local variables in questions with answer type algebraic formula
- bugfix: flag quotes and strings in student answers as invalid
- internal: fix failing unit tests for Moodle 4.5+ after MDL-85721
- internal: improve language strings
- internal: improve layout of admin settings page
- internal: remove obsolete admin setting "usepopup"
Details: v6.0.4...v6.1.0
v6.0.4(20250616)
- bugfix: avoid outdated MathJax preview being re-activated
- bugfix: solve problem with \n in strings used for MathJax rendering
- improvement: implement PHP-like escape sequences in strings
- internal: complete rewrite of renderer.php
v6.0.3 (20250606)
- bugfix: fix error message for partially answered questions in interactive mode
- bugfix: make sure partially answered questions are graded in deferred feedback mode
- bugfix: always use correct MathJax container to fetch preview width
- improvement: assure compatibility with MathJax v3
- improvement: silently discard useless PREFIX for better backwards compatibility
- internal: increased test coverage
- internal: update test_restore_course_with_same_stamp_questions after MDL-85556
v6.0.2 (20250506)
- bugfix: fix problem with subsequent comments in variable definitions
v6.0.1 (20250504)
- improvement: also accept numeric strings in places where numbers are expected
v6.0.0
Note: Great care has been taken to make sure that this new version – despite the numerous changes and improvements – is fully backwards compatible with prior versions, i. e. all questions created in earlier versions will still work. Note, however, that questions including the new features listed below can no longer be imported to Moodle systems using a 5.x.x version of the Formulas question plugin.
We have done extensive testing. However, we recommend you not to update the plugin while you have pending attempts at important exams.
Changes, Improvements, Bugfixes
-
complete rewrite of the parsing / evaluation engine
-
new feature: access to grading variables and student answers in part feedback
-
new feature: allow use of strings in ternary expressions; no more obligation to use pick() for this
-
new feature: allow string concatenation with + operator; no more obligation to use join() for this
-
new feature: access individual chars of a string, as one can do with list elements
-
new feature: allow negative indices to access chars or list elements "from the end"
-
new feature: allow use of variables for the range delimiters and step size in for loop
-
new feature: allow == comparison of strings
-
new feature: possibility to use escaped quotes inside string
-
new feature: allow to use single quote as string delimiter
-
new feature: strings can include line breaks and hence span multiple lines
-
new feature: mixed lists are now possible, i. e. lists including numbers and strings
-
new feature: lists may now be nested
-
new feature: allow use of ranges and elements side-by-side in a list, e. g. [1:10, 12]
-
new feature: shuffle() can now be used in global/local variables as well
-
new feature: allow usage of pi or π instead of pi() in expressions; pi() is still valid
-
new feature: warn teacher when using ^ in model answer
-
new feature: MathJax preview of student input and units
-
new feature: students can now use lg() for common logarithm and lb() for binary logarithm
-
new feature: precise error reporting, indicating what happened and where (if possible)
-
improvement: allow better duplicate check during restore, following fix of MDL-83541
-
improvement: show answer type in Bootstrap tooltip rather than own method
-
improvement: variable instantiation check (in edit form) can handle empty model answers better now
-
bugfix: no more loss of images when moving question between categories
-
bugfix: no more inconsistency errors when reviewing old attempts
-
internal: assure full compatibility with Moodle 5.0
-
internal: added extensive automated tests to bring code coverage > 90%
-
internal: no more use of eval() in the code
-
internal: all Javascript is now in AMD modules
-
internal: fixed all codesniffer errors and most warnings, except for legacy code