Difference between revisions of "Release notes for WeBWorK 2.8"

From WeBWorK_wiki
Jump to navigation Jump to search
 
(19 intermediate revisions by 2 users not shown)
Line 1: Line 1:
   
  +
<pre> WeBWorK
  +
Online Homework Delivery System
  +
Version 2.8
  +
  +
Copyright 2000-2014, The WeBWorK Project
  +
All rights reserved.
  +
  +
Details
  +
-------
  +
  +
  +
  +
Release date: December 20, 2013
  +
  +
Github repository: https://github.com/openwebwork
  +
Modules: webwork2 pg
  +
</pre>
   
 
=== Cautions ===
 
=== Cautions ===
{{Warning |Because new tables and fields have been added to the OpenProblemLibrary and for new MathAchievement features upgrading from stable webwork (WW-2.7) will require:}}
+
{{Warning |Because new tables and fields have been added to the OpenProblemLibrary and for new MathAchievement features upgrading from stable webwork (WW-2.7) will require you to:}}
* Upgrading the tables by visiting the admin page. (The main change will be to add the field "description" to the set and user_set tables.)
+
* Updating the library collection webwork-open-problem-library
+
* Run webwork2/bin/check_modules to insure that your CPAN modules are all installed. Two new ones are required for this release (see below).
* Running webwork2/bin/OPL-update to update the library tables.
+
* Upgrade the course tables by visiting the admin web page. (The main change will be to add the field "description" to the set and user_set tables.)
  +
* Update the library collection webwork-open-problem-library
  +
* Make sure that MathJax is properly installed.
  +
/opt/webwork/MathJax should have a copy of MathJax cloned from http://github.com/mathjax
  +
/opt/webwork/webwork2/htdocs should have a link mathjax -> ../../MathJax
  +
this is different from some earlier versions where MathJax files were actually stored in the directory .../webwork2/htdocs/mathjax
  +
the current version will hopefully be easier to maintain -- but the method for keeping MathJax updated may change yet again -- be alert. :-)
  +
* Run webwork2/bin/OPL-update to update the library database tables. This can take some time -- have a cup of coffee.
 
sudo -E webwork2/bin/OPL-update # you may need the sudo if you don't have permission to write new files in webwork2/htdocs
 
sudo -E webwork2/bin/OPL-update # you may need the sudo if you don't have permission to write new files in webwork2/htdocs
  +
* Run webwork2/bin/setfilepermissions to insure that permissions on webwork2 and pg files are correct. (In particular the directory pg/lib/chromatic must be set so that the server can write to it when compiling the color.c file.) This might take 30 seconds to complete.
  +
sudo -E webwork2/bin/setfilepermissions
   
 
<div style="color:red">
 
<div style="color:red">
* 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 <code> perl --version </code> on the command line of your server to check.
+
* For this release 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.8. Type <code> perl --version </code> on the command line of your server to check the server's version of perl.
 
</div>
 
</div>
   
Line 17: Line 36:
 
The plan is to merge this into the "master" branch on December 1, 2013.
 
The plan is to merge this into the "master" branch on December 1, 2013.
   
Please help test this release version. If you are installing by github
 
  +
Decembe 19, 2013: Release/2.8 has been merged into master and is now the main webwork version.
you can easily switch to this branch and revert back to the current
 
master branch if that becomes necessary. For instructions see [[Github]].
 
   
Most changes only impact instructor use of WeBWorK. Few new features (or bugs)
+
Most changes only impact the instructor use of WeBWorK. With the exception of Achievement Items, no new features (or bugs)
 
will be apparent to students.
 
will be apparent to students.
   
Line 28: Line 45:
 
* '''Installation and administrative''' updates (including course upgrades)
 
* '''Installation and administrative''' updates (including course upgrades)
 
** New CPAN modules:
 
** New CPAN modules:
*** Add requirement for JSON.pm (for sage)
+
*** Add CPAN requirement for JSON.pm (for sage)
** Tweaks to update course page -- slightly less scary error messages. -- adding harmless: in front of the message helps but we should change the color on these.
+
*** Add CPAN requirement for File::Find::Rule
  +
** Tweaks to update course page -- slightly less scary warning error messages. -- adding harmless: in front of the message helps but we should change the color on these.
 
** Allow db storage engine to be selected more easily. Speeds up OPL update in particular
 
** Allow db storage engine to be selected more easily. Speeds up OPL update in particular
 
