Release notes for WeBWorK 2.7

From WeBWorK_wiki
Jump to navigation Jump to search

Release/2.7 was earlier called release 2.5.1.3

Cautions

Warning : Because new tables and fields have been added for the essayQuestion feature upgrading from ww2.5.1.1 or release/2.6 (the "master branch" up until this time) will require:
  • Moving the current database.conf to database.conf.save (assuming you have made no changes to your local database.conf version which is usually the case)
  • Upgrading the tables by visiting the admin page -- which will also create showPastAnswers table
    • This replaces the showPastAnswers logs and also supports the essayQuestion feature.
  • To use these instructions your server will require at least perl version 5.10.x (5.12.x would be better, 5.18 is the current version) to run weBWorK release/2.7. Type perl --version on the command line of your server to check.
  • For those running perl 5.8.x (e.g. RHEL5 systems) we will have a legacy distribution that will run on your operating system. We can't make any guarantees about how much longer we can continue to support perl 5.8.x. (Contact Mike Gage gage at math.rochester.edu)

What's new?

  • EssayAnswers
  • MathAchievements
  • new support for compoundProblem questions macros/compoundProblem2.pl
  • Slide open/closed Hints and Solutions (knowls). See the configuration notes to customize their behavior.
  • Tabbed editors: Classlist2, HomeworkEditor2, PGProblemEditor2.
    • HomeworkEditor2 has a dateTimePicker for choosing open and due dates from a calendar.
  • Faster library browser.
  • One page Problem editing and viewing: Use PGProblemEditor3 and math4 theme.
  • Themes
    • Drag and drop themes: -- just place a new theme in the htdocs/theme directory and it becomes available to all courses.
    • Themes are chosen on the Course Configuration page
    • New theme math4: (bootstrap themes)
    • Updated theme math3
  • New Languages
    • Language files are being maintained at Transifex
    • The language for a course is chosen on the CourseConfiguration page
    • New languages can be added by adding a .po or .mo file to lib/WeBWorK/Localization
    • Roughly 80% of the strings in webwork2 have been marked for translation. There is still more to do and help is welcome.
  • New student equation editors
    • DragMath (a java app) and MathView (an HTML5 app -- works on ipads)
    • Enable these for an individual course on the CourseConfiguration page, tab: PG display
  • Version tagging
    • The current theme, webwork2 version and pg version are displayed at the foot of most webwork pages for easy reference.

More

  • Messages are scrubbed to reduce the possibility of cross site scripting (XSS).
  • Regular releases will be numbered 2.5, 2.6, 2.7,... 2.10. We're building toward release/3.x and a major advance in the responsiveness of the instructor interface.
    • [Complete list] of webwork2 commits between tag WeBWorK-2.6+ and tag WeBWorK-2.7
    • [Complete list] of pg commits between the tag PG-2.5.1+ and tag PG-2.7

Quick install

If you are already using the software from github.com/openwebwork then the upgrade is quite simple:

  • Update webwork2
 cd /opt/webwork/webwork2 
 git branch
   * master 
    .... perhaps other branches
 git checkout master     # switch to master branch if you aren't there already 
                         # * indicates current branch
 git pull                # pull down software updates
  • Move database.conf out of the way
 cd /opt/webwork/webwork2/conf
 mv database.conf  database.conf.save
  • Update pg
 cd /opt/webwork/pg
 git branch
 git checkout master
 git pull
  • Update library
 cd /opt/webwork/libraries/webwork-open-problem-library
 git pull 
  • Run check_modules.pl and update CPAN modules if needed.
  • Update library database
 cd /opt/webwork/webwork2/bin
 ./OPL-update           # update the database indexing the OPL
  • Restart webserver.
  • Go to admin course, click on the "upgrade courses" tab and update the course databases.
  • Once you have checked that everything still works you might like to visit webwork2/conf/ and compare localOverrides.conf and localOverrides.conf.dist. There might be some new features that you will want to enable.

Revert to 2.6

 cd /opt/webwork/webwork2
 git checkout WeBWorK-2.6+
 cd /opt/webwork/pg
 git checkout PG-2.6+
  • Restart your apache server
  • This moves you back to the point just before release/2.7 was merged into the master branch

What could possibly go wrong?

  • Everyone's environment is different, and everyone sometimes misses a step in the instructions so things might not always work the first time.
  • Don't panic!
  • On restarting the server you might get a (very long) error message saying something like: "HTML::Scrubber not found after looking in ......". This happens if a new CPAN module is used which is not immediately available on your system. This can be installed with
  sudo cpan HTML::Scrubber 
  • If you have not updated for some time there might be several CPAN modules that need to be added.
  • Perhaps things seem to work at first but then fail when trying to enter a problem set with some information about "missing fields in table". This usually indicates that your course has an out-of-date database. (This error will not happen with a freshly built course, only one that was built with a previous version of WW.)
    • Check that the file database.conf has been moved out of the way (see above) so that the new database.conf.dist file is used for accessing the database.
    • Sign into WeBWorK from the web and go to the admin page. The url will be something like:
 http://your.site.edu/webwork2/admin
    • Select the "upgrade courses" tab
    • Follow the instructions and upgrade the course that triggered the error (and any other courses that you expect to continue to use. You will be presented with a page where you can select which courses should be upgraded, followed by another page that informs you what database changes will be made, and then a page reporting the changes that have been made.
  • If the database error is not resolved
    • Check that you have set the problemLibrary{version} to "2.5" in localOverrides.conf if you are now using the webwork-open-problem-library. (Version "2.0" corresponds to the old NationalProblemLibrary)
    • Check that you ran OPL-update AFTER changing the settings above to update the library database.

Switching from SVN to Github

If you have been using software from the SVN (or CVS) and this will be the first time using software from the current github/openwebwork site then follow these Github instructions to set up your new webwork installation.

The initial setup takes a little more time to do safely (so that you can back out if needed) but once it is done you will be able to follow the sequence above for subsequent upgrades. Reediting configuration files will be come a rare, possibly non-existent practice.