#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the Common Development
# and Distribution License Version 1.0 (the "License").
#
# You can obtain a copy of the license at
# http://www.opensource.org/licenses/CDDL-1.0.  See the License for the
# specific language governing permissions and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each file and
# include the License file in a prominent location with the name LICENSE.CDDL.
# If applicable, add the following below this CDDL HEADER, with the fields
# enclosed by brackets "[]" replaced with your own identifying information:
#
# Portions Copyright (c) [yyyy] [name of copyright owner]. All rights reserved.
#
# CDDL HEADER END
#

#
# Copyright (c) 2012, Regents of the University of Minnesota.  All rights reserved.
#
# Contributors:
#    Ryan S. Elliott
#    Ellad B. Tadmor
#    Valeriu Smirichinski
#

#
# Release: This file is part of the openkim-api-v1.1.0 package.
#


=== openkim-api-v1.1.0 =========================================================

* Documentation updates

* Introduced the use of THIS_FILE_NAME in Fortran examples instead of __FILE__.
  This allows for easily setting the value of THIS_FILE_NAME to something
  appropriate (short) when the default preprocessor value of __FILE__ is longer
  that 132 characters (the max line length for Fortran)

* Changed KIM standard time unit from `fs' to `ps' to be consistent with LAMMPS
  `metal' unit system

* Changed KIM_COMPUTE and KIM_NOT_COMPUTE to KIM_COMPUTE_TRUE and
  KIM_COMPUTE_FALSE, respectively

* Removed KIM_API_MAX_NEIGHBORS; the api no longer puts any restriction on the
  number of neighbors for an atom

* Updated api and examples to always `return' with an error code instead of
  `exit' or `stop'.  This allows the Test to handle errors and is a better
  convention for error handling

* Added KIM_STATUS_MODEL_UNSUPPORTED_CONFIGURATION for cases where a
  configuration is identified at run time as unsupported

* Removed requirement for a trailing `/' in environment variables (such as
  $KIM_DIR)

* Added make warning if `make' is invoked from a Model directory when static
  linking is being used.

* Added `make examples-force' target

* `make examples' only copies files; it no longer also compiles everything

* Changed all call-back interfaces (model_init, model_reinit, model_compute,
  model_destroy) to be consistent: integer functions (in Fortran speak).  Also
  updated examples and templates to conform to this new interface.

* Added get_model_partcl_typs() and get_test_partcl_type() service routines
  Removed get_partcl_types() routine.

* Added ability of a Model/Model Driver to set its particle type codes at runtime

* Added support for .kimignore files in MODELs, MODEL_DRIVERs, and TESTs directories

* Added `Temperature' to standard.kim for "temperature dependent" Models

* New Model Driver interface supports reading from any number of files (not strings)

* Support for 001-999 particle types in Model Drivers

* Use $(strip ) function to avoid difficult trailing space problem in make files

* Rearranged and simplify compiler settings files (KIM_API/*_compiler_settings.mk)

* Changed CPPLIBFLAG to LINKLIBFLAG in Make files to better represent its use

* Many improvements to Make-system portability

* Carriage returns are now striped from kim and parameter files during Make

* Improvements to the vc_forces_numer_deriv verification check

* Bug fixes for KIM_API_init() matching

* Significant clean-up/rearrangement of core api code

=== openkim-api-v1.0.1 =========================================================


* Bug fix to ex_model_Ne_P_fastLJ

* Bug fix to ex_model_Al_PF_ErcolessiAdams (and associated template file)

* Documention updates


=== openkim-api-v1.0.0 =========================================================


* Moved all examples to EXAMPLEs directory and added `make examples' target.

* Renamed all example Model Drivers, Models, and Tests.  Now have `ex_' prefix.

* Renamed nearly all API functions to improve readability and comprehension.

* Changed KIM_API_get_half_neigh and KIM_API_get_full_neigh to just
  KIM_API_get_neigh.

* Total re-work of unit handling for the API.

* Added KIM_API_model_info() function for Tests to use for discovering what a
  Model supports.

* Added KIM_API_getm_* and KIM_API_setm_* routines to get/set multiple arguments
  in one function call.

* Added KIM_API_sting_init() for use by Tests that generate their KIM descriptor
  file "on-the-fly".

* Added process_dEdr and process_dE2dr2 approach for calculating general
  properties.  Currently automatic support for `virial', `particleVirial', and
  `hessian' is available.

* Added "unsymmetric half neighbor lists" (numberContributingParticles).

* Added model/test buffers for use by Model and Test, respectively.

* Improvements in dynamic linking setup.

* Examples additions, improvements, and bug fixes.

* Bug fixes.


=== openkim-api-v0.2.0 =========================================================


* Updated documentation

* Added KIM_API_report_error() service function and updated all examples
  and templates to use this function.

* Added KIMstatus.h which contains definitions of KIM status codes.

* Added KIM_API_status_msg() service routine to return a string describing a given
  status code.

* Updated messages printed to kim.log file to be more informative.

* Model KIM descriptor files are now incorporated into the Model's binary library
  file.  This means that the file is no longer required at run time and that the
  Model must be recompiled after changes to the descriptor file.

* Added Model Driver Templates

* Added two Model Drivers and four Models based on the Model Drivers

* Removed example model_Ar_P_MMorse in favor of the Morse Driver and its Models

* Added support for Model Drivers

* Bug fixes


=== openkim-api-v0.1.2 =========================================================


* Fixed a number of bugs in the examples related to running on 64bit machines

* Fixed a bug in kim_api_get_nbc_method_f() related to running on 64bit
  machines


=== openkim-api-v0.1.1 =========================================================


* Fixed memory handling bug associated with the service functions
     KIM_API_get_listAtomTypes()
     KIM_API_get_listParams()
     KIM_API_get_listFreeParams()
     KIM_API_get_listFixedParams()
     KIM_API_get_NBC_method()

* Fixed bug in test_**_free_cluster.F90

* Renamed `README.git' to `README_GIT' to avoid confusion with the
  git convention that the extension `.git' refers to a bare repository


=== openkim-api-v0.1.0 =========================================================


* Added TEMPLATE files to help users create their own KIM Models.

* Added a number of example Models and Tests to help users understand how to
  implement their own openkim-api compliant codes.

* Added support for ATOM/PARTICLE types

* Added support for Models to publish their parameters

* Added support for Models to define a `reinit' function for use when their
  parameters are changed by a Test.

* Improved the Makefile system in general (although, more needs to be done)

* Added support for neighbor list and boundary conditions (NBC)

* Added support for dynamic linking

* Updated documentation

* Added documentation to the standard.kim file which now describes in detail
  the format and content of KIM descriptor files.

* Added README files to every directory.  These files provide a short
  (hopefully helpful) description of the contents of the directory)


=== openkim-api-v0.0.0 =========================================================


The initial release of the openkim-api package.  This was first made available
to participants at the Inaugural Openkim Workshop held in San Diego, CA on
Feb. 26-27, 2011.
