Release notes for WeBWorK 2.0-pr1

From WeBWorK
Jump to: navigation, search
This article has been retained as a historical document. It is not up-to-date and the formatting may be lacking. Use the information herein with caution.



WeBWorK 2.0 PR1 is a preview release intended for testing, development, and evaluation of the new system. While it is being used at the University of Rochester in a live course, this is not recommended. It was released 26 Feb 2003.

As of PR1, the system implements the following WeBWorK components:

  • the user interface framework
  • authentication and session management
  • set and problem selection
  • the problem processor
  • the hardcopy generator
  • GDBM database support
  • compatability with 1.x courses

The following components are not yet implemented:

  • professor pages
  • course creation
  • problem library management
  • support for other databases
  • the "new" database schema
  • countless other new features and improvements


  • Apache
  • mod_perl
  • Perl 5.6 or later with gdbm support
  • Several perl modules: Net::SMTP, Date::Format, Date::Parse, URI::Escape, File::Path, File::Temp, Data::Dumper, and possibly others. Some of these may be part of the standard perl library. The rest are available on CPAN.
  • dvipng, if you wish to use "images" mode. A working version is available from John Jones.
  • tth, if you wist to use "formatted text" mode.
  • A working WeBWorK 1.8 or 1.9 installation. Earlier versions may work, but are untested.


This release is available below.

Tarball MD5 Sum
webwork-2.0pr1.tar.bz2 278c6c34c8ab5b19e39c2ccb592c5deb
webwork-2.0pr1.tar.gz 8d247c52678ded54f11ddcfa99e26815


The webwork-2.0pr1.tar.gz archive can be unpacked anywhere. Here at rochester, we keep it in /webwork/webwork-2.0pr1, but some other good places include /opt/webwork and /usr/local/webwork.

After unpacking, make sure that the permissions on the package are correct. In general, all files and directories must be readable by the web server. The logs directory must be writeable by the web server.

Apache needs to be told about WeBWorK in two places. First, by adding Apache::WeBWorK as a handler for some location:

<IfModule mod_perl.c>
  PerlFreshRestart On
  <Location /webwork2>
    SetHandler perl-script
    PerlHandler Apache::WeBWorK
    PerlSetVar webwork_root /path/to/webwork-modperl
      use lib '/path/to/webwork-modperl/lib';
      use lib '/path/to/webwork-modperl/pglib';

Second, by adding an alias to the htdocs directory:

Alias /webwork2_files/ /path/to/webwork-modperl/htdocs/
<Directory "/path/to/webwork-modperl/htdocs">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all

The alias you set here is referenced in WeBWorK's global.conf file.

Copy the conf/global.conf.dist file to conf/global.conf and edit it contents as you see fit. Some tips:

  • The webworkDirs->courses variable should point to your existing 1.8 courses directory.
  • The webworkURLs->htdocs variable should point to the location of the alias you created above.
  • The webworkURLs->oldProf should point to the URL of the page in your existing WeBWorK installation.
  • The courseURLRoot variable should point to the location corresponding to each course's html directory.

Change the values in the %externalPrograms hash to match your system.

Create a new course in WeBWorK 1.8, or make a copy of an existing course. Make sure it functions properly under WeBWorK 1.8. Add some users and build some problem sets. Then, visit the URL You should see a login page for the course. Log in and play around.

Be aware that while WeBWorK 2.0 PR1 appears to be stable, it has not been extensivly tested. As with all beta software, it has the potential to do nasty things with any data it can get its hands on. It's unlikely that it will, but we recommend that you not log into a course you care about using 2.0 PR1.


If you need help installing or using WeBWorK 2.0, visit the WeBWorK discussion group and post your question there. The developers monitor this forum.

Bug Reports & Feature Requests

Submit bug reports and feature requests at We can't fix bugs and add features if you don't tell us about them!


In general, don't submit patches against PR1. Instead, check out the latest development version from CVS and patch against that. Consult the WeBWorKCVS topic for more information.

-- Main.SamHathaway - 23 Oct 2003

follow us