[webwork-pg] annotated tag PG-2.6 created (now 75f759b)

Doug Torrance dtorrance-guest at moszumanska.debian.org
Tue Nov 24 04:42:54 UTC 2015


This is an automated email from the git hooks/post-receive script.

dtorrance-guest pushed a change to annotated tag PG-2.6
in repository webwork-pg.

        at  75f759b   (tag)
   tagging  b400da9615ba9cddbb98fc21786135ce8bd974b5 (commit)
 tagged by  Michael Gage
        on  Sat Jun 8 21:46:44 2013 -0400

- Log -----------------------------------------------------------------

Arnold Pizer (1):
      Set file and directory permission so that a WeBWorK admin can run remove_stale_images to remove old tmp images.  Currently you have to be root to run this.

Davide P. Cervone (43):
      Fix typos in comments
      Fix differentiation of names constants, and add rules for dot and cross products
      Fix name of Matrix context
      Fix typos in comments
      Fix typos in comments
      Don't turn an undefined value into a MathObject
      Merge branch 'differentiation'
      Update POD documentation to include new flags, classes, and information about custom answer checkers.  Format everything better using code, item, etc.  Update samples problems and extensions.  Remove unneeded differentiation macros (since now part of core MathObjects) and outdated answer-checker example, since checker option is much better.
      Fix typo in comments
      Improve paren position in one place, and remove unneeded comments
      Merge branch 'docs'
      Added missing =over
      Fix a typo in the comments
      Protect more characters in pattern for tokens (in particular, ^ and $)
      Add Complex-Point, Complex-Vector, Complex-Matrix contexts
      Add support for complex matrices, M^-1, M^-n, ~M
      Merge branch 'docs'
      Merge branch 'checkers'
      Fix problem with ans_array where CSS for margins caused it to always be on a separate line
      Add solve and order methods, since MathObjects take care of the LR part automatically
      New macro files that add transpose, trace, determinant to Matrix contexts and conjugation to Complex contexts
      Merge branch 'openwebwork/master' into 'dpvc/master' and resolve one line conflict
      Add comment about lists being overridden in Parser/Context.pm
      Allow vector functions to mark results as vectors, and make sure unit() is handled that way.  Mark function of a constant as constant even if reduceConstantFunctions is false.
      Move cmp_call_filter to Value package so ALL classes can use it, not just Formulas
      Mark domainMismatch if student values can't be computed (used to only be done if checkUndefinedPoints was true).  Use checkUndefinedPoints as a Context flag (like it is supposed to be), not just a property of the correct answer.
      Make Compute($f,x => c) set up correct_ans and original_formula properly (note that equation is still the original unsubstituted formula)
      Fix comments now that they are in POD format
      Merge branch 'master' of https://github.com/openwebwork/pg-dev
      Fix problem with detecting NAN when it is capitalized or negated
      Fixed typo in comments
      New OneOf MathObject for creating answers that can be one of several correct values.
      Fix typo in comment.
      Add parserFunctionPrime.pl macro file that implements prime notation for parserFunction objects.
      Remove 'defined' from deprecated defined(@array) in MathObjects (resolves issue #17).
      Use getVariableLimits to get limits for diagnostic graphs (so that they are handle the same way as the answer checking itself)
      Fix some typos in the comments for PGML.pl
      Prevent loading PGML.pl from setting the context to Typeset
      Fix typos in comments for parserFormulaUpToConstant.pl
      Add new parserFormulaAnyVar.pl file to allow formulas that a student can enter using any variable name
      Put contextLimitedPolynomal and contextInequalities back into one file (since the problem that caused these to be broken into separate pieces was resolved by SHA d636150 in openwebwork/webwork2-dev).  Note that these libraries need to be removed from the library list in the configuration file for webwork2.
      Update unionTables and unionLists to not use the obsolete LaTeX2HTML mode (removes references to eHTML and bHTML, so resolves #2043 and #2421)
      Remove unneeded x permissions from three macro files

Djun Kim (19):
      Removing comments referencing dangerousMacros.pm as this file was removed. Removed unrestricted load of dangerousMacros.pm from CourseScriptsDirectory. This may break existing problems that use this mechanism; there should be a different, better way to address this (probably very rare) use case.
      Corrected reference to dangerousMacros.pl in error messages
      Removed commented-out code originally derived from dangerousMacros.pl. Removed references to dangerousMacros.pl from the documentation.
      Fixed documentation and removed spurious references to dangerousMacros.pl
      Fixed up HTML generation; layout of code
      Cleanup HTML generation; code layout. Remove spurious references to dangerousMacros.pl. Fix POD errors.
      Remove reference to dangerousMacros.pl.
      Remove reference to dangerousMacros.pl.
      Remove reference to dangerousMacros.pl.
      Remove reference to dangerousMacros.pl.
      Fixed comments to Remove reference to dangerousMacros.pl.
      Merge branch 'master' of https://github.com/openwebwork/pg-dev
      Merge pull request #1 from mgage/master
      Added a 'nullify' string filter to enable free-form/always-correct text fields.
      Merge pull request #2 from mgage/master
      Merge branch 'master' of https://github.com/djun-kim/pg-dev
      Manually updating Mike's changes from upstream.
      Fixed version string
      Fix bugs #2043 and #2421

Geoff Goehle (6):
      I've made a first stab at implementing "essay" style answers into webwork.
      Take $n$ where $n$ is large.
      misc essay upgrades
      Removed extra file and testing
      Merge branch 'master' of https://github.com/openwebwork/pg-dev into ww2.5.1.1
      Made PGAnswermacros fix recorded_score if recorded_score is undefined.

Jason Aubrey (12):
      Merge pull request #1 from mgage/master
      Merge pull request #5 from dpvc/master
      Merge branch 'openwebwork-dev'
      When $main::PG->{QUIZ_PREFIX} not defined, definition of $answerPrefix was polluting the error log
      Empty string for $bHTML and $eHTML a lot of "unitialized value in concatentation" messages in error log. Changed default values to " " instead of ""
      Merge pull request #14 from discnerd/master
      Merge pull request #18 from dpvc/master
      Merge pull request #22 from dpvc/unionTables
      Merge pull request #23 from dpvc/permissions
      update VERSION copyright years
      Update copyrigth years
      Update copyrigth years

John Jones (2):
      Improved helpLink macro to work with knowls and many types of help.
      Fixed bug in producing help knowls

Michael Gage (93):
      Removed IO.pl  -- no longer needed
      Modified the way courseNames are recognized in createSurePathToTmpDirectory so that courseNames
      Cleaned up surePathToTmpDirectory  so that it now uses directoryFromPath
      regularize warning channels
      cosmetic changes
      Modernize  handling of html auxiliary files in PGalias.pm -- step one
      remove warning message
      Added one more hack so that both warning messages and debug messages are
      Have a working version of a subclass which creates the correct address for
      removed extraneous warning
      Add courseID to parameters determining the uniqIDstub so that if the course name is changed the link name is changed as well.
      Change where error messages are stored.  They are now stored in the PGcore object itself and not stored under the flags hash.
      Move queue for warning/debug messages to top level of PGcore (out of ->{flags})
      fix errors in level_curve_check
      Merge pull request #1 from apizer/master
      Fix problem with accepting  filenames with hyphens when creating tmp files
      Remove warning messages used for tests
      Removed two more warning messages used for testing
      Merge commit 'dd2c97c8bf14e9789224e4f1d308035fc16ec05b'
      Update documents
      Modify includePGproblem so that PGalias has the correct environment when reading the included problem
      Add .html extension to links (fixes bug 2313)
      Merge branch 'streamline_error_messages'
      comment out  warning message
      Merge pull request #3 from apizer/master
      Use $PG value for template directory instead of $main::envir
      Merge branch 'build_question_tester'
      Add contextLeadingZero.pl -- a file developed for Ken Appel that requires a leading zero (e.g. 0.15 not .15)
      Merge pull request #4 from mgage/master
      Clean up PGalias to use uniqe ids on gifs and png files (html files done earlier)
      Merge branch 'djun'
      Fix errant single quote
      Always print solutions for instructors
      Create version of pretty_print that works in tex mode.  pretty_print($r_hash, $displayMode);
      Begin to handle .png and .gif files properly in tex mode
      Change message for reporting broken links from htmlLink()
      Fix bug in pretty_print that allowed large recursion
      Refine handling of html resources.  These are in pretty good shape. Split PGresources.pm
      Clean up and regularize code for html, gif and png auxiliary files in HTML mode
      Modify image(filePath) so that it doesn't print anything if the filePath is a blank string.
      Regularize the inclusion of html, gif and png files in both HTML and TeX modes.
      Refactor code for gif_in_html mode and png_in_html mode into image_in_html_mode
      Connect warning and debug channels for PGresource object to PGalias channels,
      Refactor processing of images in tex mode.
      Remove debug messages and commented out sections
      Remove extraneous line causing "extraneous private variable" warning
      Merge pull request #1 from mgage/master
      Fix includePGtext to include the current preprocessing routine defined for the Translator.
      Merge branch 'master' of http://github.com/dpvc/pg-dev
      Merge pull request #5 from djun-kim/master
      Merge pull request #2 from dpvc/master
      Merge remote-tracking branch 'openwebwork_pgdev/master' into from_davide
      Fix includePGtext to include the current preprocessing routine defined for the Translator.
      Fix formatting of PGalias output -- particularly in TeX mode
      Merge pull request #2 from abasyrov/master
      Merge pull request #3 from jwj61/master
      Merge pull request #4 from djun-kim/master
      Merge pull request #1 from goehle/master
      Add change from Djun allowing code mirror to operate
      Correct bug in PGalias that caused TeX/PDF output to fail
      Merge pull request #6 from jwj61/master
      Merge pull request #4 from openwebwork/master
      Merge http://github.com/openwebwork/pg into merge_pg
      Merge http://github.com/mgage/pg into merge_pg
      Merge remote-tracking branch 'origin/master'
      Update Units.pm to include more units.
      Create test directory pg/t and add unit tests of Unit.pm
      Update Units.pm to include more units.
      Create test directory pg/t and add unit tests of Unit.pm
      Merge branch 'pg2.5.1' of http://github.com/openwebwork/pg into pg2.5.1
      Add flags determining whether or not instructors see hints and solutions automatically.
      Merge pull request #7 from mgage/master
      update dates for copyright and url for github
      update version to 2.5.*
      Add version VERSION file for PG
      Merge pull request #6 from openwebwork/pg2.5.1
      Merge branch 'master' of http://github.com/openwebwork/pg
      Remove obsolete comments about createPGtext which no longer exists.
      Use &$PREPROCESS_CODE to process strings in includePGtext
      Merge pull request #5 from mgage/pg2.5.1
      Merge pull request #9 from mgage/pg2.5.1
      Merge branch 'hotfix-2012-09-07' of https://github.com/djun-kim/pg-dev into merge_djun
      Merge pull request #10 from mgage/pg2.5.1
      Merge pull request #6 from mgage/pg2.5.1
      Merge pull request #11 from mgage/master
      Merge pull request #12 from goehle/master
      Merge pull request #13 from dpvc/parserOneOf
      Merge pull request #15 from aubreyja/master
      Merge pull request #16 from dpvc/master
      Merge pull request #19 from dpvc/master
      Merge pull request #20 from dpvc/master
      Merge pull request #21 from dpvc/package_errors
      fix spelling

apizer (37):
      removed unneccesary shebang lines
      remove unneccsary shebang lines
      Fixed error concerning variable $string.
      added missing hyperbolic, inverse trig, and inverse hyperbolic functions
      Add backslash to list of characters filtered out of sticky answers
      incorporate some of davide Cervone'e changes
      Incorporated Davide Cervone's improvements and bug fixes.  This mostly
      Fixed a bug in Davide Cervone's changes
      Back off from Cervone's new definition of BR
      fixed a bug in line 2469 replacing \npsvnNumber by \n$psvnNumber
      fixed bug in call to Romberg routine.  Romberg now requires parameters
      Replaced PGsort with a version that uses quick sort.  This fixes the
      Use the new PGsort which uses a true/false compare (e.g. < or lt )
      Removed old commented out code dealing with PGsort.
      Changed pacckage name from strict to ww_strict per Sam's suggestion
      Change permission of tmp files so that they can be removed.
      Create equations directory if it doesn't exist.  All directories under
      Fixed bug with useBaseTenLog
      relative tolerence was not being used correctly. Fixed this.
      Allow labels A - ZZ
      Create an anonymous unique identifier for
      Add underscores to the anonymous unique identifier for
      correct syntax error in BEGIN that caused a warning in Perl 5.10
      Added
      Port rel-2-4-patches changes to Head
      Implement a Reduced Scoring Period. The Reduced Scoring Period is a period before the due date during which all additional work done by the student counts at a reduced rate.
      Allow reduced scoring to be enabled or disabled for individual assignments. Default is disabled.
      Replace "Reduced Scoring" by "Reduced Credit". Don't displat message after due date
      Edited PGmatrixmacros.pl following Davide Cervone's suggestions so that it works better with jsMath and MathJax
      Add MathJax display mode
      Add MathJax display mode
      Add MathJax display mode
      custom_problem_grader_fluid has been fixed and the new version of PGgraders.pl has been uploaded to trunk.  Also the reduced credit option has been added to custom_problem_grader_fluid.
      fixed bug in full_partial_grader reported in http://webwork.maa.org/moodle/mod/forum/discuss.php?d=2331
      Make this totally independent of answer labels
      Fixed Bug 1841 - typo in contextCurrency.pl
      Implemented Davide's fix so that MathJax works with matrix delimiters

aubreyja (1):
      Enabled MathJax math menu option to switch contextual menu for math from Mathjax to Browser, as suggested by Davide. This is to facilitate support for using MathPlayer with screen-readers.  Users who use screen readers with IE and MathPlayer will need to select Contextual Menu -> Browser in order to get click through to MathPlayer. This setting is saved in the MathJax menu cookie which lasts for one year so should be sticky across sessions on a student by student basis for a particu [...]

discnerd (1):
      Added a macro to calculate the mean of an array of data, and another

dpvc (813):
      Files needed for jsMath display mode.
      Support for asciimath.
      update to asciimath for MSIE.
      Added jsMath support to these files.
      Removed redundant HTML_jsMath check.
      Fixed a bug in jsMath mode where it would not display < (when it looked like
      Removed extra spaces from around dvipng images.
      Removed skip and rule from problem header generated in TeX mode here,
      Removed the experimental Parser-based implementations of i(), j() and k().
      Moved the <BR> in std_print_q from the beginning of a line to the end
      Fixed error in ANS_NUM_TO_NAME.
      Make Parser live nicely with Complex1.pm.
      Make Parser work with PGauxiliaryFunctions.pl, and add the macro files
      Significant update to new parser.
      Forgot to add this file.  It implements the "fuzzy real" class.
      Fixed generation of LaTeX version of sqrt(...).
      Added Real() command to create fuzzy reals.
      A number of small fixes.  Most were to fix minor bugs in string and
      This is a preliminary attempt at adding answer checkers that use the
      Fixes for handling intervals better.  In particular, deal better with
      Have parser handle infinities better.
      Added answer checker for parallel vectors.
      The List object's answer checker is now considerably improved.  It
      Handle list entries that are not Value objects better.
      Added ability to report incorrect coordinates in point and vector
      Changed the way the parser checks to see if it is loaded.
      Added an Infinite object class for the Value package.  Still need to
      Fixed some output issues with intervals and unions.
      Incorporated infinities into Parser package better.  They have been
      Can now specify that the objects stringify themselfs in their TeX
      Allow unary + and - to work on infinities.
      Added Infinity function (similar to i and pi) for creating infinity
      Added a String type to the Value package.  Mostly this is to make it
      The class file for the Value::String object.  (Forgot to add it before
      Fixed a typo in one of the parser answer checkers.  Added a line that
      Fixed some bugs in the handle of the context in ->string and ->TeX
      *** empty log message ***
      Added an equality operator (not active initially) that can be used for
      The Union answer checker now uses the generic List checker, so that it
      Modified Context() function so that it no longer uses a global package
      Had to put back the global context variable after all.  :-(
      Improved error messages, particularly when the student enters a
      Created the first draft of the Parser's function answer checker.  Some
      Added support for unorderd list or formulas with partial credit.
      Added string comparison to all Value object classes (to compare the
      One more fix for handling intervals properly (I think it's really
      Removed unwanted side-effects of some type-match checks, and moved the
      Allow parser "constants" to be (in reality) formulas.  That way, for
      Fixed a number of minor problems with creating perl functions from
      Fixed typo in name of random generator.
      Changed the string used for the student answer to be taken from the
      Use the standard precedences rather than the experimental ones by
      Make sure loadMacros() doesn't try to load these files more than once.
      Make sure equality always returns a defined value, and
      Make it possible to create subclasses of objects in the value package
      Context() now accepts a reference to an actual Context object rather
      The answer checkers now work with subclasses of Formulas that are not
      Fixed an error in the generation of regexp patterns for the various
      Added Parser::Number::NoDecimals() function that causes the parser to
      Fixed error with handling of +infinity and -infinity.
      Avoid possible infinite recursion in promotePrecedence() when special
      Fixed typo.
      We need to protect the HTML in the professor's answer so that if it
      Handle trapped error messages that are not produced by the parser
      Make blank patterns be ^$ (which should never match) rather than empty
      A number of adjustments to get negative infinities to work better.
      A number of fixes to make handing lists work better.  In particular,
      Added a file to perform WeBWorK-specific modifications to the
      Made the default context be Numeric context rather than Full context.
      Formulas can now be compared even if their variables are complex
      Added support for dimension warnings in the answer checker for
      Fixed TeX output of Matrices to use \array rather than \matrix for
      Made the granularity of the test-point intervals be a parameter that
      Had the default granularity the wrong direction.
      Fixed some inconsistencies between handing of matrices within the
      Added easy calls to disable/enable collections of functions or
      Moved WW-specific routines from Parser.pm to WeBWorK.pm.
      Remove more lines in error messages produced while evaluation student
      Get the type right when evaluating an AbsoluteValue and obtaining a
      Better highlighting for syntax error involving implied
      Modified the parser so that the classes for the various object
      Fixed wrong error messages when operators are undefined in a context.
      Made string function look for a string field in teh definition of the
      TeX mode now adds parentheses around fractions, when needed.
      Fixed a bug with  sin^2 x  that introduced when I adjusted the
      Added the makeUnion call that was removed earlier.  The AnswerChecker
      Added ability to have linear adaptive parameters in the function
      Added in functMaxConstantOfIntegration support in the adaptive
      Use the current context if the answer doesn't have one itself (like
      Improved TeX and string output in a number of situations.  Improved
      Two more minor TeX improvements.
      Add better error reporting in PG translator.  In particular, these
      Only convert (f(x))^2 to f^2(x) for specified functions f
      These files provide contexts for the Parser in which only limited
      This macro file defines an ImplicitPlane (and inplicit line) class of
      This file defines a ParametricLine class that provides an answser
      This file provides some convenient tools for generating random points
      This file defines a DifferenceQuotient class that provides an answer
      This file defines a NumberWithUnits class for that provides an answer
      This file provides an answer checker that determines whether two
      This file defined an answer checker for lists of variable names
      Fixed error where AlgParser produces \sech and \csch, which are not
      Changed the error message produced for functions that have been
      No longer produces the message that there are too many answers if
      When creating formulas from functions, don't evaluate even if the
      Fixed a bug with constants where the values were being cached so that
      Make partial credit in list answer checkers be the default (now that
      Produce an error when attempting to auto-create a formula using a
      Added context flags to control automatic reduction of operations that
      Use extra parens in the string version of the student's answer, but
      Don't reduce constants in the display of student answers (so they can
      Fixed typo in addParens method name.
      Added flags that control the reductions performed by
      File needed to reduction flags that was accidentally left out of the
      Make Formula()->eval return a Real (ie, aValue::Real object) rather
      Added a new flag to the Formula()->cmp answer checker that allows a
      Added isZero and isOne checks for Parser::Value objects (i.e., for
      More changes for the isZero and isOne checks.  (Missed this file when
      Eliminated unneeded parentheses in TeX output when unary minus and
      The $Parser::class variable was being handled after the "use"
      Fixed Parser so that you can replace the Formula class as well as the
      Two new Parser contexts, one for matching problems involving answers
      Fix problem with TeX output of implicit multiplication between
      Allow string constants to include spaces.
      added generic string-only context, and converted contextABCD and
      Don't give coordinate hints during parallel vector checks.  Also fixed
      In StandardPrecedence mode, make the precedence of function apply
      Report errors for powers of negative numbers rather than return 'nan'.
      In Complex context, make sqrt() and log() of negative numbers return
      Fixed typo in the comments.
      Added support for useBaseTenLogs to make log() work like ln() or
      Trap errors in functions that are not native perl functions (like
      Clear error messages before doing the answer check (this clears old
      Updated i(), j() and k() functions to check if the Parser is loaded,
      Changed the order of variables in calls to Plane() so that it
      Handle error messages better.  Produce an error if the student answer
      Prevent automatically reducing negatives in student answer, so the
      Don't promote an object unless it is a Value object.
      Added "areParallel" method as a synonym for "isParallel".
      Added reduction rules to remove redundent negatives.
      Fixed typo in a comment.
      Fixed an error where any plane is accepted if the d is 0 in
      Modifications needed for the control of jsMath's "missing font"
      Fixed a bug in processing absolute values with implicit
      Fixed index problem with matrix multiplciation.  (It was returning the
      Fixed a problem that caused errors to occur when ImplicitPlane() was
      *** empty log message ***
      Fixed an error with Matrix() that could cause it to loop infinitely
      Improved the Real(), Complex(), Point(), Vector(), Matrix() and
      Updated the answer checkers so that you can more easily specify how
      Fixed it so that direct calls to the add, sub, mult, etc functions
      Missed one situation when making the previous update.  Fixed it.
      Fixed error with asec and acsc where the parameters were not being
      Update the overloaded operators so that they can be overridden by
      Fixed a typo.
      removed a commented-out line that was no longer needed.
      Now that the uverloaded operators handle subclassing properly, we can
      Implements an answer evaluator that checks if a students answer
      Implements an experimental answer checker for implicitly defined
      Handle log as ln or log properly.
      Handle extra parentheses better.
      Peroperly negate infinities even when reduceConstants is not in
      Properly handle string values in postprocessing of vectors and other
      Compartmentalize the equality check one step further.  The cmp_equal
      Handle error messages in the list checker better.  In particular, make
      Provide an easy means of generating a custom answer checker based on
      Added a check that the coordinates are numeric.  This avoids an error
      Use correct form of "x" with lists (rather than hack using split()).
      Copy parameters like limits, etc, to the newly created formula when
      Fixed a bug with adaptive parameters where the relative tolerance
      Added derivative of |x| as x/|x|.
      Changed the call method to check if the function is actually defined
      During a call(), if the evaluation produced an error message generated
      Changed loadMacros() to use search for amcros files via a
      Fixed an accidental hard-coded operation from always being "add" to
      Modified the Formula answer checker to allow checking of points where
      Better control over number of points that can be undefined, and
      Added a ->with() method that lets you set fields of a Parser object as
      Remove unneeded comment.
      Avoid possible infinite loop with length and typeref calls.
      Fixed a bug with Matrix->perl() method that would cause an extra level
      Fix some incorrect calls when the promoting types to higher precedence
      Better handling of open and close delimiters that are explicitly set.
      Better handling of delimiters that are explicitly set byt he user.
      Allow for vectors to be marked as Column Vectors.
      Removed some unused lines and comments.
      Added ability to have Matrix, Vector and Point objects produce input
      This file implements a Multi-Part parser object that allows you to tie
      Forgot to check hardcopy mode.  Fixed some problems with that.  The
      Fixed Disable() and Enable() so that they can be called as
      Implements a Parser context in which only polynomials (of a single
      Fixed a problem with auto-generated functions getting an incomplete
      Fixed typos in comments.
      New flag showAllErrors for when a custom checker is supplied.  This
      Fixed a bug in the enable/disable routines that would cause them to
      Adjusted some spacing
      Updates to allow string matches to be case-insensitive.  This is now
      Allow Parser::Number::NoDecimals() to accept a context to be modified
      Change so as not to use raw HTML in the error messages.
      Don't use the overloaded Real class for doing adaptive parameter
      Implement "remove trailing zeros" format, like in prfmt().  I still
      Better messages when adaptive parameters are too big.
      Handle TeX versions of variables whose names include underscores
      Fixed problem with sorting (problem with $a, $b, I think).
      This is an attempt at making the traditional answer checkers call the
      Folded in Mike's changes to checkbox_cmp.
      Main file that calls in the legacy modules.
      Modified the perl() method to make calles to Value:: directly rather
      Don't load Parser.pl (it causes trouble with the Matrix.pm module).
      Fixed problem with minus signs in formulas that are turned into perl
      Fixed various perl compiler warnings (due to extra "my", and so on).
      A first pass at making parser error messages localizable.  The
      Make error messages potentially localizable (by making them use
      Wrong correction in the previous commit.  Use CODE::push
      This file implements an easy way to add functions that are defined
      Folded in Mike's changes for status messages.
      Updates to make mode=>'frac' properly emulate the original num_cmp
      Fixed typo that caused hilighting of the position of errors to be lost.
      Added postfilter to Parser-based implementation of NUM_CMP so that the
      Make List("1,2,3") work like List("1","2","3") rather than produce a
      Added missing "step" function that was defined in the AlgParser but
      Fixed a bug that would cause step() to produce an error when called on
      Enable commas when mode=>"frac" is specified.
      The Parser versions of num_cmp and fun_cmp incorrectly left the
      Cosmetic change.
      Interval (and Union) checker now accepts requireParenMatch flag for
      Dereference aliases to aliases properly.
      Make upper-case alias a hidden one (since it is not needed for the
      Added new Set object class to the Parser.  It implements a finite set
      Properly maintain open and close parens in emtpy lists.
      Added in the Set object class.  Also made more comprehensive defaults
      Added changes needed for the new Set object.
      Changes needed for new Set object, and moving of string, TeX and perl
      Changes needed for Set object, better handling of an interval given as
      Changes needed to Set object.  Also, use Parser to handle unions
      Changes needt for Set object, and fixed a bug with unions containing
      Changes needed for new Set object, plus for moving string, TeX and
      Added ability to subtract intervals, sets and unions.  Adjusted the
      Fixed bug with missing fields in initialization.
      Added redefine() function to complement undefine() for various
      Removed erroneous dollar sign.
      Changed how Intervals implement the requireParenMatch flag for the
      Avoid problem with undefined value being passed to protectHTML.
      Mark function as constant if it is.
      Adjust spacing.
      Detect preview mode correctly for either WW1 or WW2.
      Made the 'R' constant in Interval context show up as a bold R in TeX
      Fixed use of undefined value for $position in TeX and String methods.
      Added ability for Unions and Sets to simplify themselves
      Fixed a typo in an error message.
      Added sets to the differentiation information (no derivatives allowed)
      Fixed typo in previous update.
      Added differentiation of (single-variable) functions created with
      Fixed problem with call to $equation->Error (due to change in
      Moved the union and set reduction checks from cmp_equal to cmp_compare
      Added sort methods to Union and Set that return objects with their
      Fixed error in testing is a union is reduced (didn't test if sets
      Added isReduced method to tell if a Union, Set or Interval is already
      Fixed mad error message (change needed due to new message translation
      Fixed a problem with redefine when used with classes that store their
      Fixed reduction warnings for individual sets, intervals and unions (in
      Can't use the length check when reducing unions, since it could
      Make sure the singletons are sorted before comparing them to the
      Make formulas that produce lists get default open and close parens,
      Added isSetOfReals and canBeInUnion methods to the Value objects, and
      Pass the canBeInUnion call on to the Formula's root node
      Allow a list of numbers to be converted to a set.
      Maintain parentheses correctly when converting to perl.
      Added canBeInUnion and isSetOfReals methods to the Parser package
      Added a copy method that produces a deep copy of the given object.
      Added methods for testing containment of one set in another, and so
      Changed Context() call to direct reference to context, so as not to
      Fixed more undefined values
      Added code to handle the case where the professor's answer is in
      Updated to handle jsMath version 2.
      Use a default for the zeroLevelTol set in the current context.
      Made relative tolerances the default for when the tolType is not one
      Changed stringify to check for an answer that is zero by using the
      In order to overcome an MSIE bug that affects jsMath, the call is
      Fixed log and log10 perl methods so that log obeys the useBaseTenLog
      Fixed problem with Context's not properly initializing themselves with
      Added a Point context that is a copy of the Vector context.  This will
      Added a parserCustomization.pl file that is loaded whenever the
      Added the ability to put class-specific answer-checker defaults into
      The perl method for UOP and BOP now put spaces around the operator, to
      Fixed error in atan2 where second argument was not promoted to a Real.
      Movified the copying of functions from Complex1:: into main:: to avoid
      Added "strict" versions of the limited complex contexts that don't
      Added support for cplx_cmp() using the Parser.  Move
      Avoid undefined value of $name.
      Fixed an error where scalar() was used on a hash ref.
      The ORIGINAL_NUM_CMP was calling str_cmp as a code reference rather
      Fixed problem with recognizing MINF in NUM_CMP.
      Improved error messages for formulas returning infinity
      Improved error message layout and labeling for when ans_array is used.
      Better error messages for unreduced unions.
      The Parser answer checkers used to give the student answer as the
      Improved layout and labeling of error messages.
      Don't allow wrapping in label for ans_array errors.
      Prevent the empty list from having open and close be set to 'start'
      Fixed bug where str_cmp("0") was changing the correct answer to "",
      Added ability to have answers that are empty strings.  String("") now
      Updated to be able to handle empty anwswer blanks.  There is a new
      Fixed typo in comments.
      Fixed a bug where if you specified a variable other than dx, the
      Fixed a problem with the automatic upgrading of object classes for
      Only add the 'dx' variable if it isn't already in the context.
      Correctly create Formula returning List when a list has formula
      Allow context to override object class used to create formula objects
      Handle the names of entries in Lists and Formulas returning lists
      Major update to allow ImplicitPlane objects to be created
      Removed unneeded "my" for a varaible that is already local.
      Corrected a problem with contexts not being reset properly after
      Fixed a bug where correct_ans could not be overridden in the cmp()
      If constant functions are not being reduced, don't mark the function
      Add a new context flag that controls how the student answer should be
      Let Parser object's cmp(debug=>1) option set the debug feature of the
      Modified context data objects to provide a copy method so that the
      Added a new experimental diagonstic function for the function answer
      In the past, when Value objects were inserted into strings, they would
      A new parser object that handles popup menus.  Mainly this is so that
      Roll back Mike's change, since this can cause unwanted error messages
      Make had the right idea, but used the wrong context (or what might be
      Updated a comment to make it more accurate.
      Take care of the issue where Preview could be used to gather
      Adjusted the parentheses slightly so that matrices will only be formed
      Give better error messages when the entries in Points, Vectors and
      Handle the new global.conf setting for jsMath's processDoubleClicks option.
      Fixed a problem with formatStudentAnswer not being defined in the
      Fixed a problem with not including parentheses when a negative number
      Prevent error message when num_cmp specifies the same string more than
      Allow multi-letter variable names and names like x1, x2, etc.
      Now that the parser accepts multi-character variables, there is no
      Now that the Parser allows multi-letter variable names, there is no
      Added a new flag that controls how a list with a single entry that is
      Added ability to specify variables that are part of the union/list
      Avoid error when a CODE reference is checked to see if it is a Value object.
      Added ability to supply a code reference (rather than a Value object)
      Fixed problem with variables that are multiplied with no space between
      Fixed problem with formula-valued matrices producing an error message
      Forward port to HEAD (Prevent "unquoted dx may conflict with future
      When checking for division by zero, don't do fuzzy check.
      Change check for zero from fuzzy check to strict check (when the
      A change to the way lists are processed in AnswerChecker.pm in
      Fixed getFlag so that it sodesn't accidentally create the {context}
      Fixed a bug that caused can error when a Complex1 object was passed to
      Fixed a problem where a pick screen error was produced if a student
      Fixed a problem where things like x+4x would be accepted even in
      Fixed grade_problem so taht is uses the safe compartment.  (This is
      Fix some problems with the Diagonstics output for Formula objects.
      Use tolerance flags from the Real object itself, if available, before
      Make FUNCTION_CMP retain the professor's answer exactly as typed
      Extended this context to handle multivariable polynomials.  So you can
      Extended the differentiation operator to handle multiple derivatives:
      Fixed a problem with derivatives of constant-valued Matrices (and
      Allow matrices to be created from lists of vectors or points, or from
      Fixed a bug where substituting values into a Formula object would not
      Fixed a problem where Set objects could incorrectly complain about the
      Fixed spelling errors in error messages.
      Report the objec type better in parser error messages.
      Added LaTeXMathML mode.
      Fixed the problem I pointed out at MathFest where some errors were not
      Allow cmp_compare to return an array of answers, if requested (needed
      Check routine can now return an array rather than an array reference.
      Added ability to overrid TeX and perl versions by specifying a TeX or
      Add parenthesis around ijk vectors for string concatenation.
      Allow the _check subroutine to affect the {isConstant} field.
      Allow matrices to set their own templates (instead of using "c" for
      Fixed unit checking so that units can include spaces (like 4 ft /
      Make a more sophisticated unit check so that it will handle things
      Fix problem with formula comparisons involving vector-valued formulas.
      Make ijk mode use the TeX definitions from the i, j and k constants as
      Fixed problem where a zero with units would me marked as "not looking
      Fixed bad check for if the complex number is 1 (caused reduce to
      Fixed problem with function checking when vars are specified with
      Use \cdot when a number is followed by a numeric fraction.
      Make sure \cdot is only used for a numeric right-hand part (finishes
      Fixed problem with checking Matrices of dimension 1 x n.
      Made str_cmp accept blank answers again.  Fixes bug #1123.
      Allow overridden Parser classes to generate error messages that the
      Added ability to have additional information given when not enough
      This file implements special power operators that check for special
      Didn't need to override the perl fields for the integer-only methods,
      Updated NumberWithUnits to use Parser::LEgacy::NumberWithUnits rather
      Fixed a problem where the TeX version included two copies of the units
      Provides a formula with units (as opposed to a number with units).
      The Units.pm library only accepts one division within the units, and
      Fixed usage comments to do formulas rather than just numbers.
      Abstracted the NumberWithUnits to a more general ObjectWithUnits and
      Moved the guts of this to pg/lib/Parser/Legacy/NumberWithUnits.pl,
      Fixed type in comment.
      Use Perl reals rather than Parser Reals in matrix for adaptive
      Add a new operator // to be the same as / except its TeX form is a/b
      Fixed an error with the custom list checker setting the wrong field
      New macros for using Radio buttons with the new Parser
      Added support for uncheckable radio buttons (when JavaScript it
      Avoid an infinite loop when string-values formulas are used in a List.
      Use zeroLevelTol values when checking answers that have adaptive parameters.
      Improved Formula diagonstics when adaptive parameters are used.  They
      Only show the adaptive parameters where there actually ARE some, and
      Fixed a deprecated usage of defined(@result)
      Added a Vector2D context that has i and j defined as vectors in
      Modified the way the Parser-based versions of the traditional answer
      Clear the error message in Context before it is used in an answer
      Allow Real object to override the context's number format by setting
      When complex=>'ok' is used, make a COPY of the Complex context before
      Fixed an error with List answer checking when one of the elements was
      This begins some major updates to the Parser and Value libraries.
      Added comparisons for periodic reals and complex numbers (numbers that
      Foxed some documentation.  You use the standard "Numeric" and
      This file is now obsolete since the functionality has been added to
      More updates for marking MathObjects with the context in which they
      Updated to include some recent changes in documentation and removal of
      Context() now always makes a copy of the context, even if it comes
      Normalized the definitions of i, j, k, etc.
      Allow Compute() to create formulas as well as Value objects (with the
      Always root the current directory in the templates directory (unless
      Added Value->Package(name[,context]) to look up what package is
      Give the MathObjects answer checker a _filter_name so it is easier to recognize.
      can't use inContext() with the "fake" make that produces perl reals,
      More updates to use the new Value->Package() call.  This will make the
      Update new() and make() methods to accept a context as the first
      Fixed typo.
      Added more flexible type checking for MathObject classes.  This makes
      Update to handle the fact that the Value package now includes the
      Use numeric rather than string comparison to see if contexts are
      Allow promote() to accept a context as the first argument so that the
      More fixes for creating items in the corret context.  Also added a
      Only set the context if the data is a MathObject.
      Fixed a problem with modulo method.
      Fixed an error with the modulo method, and adjusted formatting.
      Added Package method to the Context object to replace the
      Don't use \cdot with things like 3i.
      Fixed context issues and a typo (must have been interrupted when
      more fixes to handle the contexts properly.
      Handle ans_array() correctly again (context issues, and allow parser
      Left out a "return" in my changes of two weeks ago.  OOPS!
      Make context method work when called from package rather than blessed object.
      Fix typo, and handle case where Allow is called from package.
      Was taking the context form the wrong position in the parameter list.
      Make the Package method really be a method of the context rather than
      Forgot to handle context in the make() method.
      Changed the with() method to produce a (shallow) copy rather than
      Adaptive-parameter values are now stored in the Context so that they
      OOPS, the example in the previous message is wrong.  You need to use
      Don't create a new copy of an object if it is already of the correct
      Fixed incorrect use of numeric rather than string comparison.
      Recent changes to automatically do promotion in the Value methods was
      Updated to comply with recent changes in the Value library.
      Use the new method to copy the String context
      Updated to use the new context copy method.
      Updated to use new context copying method.
      The file needs to return a true value.
      Updated to use new context methods.
      Use the new context copying method, and copy the Point context not the
      Updated context method calls.
      Use new context methods.
      Use new package method to find the Function package name.
      Change documentation for how to copy a context.
      Updated to use new package method to look up the Formula package name.
      Update to use new context methods.
      Make List() preserve the correct_ans field when it is used to coerce a
      Updated to use new context methods.
      Use Value->context rather than $$Value::context.
      Update to use new context methods.
      Updated to use the new context methods.
      Added perl method so that the result is always a number (not a blank
      Look for the StringifyAsTeX flag in the current context only (not the
      Use the new context methods, and restructure the saving/restoring of contexts.
      Fixed up some comments and spacing.
      Correct and expand some documentation.
      Fixed a typo in the compare method.
      Use new context methods.
      Updated to use new context methods.
      Use new context methods.
      Renamed the MultiPart object as the MultiAnswer object.  The MultiPart
      Only promote complex numbers of they aren't already complex (this
      Combine isReal and isComplex into a single classMatch call.
      Adjusted some of the type checking to use more appropriate tests.
      Fixed some type checking.  Removed some unwantedd fuzzy checks (use
      Improved an error message, fixed comparison of infinity to real
      Transfer flags from parent objects to their children for comparisons
      Allow empty open and close parens for canBeInUnion method.
      Handle canBeInUnion properly (it must come AFTER isSetOfReals, and
      Vectors can't be in Unions, even when of length two and with no parens.
      Produce a set when the endpoints of the interval are the same.
      Don't need those parens.
      Need to use flag() not getFlag() for context objects.
      Remove unneeded parens in if statements.
      Promote arguments to Union operations.
      Make sure classMatch always has a Context object, and don't report
      Maintain context in a number of places where it was being lost.
      Remove unneeded paretheses.
      Break out of makeValue earlier if the object is already a Value object.
      Promote more possible values (e.g., strings).
      Remove unneeded parens, and don't use $isMatrix (scalar(@d) being
      Do a better version of promote (get the context right) for these
      Make extract() handle out-of-bound indices better.
      Arrange for creation of constant Matrices to produce 1 x n matrices
      Remove unneeded parens and do better type coersion in new() method.
      Changed with() to make a copy (as suggested last week).  This one is a
      Make getFlag() look for an {equation} field and add that into the
      Improve some error messages.
      Fixed error in derivative of quotients introduced by recent bad editing.
      Get the period and logperiodic values using getFlags rather than only
      Modified the method used to tokenize a formula to use one large
      Use a precedence lower than the lowest allowed precedence when closing
      Make string() method use the separator specified in the List
      Removed some unneeded spaces in the comments.
      Allow constants to override their string representations.
      Cosmetic change.
      Allow constants to be defined by a hash (like everything else) if desired.
      Make sure the caiseInsensitive array is copied when the context is
      Make the patterns be pre-compiled patterns for efficiency.
      Use precompiled patterns for efficiency.
      The value computed by modulo() is already a Complex, so no need to
      Record the equation of the separate components of the list so that
      Have getFlag look in the equation's equation for the flag as well (so
      Added new flags to error checking of operands and function arguments.
      Remove the space inserted by \left...\right when it appears in a
      Better control over when extra parentheses are added.
      Make Real and Complex objects promote their period fields so that they
      Make periodic comparisons have their tolerances based on the correct
      Accidental typo due to global search and replace.
      Removed promote() from calls to funcitons where the operand will
      Allow Parser::Formula to accept context parameter.
      Fixed an error in the documentation.
      Allow Context()->variables-add(name=>[type,options]) format for
      Use getCopy() rather than depricated get() method.
      Use corret indices for the left and right endpoints.  (The paren types
      Use cached value of context rather than looking it up each time.
      Make perlFunction() maintain the context properly when the function is
      Don't convert lists to inervals unless they have the correct types of parens.
      Added withPostFilter and withPreFilter methods to the AnswerHash.
      Make sure ^ is quoted in character patterns so it doesn't become a
      Copy the error message translation array when a Context is duplicated.
      Fixed a problem where Real's were being promoted to NumberWithReals
      This file defines contexts in which intervals can (or must) be
      This file implements a postfilter for AnswerEvaluators that allows you
      USe filter names for the answer checkers to identify them in debugging
      Added a Ref() function that returns the reference address (for
      Added a reduce flag for x^1 processing (it was not able to be
      Make @LimitedPowers::OnlyPositiveIntegers do as its name suggests and
      Provides a mechanism for reseeding problems under specific
      Fixed a bug where onlyAfterDue was not working correctly.  (The button
      Make reseeding save better (when submits are allowed) so that if a
      Added a message when the "when" condition is met but the due-date
      Show the reseed button and message even if the student hasn't
      Had a typo:  answer_submitted should have been answers_submitted, but
      This is a temporary hack that allows sticky answers to preserve all
      This file implements a context in which students can provide answers
      Incorrectly had promoteReals to 1 instead of 0 (left over from
      Fixed a typo that prevented the flags from the cmp() method from being
      This file implements a context where students can enter numbers in
      change POD documenation (try to get it to handle the leading #'s
      Modified Value::Error so that it works as a method as well as a direct
      Use the more powerful getFlag method to get the context flag rather
      Updated to allow more flexibility in controlling the range of powers
      Add some examples into the documentation.
      Changed the POD line at the top, which incorrectly suggested that you
      Finished the comment that was left incomplete.  (Sorry about that.)
      Make sure the creation o MathObjects internally preserves the context
      Minor fix to error message code (table tags were missing).
      The MultiAnswer object calls cmp_compare() in a non-standard way (in
      Fixed up some comments.
      The changes in version 1.81 broke promotion of objects created by hand
      Added a number of methods to improve the ability to test unknown
      Handle promotion of Parser::Items better when they have been
      Use alternative method of testing if whether two objects are the same
      Miscellaneous improvements to TeX and string output.
      Include extra parens when they have been requested.
      Make Compute() retain the original Formula as well as the correct
      The "undef" in Parser::Context->getCopy(undef,"NAME") is no longer
      Updated calls to Parser::Context->getCopy to remove unneeded undef
      Changed Parser.pl to MathObjects.pl
      Normalized comments and headers to that they will format their POD
      Macro files should return a non-zero value
      Improved method of looking up the item class so that it will work with
      Allow formatted answers to include newlines, and convert them to <BR>
      Make sure clear doesn't remove the special 'start' paren that is
      Now that parens->clear doesn't remove the 'start' paren, we can use
      More fixes to POD sections.
      Fixes to format POD documentation better.
      Correct the example so the answer given is actually a correct one.
      The overridden with() method was not preserving all the settings in
      The copy method was not copying all the values from the original
      Allow objects to explicitly DENY being a given type, even if isa()
      Added context flags to more finely control the allowed entry format
      Move the context creation into the _init routine.
      Always make units be in \textstyle (in particular, in the preview display).
      Added the HTML special characters to the list of translated ones, so
      Only do this translation when not in hardcopy mode (but the answer
      Fix up the examples and documentation a bit.
      Move the context creation into the _init routine so that changes to
      Move the context creation to the _init routine so that modifications
      Implements a general antiderivative formula object where the student
      Added documentation for the showHints flag to the cmp() method.
      Fixed typo in documentation.
      Make sure copy() creates new variables and values hash references (and
      Allow contexts to override the MathObject constructors separately from
      Use new feature to make Real() create ScientificNotation objects.
      Allow conversion of error messages after the value substitution has
      This file implements the ability to have String() add strings to the
      Make sure Context's cmpDefaults hash is copied when duplicated.  (Now
      Set the cmpDefaults so that you don't get error messages for things
      Revamp the isReduced() method for Unions and Sets so that it produces
      The Library Browser has a bad interaction with browser image caches if
      Fix loadMacros() and alias() so that they find auxiliary files even
      Load the UNIVERSAL package and make it available to Parser Items and Contexts.
      Use string() rather than stringify() since we don't want the
      Use the original when determining what structures to copy.
      Add a predefined type structure for intervals.
      Minor change (don't need to check for isValue since we are already
      Allow Interval constructor to handle more situations.
      Make sure the constructor creates the interval in the correct context.
      Had the test reversed in isReduced when returning a boolean rather
      Allow object classes to override their own precedence values.
      Only try to form intervals from lists that could be intervals when
      Improve error messages for unreduced unions.
      This is a rewrite of the Inequalities context that makes a number of
      Had the wrong inequality (but since answers won't usually contain
      Updated contexts to include a "name" field that at least tracks what
      Add error messages when student's answer is not linear in the constant
      Add context names for the context(s) created here.
      Make the TeX output for <= be \le rather than <=
      Implementation of a PiecewiseFunction class.  Both students and
      Check that "and" and "or" combine inequalities that use the same variable.
      Fix substitute() so that if the variable is being substituted for a
      Allow specification of values for multiple variables a once for
      Disassemble Formula's properly when used with multiple variables in
      Make sure Formula's value() method doesn't produce an error when it
      Fixed POD documentation formatting.
      Add the PGcourse.pl file, since we are encouraging authors to include
      In making the checker work with +C, I forgot to add the parameter that
      Make error messages more consistent when student's answer is off by a constant.
      Only try to reduce intervals, sets and unions.  (Don't call isReduced
      Fixed check to use a variable that is known to be in the context
      Derivatives of absolute values were leaving out the chain rule when
      Allow interval data to be given in more forms (eg, (a,b,"(",")") in
      The make() method now inherits all the settings of the parent object,
      Removed an experiment that I accidentally left in during the last commit.
      No longer need to change the order of the data, since
      Make copies of the components rather than just copying the pointers.
      Make vectors that are creates using ijk notation remain in ijk
      Had the inequality going the wrong way.  OOPS!
      Use ijkAnyDimension in the check for parallel vectors as well.
      Report error messages correctly when ijk notation is involved and
      Don't factor negatives out of multiple terms at once.
      A couple of syntax issues.
      Formula objects and Context objects contain reference loops, which
      Reduce -0 to 0.
      Cosmetic changes.
      Handle TeX special characters better when used as the currency
      This was accidentally removed in the last update.  OOPS!
      Make sure comma's are represented correctly in TeX mode.  (They need
      One last change to make hardcopy work properly.
      Make adaptive parameters try again if they fail to be found the first
      Adds a new context that is more limited by not allowing operations
      Update the List() object to not add "(" and ")" around the list unless
      Localize the $ans variable (rather than incorrectly using a closure).
      Fixed a problem where the context was not properly maintained when
      Allow inequalities to include infinity and -infinity (so you can enter
      Don't use dollar signs in the TeX output, since BEGIN_TEXT/END_TEX
      Fixed problem with ordered=>"strict" in number_list_cmp()
      Fix LimitedPolynomial-Strict to check for singlePowers (there was a
      Make numbers be considered coefficients of x^0 in singlePowers mode,
      Fixed a problem introduced in the previous version where an error is
      Don't reduce -ax+b to b-ax in polynomial contexts.
      When (-x)*y or x*(-y) reductions are performed, don't print extra
      Produce error messages when the student enters something like x=1 or x=1.
      Do the reduction check on sets when they are compared (to see if there
      When two sets are added, combine them rather than form a union.
      Fixed a problem where intervals minus sets containing more than one
      Make sure that real and complex values have their contexts changed if
      Make sure Currency() actually returns a Currency object (it used to
      Added trimTrailingZeros flag to allow values to print as $50 rather
      Fixed differentiation of log() function (it used to give an error
      Fixed problem with variable patterns for variable names that are more
      Added error trapping so that large adaptive parameters will not cause
      Moved previous_equivalence_message filter to Formula object directly,
      Make sure the previous answer is of the same MathObject class as the
      Better check for constant formula.
      Use \verb rather than \text, since it will show more characters
      Fix typo in comments
      Added
      Fix typo in changes for "no strict refs".
      Implements an assignment operator that can be used to force the
      Added ability to assign to function names, like f(x)=x+1.
      Remove cached perlFunction when a substitution or reduction is made.
      Don't inherit the correct_ans field when combining objects via binary operators.
      Make non-inheritance scheme more general, and include additional
      Fixed problem with Union answer checker where incorrect error messages
      Fixed typo
      Fixed documentation typos.
      Fixed typos in comments.
      Don't inherit the ColumnVector flag from Vector operands.  (This fixes
      Demote Real() results of Formula() evaluation back to Perl reals.
      read_whole_file was reporting the wrong routine name in its error messages.
      Fixed a problem where if two FormulaUpToConstant objects were used in
      BACKPORT: Fixed a problem where if two FormulaUpToConstant objects were used in
      Trap errors when comparing to student answer while trying to determine
      Make sure flags set on the FormulaUpToConstant object are inherited by
      Fixed problem with inerhiting test points into the adapted formula
      Allow diagnostics to show the adapted function's values.
      Allow graphs of single-variable functions in diagnostics.
      Fix problem with using value method on an undefined value when the
      Report bad function calls in student Formulas (e.g., roots of
      Protect against errors in student formula in the postfilter when
      Handle the no-inherit values better by deleting them from the copy
      Include a noinherit routine so that things like test_values and other
      Fix the check for equivalent answers so that it uses the limits and
      avoid side-effect of loading String context that sets the string
      Allow the perlFunction method to produce functions that return
      Added a routine to trap errors in a function call.  I've needed this
      Use a compiled vesion of the MathObjects formula rather than the
      The copy() method now does not copy values listed by the noinherit()
      Clear the error message before checking the student's answer for errors.
      Updated ans_array and TeX methods so that Matrix arrays don't have an
      Fixed a bug where if the student answer has an evaluation error
      Added code to save/restore the images_created counts so that
      The \s regular expression was matching newlines, and so newlines
      Fixed the name stored in the StrictFraction context (removed the
      Added a final_period=>1 flag for PiecewiseFunction objects so that the
      Inequalities that are evaluated and turned into intervals now properly
      Combined TeX and string into a common routine since the two were
      New Context for handling ordered lists of letters like "D > A = C > B".
      Use the Package() method to create the ordering object, so that
      When a parentheses have been removed, mark the enclosed item so that
      Produce error messages if a letter is used more than once in an ordering.
      Added a message for when the student answer does not include all the
      Simplify mechanism of maintaining the letters used in an ordering.
      This file implements a Fraction object for the MathObjects library.
      Make Ordering() break a string at > and = rather than assume the
      Fixed a typo in an error message.
      Typo that prevented the context name from being set properly.
      Avoid ambiguity with CORE::abs() versus overloaded abs().
      Fixed incorrect use of => when -> was intended.
      Fixed some typos in the comments.
      Fixed incorrect parentheses being added when $showparens eq "same"
      Fix inheritance so that text_values and test_adapt are preserved when
      Minor changes
      Fix inheritance to copy the tree rather than just the pointer.  This
      Changed wording of a warning message
      Removed unused variable
      Prevent extra dots from appearing in image names for TeX mode
      Apply message conversion before adding position information
      New macros for adding 'panic buttons' to get more hints
      Added grader information
      Corrected documentation (panic => panicked)
      make sure $permissionLevel is defined (since it was added recently)
      Fix the context::Fraction::Real object so that new() and make() will
      Have popup handle a context passed to its new() method, lik all other MathObjects
      remove number pattern so that strings can start with digits
      make sure formulas are in the correct context
      Don't do equivalence check if prefilters are erased
      Put off adding % to label key until just before needed
      Only shorten the labels for display, not internally.\nPlus removed trailing spaces and fixed a typo in the javascript
      make reduce work with negative numbers
      handle negative fraction reductions
      Make fractions stringify with parentheses properly
      Fix context() method to SET the context when one is passed
      Fixed problem with domain errors
      Add LimitedProperFraction context, and some cosmetic fixes
      Fix error message for powers of negatives
      Fix problem with processing lists where a constant answer produces a computation error
      During substitution, remove cached values that could change
      count {\rm } as a blank string
      Handle arbitrary variable names
      New MathObject to implement differentiation via prime operator
      Accidentally had left 'prime' as
      Reduction rule should be off by default
      Handle variables in formula 'constants' properly
      Handle formula 'constants' properly
      fixed spelling error
      A new context for chemical reactions
      Added comments and minor cleanup
      Fix problem with useBaseTenLog in perl code
      Avoid unwanted error message in log file about redefining log() function
      Fixed some incorrect spellings, and added round() and truncate()
      Fixed PopUp to handle entries with arbitrary strings
      Correct output for j vector in Vector2D context (obsolete)
      Added missing comma
      Added back in accidentally removed log() function
      Change ProperFractions to MixedNumbers in several parameters, but allow originals for backward compatibility
      Fixed typos in comments
      Fixed wrong default value in comments
      Removed deletion of i,j,k which are not in the original Point context
      Changed warning message for decimal numbers in no-decimal modes
      Make Formula typeMatch work with test_points, and not produce error messages
      Allow creation of test points with no errors
      Allow error for correct answer but not student answer in getTypicalValue
      A context that allows students to enter any string
      Allow formula to be point-valued (if promotePoints is 1)
      Corrected interpretation of 0 a/b (thanks to Adam Weyhaupt)
      Fix up comments
      Make sure makeValue set's the context, if requested
      Make sure variable substitution has occured BEFORE switching the contexts (so we don't get an undefined variable message); contexts must agree in order to compare the two.
      Make inherit() properly not inherit the noinherit attributes from self
      Fixed a problem with the signed number pattern that cause Real("4*3") to produce 4 rather than 12.
      Add =< and => operators and flag to control whether they are allowed or not.  Added more documentation
      Add requirePureFraction flag and include more documentation
      Set main::problemSeed so images will refresh when the problem is re-seeded.  Make changes made by professors acting as students only temporary changes
      New context for products of powers of polynomials
      Remove unneeded parent class
      Make it easier to subclass this class for RationalFunction context, and fix a bug with the stict division check
      Provide a limited context in which rational functions can be specified
      Back out of accidental commit of complex macros
      Since $self->{tree} is not inherited, cache it beforehand so that we
      Make sure inherited formulas get the right variables
      Correct problem with documentation of GradeWithPenalty
      Make penalties cumulative (they were supposed to be, but weren't
      Fix HTML-based delimiters for Entered column for matrices
      Initial attempt to link Matrix MathObject to CPAN Matrix library (added methods for the major ones in the CPAN library)

gage (323):
      Adding recent macro files to the pg collection
      Adding a newer version of PGmatrixmacros.pl
      Updating the copy of PGchoicemacros.pl to the latest version available
      Bringing this version into sync with the latest version in
      Bringing this version of Matrix.pm up to date with the latest in
      Bringing these files in sync with the latest versions in the
      The file PGcomplexmacros.pl is partially in sync with the version in
      This module contains IO used in saving an answer to a file.
      Commented out code  that is not used (I believe)
      Fixed a patch to round (and Round) originally due to Mark Schmitt
      Added > /dev/null tags to the commands which run tex and dvi for
      Added a feature to correspond to a change made in process_answers in Translator.pm.
      Answer labels are now prefixed by a Quiz prefix which allows more
      Made changes required to allow caching of these files.
      Changes made to PGbasicmacros so that it can be cached.
      More changes to make these files compatible
      Changes that allow these files to work with optimized
      Changes that allow these files to work with caching version
      Adding preliminary ability to decompose non-square matrices.  Won't work
      Make sure that the local my variables are updated in PGbasicmacros
      Merge the time optimized branch and the main branch.  I forgot one subroutine
      Fixed typo in beginproblem
      removed unnecessary "no strict, use strict" pair
      Latest attempt to get a version of dangerousMacros.pl that will
      Changed the defintion of *i to be inside the Complex package.
      Changed the defintion of *i to be inside the Complex package.
      Fixed error in sourceAlias.  The variable is %main::envir not
      Added $ to PG_random_generator in the subroutine SRAND.  Why it worked
      Made changes to anstext and a few
      At least a temporary fix for mail_answers_to2
      Made changes to rh_sticky_answers so that they
      Changes to mail that make it work properly with ALLOW_MAIL_TO
      Added EV4 routine supplied by Zig Fiedorowicz
      Corrected a typo in EV4
      Fixed check_string filter so that it places a
      Added line which prints out the raw student answer when the debug
      When displaying a raw student answer, nulls are converted to \0 so that they
      Added error messages that should make it easier to tell if
      Zeroed the variable storing the responses to questionnaires.  Should
      Minor change to the definition of the timer
      Allow a 256 error from dvipng.  This seems to be necessary on webwork.math.rochester.edu, so I'm commiting
      Corrected format of one line.
      Made changes to the check box macros so that they will remain
      Modifications to checkbox_cmp to include preview_latex_string.
      Added RECORD_FORM_DATA for making sticky form data which
      This is a new attempt to fix the problem that there was no
      Changed documentation spacing
      Added comments
      Changed the naming of arrays from ArRaY[0,0,0] to ArRaY__0:0:0:__
      Updating answer evaluators in PGanswermacros.pl
      Preliminary changes that may eventually allow us to solve the be_strict problem for 5.8.0
      Cosmetic fixes to code layout.
      Modifications to PGbasicmacros and PGanswermacros which check whether a function answer
      Experimental refactorization of answer evaluators will take place on this branch.
      Roll back the previous changes.  They were added to HEAD instead of to the experimental branch.
      Removed warning messages.  The macroDirectory and courseScripts directory are now defined from the %envir
      We are using our own version of strict.pm that has a require Carp;  commented out.
      We are now using ww_strict.pm instead of strict.pm in be_strict;
      Moved ww_strict.pm back to be identical with strict.pm from perl 5.6
      Moving ww_strict.pm forward to 5.8.3 compatible version
      Moved be_strict after package main;
      Added better error messages.  Removed and extraneous slash.
      Will create the tempDirectory if it is missing.
      Defined some variables that were causing warning messages.
      Added a check to handle  the  case when the $errors flag was not defined.
      Changed comment to This answer is the same as the one you just submitted
      Temporary modifications which allow the Warning mechanisms to work when
      Undoing some of the temporary changes I made to the warn message.
      Small correction that makes sure that _init subroutines are read
      Allow subclasses of AnswerEvalutor to be used.  Check for a match
      Provide a default warning subroutine if none has been defined.
      Fixed documentation for $graph->size()
      Fixed conceptual error in compare_vec_solution.  This should fix bug
      Many changes to this file.  I've fixed multi_cmp which
      Format changes.
      Corrected how preview_latex_strings are handled when two
      MASSIVE changes to str_cmp and related subroutines (mostly in STR_CMP).
      Fixed bug in radio_cmp closing bug #258.  We now check to make
      Added comments.
      Added commment
      Restored str_filters -- removing it broke some of the other answer evaluators.
      Commenting out unused code.  This file still needs a lot of work.
      Reworked some of the code for AnswerEvaluator
      Rewrote checkbox_cmp as an AnswerEvaluator
      Add comment
      Modified formatting
      Added some pod documentation
      Added some pod documentation to this file.  It needs more -- several methods
      Made modifications that allow the use of complex numbers in matrices
      Made modifications that allow use of complex numbers in matrices.  You can
      Added support for sequentialProblems.
      Macros that aid the construction sequentialProblems.  For these
      Added documentation for macros used in constructing
      Added a modification of the grades that shows where the
      Made listVariables and listFormVariables synonyms for listing all variables available to
      Changed the numerical values of lbf to make it more accurate (assuming that lbf is an abbreviation for ft-lbs which I doubt).
      Changes to code checking whether the previous answer is equivalent to the current answer.
      Changes to code checking whether the previous answer is equivalent to the current answer.
      Check to see if $inputs_ref->{previewAnswers} is defined.  If it is then
      Roll back my changes.  Use Davide's method of detecting the preview Button
      added findAppletFile  to dangerous macros.
      Added support for searching for appletin  anumber of places defined in
      Make sure that WeBWorK::Constants has been loaded before this file is evaluated.
      Added rungeKutta4  method to PGnumericalmacros.pl   Updated documentation on rungeKutta4a, an answer filter in PGdiffeqmacros.pl
      Make
      Added space when combining preview latex strings    (foo  + bar   became   foo\quadbar  which didn't work
      Added code to multi_cmp which makes it easier to  debug.
      Removed scommented out code and
      added a "level" to pretty_print to prevent it from descending too far down
      Begin pod documentation.
      Added new permissable log files.
      Changed input to rungeKutta4 so that it matches the pod description --
      Minor documentation changes.
      Documentation additions
      Correct pretty_print
      Correct pretty_print so that it protects for HTML output
      Added pod documentation for these files
      Use this macro package to define macros for
      Updated documentation in response to comments from Davide.
      Documentation formatting changes
      More formatting changes.
      More format changes to documentation
      Formatting changes in documentation
      Format fix
      Documenation addition
      Added documentation
      This file loads Parser.pl.   It is part of a campaign to replace the term "parser object"
      Added comments about working with complex variables
      Corrected typo
      Update pod.
      Added Davide Cervone's methods for evaluating formulas module 2pi
      Added pod documentation
      Pod documentation added
      Pod documentation upgrades
      This is an experimental version of PGcomplexmacros2Exp.pl
      Fixing docementation so that it can be read from the web.
      testing -- added a space.
      testing -- please ignore
      done testing
      Added a file containing macros that are useful for determining the current environment and
      Removed PGinfomacros.pl
      Add comment explaining that Infinity is defined in dangerousMacros.pl along with pi and sometimes
      More detailed doucmentation on MathObjects
      Updated documentation of appletLink and helpLink macros
      Backporting changes from HEAD to rel-2-4-dev
      Changed plot_functions so that it uses the Formula MathObject to parse the
      Added explicit  loadMacros("MathObject.pl")  to
      Modifications PGgraphicsmacros.pl suggested by Davide Cervone.
      Preliminary version of Applet.pm which will provide a uniform interface
      This version of Applet.pm now works with IE.
      Provides front end for Applet.pm.
      Added some further documentation pointing out the workaround to make
      Made changes in the way the default values for answer evaluators are set.
      Corrected typo in string answer evaluators (affecting blank answers mainly)
      Corrected spelling in pod documents.
      Updated documentation.  Fixed a hard coded reference in the DEFAULT_OBJECT_TEXT.
      remove \ensuremath
      Fixed bug.  Pass variables in $foo = FlashApplet(...)   to the actual applet creator
      New version of Applet.pm and AppletObjects.pl that supports both flash
      New version of Applet.pm and AppletObjects.pl that supports both flashnew FlashApplet();
      cosmetic changes
      corrected typos in setState macros.
      Modified method in which parameters are passed to
      Added more debugging code
      Fixed bug in base64Q subroutine
      Edited the first three paragraphs describing why math objects are used.
      Fixed an error in formatting comment
      provide ans_label for the current answer being evaluated to
      define ans_label slot in a new AnswerHash to be undefined.
      Modifications to pass answer label for previous answer.  This still does not
      Fixed bug that would cause problem with checking previous answers if there
      add reinitialize applet button to the standard installation to complement
      Moved placement of loadMacros(subfiles) to inside the
      speeling typo :-)
      Latest reworking of the Applets.pm and AppletObjects.pl files
      Latest improvements for the Applet.pm and AppletObjects.pl files
      fix method of setting debug
      Uploading changes in the AppletObjects.pl and Applet.pm modules.
      minor changes to help with debugging.
      minor changes to help with debugging
      Corrected documentation for the ?{4.56:%0.2f} and !{4.5645:%0.2f} constructions --
      Added a ->cmp method for checking the answers.
      An experimental collection of macros designed as a first attempt
      formatting changes
      forward port
      Formatting
      remove attempt to set formatting with $#
      Forward ports from rel-2-4-5
      forward port of rel-2-4-5
      forward port file path printing from rel-2-4-5
      Moved to modelCourse/templates/setOrientation
      format spaces
      forward port of bug fix in rel-2-4-5
      have  hint always print hints for instructorsCVS: ----------------------------------------------------------------------
      Make sure $attempts is properly defined
      corrected formatting in POD documentation
      Fixed error in hint() associated with always showing the instructor that
      Fixed comment
      Added submitActionScript   option which allows you to add javaScript commands that
      Reworked applet support code to use more object oriented approach.
      Reworked support code for applets to use a more object oriented approach.
      print warning if the javaScript file is not available.
      Fixed typo
      More code to check that the javaScript file is availabe.
      Additional support for debugging
      Minor cosmetic change
      Corrected premature commit which contained a code hack for the macbook.
      Cleaning up duplicated lines
      refactored code using methodDefined()
      Added some comments about how to replace this functionality by  using Contexts.
      replaced configAlias by setConfigAlias
      complete the conversion from configAlias to setConfigAlias
      Fixed an extra paren that was causing problems.
      Added documentation for applet API
      minor changes to refine the applet interface and to make
      cumulative updates made while developing Applet.pm on hosted2
      Update information to instructor about hints in the problem.
      Change the "return applet to virgin state" button into a submit button so that the action takes place immediately rather than after entering
      syncing pg HEAD with pg2.4.7 on 6/25/2009
      add copyright to PGbasicmacros.pl
      Fixed spelling errors
      Changed how errors are caught in methodDefined() to prevent unneeded error messages in firefox
      Added id   tags to most HTML entities defined in PGbasicmacros.pl
      added effectivePermissionLevel to the PG environment
      edited some pod documentation
      pod doc corrections
      default PGcourse.pl file
      Added BEGIN_PGML and END_PGML
      The buttons for setConfig and getConfig are only shown in the debug display
      added id tags as well as name tags to input items
      Add id tag as well as name tag to HIDDEN_ANS_RULE
      Added line so that if the dot_radius on a vector arrow is 0 then the dot is not drawn at all.
      major change to the base
      major update which adds objective methods to the basic code of PG.
      minor formatting changes
      insure that MatrixReal1.pm is used
      major update which adds objective methods to the basic code of PG.
      major update which adds objective methods to the basic code of PG.
      Fixed a typo in num_cmp
      removed duplicate definition of not_null
      remove extraneous warning signs.
      remove warning
      fixed an error in which surePathToTmp file wasn't prefixed by $self->
      inserted $self-> before directoryFromPath  and surePathToTmpFile  calls
      Changed the name of {PG_FLAGS} to {flags} for confomity
      correct initialiazation problem for showPartialCorrectAnswers
      Fixed a bug that interferec with constructing the correct path to a gif file
      added fixes to PGalias.pm and PGcore.pm related to using $self-> in contexts
      format change only.
      commented out a warning about using RCORD_FORM_LABELS  until
      regularizing calls to no_null   -- something puzzling is going on here
      added Exporter to the inheritance tree of PGcore
      Fixed the   not_null bug?  perhaps.  Insure that the Exporter 'import' subroutine is available
      changed parts of LABELED_ANS (and PGcore::new) so that it properly handles the
      corrected typos.
      brings the pg copy in line with the copy in NPL/macros/Union
      attempted fix for finding applets automatically.
      Added  correct_ans_latex_string -> ...  element to the answer hash for displaying the TeX version of the correct answer
      added decode_base64 and encode_base64 routines for use in WW questions
      added comments
      Adding CanvasObject.pl for use in HTML5 input
      Commiting updates to Applet.pm for supporting html5  (back ported from gage_dev branch)
      This revision works for ie8 and firefox most of the time for both java and flash applets.  Sometimes there will be a failure for the applet to load, followed by a successful load -- there is apparently still a race condition in determining whether an applet - particularly a flash applet -- is ready
      Temporary fix to a bug which occurs when trying to calculate the latex preview
      This version of the tooltip fix is still temporary but it works slightly
      Merging changes gage branch  gage_dev/pg
      I changed new Matrix   to   Matrix->new   in two places in PGanswersmacro.pl
      back port from gage_dev
      back ported suppor for geogebra applets
      Updating VectorField.pm so that it works without AUTOLOAD
      Fixed logic of findAppletCodebase  -- it works on courses.webwork.maa.org now and on my laptop
      import from gage_dev.  Changed references to PG_FLAGS to ::PG->{flags}.  This should fix bugs in compoundProblem.pl, problemPanic.pl and problemRandomize.pl -- but only compoundProblem.pl has been tested -- lightly
      added includePGproblem to PG.pl
      1. cosmetic fix of bug #1804
      protect @ signs in user_id when naming graphs.
      protect @ signs in user_id when creating labels.
      minor format change.
      updates from Davide
      transferred some much used macro files to pg/macros for those not including the
      added predeclaration of beginproblem
      cosmetic change
      cosmetic change -- brings this in line with gage_dev
      removed use of defined(%hash)
      moved files around
      hide some scripts that are no longer being used
      correct bug declaring eHTML and bHTML are undefined
      removed an extra "my"
      use WWSafe instead of Safe.pm
      second attempt to cure defined(%$type) without triggering the new perl compiler
      make sure the recorded_score of $problem_state is initialized to avoid spurious warning messages
      some clean up of loadMacros code.  -- nothing substantial yet (I think)  -- more work is needed.
      moving much of the code from contextLimitedPolynomial.pl to LimitedPolynomial.pm to prevent @ISA  error
      added routines provided by Steven McKay
      moving code from contextLimitedPolynomial.pl to LimitedPolynomial.pm to avoid @ISA   error.
      updated POD documentation
      added alignedChoice.pl from the Union collection of macros
      reverting to using Safe -- so that we can test the 2.29 safe version.
      switch to use WWSafe.pm
      corrected an errant comment that was causing troubles
      changed references to  $ans_rule_count  to ans_rule_count();
      updated POD
      updated license and readme
      fixed error in textarea "ansbox" code
      last change of Safe to WWSafe
      added documentation to ImageGenerator
      fix one  "non numeric permision level" error  by adding default
      allow subscripts on compounds as well as elements.
      fix the coloring of matrices.  Still not completely satisfactory since only the
      ?	added some warning messages to Course Admin if permissions on DATA, log and html directories are not set correctly.
      More modifications to addToTeXPreamble()
      added comments on how to set up source button.
      fixed TeXPreamble hardcopy bug.
      the AddToTeXPreamble()  command now adds short commands
      updated PG to allow material to be placed before the question main form
      added BEGIN_PGML_SOLUTION   etc.
      added iframe command.
      added documentation for iframe macro
      update README
      removed some commented out code.
      commiting PGML.pl to standard macros
      update PGML.pl to current version on courses
      fix bug in BEGIN_PGML_SOLUTION
      updated to courses.maa version

glarose (7):
      Add some electrical units.  Take two, hopefully in the correct branch
      Update quiz prefix for arrays.  This is not a complete fix, but it
      Make VectorField plotting honor setting of x_steps and y_steps.
      Add mg as a mass unit.  Hopefully the fact that this wasn't here before
      WWPlot: add arrowTo() method, support for width in lineTo()
      WWPlot: add a dashed option to lines and arrows
      WWPlot: slightly better choice of dash-length and spacing for dashing

jj (71):
      Fixed bug when the function is sampled at a point where it is not defined.
      Slightly better handling of top_labels in tth mode when force_tex is set; namely
      Fixed isPrime, which had said that 4 was prime, and shortened its loop.
      Fixed tick marks for graphs - x/y values were reversed.
      Fixed bugs in matrix display when top_labels are present.
      Made box option functional for display_matrix.  It lets you specify an
      Fixed new bug introduced by, er, my previous bug fix.
      Added option of test_points to fun_cmp.
      Added some documentation for test_points.
      Revised documentation for test_points.
      New file with linear programming simplex method related macros.
      Redoing fix to random so that random(2,7,3) won't produce 8.  The original
      Put mbox around entries of a matrix in TeX-based modes to protect
      If LaTeX formula ends in a backslash after removing training spaces,
      Some sites use only one display mode.  In that case, the "choice of one"
      Fix bug from last fix, and a second bug caused by $Global::htmlModeDefault
      Added support for useBaseTenLog for ww2.
      WW 2 didn't like the top line.  Inserting a comment seems to fix it.  Also
      Synched with ASU version.  Defunct functions deleted, new functions added,
      Added convention to beginproblem that point value of "" means that we don't
      Moved nicestring to PGbasicmacros.
      Added helpLink for standard help pages in pg files.
      Made on the fly graph names use problem seed rather than psvn.  It is a better identifier for pages like SetMaker.  Also made image names workable for set names containing periods (for the day when set names are free to contain periods).
      Allow default size of on the fly graphics to be set in global.conf, and make pop-ups of those graphs have windows closer to the size of the graph.  Also, pop-ups always make a new window - important for problems which make you compare two or more popped up graphs.
      Re-use on-the-fly graphs, unless problem seed has change, source file has changed, or the problem is being rendered without being part of a real set.
      Fixed bug which caused some debug output to always appear.
      Allow on-the-fly graphics in jsmath and asciimath modes.
      When using the imageCache (which is always), put images into subdirectories
      Allow option of not using the cache.  If its path is the empty string, then
      Most of the work for adjusting vertical alignment of images is here.
      Allow new option for image.  extra_html_tags are added to the img tag of the
      Allow psvn to equal 0.  It could happen in situations where a problem
      Make combinations function C(n,k) return 0 when k>n, which is standard.
      This seems to fix bug 713.  I don't see why one would want the line below
      Avoids some name collisions for images converted from gif to png in
      Work around IE bug for ordered lists.  Maybe someday this can be undone.
      Changed whitespace removal of TeX strings to safer version.
      New context which allows students to use C(n,r) and P(n,r) in their
      Fixed typo in installation instructions.
      Fixed typo.
      Fixed typo related to useBaseTenLog.
      Changed number_list_cmp to use Parser.
      Hopefully improved some of how the temporary context is set for number_list_cmp.
      Default behavior of number_list_cmp set to be backward compatible
      Completed conversion of interval_cmp to use Parser objects.  Also, minor
      If a problem file sets $refreshCachedImages=1 inside the pg file, then
      Moved a chunk of duplicated code to its own function, and tweaked the setting
      Fixed treatment of options in setting the mode and optional parameters
      Implimentation of COMMENT for comments to appear in the library browser.
      level_curve_check now forces the use of the old style (not Parser::Legacy)
      Should fix bug 696 by replacing consecutive whitespace with a single
      Removed bits which were accidentally included during last commit.
      Part of change dealing with bug 813.
      This adds wiring to the pg side for special bits of html to be included before/after the body of a problem.  You also need to update global.conf (and probably want to update Tasks.pm).
      Deleted commented out line (which had been used for debugging).
      Fixed problem with display_matrix_mm so its behaviour matches its
      Hopefully fixed the logic of setting numerical tolerance defaults.
      This makes the pg/lib/Parser/Legacy copy of PGanswermacros.pl the
      A separate copy of this file is no longer needed.
      Updated instructions to match changes to global.conf.dist and the move
      When making on-the-fly image names, replace periods in the student login
      Fix bug where perl functions which may need parentheses by forcing them
      Added syntactic sugar for pop_up_lists.
      Fixed bug which caused warnings in problems containing hints and/or solutions
      Catch errors which get thrown by other filters.
      Add function so that pg problems can include any other problem under the
      Added macros to make it easier to have underlined text in a problem:
      Fix a bug where problems produce a pink screen on checking answers.  We
      Backing out previous change.  There is still a serious problem with this
      Fixed typo in an error message.
      Fixed weighted_answer_grader to account for new way of labelling answer blanks.

lr003k (19):
      ok, I'm pretty sure that this one is the one we want. Unfortunately the other one was an old one, that cmpl_cmp4 was not used
      I've added ans_array and ans_array extension and moved answer_matrix here since this is probably where it should be with all
      I removed the subroutine answer_matrix since it really belongs in basic macros with the other answer blank methods.
      Added two methods for naming the blanks in ans_array. The names now have the format ArRaY3[1,0,2] (this would be the name of
      Ok, there is the ans_array_filter added which allows for the answer to be coming from the ans_array.
      Was working from an older copy before my last update, sorry.
      Was not accepting negative answers, the sign problem is fixed now.
      Student answer now displayed in a html table given by jones's
      Matrices now take math constants.
      Made the code more object-oriented
      fixed a bug
      committed the wrong thing
      Matrices now displayed in previewer.
      Added a vec_solution_cmp. Used for problems where the answer
      Added a pretty_matrix sub routine to fix some rounding problems.
      Removed the last change, it's now handled in display_matrix.
      Fixed a rounding problem.
      In order to make ans_array entries "sticky" I've had to change some stuff.
      It seems as though the way I tried to fix long decimals isn't working the way I wanted it too, so I've commented it out for now.

malsyned (1):
      Merged the changes needed to work with the new WW2 translator

mgage (1):
      syncing cvn with changes made to the cvs

root (1):
      addition for dragmath editor: a new image/link is shown next to answer box for each ans_rule

sh002i (56):
      moved PG modules and macro files from webwork-modperl to pg
      changes to the math_ev3 functions in PGbasicmacros.pl to support new
      rollback change to the way ImageGenerator::add is called.
      added image generation modules from WW2
      removed unneeded #! lines
      fixed #! line
      removed unneeded #! line
      check to see if $envir->{texDisposition} is defined before trying to
      added files from WW2
      changed documentation to reflect the fact that reh refresh and mtime
      changed the way the IO modules work: shared subroutines are in IO now,
      Modified DVIPNG_ARGS to work with dvipng >= 1.0.
      failover data now passed in via %envir.
      got rid of remaining calls to "wwerror". Fixes bug #530.
      Reformatted the FUNCTION_CMP subroutine to make it more readable. Also,
      ImageGenerator is now using WeBWorK::Constants
      moved DISPLAY_MODE_FAILOVER into this file
      merged changes from rel-2-1-a1 -- stop using that branch.
      added README and LICENCE files.
      chech tthPreamble path and mtime to deal with changes to the file
      Fix use of $SIG{__WARN__} and $SIG{__DIE__}.
      Corrected error message when mailing to an address is not allowed. This
      give answer is equivalent message regardless of correctness.
      parser version was ok, bug #752 fixed in non-parser version.
      Really fix fun_cmp equivalence warning message.
      changed license and readme to have generic "2.x" version numbers and no
      append "1;" to these files, to satisfy Apache2.
      allow partial URLs in appletPath -- these get the server_root_url
      SECURITY: tighter constraints on which macro files can be loaded without
      formatting, ordering
      added mail_answers_to3, which currently does not work, to eventually
      SECURITY: tighter constraints on which macro files can be loaded without
      changes for DelayedMailer
      quick hack to satisfy gedit's dumb syntax hiliting
      expanded POD docs
      forward-port (sh002i): when using loadMacros, add a newline before the
      forward-port (sh002i): Added a version of PGstandard.pl which loads
      forward-port (sh002i): Fix PG_restricted_eval so that no lexicals are
      normalized documentation -- still needs a USAGE section though.
      converted basic mathobjects docs to POD
      added MathObjects examples from webwork2/doc/parser
      improved formatting for docs -- these were in pod sections but were all
      changed name message
      reformatted documentation for the rest of the MathObjects-related macros
      fixed some POD errors, indentation
      fixed indentation of verbatim paragraphs: now using hard tabs
      added standard copyright/license header
      documentation cleanup
      typo
      new/improved documentation
      Split answer evaluators into several new files, based on the type of
      documentation improvements
      markup for ww-symbol-map
      add "my" and "our" specifiers to ^variable definitions. (This breaks
      typo in symbol map metadata
      added the ability to specify an order for the choices or push some

sroubos (2):
      Make readable by POD documentation from the web
      Changed POD documentation

toenail (1):
      Reordered pre-filters in NUM_CMP to allow for latex previews of answers with no units

wwadmin (4):
      Fixed the tmp directory bug that affected courses with a - in the name. This updated the git version to what is in svn.
      Fix bug that Perl 5.14 flags
      Fix bug the Perl 5.14 flags
      Merge remote-tracking branch 'gpg/master'

-----------------------------------------------------------------------

No new revisions were added by this update.

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/webwork-pg.git



More information about the debian-science-commits mailing list