** New script that will set permissions for all files.
 
** New script that will set permissions for all files.
Line 38: Line 55:
 
*** if you switch to a previous branch you will have to create and commit this link.
 
*** if you switch to a previous branch you will have to create and commit this link.
   
** In particular the directory pg/lib/chromatic needs to have write permissions for the server since the C code color is compiled into it.
 
  +
   
 
* '''Configuration''' updates
 
* '''Configuration''' updates
  +
** Datepicker can now be disabled
  +
** Achievement Items can now be enabled
  +
** Timezone field now has validation
 
* '''Library updates'''
 
* '''Library updates'''
** OPL is now default library for sure
+
** OPL is now default library (replacing the NPL -national problem library)
 
** You can now search for problems by level
 
** You can now search for problems by level
 
** Tagging buttons can be enabled for privileged users
 
** Tagging buttons can be enabled for privileged users
 
** OPL taxonomy also stored in json file created when OPL-update is run.
 
** OPL taxonomy also stored in json file created when OPL-update is run.
 
** More like this button in OPL
 
** More like this button in OPL
  +
** Library browser 1 has significant upgrades, including dynamic adding and hiding of problems.
  +
** Library browser 1 uses the revamped webworkWebservice to make sets and render problems.
 
* '''Homework manager''' updates
 
* '''Homework manager''' updates
** Save tabs are now the default instead of the Cancel tag
+
** Save tabs are now the default instead of the Cancel tab
** Datepicker (calendars) in Homeworksets1 & 2
+
** When importing homework sets you can input a "start date". All the dates of the homework sets will be shifted so that the earliest corresponds to the start date. (I.e. you import a semesters worth of homework with the start date as the first day of the new semester.)
** Add homework set descriptions as well as file names -- helps keep file names short. (requires database upgrade)
+
** Datepicker (calendars) in Homeworksets1 & 2. These can be accessed by clicking the button next to the field.
  +
** Add homework set descriptions as well as file names -- helps keep file names short. These descriptions are shown as tooltips on the Problem Sets Page and the Homework manager page. (requires database upgrade)
 
** Hide hints to students check box.
 
** Hide hints to students check box.
** Conditional release features -- hides homeworks sets until conditions are met.
+
** Conditional release features -- hides homeworks sets until conditions are met. Can be enabled on the Set Detail page.
 
* '''Classlist manager''' updates
 
* '''Classlist manager''' updates
  +
** Save tabs are now the default instead of the Cancel tab
  +
* '''Show Answers''' updates
  +
** Tweaked the formatting of the show answers page significantly. It now renders formulas when it can and has much better support for longer answers.
  +
** Added the ability to do basic regexping on student and set names in the Past Answers page.
 
* '''Authentication''' updates
 
* '''Authentication''' updates
 
** Cosign.pm -- fix typos
 
** Cosign.pm -- fix typos
 
** Fix security issue when using bypassShib in Shibboleth module
 
** Fix security issue when using bypassShib in Shibboleth module
 
* '''Theme updates'''
 
* '''Theme updates'''
  +
** Math4 is now the default theme.
  +
*** In particular support for math3 is fading. It has limited support for things like tooltips and achievements. However there is definitely reduced functionality.
 
** Math4 theme updates. (Goehle and Hsu)
 
** Math4 theme updates. (Goehle and Hsu)
 
** MathView works with math4 theme
 
** MathView works with math4 theme
  +
*** MathView has been changed significantly since its previous incarnation. It has a new interface and also adds "typeahead" support to the answer fields when enabled.
 
* '''Other instructor interface''' updates
 
* '''Other instructor interface''' updates
** Instructors can choose to show paths on hardcopy (or not).
 
  +
** The statistics page was upgraded to use color coding to indicate attempts and correctness.
  +
** <s>Instructors can choose to show paths on hardcopy (or not).</s> needs tweaking
  +
** <s>Instructors can choose whether to show solutions in hardcopy</s> needs tweaking
  +
** Default problem editor changed from PG1 to PG2.
 
** Fixed glitch in Statistics graph
 
** Fixed glitch in Statistics graph
 
* '''MathAchievement''' updates
 
* '''MathAchievement''' updates
 
** Add tabs to Achievement editor.
 
** Add tabs to Achievement editor.
** New "potions" -- allow for perks for doing well on homework.
 
  +
** Save tab is now the default.
  +
** New "Achievement Items" -- allow for perks for doing well on homework.
  +
