lmfit-6.1, released 2dec15:

- docs:
  - new man page lmfit(7)
  - 'BUGS' section in man pages
- code cleanup:
  - lmcurve_tyd in separate source file

lmfit-6.0, released 24nov15:

- API changes:
  - a few more 'const' qualifiers in lmmin and lmcurve.
  - new wrapper function lmcurve_tyd, for use in GROMACS
- code cleanup:
  - further unify code layout
  - use temporary variable for readability in lmcurve (suggested by T. Klauser)

lmfit-5.3, released 24nov15:

- autotools:
  - set default optimization -O3
- monitoring:
  - detect if norm is not finite, new outcome code 12 = "found nan"
  - print parameters before invoking callback functiion
- docs:
  - correct typo in lmmin(3)
- code cleanup:
  - uniform code layout, starting from clang-format
  - correct and improve comments, especially in qrfac
  - uppercase matrix names
- testing:
  - new unit test directory test/, for development purposes only

lmfit-5.2, released 23oct14:

- bug fix:
  - correct man page (5.0 API change)
- acceleration(?):
  - revert to just one malloc for all workspaces, now based on a char array

lmfit-5.1, released 29aug13:

- bug fix:
  - FILE** initialization from &stdout was not standard compliant
    (report by Jan Krieger, cf http://stackoverflow.com/questions/18505530);
    now FILE* initialized to NULL
- code cleanup:
  - better wrapper for "extern C" declaration

lmfit-5.0, released 9aug13:

- API changes:
  - removed callback function for printout
  - removed control structure for printout; some par's go to lm_control_struct
  - pivoting can no longer be switched off
  - from now on, addition of par's to lm_control_struct is not an API change
- bug fix:
  - correct memory leak introduced by reversal of mallock trick
  - restore default scale_diag=1
- monitoring:
  - improved text messages ("success" -> "converged", we should not say more)
- demo: reworked examples
  - new example nonlin1: solution of 2 nonlinear equations in 2 variables
  - example surface1 improved and included in man page lmmin(3)
  - otherwise testsuite started as new project fittest
- packaging: configure now supports pkg-config

lmfit-4.0, released 16jul13:

- binary library renamed: lmmin -> lmfit
- API changes:
  - lmcurve.h no longer depends on lmmin.h, but only on new lmstruct.h
  - low-level API lmdif is removed (code integrated in lmmin)
  - lmcurve_fit -> lmcurve
  - new control parameter 'pivot' (default: pivoting is used, as before)
  - new structure lm_princon_struct, generalizing printflags
  - in consequence thereof, new parameter lists for lmcurve and lmmin
- code cleanup:
  - ensure strict C90 compliance: no C++ comments; replace non-standard
    struct assignement (reported by Elio Mazzocca, using LCC)
  - revert malloc trick of release 3.4 (readability is more important)
  - source code comment blocks moved around, to reduce duplications
- build scripts cleanup:
  - demo programs are no longer installed to $bindir
  - configure.ac: cleaned up, and inserted comments
- documentation:
  - new web location: apps.jcns.fz-juelich.de/lmfit
  - new entry page (dokuwiki) instead of man page
  - man page split and largely rewritten: lmcurve(3), lmmin(3)

lmfit-3.5, released 3feb13:

- changed overall license to FreeBSD to facilitate inclusion in Linux
  distributions (request by M. Hroncok)
- directory doc renamed man

lmfit-3.4, released 21jan13:

- only one malloc call to allocate all arrays (proposal by F. Polchow)
- liblmmin_la_LDFLAGS += -lm (required by Ubuntu, report by J. M. Agosta)
- there is now an alternative ruby binding, using inline instead of swig
  (contribution by I. Drozdov)
- long message for degenerate case now suggests increasing epsilon
  (suggestion by Nghia Ho)

lmfit-3.3, released 12sep12:

- moved "int" declarations to top of lm_printout_std() and lmmin()
  (required by Visual Studio 2005: bug report M. Beek)
- corrected typo 0.55 -> 0.5 (bug reports M. Kardas and D. Pescia)
- man pages now produced by make; finally got rid of dmake
- untabified code (hint by W. Pimenta)

lmfit-3.2, released 28mar10 (preview 27mar10):

- shared library is given correct version number (set in configure.ac)
- man page lmfit(3) is copied by dmake to lmmin(3) and lmcurve_fit(3)

lmfit-3.1, released 12mar10:

- debian directory not part of tgz distribution
- temporarily removed lmmin.3 (was symlink -> lmfit.3)

lmfit-3.0, released 2mar10 (preview 27feb10):

- for parameter close to zero, change step width for calculation of jabobian
- outer iteration counter starting at zero (C style)
- replace BUG by LMFIT_DEBUG_MESSAGES and .._MATRIX to allow control by -D
- remove redundant calculation by exchanging workspaces and lm_lmpar output
- eliminate unncessary wa1 = -wa1 computation
- avoid passing wa3 to wa1, choose better names for work arrays in lm_par
- migrate documentation from brain-damaged asciidoc to pod
- rewrote interface documentation
- API changes:
  -- eliminate lm_initialize_control, provide defaults for float and double
  -- separate limits and status records
  -- separate generic minimization and one-dimensional curve fitting
  -- simplify the latter
- replace curve-fitting demo
- provide surface-fitting demo (correspondence M. Rudolphi)
- provide vector minimization demos
- test for fnorm<=LM_DWARF, renumbered info values 0, 10, 11

lmfit-2.6, released 29sep09:

- nfev incrementation even if printout=0 (bug report C. Tanner)
- correct t->tvec, y->yvec in man page  (bug report C. Tanner)

lmfit-2.5, released 20sep09:

- malloc==NULL ? (suggestion R. Strickland)
- allow printout=NULL (suggestion J. Lodewyck)
- improve infmsg (correspondence B. McHoull)
- eliminate some static variables (p25, p5, p75, ..)
- eliminate function data types; they obscure more than they help

lmfit-2.4, released 27jul08:

- clearer file headers
- clearer licence (everything has ever been in the public domain)
- machine-dependent arithmetic constants from float.h (suggestion M. Bydder)
- minor improvements of comments

lmfit-2.3, released 5apr08:

- fixed bug sf#1817631: replaced confusing variable names in lmmin.c:lm_qrsolv()
- accepted feature request 1814970: inclusion protection in headers
- accepted feature request 1814976: cplusplus wrapper in headers
- fixed bug sf#1868399: typos in debug messages
- accepted proposal from M. Bydder:
     improved calculation of differences in lmmin, lines 415-417
- reverted comments in lmmin.c to pure C style
- improved documentation of interfaces

lmfit-2.2, released 20sep07:

- no change log has been maintained,
  there are just the sourceforge release notes