Release notes for WeBWorK 2.14
(→New Features in WeBWorK2 release 2.14)
(→New Features in WeBWorK2 release 2.14)
|Line 223:||Line 223:|
* Under the hood
* Under the hood
* Allow double quote in OPL taxonomy #833, #834
* PTX compatibility #807
* Class::Accessor (part of "Modern Perl" -- allows for easier coding of subroutines) #849
* Plugged XSS exploit #848
* shoemeanother bug fixed #842
* clarified "reduced scoring messages" #842
Revision as of 11:31, 21 July 2018
WeBWorK Online Homework Delivery System Version 2.14 Copyright 2000-2018, The WeBWorK Project All rights reserved. Details ------- Prerelease date: July 20, 2018 -- the advanced beta version of 2.14 is currently on github Release date: Github repository: https://github.com/openwebwork Modules: webwork2 pg ww_install
WeBWorK in a Box
It is now possible to set up a development version of WeBWorK on your laptop. It requires that you install an app called Docker. This app is available for Mac, Linux and Windows operating systems. See  and  for instructions and to download the free "Docker Community Edition". Docker can be run on a 2012 MacBook Pro with 8 Gb of RAM running High Sierra (macOS 10.13.6) without interfering with other apps. It should run fine on most modern laptops and desktop computers.
Having your own development version means that you can safely experiment with new versions of WeBWorK without affecting your production server that is being used by students.
Once Docker is installed on your computer see the instructions on the github webwork2 wiki for installing WeBWorK with ALL of its supporting infrastructure. Once Docker is installed the rest of the installation is the same for all computers.
In addition the rel-2.14 release version of WeBWorK includes an automatic installation of an R-server so that you can test statistics problems that use R.
If your laptop can run Docker you will have a "WeBWorK in a Box" available for experimentation (and you can help with testing and bug fixing! -- Please!!!)
WARNING: It is likely that new modules will be required since the release 2.12. There are also changes to the configuration files which will need to be integrated into your existing configurations.
The process for upgrading to 2.14 is described below. This assumes that you have been
using release 2.13 or some other recent release that you installed using
the github.com repository. If your installation is earlier than 2.13 you should skim through
the installation sections of earlier releases
If you are setting up WeBWorK for the very first time you will probably want help with directory structure, permissions (always a hassle) and installing infrastructure tools. If you are installing webwork on a fresh OS install such as Ubuntu or Debian, try using the ww_install script.  This will save you lots of time. As of this writing the install script does not include all the new CPAN modules and you will need to install them by hand as described below.
If you prefer to have more control and to install all of the modules by hand there is a collection of installation manuals of which I recommend Installation_Manual_for_2.13_on_Ubuntu_18.04 as the most up-to-date. There are only slight differences between the instructions for the recent releases of WeBWorK and the directions are quite similar for the different flavors of unix. The directory names may sometimes be different but a google search can help clarify how to translate instructions from one OS to another.
Once you get to the section in the manual where the WeBWorK and PG software is being installed you can refer to the instructions below. Let's get started:
1) Go to
>git branch * develop master >sudo git branch -t rel2.14 origin/rel-2.14 Branch rel2.13 set up to track remote branch master from origin. >sudo git checkout rel2.14 error: You have local changes to 'lib/WeBWorK/ContentGenerator/Feedback.pm'; cannot switch branches. #### this means that you have made local changes you might want to save. Use `git stash` or `git add`, `git commit` or just move the file to a safe place outside the folder. >sudo git checkout -f rel2.14 # the `f` forces the change and overwrites the file if you didn't move it. Switched to branch 'rel2.14' >sudo git pull .... long list of updated files
2) Now go to
/opt/webwork/pg and run
>git branch * develop master >sudo git branch -t rel2.14 origin/rel-2.14 Branch rel2.14 set up to track remote branch master from origin. >sudo git checkout rel2.14 Switched to branch 'rel2.14' >sudo git pull .... long list of updated files
-t flag has your branch "track" the version of master at the origin site. If there are updates
on github.com/webwork2 to the rel-2.14 branch a simple
sudo git pull will update your local directory.
3) Depending on your system there may be new perl modules which have been added since 2.12. Run
check_modules.pl and look for missing modules. They may include:
cd /opt/webwork/webwork2/bin ./check_modules.pl ** Digest::SHA not found in @INC ** Email::Sender not found in @INC ** Data::Dump not found in @INC cpan HTML::Scrubber found and loaded ** Statistics::R::IO not found in @INC
In this case the first three modules are missing. You will need to install them with
sudo cpan Digest::SHA sudo cpan Email::Sender sudo cpan Data::Dump sudo cpan Statistics:R::IO
and so forth.
You should also run
cd /opt/webwork/webwork2/bin pdflatex check_latex.tex
and look for missing latex packages. They may include:
If you are missing fullpage it is in the texlive-latex-extra package in apt based distributions and texlive-preprint in yum/dnf distributions.
Configuration file update
If you are upgrading from a version 2.12 or any version earlier than 2.13 there are a number of configuration changes that you will have to make in your site.conf and localOverrides.conf and possibly course.conf files. See Configuration file update for 2.13 This is IMPORTANT because there were significant changes in the configuration files from release 2.12 to 2.13.
If you are updating from a working version of 2.13 there are no required changes, but there have been changes in localOverrides.conf.dist which you might like to incorporate into your current localOverrides.conf file.
Restart the apache server
8) Restart the webserver.
sudo apachectl restart
Upgrade the admin course, MathJax and the OPL
9) Run the upgrade admin database script. You will not be able to access your admin course until this is done, and you will need to do that to upgrade the course databases.
upgrade_admin_db.pl #(if this doesn't work use) perl upgrade_admin_db.pl
Next, log into the admin course and upgrade the databases for all of your courses. Your server will not be functional until you perform this step.
10) Download the latest version of the OPL. Note: If you have library statistics enabled this will also update your statistics tables.
cd /opt/webwork/libraries/webwork-open-problem-library git pull origin /opt/webwork/webwork2/bin/OPL-update
11) Download the latest version of MathJax.
cd /opt/webwork/MathJax git pull
Upgrade course databases
If you are upgrading from release 2.12 or 2.13 you should not have to upgrade any course databases -- there have been no changes. If you are upgrading from an older version, or if you have courses which were created under older versions and not updated then you will need to upgrade the courses from the web.
1. Login in to the admin course
2. Choose the "Upgrade Courses" tab.
3. Follow instructions, choosing which courses you want to upgrade.
4. There will be an intermediate report telling what changes will be made -- click "continue"
5. There will be a final report on the changes successfully completed -- click "done"
Because the underlying mechanisms for sending email have changed it is important to run two tests to check that WeBWorK is still communicating with the SMTP (the post office) which you have designated (in site.conf) to handle mail.
1. Create a new course
test_course</course> from the admin page
2. You should be listed in this new course as an
3. Add a student to the course
4. Login as the student and from the front page use the "email the instructor" button to send a feedback notice
5. Check that you receive this feedback (at your admin email address in the course). Remember the subject starts with [WWfeedback] and you may be shunting
such messages off to another mailbox.
6. Login as a professor or admin and from the email page send email to your self (and perhaps to the student you have added).
7. Check that this mail comes through.
New Features in PG release 2.14
- Sage applets work again: Modified sage.pl so that it works with new interface provided by SageMath. #329
- SageCalculatorPad is now available: #329
- PreTeXt support (mostly from Alex Jordan) -- #327, #352, #353,#360
- Add custom latex (customLatex.pl) #326, #339
- Add custom font options for on the fly graphs: #359
- Allow true display math mode in PGML (\[....\] in addition to \displaystyle) #358
- New chemistry macros (contextReaction.pl) #334
- New units -- (e.g. s, sec, second, seconds are all aliases for the short time unit. )
instead of hidden answer blanks) #324
* Better warning messages for authors * Enable persistent storage (store persistence data for applets in local persistent storage * Matrix handling improvements and bug fixes: (Value/Matrix.pm,) #330, #331 , #332, #333, #344, #347 * PGML bug fixes and small feature requests, #320, #321, #322, #335, #341,#333, #348,#349,
New Features in WeBWorK2 release 2.14
- !! New Docker support for R "in a box" #853 (thanks Pan Luo and UBC)
- Show number of currently "active" students on Statistics page: #823
- LTI connection improvements, particularly for D2L #804, #813
- Under the hood
* Allow double quote in OPL taxonomy #833, #834 * PTX compatibility #807 * Class::Accessor (part of "Modern Perl" -- allows for easier coding of subroutines) #849 * Plugged XSS exploit #848 * shoemeanother bug fixed #842 * clarified "reduced scoring messages" #842
- Gory details of changes to PG from 2.13 to 2.14
- Gory details of changes to WeBWorK2 from 2.13 to 2.14