*** These Achievement Items are awarded every time the student gains a level. They give student some control over their homework in that they are one time use items which can extend due dates, mark problems correct, etc... More can be found in the achievement_items_readme.txt file in the achievements folder.
 
*** (does not require database upgrade)
 
*** (does not require database upgrade)
  +
* '''Problem Grader'''
  +
** Changed rendering on the Problem Grader page so everything goes through MathJax
  +
** Added links to student names which open window with that students version of the problem.
 
* '''Accessibility''' updates
 
* '''Accessibility''' updates
 
** MathJax configured to provide better accessibility. Configured now only defaults.config.
 
** MathJax configured to provide better accessibility. Configured now only defaults.config.
* Security
 
  +
** MathJax configured so that it treats ** as ^.
  +
** Began the process of adding aria landmarks.
  +
* '''Security'''
 
** More XSS vulnerabilities patched
 
** More XSS vulnerabilities patched
  +
** Fixed security issue where problem code could be displayed to users with insufficient permissions
 
* '''Student problem interface''' updates
 
* '''Student problem interface''' updates
 
** numOfAttempts should now gives the expected results in homework sets. Previously the number of attempts might be off by one. (Gatewayquizzes need more testing.)
 
** numOfAttempts should now gives the expected results in homework sets. Previously the number of attempts might be off by one. (Gatewayquizzes need more testing.)
Line 82: Line 122:
 
** More additions to French translation
 
** More additions to French translation
 
* '''PG updates'''
 
* '''PG updates'''
  +
** Improved the behavior of HINTS and SOLUTIONS, especially with regard to hardcopies. Now hints and solutions can only be displayed by instructors or by students after then answer date, and will not be displayed unless they are requested.
 
** Updates to probability and statistics macros (Kelly Black)
 
** Updates to probability and statistics macros (Kelly Black)
 
** PGstatisticsGraphMacros.pl
 
** PGstatisticsGraphMacros.pl
Line 97: Line 138:
 
** Macro files are identified when reporting errors (restores behavior that was lost in a past update).
 
** Macro files are identified when reporting errors (restores behavior that was lost in a past update).
 
* '''Database updates'''
 
* '''Database updates'''
  +
** Significantly, increased the size of the past answer answer field. This allows for longer essay answers.
 
* '''Minor bug fixes and tweaks'''
 
* '''Minor bug fixes and tweaks'''
 
** Fix PGalias bug where files have the same name but different extensions.
 
** Fix PGalias bug where files have the same name but different extensions.
Line 117: Line 159:
 
sudo mv modelCourses modelCourses.old
 
sudo mv modelCourses modelCourses.old
 
sudo ln -s ../webwork2/courses.dist/modelCourse modelCourse
 
sudo ln -s ../webwork2/courses.dist/modelCourse modelCourse
  +
* There appears to be a database failure on an older course -- but newly created courses work fine
  +
** Did you upgrade courses from the admin webpage?
  +
* There is some long message about not finding a file in @INC ......
  +
** Most likely a CPAN module is missing -- run webwork2/bin/check_modules.pl and use <code>cpan XXXX </code> to install module XXXX
  +
* MathJax doesn't work but image mode works fine.
  +
** See top of page. Do you have a proper link to a MathJax folder located along side of webwork2, pg and libraries?
  +
  +
[[Category:Release_Notes]]

Latest revision as of 21:31, 1 June 2014

                                     WeBWorK                                    
                         Online Homework Delivery System                        
                                  Version 2.8                               

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

Details
-------



Release date: December 20, 2013

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

Cautions

Warning : Because new tables and fields have been added to the OpenProblemLibrary and for new MathAchievement features upgrading from stable webwork (WW-2.7) will require you to:
  • Run webwork2/bin/check_modules to insure that your CPAN modules are all installed. Two new ones are required for this release (see below).
  • Upgrade the course tables by visiting the admin web page. (The main change will be to add the field "description" to the set and user_set tables.)
  • Update the library collection webwork-open-problem-library
  • Make sure that MathJax is properly installed.
 /opt/webwork/MathJax   should have a copy of MathJax cloned from http://github.com/mathjax
 /opt/webwork/webwork2/htdocs should have a link   mathjax -> ../../MathJax
 this is different from some earlier versions where MathJax files were actually stored in the directory .../webwork2/htdocs/mathjax
 the current version will hopefully be easier to maintain -- but the method for keeping MathJax updated may change yet again -- be alert. :-)
  • Run webwork2/bin/OPL-update to update the library database tables. This can take some time -- have a cup of coffee.
 sudo -E webwork2/bin/OPL-update # you may need the sudo if you don't have permission to write new files in webwork2/htdocs
  • Run webwork2/bin/setfilepermissions to insure that permissions on webwork2 and pg files are correct. (In particular the directory pg/lib/chromatic must be set so that the server can write to it when compiling the color.c file.) This might take 30 seconds to complete.
 sudo -E webwork2/bin/setfilepermissions
  • For this release 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.8. Type perl --version on the command line of your server to check the server's version of perl.

