Release notes for WeBWorK 2.18
Jump to navigation
Jump to search
Note that WeBWorK 2.18 has not yet been released. Currently this page is a work in progress.
Contents
New WeBWorK Features
- The overall layout of WeBWorK has changed a bit with the sidebar navigation menu scrolling independently of the main content.
- The LTI module has been updated to support version 1.3, also called LTI Advantage tools, but LTI version 1.1 can still be used.
- A new status called "observer" has been added. This can be used for TAs and professors or others to ensure that they don't show up in scoring, statistics and student progress views.
- Gateway quizzes are now called Tests. In addition, there are other changes:
- (Are there other notable quiz changes?)
- The Student Progress page has the option for 'Time remaining' for tests.
- Producing a hardcopy has been revamped. It now uses the exam class from latex. (Update documentation for hardcopy?)
- There is the ability to save/retrieve data within pg problems on a user-set level. (Needs documentation)
- Essay answers
- The date/time widget (flatpicker) now includes a "Now" and "Today" button to set the date/time to now or adjust the date only respectively.
- The PG problem editor improvements
- There is a new format to include a source editor and viewer in a side-by-side manner.
- The update/new version tab options are now called Save/Save As...
- There is the option to save backups for pg problems. There is a new Course Configuration and options in the "Revert" tab. (documentation?)
- The Stats page has been rewritten for layout and clarity.
- When using the problem grader, there is now an option for using points (default), percent or both. This is a new options in the Problem Answers tab of the Course Configuration.
New PG Features
- New Macros:
- plotly3D (documentation)
- random names with pronouns (documentation)
- MathObject checkboxes (Need a LINK)
- parserRadioMultiAnswer--this allows for a mixture of radio buttons and within each, other inputs. (Need a LINK)
- Non-decimal base context (documentation)
- Updates to existing macros
- niceTables.pl has been completely overhauled.
- New features:...
- Changes?
- Labels for checkbox/radio answers (documentation)
- The graphtool now has a number line mode (documentation)
- DropDown option to Popup macro. (documentation)
- Changes to Units:
- degrees (celsius, Fahrenheit, Kelvin) and mathquill
- new units: angstroms, microsecond, nanosecond, picometre, femtometre, tera electron-volt, Megawatt, milliwatt, milliCoulomb, microCoulomb, nanoCoulomb, milli-ampere, milli-tesla, Becquerel.
- Note: the AnswerFormatHelp macro has been deprecated. Instead, the built-in helpLink should be used instead. (LINKS!!)
- Mathquill changes
- AnswerHelpFormat macro has been deprecated. Authors should now use helpLink function instead.
- unionInclude macro has been deprecated. This was used for random problems. The built-in XXX should be used instead.
Security/Advanced Features
The backend of WeBWorK has been relying on apache and mod_perl for nearly two decades. However, mod_perl has not been updated since 2011 and many linux distros are no longer supporting mod_perl in an easy way. The server part of WeBWorK is now functioning with Mojolicious, which includes a standalone web server (hypnotoad) written completely in perl.
Mojolicious has some nice modern route handling features...
(Include some security features?)
Upgrade Instructions
- It is recommended to back up your current webwork2 configuration files before proceeding. Do this with
> cp -r /opt/webwork/webwork2/conf /opt/webwork/webwork2/conf.bak
- Now update the webwork2 and pg code. For this run
> cd /opt/webwork/webwork2
> git fetch origin
> git checkout main
> git pull
> cd /opt/webwork/pg
> git fetch origin
> git checkout main
> git pull
- Update the javascript and css assets for webwork2 and pg with
> cd /opt/webwork/webwork2/htdocs
> npm install
> cd /opt/webwork/pg/htdocs
> npm install
- Delete the old apache2 configuration file /opt/webwork/webwork2/conf/webwork.apache2.4-config and the link to it in /etc/apache2/conf-enabled with
> rm /opt/webwork/webwork2/conf/webwork.apache2.4-config
> sudo rm /etc/apache2/conf-enabled/webwork.conf
- Compare your site.conf file to site.conf.dist, and your localOverrides.conf file to localOverrides.conf.dist and update as needed.
- Enable new apache2 modules that are needed with
>sudo a2enmod proxy proxy_http headers
- The next step is optional but recommended.
- Disable the apache2 mpm_prefetch module and enable npm_event with
>sudo a2dismod mpm_prefetch
>sudo a2enmod mpm_event
- Adjust the parameters in the file /etc/apache2/mods-available/mpm_event.conf as needed. See https://webwork.maa.org/wiki/Installation_Manual_for_2.18_on_Ubuntu#Edit_mpm_event.conf for details.
- Next set up the new apache2 configuration.
> cp /opt/webwork/webwork2/conf/webwork2.apache2.4.dist.conf /opt/webwork/webwork2/conf/webwork2.apache2.4.conf
> sudo ln -s /opt/webwork/webwork2/conf/webwork2.apache2.4.conf /etc/apache2/conf-enabled/webwork2.conf
- Restart apache2 to make all of the apache2 changes take effect with
> sudo systemctl restart apache2
- Note that at this point webwork2 is not running, and you will not be able to access the usual pages. The webwork2 now needs to be set up for this to work. Start by copying the systemd service .dist file for webwork2.
> cp /opt/webwork/webwork2/conf/webwork2.dist.service /opt/webwork/webwork2/webwork2.service
- Now enable and start the service with
> sudo systemctl enable /opt/webwork/webwork2/conf/webwork2.service
> sudo systemctl start webwork2
- You should not be able to visit http://your.server.edu/webwork2 (adjust the url as needed) and see webwork2 in action.
- Make sure to upgrade courses from the admin course to relegate changes to the database.