****************************************************
*                                                  *
*  Changes and Developments in the difNLR Package  *
*                                                  *
****************************************************
----------------------------------------
- Changes in difNLR 1.2.1 (2018-03-01) -
----------------------------------------

* Version 1.2.1 is CRAN version.
* It includes version 1.2.0.-1. - 1.2.0.-7.


1.2.0.-7. (2018-02-27)
MAJOR UPDATES
  o Argument 'start' in 'difNLR()' function is now item-specific. The input is
    correctly checked.
  o In case that some items do not converge, starting values are recalculated
    from bootstraped sample and problematic models are fitted again. This is done
    20 times at most.
    The options were added into 'difNLR()' and 'NLR()' functions.
  o Argument 'constraints' in 'difNLR()' function is now item-specific.

MINOR UPDATES
  o Minor bug fixing:
    - Typos were fixed in 'print()' method for 'difNLR' class.
  o Title was shorten.
  o Description of package was updated.
  o Description file was updated, reference was added.
  o README file was updated.
  o CITATION file was updated.

1.2.0.-6. (2018-02-26)
MAJOR UPDATES
  o S3 methods for 'difNLR' class are now properly describedm, especially,
    'plot.difNLR()' and 'predict.difNLR()'.
  o 'difNLR()' documentation was improved.
  o Bug fixing:
    - S3 methods for class 'difNLR' can now properly handle items with
      convergence issues.
    - 'NLR()' now detects DIF correctly with F test.

MINOR UPDATES
  o Typos were fixed.

1.2.0.-5. (2018-02-20)
MAJOR UPDATES
  o 'print()', 'plot()','fitted()', 'predict()', 'logLik()', 'AIC()', 'BIC()'
    and 'residuals()' for 'difNLR' class now handles item specific arguments
    ('model', 'type' and 'constraints').
  o 'residuals' for 'difNLR' class now uses argument 'item'.
  o Bug fixing:
    - Checking inputs in 'difNLR' was fixed and improved.
    - Fixing degrees of freedom and p-values calculations in 'NLR()'.
    - Fixing parameters, SE and covariances calculations in 'NLR()'.
    - S3 methods for 'difNLR' class can now handle convergence issues.

MINOR UPDATES
  o Documentation of 'difNLR-package' was updated.
  o Syntax in 'plot()' and 'residuals()' for 'difNLR' was slightly improved.
  o 'logLik()' for 'difNLR' now returns list of 'logLik' class values.

1.2.0.-4. (2018-02-19)
MAJOR UPDATES
  o Function 'startNLR()' now handles item-specific arguments ('model' and
    'parameterization'). Its output is now in the form of list. It can be
    simplified with argument 'simplify' into table when all parameterizations
    are the same.
  o Function 'NLR()' now handles item-specific arguments ('model', 'type' and
    'constraints').
  o Function 'difNLR()' now handles item-specific arguments ('model', 'type'
    and 'constraints').
MINOR UPDATES
  o README file was updated.

1.2.0.-3. (2018-02-19)
MAJOR UPDATES
  o Bug fixing:
    - Starting values in input of 'estimNLR()' in 'NLR()' are now properly
      named.
    - Bug in alternative parameterization for testing differences in parameters
      c and d in function 'formulaNLR()' was fixed.
MINOR UPDATES
  o Descriptions of 'formulaNLR()' and 'estimNLR()' were improved.

1.2.0.-2. (2018-02-15)
MAJOR UPDATES
  o Function 'genNLR()' can now also generate nominal data based on
    model specified in 'ddfMLR()'.
  o Argument 'parameters' in 'genNLR()' is no longer applicable.
  o Arguments 'a', 'b', 'c', 'd' were added into 'genNLR()' as parameters -
    discrimination, difficulty, guessing, inattention
  o Function 'genNLR()' can now also generate different underlying
    distributions for reference and focal group with arguments 'mu' and 'sigma'.
MINOR UPDATES
  o Email address of maintainer was changed.

1.2.0.-1. (2018-02-14)
MAJOR UPDATES
  o New function 'estimNLR()' to estimate parameters of NLR models
    was added. This function uses non-linear least squares or maximum
    likelihood method.
  o Function 'NLR()' now uses 'estimNLR()' for estimation of models
    parameters.
  o Function 'difNLR()' can now estimate models parameters with also maximum
    likelihood method.
  o Iteratively reweighted least squares (IRLS) method was added into 'estimNLR()'
    function. This option is not fully functional.
  o Bugs fixing:
    - Bug in 'plot()' for 'ddfMLR' class in matching criterion was fixed.
    - Bug in 'NLR()' was fixed. User-specified starting values are now
      available.
    - Bug in 'startNLR()' was fixed. Function runs even if there are not
      unique cuts for total scores/match.
    - Bug in log-likelihood calculation in 'estimNLR()' was fixed.
