Changes in version 1.03 (2011-04-11):

NEW FEATURES

    o  Added 'risk.fraction' argument which constrains the fraction
       of variance attributed to individual assets.

    o  Added 'bench.weights' argument which specifies the weights 
       of assets in benchmarks.  This is required if there are
       'risk.fraction' constraints involving benchmarks.  But it
       also allows benchmarks to be added automatically to the
       variance and expected returns even if there are no risk
       fraction constraints.
 
CHANGES

    o  There is now a warning if it appears that the variance
       is unreasonably small when the information ratio is 
       being maximized (for instance, if the benchmark can be
       reproduced almost exactly).  The 'do.warn' item to suppress 
       the warning is 'var.eps'.

    o  An error is now thrown if a variance matrix is not symmetric
       since this leads to confusion in the algorithm.

    o  If there is more than one benchmark, then the utilities
       that are created (in 'utable') are now more logical.  The
       former behavior can be recovered by specifying a 'utable'
       argument.

    o  The occurrence of more than one zero in the diagonal of a 
       variance is now a warning rather than an error.  Suppression
       of the warning is with the 'do.warn' item 'zero.variance'.

    o   Various minor improvements in error handling and warnings.

BUG FIXES

    o  Assets that had a forced trade were way too likely to be
       at the value of the forced trade in random portfolios.
       There were some additional changes that might improve the
       uniformity of the generation process.

    o  Thresholding could get confused in an extreme case.

    o  In rare circumstances there was the possibility of a short
       position being allowed in a long-only portfolio (which
       throws an error).

    o  An uninitialized variable problem was found.



Changes in version 1.02 (2010-11-18):

NEW FEATURES

    o  Add weighted sum of squares option for distances.


CHANGES

    o  'valuation.portfolBurSt' and 'valuation.default' now
       work for price matrices.  The 'collapse' argument
       and its relatives have been added to these functions.

    o  'constraints.realized.lin' has better functionality
       in rare circumstances.

    o  benchmark identities are now put on the appropriate
       elements of the output components 'var.values' and
       'alpha.values' of 'trade.optimizer'.


BUG FIXES

    o  An alpha constraint when no variance was given caused
       a system terminating -- fatal error, trivial fix.

    o  There was a bug when a benchmark constraint was imposed
       with a maximum return utility.

    o  Some error messages are improved.

    o  A nicety when 'turnover' is set to zero.



Changes in version 1.01 (2010-05-19):

NEW FEATURES

    o   Distance constraints and utility added to 'random.portfolio' and
        'trade.optimizer'.  This involves a few new arguments.

    o   Related to this 'constraint.realized' now returns a list with
        (possibly) a linear component (what it previously returned) and
        a distance component.  Empty components are not in the return value.

    o   'trade.distance' will now accept a weight vector as one or both
        of the first two arguments if 'scale = "weight"'.


CHANGES

    o   Parameter settings have been changed to possibly slightly speed up 
        the generation of random portfolios.

    o   Various minor improvements in error handling and warning.


BUG FIXES

    o   'update.randportBurSt' could fail trying to check input when it
        didn't have the input.

    o   Some C code fixes to avoid possible rare errors and stupidities.