Road map

October 7, 2013: Release/2.8 is pretty stable but may still have a few bugs.

The plan is to merge this into the "master" branch on December 1, 2013.

Decembe 19, 2013: Release/2.8 has been merged into master and is now the main webwork version.

Most changes only impact the instructor use of WeBWorK. With the exception of Achievement Items, no new features (or bugs) will be apparent to students.

What's new?

  • Installation and administrative updates (including course upgrades)
    • New CPAN modules:
      • Add CPAN requirement for JSON.pm (for sage)
      • Add CPAN requirement for File::Find::Rule
    • Tweaks to update course page -- slightly less scary warning error messages. -- adding harmless: in front of the message helps but we should change the color on these.
    • Allow db storage engine to be selected more easily. Speeds up OPL update in particular
    • New script that will set permissions for all files.
      • In particular the directory pg/lib/chromatic needs to have write permissions for the server since the C code color is compiled into it.
      • To set all of the file permissions in webwork use sudo -E /opt/webwork/webwork2/bin/setfilepermissions
    • Mathjax is replaced by a link to a folder at webwork/MathJax. This simplifies some git processes, but
      • you must verify the link is pointed correctly if you are not using standard layout
      • if you switch to a previous branch you will have to create and commit this link.


  • Configuration updates
    • Datepicker can now be disabled
    • Achievement Items can now be enabled
    • Timezone field now has validation
  • Library updates
    • OPL is now default library (replacing the NPL -national problem library)
    • You can now search for problems by level
    • Tagging buttons can be enabled for privileged users
    • OPL taxonomy also stored in json file created when OPL-update is run.
    • More like this button in OPL
    • Library browser 1 has significant upgrades, including dynamic adding and hiding of problems.
    • Library browser 1 uses the revamped webworkWebservice to make sets and render problems.
  • Homework manager updates
    • Save tabs are now the default instead of the Cancel tab
    • When importing homework sets you can input a "start date". All the dates of the homework sets will be shifted so that the earliest corresponds to the start date. (I.e. you import a semesters worth of homework with the start date as the first day of the new semester.)
    • Datepicker (calendars) in Homeworksets1 & 2. These can be accessed by clicking the button next to the field.
    • Add homework set descriptions as well as file names -- helps keep file names short. These descriptions are shown as tooltips on the Problem Sets Page and the Homework manager page. (requires database upgrade)
    • Hide hints to students check box.
    • Conditional release features -- hides homeworks sets until conditions are met. Can be enabled on the Set Detail page.
  • Classlist manager updates
    • Save tabs are now the default instead of the Cancel tab
  • Show Answers updates
    • Tweaked the formatting of the show answers page significantly. It now renders formulas when it can and has much better support for longer answers.
    • Added the ability to do basic regexping on student and set names in the Past Answers page.
  • Authentication updates
    • Cosign.pm -- fix typos
    • Fix security issue when using bypassShib in Shibboleth module
  • Theme updates
    • Math4 is now the default theme.
      • In particular support for math3 is fading. It has limited support for things like tooltips and achievements. However there is definitely reduced functionality.
    • Math4 theme updates. (Goehle and Hsu)
    • MathView works with math4 theme
      • MathView has been changed significantly since its previous incarnation. It has a new interface and also adds "typeahead" support to the answer fields when enabled.
  • Other instructor interface updates
    • The statistics page was upgraded to use color coding to indicate attempts and correctness.
    • Instructors can choose to show paths on hardcopy (or not). needs tweaking
    • Instructors can choose whether to show solutions in hardcopy needs tweaking
    • Default problem editor changed from PG1 to PG2.
    • Fixed glitch in Statistics graph
  • MathAchievement updates
    • Add tabs to Achievement editor.
    • Save tab is now the default.
    • New "Achievement Items" -- allow for perks for doing well on homework.
      • These Achievement Items are awarded every time the student gains a level. They give student some control over their homework in that they are one time use items which can extend due dates, mark problems correct, etc... More can be found in the achievement_items_readme.txt file in the achievements folder.
      • (does not require database upgrade)
  • Problem Grader
    • Changed rendering on the Problem Grader page so everything goes through MathJax
    • Added links to student names which open window with that students version of the problem.
  • Accessibility updates
    • MathJax configured to provide better accessibility. Configured now only defaults.config.
    • MathJax configured so that it treats ** as ^.
    • Began the process of adding aria landmarks.
  • Security
    • More XSS vulnerabilities patched
    • Fixed security issue where problem code could be displayed to users with insufficient permissions
  • Student problem interface updates
    • numOfAttempts should now gives the expected results in homework sets. Previously the number of attempts might be off by one. (Gatewayquizzes need more testing.)
    • Removed old methods of displaying math
      • Should ascii math be restored?
      • Should LatexMathML be restored?
      • Should jsMath be restored?
    • Gateway quizzes now store past answers in the database.
  • Localization/Translation updates
    • Chinese and Korean translations added.
    • More additions to French translation
  • PG updates
    • Improved the behavior of HINTS and SOLUTIONS, especially with regard to hardcopies. Now hints and solutions can only be displayed by instructors or by students after then answer date, and will not be displayed unless they are requested.
    • Updates to probability and statistics macros (Kelly Black)
    • PGstatisticsGraphMacros.pl
    • Sage cell macros added (sage.pl added)
    • AskSage() call defined.
    • GeoGebraWebApplet added -- support for Geogebra HTML5 applets
    • contextComplexJ -- allows j to be used for square root of minus one -- for engineering classes
    • Chromatic.pm -- added to standard distribution -- used in graph theory problems.
    • New Matrix MathObjects features: MatrixCheckers.pl MatrixReduce.pl MatrixUnits.pl
    • Adjustments to LinearProgramming.pl to use MathObject fractions (preliminary work)
    • CompoundProblem2.pl -- new support for writing sequential problems
    • Essay answers can have new lines.
    • add _init function to contextTypeset.pl so that it is not reloaded.
    • Move text2PG.pl from Union macros to the main macros file folder pg/macros
    • Macro files are identified when reporting errors (restores behavior that was lost in a past update).
  • Database updates
    • Significantly, increased the size of the past answer answer field. This allows for longer essay answers.
  • Minor bug fixes and tweaks
    • Fix PGalias bug where files have the same name but different extensions.
    • Library -- after randomization try it and edit buttons use the new seed.
    • Corrected Units: replace 'years' by 'yr'
  • Under the hood changes
    • WEBWORK_DIRECTORY is insured to be defined in WeBWorK::Constants.
    • js directory reorganized (again :-) )
    • Massive number of tweaks to make the basic WeBWorK CMS interface validate to W3 standards. Problems will usually not validate, mainly because of the use of $PAR which is not a container.

