Release notes for WeBWorK 2.14

From WeBWorK
(Difference between revisions)
Jump to: navigation, search
(Cautions)
Line 18: Line 18:
 
</pre>
 
</pre>
  
== Try before "buying"==
+
== WeBWorK in a Box ==
 +
 
 
It is now possible to set up a development version of WeBWorK on your laptop. It requires
 
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
 
that you install an app called Docker.  This app is available for Mac, Linux and Windows operating
 
systems.  See [https://www.docker.com] and [https://www.docker.com/get-docker] for instructions and to
 
systems.  See [https://www.docker.com] and [https://www.docker.com/get-docker] 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
 
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.  
+
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
 
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.   
 
without affecting your production server that is being used by students.   
  
Once Docker is installed on your computer see the [https://github.com/openwebwork/webwork2/wiki/Docker-newbie-instructions instructions] on the [https://github.com/openwebwork/webwork2/wiki github webwork2 wiki].
+
Once Docker is installed on your computer see the [https://github.com/openwebwork/webwork2/wiki/Docker-newbie-instructions instructions] on the [https://github.com/openwebwork/webwork2/wiki 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.
  
The rel-2.14 release version of  
+
In addition the rel-2.14 release version of  
docker includes an installation of an R-server so that you can test statistics problems that use R.  
+
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!!!)
 
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!!!)
Line 38: Line 41:
 
'''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.   
 
'''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.13 is described below. This assumes that you have been  
+
The process for upgrading to 2.14 is described below. This assumes that you have been  
using release 2.12 or some other recent release that you installed using <code>git</code> from
+
using release 2.13 or some other recent release that you installed using <code>git</code> from
the github.com repository.  
+
the github.com repository. If your installation is earlier than 2.13 you should skim through
 +
the installation sections of earlier releases [[Category:Release_Notes]]
  
 
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 setting up WeBWorK for the very first time you will probably want help with directory structure, permissions (always a hassle) and installing infrastructure tools.  
Line 58: Line 62:
 
   master
 
   master
  
>sudo git branch -t rel2.13 origin/master
+
>sudo git branch -t rel2.14 origin/rel-2.14
 
Branch rel2.13 set up to track remote branch master from origin.
 
Branch rel2.13 set up to track remote branch master from origin.
  
>sudo git checkout rel2.13
+
>sudo git checkout rel2.14
 
error: You have local changes to 'lib/WeBWorK/ContentGenerator/Feedback.pm'; cannot switch branches.
 
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.   
 
  #### this means that you have made local changes you might want to save.   
     Use `git stash` or `git commit` or just move the file to a safe place.
+
     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.13   # the `f` forces the change and overwrites the file if you didn't move it.
+
>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.13'
+
Switched to branch 'rel2.14'
  
 
>sudo git pull
 
>sudo git pull
Line 80: Line 84:
 
   master
 
   master
  
>sudo git branch -t rel2.13 origin/master
+
>sudo git branch -t rel2.14 origin/rel-2.14
Branch rel2.13 set up to track remote branch master from origin.
+
Branch rel2.14 set up to track remote branch master from origin.
  
>sudo git checkout rel2.13
+
>sudo git checkout rel2.14
Switched to branch 'rel2.13'
+
Switched to branch 'rel2.14'
  
  
Line 93: Line 97:
 
</pre>
 
</pre>
 
The <code>-t</code> flag has your branch "track" the version of master at the origin site.  If there are updates
 
The <code>-t</code> flag has your branch "track" the version of master at the origin site.  If there are updates
on github.com/webwork2 to the master branch a simple  <code>sudo git pull</code> will update your local directory.
+
on github.com/webwork2 to the rel-2.14 branch a simple  <code>sudo git pull</code> will update your local directory.
  
  
Line 131: Line 135:
 
of configuration changes that you will have to make in your site.conf and localOverrides.conf
 
of configuration changes that you will have to make in your site.conf and localOverrides.conf
 
and possibly course.conf files.  See [http://webwork.maa.org/wiki/Release_notes_for_WeBWorK_2.13#Configuration_file_update Configuration file update for 2.13]  
 
and possibly course.conf files.  See [http://webwork.maa.org/wiki/Release_notes_for_WeBWorK_2.13#Configuration_file_update Configuration file update for 2.13]  
This is important because there were significant changes in the configuration files from release
+
This is IMPORTANT because there were significant changes in the configuration files from release
 
2.12 to 2.13.  
 
2.12 to 2.13.  
  
 
If you are updating from a working version of 2.13 there are no required changes, but there
 
If you are updating from a working version of 2.13 there are no required changes, but there
have been changed in localOverrides.conf.dist which you might like to incorporate into your
+
have been changes in localOverrides.conf.dist which you might like to incorporate into your
 
current localOverrides.conf file.  
 
current localOverrides.conf file.  
  
Line 170: Line 174:
 
== Upgrade course databases ==
 
== Upgrade course databases ==
  
If you are upgrading from release 2.12 or 2.13 you will 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.
+
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 <code>https://yourSite/webwork2/admin</code>.
 
1. Login in to the admin course <code>https://yourSite/webwork2/admin</code>.
Line 194: Line 198:
  
 
== Features ==
 
== Features ==
=== New Features in release 2.13 ===
+
=== New Features in release 2.14 ===
  
  

Revision as of 10:19, 21 July 2018

                                     WeBWorK                                    
                         Online Homework Delivery System                        
                                  Version 2.13                          

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

Details
-------

Prerelease date: July 8, 2017 -- the advanced beta version of 2.13 is currently on github

Release date: July 25, 2017

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

Contents

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 [1] and [2] 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!!!)

Cautions

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 git from 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. [3] 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:

Upgrade Instructions

1) Go to /opt/webwork/webwork2

>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

The -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:

  • fullpage.sty
  • preview.sty

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 https://yourSite/webwork2/admin. 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"

Basic tests

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 admin</span> 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.


Features

New Features in release 2.14

references

follow us