Package: R.methodsS3
====================

Version: 1.7.0 [2015-02-19]
o ROBUSTNESS: Added several package tests.
o CONSISTENCY: Now isGenericS4() returns FALSE for non-existing
  functions, just as isGenericS3() does.
o BUG FIX: isGenericS3() on a function gave error "object 'Math' of
  mode 'function' was not found" when the 'methods' package was not
  loaded, e.g. Rscript -e "R.methodsS3::isGenericS3(function(...) NULL)".
o BUG FIX/WORKAROUND: findDispatchMethodsS3() could in rare cases return
  an extra set of false functions in R (< 3.1.2).  This was due to a
  bug in R (< 3.1.2) where the output of getAnywhere() contained
  garbage results, e.g. getAnywhere(".Options")$objs.  For backward
  compatibility, findDispatchMethodsS3() now detects this case and works
  around it.  This bug was only detected after adding an explicit package
  test for findDispatchMethodsS3().


Version: 1.6.2 [2014-05-04]
o CLEANUP: Internal directory restructuring.


Version: 1.6.1 [2014-01-04]
o CLEANUP: Dropped obsolete argument 'ellipsesOnly' from setGenericS3().
  It was not used.  Thanks Antonio Piccolboni for reporting on this.


Version: 1.6.0 [2013-11-12]
o BUG FIX: Generic function created by setGenericS3("foo<-") would not
  have a last argument name 'value', which 'R CMD check' complains about.


Version: 1.5.3 [2013-11-05]
o ROBUSTNESS: Now setMethodS3(name, class, ...) and
  setGenericS3(name, ...) assert that arguments 'name' and 'class'
  are non-empty.


Version: 1.5.2 [2013-10-06]
o BETA: Added an in-official option to make setGenericS3() and
  setMethodsS3() look for existing (generic) functions also in
  imported namespaces.  This will eventually become the default.
o ROBUSTNESS: Now isGenericS3() also compares to known generic
  functions in the 'base' package.  It also does a better job on
  checking whether the function calls UseMethod() or not.
o Added argument 'inherits' to getGenericS3().
o The above improvement of isGenericS3() means that setGenericS3()
  does a better job to decided whether a generic function should be
  created or not, which in turn means 'createGeneric=FALSE' is needed
  much less in setMethodS3().


Version: 1.5.1 [2013-09-15]
o BUG FIX: Forgot to explicitly import capture.output() from 'utils'
  which could give an error on function "capture.output" not available
  when setMethodS3() was used to define a "replacement" function.
  This was only observed on the R v3.0.1 release version but not with
  the more recent patched or devel versions.
  In addition, two other 'utils' functions are now explicitly imported.


Version: 1.5.0 [2013-08-29]
o Added pkgStartupMessage() which acknowledges library(..., quietly=TRUE).


Version: 1.4.5 [2013-08-23]
o CLEANUP: Dropped deprecated inst/HOWTOSITE replaced by inst/CITATION.
o CLEANUP: No longer utilizing ':::' for "self" (i.e. R.methodsS3) methods.


Version: 1.4.4 [2013-05-19]
o CRAN POLICY: Now all Rd \usage{} lines are at most 90 characters long.


Version: 1.4.3 [2013-03-08]
o Added an Authors@R field to the DESCRIPTION.


Version: 1.4.2 [2012-06-22]
o Now setMethodS3(..., appendVarArgs=TRUE) ignores 'appendVarArgs' if
  the method name is "==", "+", "-", "*", "/", "^", "%%", or "%/%",
  (in addition to "$", "$<-", "[[", "[[<-", "[", "[<-").  It will also
  ignore it if the name matches regular expressions "<-$" or "^%[^%]*%$".
  The built in RCC validators were updated accordingly.


Version: 1.4.1 [2012-06-20]
o Added argument 'overwrite' to setGenericS3().


Version: 1.4.0 [2012-04-20]
o Now setMethodS3() sets attribute "S3class" to the class.
o Added argument 'export' to setMethodS3() and setGenericS3(), which
  sets attribute "export" to the same value.


Version: 1.3.0 [2012-04-16]
o Now only generic funcions are exported, and not all of them.
o Now all S3 methods are properly declared in NAMESPACE.


Version: 1.2.3 [2012-03-08]
o Now arguments '...' of setMethodS3() are passed to setGenericS3().


Version: 1.2.2 [2011-11-17]
o CLEANUP: Dropped example(getMethodS3), which was for setMethodS3().


Version: 1.2.1 [2010-09-18]
o BUG FIX: isGenericS3(), isGenericS4(), getGenericS3() and getMethodS3()
  failed to locate functions created in the global environment while
  there exist a function with the same name in the 'base' package.
  The problem only affects the above functions and nothing else and it
  did not exist prior to R.methodsS3 v1.2.0 when the package did not yet
  have a namespace.  Thanks John Oleynick for reporting on this problem.
o BUG FIX: isGenericS3() and isGenericS4() did not support specifying
  the function by name as a character string, despite it was documented
  to do so.  Thanks John Oleynick for reporting on this.


Version: 1.2.0 [2010-03-13]
o Added a NAMESPACE.


Version: 1.1.0 [2010-01-02]
o Added getDispatchMethodS3() and findDispatchMethodsS3().


Version: 1.0.3 [2008-07-02]
o Renamed HISTORY file to NEWS.


Version: 1.0.2 [2008-05-08]
o Added getMethodS3() and getGenericS3().
o BUG FIX: isGenericS3() and isGenericS4() gave an error if
  a function was passed.


Version: 1.0.1 [2008-03-06]
o Added paper to citation("R.methodsS3").
o BUG FIX: Regular expression pattern 'a-Z' is illegal on (at least)
  some locale, e.g. 'C' (where 'A-z' works). The only way to specify
  the ASCII alphabet is to list all characters explicitly, which we now
  do in all methods of the package.  See the r-devel thread
  "invalid regular expression '[a-Z]'" on 2008-03-05 for details.


Version: 1.0.0 [2007-09-17]
o Created by extracting setMethodS3() and related methods from the
  R.oo package.  The purpose is to provide setMethodS3() without
  having to load (the already lightweight) R.oo package.  For
  previous history related to the methods in this package, please
  see the history of the R.oo package.

