Difference between revisions of "Release notes for WeBWorK 2.16"

From WeBWorK_wiki
Jump to navigation Jump to search
(changed features to include webwork/pg features.)
 
(60 intermediate revisions by 9 users not shown)
Line 1: Line 1:
{{UnderConstruction}}
 
  +
<big>'''WARNING:'''</big> The github branch for the latest version of WeBWorK has changed! It is now '''main''', instead of '''master'''. If you are upgrading from a previous version of WeBWorK be sure to read the second bullet "The default branch in Github..." in the Upgrade Instructions section below, to see how to change your branch before attempting to upgrade. Otherwise "git pull" will not work.
   
 
== New WeBWorK Features ==
 
== New WeBWorK Features ==
* Essay grader features
 
  +
* A new [[Manual_Problem_Grader|manual problem grader]] that works for all problems in homework and in gateway quizzes.
* MathJax 3
 
  +
* The ability to navigate between students when acting as a student
* Should we advertise MathQuill here, even though it was in 2.15?
 
  +
[[File:StudentNavigator.png|thumb|center]]
* <code>ADD_JS_FILE</code> and <code>ADD_CSS_FILE</code>
 
  +
* A confirmation dialog appears when a student clicks on a timed gateway quiz (but not effective when accessing a quiz from an LMS using LTI)
 
  +
[[File:Gateway Quiz Confirmation.png|thumb|center]]
* improvements in efficiency to PGstatisticsmacros.pl
 
  +
* Upgrades to the way images are shown to students (resize, zoom, drag)
* explanation essays (ask for a regular answer, separately ask for an explanation essay, but the essay part can be globally disabled)
 
  +
