Difference between revisions of "Release notes for WeBWorK 2.16"
Jump to navigation
Jump to search
(add item about DBD::MariaDB support and changes to DB config in site.conf, LMS name, SameSite Cookie, Webservice permissions, Unicode alt token config, and more) |
|||
Line 5: | Line 5: | ||
* The ability to navigate between students when acting as a student |
* The ability to navigate between students when acting as a student |
||
[[File:StudentNavigator.png|thumb|center]] |
[[File:StudentNavigator.png|thumb|center]] |
||
+ | * Support for the <code>DBD::MariaDB</code> driver in addition to the <code>DBD::mysql</code> driver. This alternate driver supports both mySQL and MariaDB databases, and is consider to have better UTF-8 support. Using it also seemed to reduce certain types of connection errors. |
||
+ | ** As a result, the manner in which the database settings are made in <code>site.conf</code> have also been changed. (See the new version of <code>site.conf.dist</code>. |
||
+ | ** See: https://github.com/openwebwork/webwork2/pull/1160, https://github.com/openwebwork/webwork2/issues/1157, https://github.com/openwebwork/webwork2/pull/1150 for more details and background. |
||
* Upgrades to the way images are shown to students (resize, zoom, drag) |
* Upgrades to the way images are shown to students (resize, zoom, drag) |
||
* Upgraded to [https://www.mathjax.org MathJax 3] from MathJax 2 |
* Upgraded to [https://www.mathjax.org MathJax 3] from MathJax 2 |
||
Line 12: | Line 15: | ||
* Rearrange presentation order for homework and quizzes on Homework Sets page (see [https://github.com/openwebwork/webwork2/pull/1282 PR #1282]) |
* Rearrange presentation order for homework and quizzes on Homework Sets page (see [https://github.com/openwebwork/webwork2/pull/1282 PR #1282]) |
||
* Achievements items need not be single-use |
* Achievements items need not be single-use |
||
+ | * SameSite Cookie support: (see [https://github.com/openwebwork/webwork2/pull/1269 PR #1269], the changed to default to Lax in [https://github.com/openwebwork/webwork2/pull/1307 PR #1307] and the discussion in the older [https://github.com/openwebwork/webwork2/pull/1149 PR #1149].) |
||
+ | * Major cleanup was done to <code>defaults.config</code> and <code>localOverrides.conf</code>. |
||
+ | * Revised / finer permission settings for the WebworkWebservice (see [https://github.com/openwebwork/webwork2/pull/1163 PR #1163]) |
||
+ | * Course level control of support for PG to allow Unicode alternative math symbols etc. (see [https://github.com/openwebwork/webwork2/pull/1174 PR #1174]) |
||
+ | * Support for including percentage grades per assignment in CSV output (see [https://github.com/openwebwork/webwork2/pull/1085 PR #1085] and [https://github.com/openwebwork/webwork2/pull/1131 PR #1131] which added a checkbox to include the new data or not). The code depends on the assumption that the total number of points available on an assignment in a constant. |
||
+ | * Passwords are consistently trimmed from leading and trailing white-space, to prevent users from being able to set passwords which could not be used to log in. (see [https://github.com/openwebwork/webwork2/pull/1290 PR #1290]) |
||
+ | * New options to hide detailed error messages from users but to store them in the <code>error.log</code> file. |
||
+ | ** new settings: <code>MIN_HTML_ERRORS</code> <code>JSON_ERROR_LOG</code> |
||
+ | ** see [https://github.com/openwebwork/webwork2/pull/1190 PR #1190] |
||
+ | * Improvements to LTI support: |
||
+ | ** LMS name and URL in message about needing to access an assignment via the LTI link in the LMS (before the grade passback setting data is available for the user) is now configurable. (see [https://github.com/openwebwork/webwork2/pull/1280 PR #1280] and [https://github.com/openwebwork/webwork2/pull/1285 PR #1285]) |
||
+ | ** Improved grade passback code, with better debugging features. (see [https://github.com/openwebwork/webwork2/pull/1177 PR #1177]) |
||
+ | *** The two round process (only update the LMS if the grade changed by at least 0.1 point from 100) is turned on by setting <code>$lti_check_prior = 1;</code> in <code>course.conf</code> (or site wide in <code>conf/authen_LTI.conf</code>). |
||
+ | *** A different nonce generation method is used, which may reduce cases of error if a nonce is reused while the LMS still considers it to be recently used. |
||
+ | *** However, many of the problems reported as "duplicate nonce" in the forums seems to have been caused by system time being inaccurate on one of the sides. |
||
+ | *** Revised WW side nonce handling, and error reporting (see [https://github.com/openwebwork/webwork2/pull/1199 PR #1199]) |
||
+ | * Additional improvements and changes can be found on GitHub, and many will appear in the [https://github.com/orgs/openwebwork/projects/15 WW 2.16 release planning and testing project board]. |
||
== New PG Features == |
== New PG Features == |
Revision as of 04:19, 3 May 2021
Contents
New WeBWorK Features
- A new manual problem grader that works for all problems in homework and in gateway quizzes.
- The ability to navigate between students when acting as a student
- Support for the
DBD::MariaDB
driver in addition to theDBD::mysql
driver. This alternate driver supports both mySQL and MariaDB databases, and is consider to have better UTF-8 support. Using it also seemed to reduce certain types of connection errors.- As a result, the manner in which the database settings are made in
site.conf
have also been changed. (See the new version ofsite.conf.dist
. - See: https://github.com/openwebwork/webwork2/pull/1160, https://github.com/openwebwork/webwork2/issues/1157, https://github.com/openwebwork/webwork2/pull/1150 for more details and background.
- As a result, the manner in which the database settings are made in
- Upgrades to the way images are shown to students (resize, zoom, drag)
- Upgraded to MathJax 3 from MathJax 2
- As of 2.15 WeBWorK supports MathQuill for student input.
ADD_JS_FILE
andADD_CSS_FILE
in the PG.pl macro.- Explanation essays (ask for a regular answer, separately ask for an explanation essay, but the essay part can be globally disabled)
- Rearrange presentation order for homework and quizzes on Homework Sets page (see PR #1282)
- Achievements items need not be single-use
- SameSite Cookie support: (see PR #1269, the changed to default to Lax in PR #1307 and the discussion in the older PR #1149.)
- Major cleanup was done to
defaults.config
andlocalOverrides.conf
. - Revised / finer permission settings for the WebworkWebservice (see PR #1163)
- Course level control of support for PG to allow Unicode alternative math symbols etc. (see PR #1174)
- Support for including percentage grades per assignment in CSV output (see PR #1085 and PR #1131 which added a checkbox to include the new data or not). The code depends on the assumption that the total number of points available on an assignment in a constant.
- Passwords are consistently trimmed from leading and trailing white-space, to prevent users from being able to set passwords which could not be used to log in. (see PR #1290)
- New options to hide detailed error messages from users but to store them in the
error.log
file.- new settings:
MIN_HTML_ERRORS
JSON_ERROR_LOG
- see PR #1190
- new settings:
- Improvements to LTI support:
- LMS name and URL in message about needing to access an assignment via the LTI link in the LMS (before the grade passback setting data is available for the user) is now configurable. (see PR #1280 and PR #1285)
- Improved grade passback code, with better debugging features. (see PR #1177)
- The two round process (only update the LMS if the grade changed by at least 0.1 point from 100) is turned on by setting
$lti_check_prior = 1;
incourse.conf
(or site wide inconf/authen_LTI.conf
). - A different nonce generation method is used, which may reduce cases of error if a nonce is reused while the LMS still considers it to be recently used.
- However, many of the problems reported as "duplicate nonce" in the forums seems to have been caused by system time being inaccurate on one of the sides.
- Revised WW side nonce handling, and error reporting (see PR #1199)
- The two round process (only update the LMS if the grade changed by at least 0.1 point from 100) is turned on by setting
- Additional improvements and changes can be found on GitHub, and many will appear in the WW 2.16 release planning and testing project board.
New PG Features
- TikZ images in problems.
- New macro parserGraphTool.pl for interactive graphing problems. See also GraphTool problem technique.
- "digits" tolType (needs explanation wherever tolerance in general is explained, DigitsTolType problem technique )
random_coprime
andrandom_pairwise_coprime
methods added to PGauxiliaryFunctions.pl (Needs documentation probably in [1].- PGML can be used in set header files
- MathObject: context classes can have aliases and alternates. (For example variable "X" could be an alias for "x".)
- Improved hardcopy of PGML problems
- Improvements in efficiency to PGstatisticsmacros.pl.
Security/Advanced Features
- Revised "WeBWorK errors" page code + error.log records
- Fixes to the LTI integration, and improved debugging
- Same-site Cookies
- Fix applets in gateway quizzes
- Additional security fixes
Things that were fixed
Should there be a section like this? For example:
- Fixed bug when Gateway questions were not in sequential order
- Fix bug where, for example, `Formula("-5/(-2 x)")` would display `5/2x` for its text string
- Fix bug with named answer usage. (There needs to be documentation on the correct way to used named answers so that the problem will work in gateway quizzes, and comments about how all OPL problems that use named answers are broken for gateway quizzes because they don't do it this way.)
Upgrade Instructions
- Many third party javascript libraries (jquery, jquery-ui, mathjax, codemirror, etc.) are no longer packaged with WeBWorK. These libraries are now installed via npm:
- Install npm from your package manager (Ubuntu:
apt install npm
CentOS/RHEL:yum install npm
). - Use npm to install third party javascript:
> cd /opt/webwork/webwork2/htdocs > npm install
- WW 2.16 requires MathJax v3. Previous versions of WW required MathJax v2 that was installed at /opt/webwork/MathJax. WW 2.16 installs MathJax via npm, so if you are upgrading an existing WW installation you may safely delete /opt/webwork/MathJax.
- The following perl packages will need to be installed
- HTTP::Async (on Ubuntu install the package libhttp-async-perl)
- CGI::Cookie (see https://github.com/openwebwork/webwork2/pull/1149)
- Archive::Zip (on Ubuntu install the package libarchive-zip-perl)
- There have been some tweaks to localOverrides.conf.dist. If you have not done any customization to localOverrides.conf then you should consider replacing it with a new copy of localOverrides.conf.dist. If you have made customizations in localOverrides.conf, you should consider synchronizing them with the latest version of localOverrides.conf.dist.
- Update your modelcourse with the new modelcourse.dist
- The math4 theme has changed. If you use a custom theme, you may need to update your theme files to address these changes.
- WeBWorK is currently not compatible with recent versions of the SQL::Abstract package, so avoid upgrading past version 1.8. WW is known to work with versions up to 1.87. (See: https://github.com/openwebwork/webwork2/issues/1236 and https://webwork.maa.org/moodle/mod/forum/discuss.php?d=5570)
- If you want to allow the use of the new PGtikz.pl macro, you will need to install imagemagick (Ubuntu:
apt install imagemagick
) and modify /etc/ImageMagick-6/policy.xml and change the line near the end of the file from
<policy domain="coder" rights="none" pattern="PDF" />
to
<policy domain="coder" rights="read" pattern="PDF" />
- TikZ has two different options for a back-end program for generating images. The system administrator will have to decide which one is appropriate for their system (see https://github.com/openwebwork/webwork2/pull/1320)
- TikZ requires the following two commands to be installed on your system:
dvisvgm
andpdf2svg
(Ubuntu:apt install dvisvgm pdf2svg
; RHEL/CentOS:yum install dvisvgm
- pdf2svg is not currently packaged for REHEL/CentOS.) - UTF-8 support of the XML subsystem needs a local patch to be applied to /usr/share/perl5/XMLRPC/Lite.pm See: https://github.com/openwebwork/webwork2/issues/967#issuecomment-523941959. This patch can be applied with
sudo patch -p1 -d / < /opt/webwork/webwork2/docker-config/xmlrpc-lite-utf8-fix.patch
Call for Translators
Some text has changed in the WeBWorK interface, so there are new entries that need to be translated into other languages.