MINOR UPDATES
  o Some preparation for new estimation methods for F test in 'NLR()' was done.
  o Convergence failure warning is now item specific.
  o Warning and error messages were improved.


----------------------------------------
- Changes in difNLR 1.1.3 (2018-02-06) -
----------------------------------------

MAJOR UPDATES

  o Bugs fixing:
    - Bug in delta method in 'NLR()' function was fixed.
    - Bug in 'match' argument in 'difNLR()' function was fixed.
    - Bug in one dimensional 'Data' in 'difNLR()' function was fixed.
  o Specification of upper and lower asymptotes in
    'startNLR()' function was improved.
  o Functions 'ddfMLR()' and 'MLR()' can now handle also total score
    or other user-specified matching criterion.
  o S3 functions 'plot()' for class 'ddfMLR' can also handle total score
    or other user-specified matching criterion.

MINOR UPDATES

  o New auxiliary function 'checkInterval()' was added.
  o Size of labs and title was unified in graphical outputs of functions
    'difNLR()' and 'ddfMLR()'.


----------------------------------------
- Changes in difNLR 1.1.2 (2017-12-12) -
----------------------------------------

MAJOR UPDATES

  o CITATION file was added with reference to relevant paper.
  o Bug when loading group by group identificator was fixed.
  o Condition to check dimension of complete cases data was added.
  o Function 'residuals.difNLR()' was added.
  o S3 functions 'AIC()' and 'BIC()' for 'difNLR' class were
    updated.
  o S3 functions 'plot()', 'fitted()' and 'predict()' for 'difNLR' class
    can now handle also other matching criterions than 'zscore'.

MINOR UPDATES

  o Reference lists were updated.
  o README file was updated.

----------------------------------------
- Changes in difNLR 1.1.1 (2017-08-28) -
----------------------------------------

*** THIS IS A CRAN VERSION ***

MAJOR UPDATES

  o Bug in 'startNLR()' function for missing values was fixed.

MINOR UPDATES

  o Graphical representation for 'difNLR()' and 'ddfMLR()' functions was
    mildly updated and unified.

----------------------------------------
- Changes in difNLR 1.1.0 (2017-08-21) -
----------------------------------------

*** THIS IS A CRAN VERSION ***

MINOR UPDATES

  o Bug in plot.difNLR was fixed.
  o README file was updated.
  o Package documentation was updated.
  o Default value for 'constraints' arguments in 'NLR()' and 'formulaNLR()'
    functions were set to 'NULL'.
  o Default starting values were added into 'NLR()' function
    by 'startNLR()' function.

----------------------------------------
- Changes in difNLR 1.0.8 (2017-08-14) -
----------------------------------------

MAJOR UPDATES

  o Several bugs were fixed:
    - 'difNLR()' function can handle 'Data' with one column.
    - 'startNLR()' now works when 'match' argument is set.
    - Check input condition was fixed in 'formulaNLR()' function.
    - Delta method in 'NLR()' function.
  o Function 'startNLR()' was mildly updated.


----------------------------------------
- Changes in difNLR 1.0.7 (2017-08-10) -
----------------------------------------

MAJOR UPDATES

  o Item purification was implemented into 'ddfMLR()' function.
  o Anchor items were implemented into 'ddfMLR()' function.
  o Anchor items were implemented into 'MLR()' function.

MINOR UPDATES

  o Minor bug in 'logLik.ddfMLR()' function was fixed.
  o Documentation of 'difNLR()' was updated.

----------------------------------------
- Changes in difNLR 1.0.6 (2017-08-09) -
----------------------------------------

MAJOR UPDATES

  o Item purification was implemented into 'difNLR()' function.
  o Anchor items were implemented into 'difNLR()' function.
  o Anchor items were implemented into 'NLR()' function.

MINOR UPDATES

  o README file was updated.

----------------------------------------
- Changes in difNLR 1.0.5 (2017-08-09) -
----------------------------------------

MAJOR UPDATES

  o Datasets 'difMedical', 'difMedicaltest' and 'difMedicalkey'
    were renamed. Now they are 'MSATB', 'MSATBtest' and 'MSATBkey'
    from Medical School Admission Test in Biology.