* Upgraded to [https://www.mathjax.org MathJax 3] from MathJax 2
* Rearrange presentation order for homework and quizzes on Homework Sets page
 
  +
* As of 2.15 WeBWorK supports [http://mathquill.com MathQuill] for student input.
* Achievements items need not be single-use
 
  +
* <code>ADD_JS_FILE</code> and <code>ADD_CSS_FILE</code> in the [https://webwork.maa.org/pod/pg/macros/PG.html#ADD_CSS_FILE 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 [https://github.com/openwebwork/webwork2/pull/1282 PR #1282])
  +
* Achievements items need not be single-use, and time based achievements will use the course time-zone setting.
  +
* 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])
  +
* 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 ==
   
 
* [[TikZImages|TikZ images in problems]].
 
* [[TikZImages|TikZ images in problems]].
* New macro parserGraphTool.pl for interactive graphing problems
 
  +
* Other image support improvements. (see [https://github.com/openwebwork/pg/pull/559 PR #559] and [https://github.com/openwebwork/pg/pull/561 PR #561])
* "digits" tolType (needs explanation wherever tolerance in general is explained)
 
  +
* New macro [https://webwork.maa.org/pod/pg/macros/parserGraphTool.html parserGraphTool.pl] for interactive graphing problems. See also [[GraphTool|GraphTool problem technique]].
* `random_prime` and `random_pairwise_coprime` macros
 
  +
* "digits" tolType (needs explanation wherever tolerance in general is explained, [https://webwork.maa.org/wiki/DigitsTolType DigitsTolType problem technique] )
* PGML can be used in set header files
 
  +
* <code>random_coprime</code> and <code>random_pairwise_coprime</code> methods added to [https://webwork.maa.org/pod/pg/macros/PGauxiliaryFunctions.html#random_coprime-function PGauxiliaryFunctions.pl] (Needs documentation probably in [https://webwork.maa.org/wiki/Answer_Checkers_and_the_Context].
* MathObject: context classes can have aliases and alternates. (For example variable "X" could be an alias for "x".)
 
  +
* PGML can be used in set header files (see [https://github.com/openwebwork/webwork2/pull/1280 PR #1282])
* Improved hardcopy of PGML problems
 
  +
* MathObject2:
  +
** Context classes can have aliases and alternates. (For example variable "X" could be an alias for "x".)
  +
** support for Unicode symbols as alternates to the regular ones.
  +
** see [https://github.com/openwebwork/pg/pull/518 PG PR #518] and [https://github.com/openwebwork/webwork2/pull/1174 webwork2 PR #1174]
  +
* Add bypass_equivalence_test switch [https://github.com/openwebwork/pg/pull/497 PR#497]
  +
* message_for_blank_answer setting [https://github.com/openwebwork/pg/pull/496 PR#496]
  +
* Update answerHints to not produce hints in Preview mode [https://github.com/openwebwork/pg/pull/476 PR#476]
  +
* Improvements in efficiency to [https://webwork.maa.org/pod/pg/macros/PGstatisticsmacros.html PGstatisticsmacros.pl].
  +
* Make PG version available to problem code [https://github.com/openwebwork/pg/pull/531 PR#531]
   
 
== Security/Advanced Features ==
 
== Security/Advanced Features ==
   
* Revised "WeBWorK errors" page code + error.log records
+
* Revised "WeBWorK errors" handling options. Option to hide detailed error messages from users but to store them in the <code>error.log</code> file.
* LTI Improvements
+
** new settings: <code>MIN_HTML_ERRORS</code> <code>JSON_ERROR_LOG</code>
* Same-site Cookies
+
** see [https://github.com/openwebwork/webwork2/pull/1190 PR #1190]
  +
* Same-site 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].)
 
* Fix applets in gateway quizzes
 
* Fix applets in gateway quizzes
  +
* 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.
  +
* Improvements to LTI integration, and improved debugging
  +
** 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 security fixes
   
 
== Things that were fixed ==
 
== Things that were fixed ==
Line 33: Line 61:
 
* Fixed bug when Gateway questions were not in sequential order
 
* 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 where, for example, `Formula("-5/(-2 x)")` would display `5/2x` for its text string
  +
* Fix bug with named answer usage. (See [https://webwork.maa.org/wiki/NamedAnswerRules Named Answer Rules] for the correct way to used named answers so that a problem will work in gateway quizzes. Note that all OPL problems that use named answers are broken for gateway quizzes because they don't do it this way.)
  +
* Fixed bug in <code>MultiAnswer</code> objects with <code>singleResult=>1</code> which did not properly compute score when <code>setMessage</code> is used. (see [https://github.com/openwebwork/pg/pull/524 PR #524])
  +
* Changes to color support for MathJax 3 controlled equations: [https://github.com/openwebwork/webwork2/pull/1294 PR#1294]
   
 
== Upgrade Instructions ==
 
== Upgrade Instructions ==
  +
* If you are upgrading from version 2.14 or earlier, you will want to convert your database to use the utf8mb4 character set. You can either follow the instructions at [[Converting the webwork database from the latin1 to the utf8mb4 character set]], or try the upgrade script at /opt/webwork/webwork2/bin/upgrade-database-to-utf8mb4.pl. You should back up your database before trying either of these methods.
  +
* The default branch in Github for the webwork2 and pg repositories is now main instead of master. If you have a local clone with the old master branch, then you can switch to main with
  +
<pre>
  +
git branch -m master main
  +
git fetch origin
  +
git branch -u origin/main main
  +
git remote set-head origin -a
  +
</pre>
  +
  +
The main branch of webwork2 is the now the WeBWorK 2.16 release, and the main branch of pg is the PG 2.16 release.
  +
 
* Many third party javascript libraries (jquery, jquery-ui, mathjax, codemirror, etc.) are no longer packaged with WeBWorK. These libraries are now installed via npm:
 
* 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: <code>apt install npm</code> CentOS/RHEL: <code>yum install npm</code>).
 
# Install npm from your package manager (Ubuntu: <code>apt install npm</code> CentOS/RHEL: <code>yum install npm</code>).
 
# Use npm to install third party javascript:
 
# Use npm to install third party javascript:
 
> cd /opt/webwork/webwork2/htdocs
 
> cd /opt/webwork/webwork2/htdocs
> npm install
+
> npm ci
  +
Note that you may need to use <code>npm install</code> if your version of npm is older and does not have the "ci" command.
  +
* '''There were many javascript and css changes for WW 2.16, so all users will need to clear their browser cache after a server is upgraded.''' If things are not appearing properly, try holding down the shift key and reloading the page.
 
* 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.
 
* 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
 
* The following perl packages will need to be installed
 
** HTTP::Async (on Ubuntu install the package libhttp-async-perl)
 
** HTTP::Async (on Ubuntu install the package libhttp-async-perl)
** CGI::Cookie (see https://github.com/openwebwork/webwork2/pull/1149)
+
** CGI::Cookie (see https://github.com/openwebwork/webwork2/pull/1149) (on Ubuntu 20.04 install the package libcgi-pm-perl; on earlier Ubuntu releases or RHEL/CentOS install from cpan)
** Archive::Zip (on Ubuntu install the package libarchive-zip-perl)
+
** Archive::Zip (on Ubuntu install the package libarchive-zip-perl; on RHEL/CentOS install the package perl-Archive-Zip)
 
* 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.
 
* 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.
  +
* The database configuration in site.conf has been refactored. To prevent compatibility issues in the future you should synchronize with the new version of site.conf.dist.
  +
* The have been changes to the LTI configurations for how user_id and student_id are set. See: https://webwork.maa.org/wiki/LTI-Advanced_Authentication#WeBWorK_Setup and pay attention to the sections on $preferred_source_of_username and $preferred_source_of_student_id.
  +
* WeBWorK is migrating to the perl DBD::MariaDB driver for interaction with the database, as some issues have been identified with DBD::mysql and recent versions of MariaDB. It is recommended that you install DBD::MariaDB (ubuntu package: libdbd-mariadb-perl; RHEL/CentOS installation via cpan requires the package mariadb-devel to be installed). Once it is installed it should be enabled in site.conf.
  +
* 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.
 
* 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.
 
  +
* WeBWorK currently has conflicts with versions of the SQL::Abstract package newer than 1.87. The Ubuntu package manager currently provides version 1.86, so this is likely not a problem if you used apt to install. If you install SQL::Abstract from CPAN, you will likely get errors. WeBWorK 2.16 has added support for SQL::Abstract::Classic as an alternative. If you are installing from CPAN (e.g. RHEL/CentOS users), then you should install SQL::Abstract::Classic.
 
* If you want to allow the use of the new PGtikz.pl macro, you will need to install imagemagick (Ubuntu: <code>apt install imagemagick</code>) and modify /etc/ImageMagick-6/policy.xml and change the line near the end of the file from
 
* If you want to allow the use of the new PGtikz.pl macro, you will need to install imagemagick (Ubuntu: <code>apt install imagemagick</code>) and modify /etc/ImageMagick-6/policy.xml and change the line near the end of the file from
 
<code><policy domain="coder" rights="none" pattern="PDF" /></code>
 
<code><policy domain="coder" rights="none" pattern="PDF" /></code>
 
to
 
to
 
<code><policy domain="coder" rights="read" pattern="PDF" /></code>
 
<code><policy domain="coder" rights="read" pattern="PDF" /></code>
* 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
 
  +
* 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: <code>dvisvgm</code> and <code>pdf2svg</code> (Ubuntu: <code>apt install dvisvgm pdf2svg</code>; RHEL/CentOS: <code>yum install dvisvgm</code> - pdf2svg is not currently packaged for RHEL/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
  +
<code>sudo patch -p1 -d / < /opt/webwork/webwork2/docker-config/xmlrpc-lite-utf8-fix.patch</code>
   
 
== Call for Translators ==
 
== Call for Translators ==
 
Some text has changed in the WeBWorK interface, so there are new entries that need to be translated into other languages.
 
Some text has changed in the WeBWorK interface, so there are new entries that need to be translated into other languages.
  +
  +
<pre> WeBWorK
  +
Online Homework Delivery System
  +
Version 2.16
  +
  +
Copyright 2000-2021, The WeBWorK Project
  +
All rights reserved.
  +
  +
Details
  +
-------
  +
  +
Prerelease date: April 2021
  +
  +
Release date: July 14, 2021
  +
  +
Commits: The webwork2 main branch was modified by 250 commits in merging the WeBWorKk-2.16 branch into main, and the pg main branch was modified by 250 commits in merging the PG-2.16 branch into main.
  +
  +
Github repository: https://github.com/openwebwork
  +
Modules: webwork2 pg (ww_install )
  +
  +
Release manager: Glenn Rice, Missouri Western State University
  +
Release team:
  +
* Danny Glin, University of Calgary, technical manager for The WeBWorK Project (TWP)
  +
* K. Andrew Parker, New York City College of Technology (“City Tech”), City University of New York
  +
* Nathan Wallach, Technion - Israel Institute of Technology
  +
* Alex Jordan, Portland Community College (PCC)
  +
* Peter Staab, Fitchburg State University
  +
* Mike Gage, University of Rochester
  +
  +
</pre>
   
 
[[Category:Release Notes]]
 
[[Category:Release Notes]]

Latest revision as of 07:47, 1 April 2022

WARNING: The github branch for the latest version of WeBWorK has changed! It is now main, instead of master. If you are upgrading from a previous version of WeBWorK be sure to read the second bullet "The default branch in Github..." in the Upgrade Instructions section below, to see how to change your branch before attempting to upgrade. Otherwise "git pull" will not work.

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
StudentNavigator.png
  • A confirmation dialog appears when a student clicks on a timed gateway quiz (but not effective when accessing a quiz from an LMS using LTI)
Gateway Quiz Confirmation.png
  • 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 and ADD_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, and time based achievements will use the course time-zone setting.
  • Major cleanup was done to defaults.config and localOverrides.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)
  • 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

Security/Advanced Features

  • Revised "WeBWorK errors" handling options. Option 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
  • Same-site Cookie support: (see PR #1269, the changed to default to Lax in PR #1307 and the discussion in the older PR #1149.)
  • Fix applets in gateway quizzes
  • Support for the DBD::MariaDB driver in addition to the DBD::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.
  • Improvements to LTI integration, and improved debugging
    • 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; in course.conf (or site wide in conf/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)
  • 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. (See Named Answer Rules for the correct way to used named answers so that a problem will work in gateway quizzes. Note that all OPL problems that use named answers are broken for gateway quizzes because they don't do it this way.)
  • Fixed bug in MultiAnswer objects with singleResult=>1 which did not properly compute score when setMessage is used. (see PR #524)
  • Changes to color support for MathJax 3 controlled equations: PR#1294

Upgrade Instructions

  • If you are upgrading from version 2.14 or earlier, you will want to convert your database to use the utf8mb4 character set. You can either follow the instructions at Converting the webwork database from the latin1 to the utf8mb4 character set, or try the upgrade script at /opt/webwork/webwork2/bin/upgrade-database-to-utf8mb4.pl. You should back up your database before trying either of these methods.
  • The default branch in Github for the webwork2 and pg repositories is now main instead of master. If you have a local clone with the old master branch, then you can switch to main with
git branch -m master main
git fetch origin
git branch -u origin/main main
git remote set-head origin -a

The main branch of webwork2 is the now the WeBWorK 2.16 release, and the main branch of pg is the PG 2.16 release.

  • Many third party javascript libraries (jquery, jquery-ui, mathjax, codemirror, etc.) are no longer packaged with WeBWorK. These libraries are now installed via npm:
  1. Install npm from your package manager (Ubuntu: apt install npm CentOS/RHEL: yum install npm).
  2. Use npm to install third party javascript:
  > cd /opt/webwork/webwork2/htdocs
  > npm ci

Note that you may need to use npm install if your version of npm is older and does not have the "ci" command.

  • There were many javascript and css changes for WW 2.16, so all users will need to clear their browser cache after a server is upgraded. If things are not appearing properly, try holding down the shift key and reloading the page.
  • 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) (on Ubuntu 20.04 install the package libcgi-pm-perl; on earlier Ubuntu releases or RHEL/CentOS install from cpan)
    • Archive::Zip (on Ubuntu install the package libarchive-zip-perl; on RHEL/CentOS install the package perl-Archive-Zip)
  • 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.
  • The database configuration in site.conf has been refactored. To prevent compatibility issues in the future you should synchronize with the new version of site.conf.dist.
  • The have been changes to the LTI configurations for how user_id and student_id are set. See: https://webwork.maa.org/wiki/LTI-Advanced_Authentication#WeBWorK_Setup and pay attention to the sections on $preferred_source_of_username and $preferred_source_of_student_id.
  • WeBWorK is migrating to the perl DBD::MariaDB driver for interaction with the database, as some issues have been identified with DBD::mysql and recent versions of MariaDB. It is recommended that you install DBD::MariaDB (ubuntu package: libdbd-mariadb-perl; RHEL/CentOS installation via cpan requires the package mariadb-devel to be installed). Once it is installed it should be enabled in site.conf.
  • 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 currently has conflicts with versions of the SQL::Abstract package newer than 1.87. The Ubuntu package manager currently provides version 1.86, so this is likely not a problem if you used apt to install. If you install SQL::Abstract from CPAN, you will likely get errors. WeBWorK 2.16 has added support for SQL::Abstract::Classic as an alternative. If you are installing from CPAN (e.g. RHEL/CentOS users), then you should install SQL::Abstract::Classic.
  • 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 and pdf2svg (Ubuntu: apt install dvisvgm pdf2svg; RHEL/CentOS: yum install dvisvgm - pdf2svg is not currently packaged for RHEL/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.

                                     WeBWorK                                    
                         Online Homework Delivery System                        
                                  Version 2.16                          

                    Copyright 2000-2021, The WeBWorK Project                    
                              All rights reserved.                              

Details
-------

Prerelease date: April 2021

Release date:  July 14, 2021

Commits: The webwork2 main branch was modified by 250 commits in merging the WeBWorKk-2.16 branch into main, and the pg main branch was modified by 250 commits in merging the PG-2.16 branch into main.

Github repository:  https://github.com/openwebwork
Modules:    webwork2   pg   (ww_install )

Release manager:  Glenn Rice, Missouri Western State University
Release team:
* Danny Glin, University of Calgary, technical manager for The WeBWorK Project (TWP)
* K. Andrew Parker, New York City College of Technology (“City Tech”), City University of New York
* Nathan Wallach, Technion - Israel Institute of Technology
* Alex Jordan, Portland Community College (PCC)
* Peter Staab, Fitchburg State University
* Mike Gage, University of Rochester