CHANGES IN OPTMATCH VERSION 0.7-1

NEW FEATURES 

* pairmatch() has a new option, "remove.unmatchables," that may be
  useful in conjunction with caliper matching.  With
  "remove.unmatchables=TRUE", prior to matching any units with no
  counterparts within caliper distance are removed.  Pair matching can
  still fail, if for example for two distinct treatment units only a
  single control, the same one, is available for matching to them; but
  remove.unmatchables eliminates one simple and common reason for pair
  matching to fail.

* Applying summary() to an optmatch object now creates a
  "summary.optmatch" containing the summary information, in addition
  to reporting it to the console (via a summary.optmatch method for
  print() ).

* mdist.formula() no longer requires an explicit data argument.  I.e.,
  you can get away with a call like "mdist(Treat~X1+X2|S)" if the
  variables Treat, X1, X2 and S are available in the environment
  you're working from (or in one of its parent environments).
  Previously you would have had to do "mdist(Treat~X1+X2|S,
  data=mydata)".  (The latter formulation is still to be preferred,
  however, in part because with it mdist() gets to use data's row
  names, whereas otherwise it would have to make up row names.)

CHANGES IN OPTMATCH VERSION 0.7

NEW FEATURES 

* New function fill.NAs replaces missing observations (ie. NA values)
  with minimally informative values (ie. the mean of observed
  columns). Fill.NAs handles functions in formulas intelligently and
  provides missing indicators for each variable. See the help
  documentation for more information and examples.

BUG FIXES

* mdist.function method now properly returns an optmatch.dlist object
  for use in summary.optmatch, etc.

* mdist.function maintains label on grouping factor.

CHANGES IN OPTMATCH VERSION 0.6-1

NEW FEATURES

* New mdist method to extract propensity scores from models fitted
  using bigglm in package "biglm".

* mdist's formula method now understands grouping factors indicated
  with a pipe ("|")

* informative error message for mdist called on numeric vectors

* updated mdist documentation

CHANGES IN OPTMATCH VERSION 0.6

NEW FEATURES 

* There is a new generic function, mdist(), for creating matching
  distances.  It accepts: fitted glm's, which it uses to extract
  propensity distances; formulas, which it uses to construct squared
  Mahalanobis distances; and functions, with which a user can construct
  his or her own type of distance.  The function method is more
  intuitive to work with than the older makedist() function.

* A new function, caliper(), builds on the mdist() structure to
  provide a convenient way to add calipers to a distance.  In contrast
  to earlier ways of adding calipers, caliper() has an optional
  argument specify observations to be excluded from the caliper
  requirement --- this permits one to relax it for just a few
  observations, for instance.

* summary.optmatch() now removes strata in which matching failed (b/c
  the matching problem was found to be infeasible) before summarizing.
  It also indicates when such strata are present, and how many
  observations fall in them.

* Demo has been updated to reflect changes as of version 0.4, 0.5, 0.6.

DEPRECATED & DEFUNCT

* The vignette is sufficiently out of date that it's been removed.  

BUG FIXES

* subsetting of objects of class optmatch now preserves matched.distances attribute.

* fixed bug in maxControlsCap/minControlsCap whereby they behaved
  unreliably on subclasses within which some subjects had no
  permissible matches.

* Removed unnecessary panic in fullmatch when it was given a
  min.controls argument with attributes other than names (as when it
  is created by tapply()).

* fixed bug wherein summary.optmatch fails to retrieve balance tests
  if given a propensity model that had function calls in its formula.

* Documentation pages for fullmatch, pairmatch filled out a bit.

CHANGES IN OPTMATCH VERSION 0.5

NEW FEATURES:

* summary.optmatch() completely revised.  It now reports information
  about the configuration of the matched sets and about matched
  distances.  In addition, if given a fitted propensity model as a
  second argument it summarizes covariate balance.