What could possibly go wrong?

  • There are warning messages at the bottom of the page labeled Harmless: .... .
    • These indicate that many older courses have an extra field named published. This field was replaced by the field "visible" and has not been used for some time. In a future version of WeBWorK this field will be automatically removed, but we leave it in place for the moment for those rare cases where there is important data in the field. The extra field does no harm and the warning messages simply alert you that the unused field is still there.
  • There are a series of warning messages that $displayMode is undefined.
    • This is most likely because you were using one of the display modes for showing equations that is now deprecated (e.g. jsMath). Click on the radio buttons in the lower left of the page to switch to MathJax or images mode. Also reset the default choice for displayMode in localOverrides.conf. You may also need to reset the default courses for individual courses on the Course Configuration page.
  • There is a warning message that your modelCourse is not up to date
  cd webwork/courses
  sudo mv modelCourses modelCourses.old
  sudo ln -s ../webwork2/courses.dist/modelCourse modelCourse
  • There appears to be a database failure on an older course -- but newly created courses work fine
    • Did you upgrade courses from the admin webpage?
  • There is some long message about not finding a file in @INC ......
    • Most likely a CPAN module is missing -- run webwork2/bin/check_modules.pl and use cpan XXXX to install module XXXX
  • MathJax doesn't work but image mode works fine.
    • See top of page. Do you have a proper link to a MathJax folder located along side of webwork2, pg and libraries?