MINOR UPDATES

  o LazyData is now available.
  o References were updated.
  o README file updated.

----------------------------------------
- Changes in difNLR 1.0.4 (2017-08-08) -
----------------------------------------

MAJOR UPDATES

  o New function 'formulaNLR()' was implemented. Function
    returns formula for NLR model for 11 predefined models and 4
    predefined DIF types to test. Model and DIF type can be also
    specified with constraints on parameters a, b, c and d.
  o Function 'NLR()' now handles 11 predefined models and 4
    predefined DIF types to test. Model and DIF type can be also
    specified with constraints on parameters a, b, c and d.
  o Function 'startNLR()' was edited to return starting
    parameters with different parameterization. It was also mildly
    changed to correspond to new version of 'NLR()' function.
  o Function 'difNLR()' can now handle also total score or other
    user-specified matching score.
  o Function 'constrNLR()' is no longer part of the 'difNLR'
    package.


MINOR UPDATES

  o References were updated.
  o Some minor bugs were fixed:
      - Items are no longer renamed by 'difNLR()' and 'ddfMLR()' functions.
      - Starting values are now correctly checked in 'difNLR()' function.
  o 'msm' package is now used for delta method in 'difNLR()' function

----------------------------------------
- Changes in difNLR 1.0.3 (2017-06-15) -
----------------------------------------

*** THIS IS A CRAN VERSION ***

MAJOR UPDATES

  o Bug of 'plot.ddfMLR()' for non-uniform DDF was fixed.
  o References were updated.

----------------------------------------
- Changes in difNLR 1.0.2 (2017-06-06) -
----------------------------------------

*** THIS IS A CRAN VERSION ***

MAJOR UPDATES

  o Bug of dimensions for parameter estimates of 'difNLR()'
    function was fixed.
  o Datasets 'GMAT' and 'GMATtest' were extended by 'criterion'
    variable which is intended to be predicted by test.
  o 'coef', 'logLik', 'AIC' and 'BIC' S3 methods were added for
    class 'ddfMLR'.

MINOR UPDATES

  o  Functions 'plot.ddfMLR()' and 'plot.difNLR()' were slightly
     improved.
  o  Updated error and warning handling in 'difNLR()' and 'ddfMLR()'
     functions.
  o  Description file was updated.
  o  Item names are now the same as in original data set.
  o  Readme file updated.

----------------------------------------
- Changes in difNLR 1.0.0 (2017-01-10) -
----------------------------------------

*** THIS IS A CRAN VERSION ***

MAJOR UPDATES

  o  New function ddfMLR() to detect Differential Distractor
     Functioning (DDF) with Multinomial Log-linear Regression
     (MLR) model.
     S3 methods for class 'ddfMLR' also added - 'print' and 'plot'.

  o  New function MLR() to calculate likelihood ratio statistic
     for detecting DDF with MLR model.

  o  The 'difNLR()' function can handle 6 generalized logistic
     regression models with option 'model'.

  o  Functions 'startNLR()', 'genNLR()' ans S3 methods for class
     'difNLR' were changed according 'difNLR()' function. S3 method
     'coef' was created.

  o  New functions NLR() and constrNLR() can now calculates DIF
     detection statistics and specify constraints for generalized
     logistic regression model.

  o  Function 'difNLR()' was edited to response to 'difR' package
     and its DIF detection functions.

  o  Function 'genNLR()' was changed to generate dataset from
     generalized logistic regression model with 8 parameters.

MINOR UPDATES

  o  The CITATION file was updated.

  o  Several typos were fixed.

  o  Some default options of input were changed.

  o  'AIC()', 'BIC()' and 'logLik()' S3 methods added to 'difNLR()'

----------------------------------------
- Changes in difNLR 0.2.0 (2016-11-09) -
----------------------------------------

*** THIS IS A CRAN VERSION ***

MAJOR UPDATES

  o S3 method 'plot' for class 'difNLR' was updated.

  o New option of 'test' in 'difNLR()' function was added. Possible
    choices are now 'F' for F-test and 'LR' for likelihood ratio test.

  o Choice of significant level 'alpha' was added into 'difNLR()'
    function with default option 0.05.

  o Six new data sets were added - scored 'GMAT' data, its unscored version
    'GMATtest' and its key 'GMATkey'. Scored 'difMedical' data set, its
    unscored version 'difMedicaltest' and key 'difMedicalkey'.

  o New function 'genNLR()' was added to generate scored (binary) data with
    model by 'difNLR'.

MINOR UPDATES

  o  Several typos were fixed.
