kim-api  2.1.0+v2.1.0.GNU
An Application Programming Interface (API) for the Knowledgebase of Interatomic Models (KIM).
NEWS
Go to the documentation of this file.
1 #
2 # CDDL HEADER START
3 #
4 # The contents of this file are subject to the terms of the Common Development
5 # and Distribution License Version 1.0 (the "License").
6 #
7 # You can obtain a copy of the license at
8 # http://www.opensource.org/licenses/CDDL-1.0. See the License for the
9 # specific language governing permissions and limitations under the License.
10 #
11 # When distributing Covered Code, include this CDDL HEADER in each file and
12 # include the License file in a prominent location with the name LICENSE.CDDL.
13 # If applicable, add the following below this CDDL HEADER, with the fields
14 # enclosed by brackets "[]" replaced with your own identifying information:
15 #
16 # Portions Copyright (c) [yyyy] [name of copyright owner]. All rights reserved.
17 #
18 # CDDL HEADER END
19 #
20 
21 #
22 # Copyright (c) 2013--2019, Regents of the University of Minnesota.
23 # All rights reserved.
24 #
25 # Contributors:
26 # Ryan S. Elliott
27 # Ellad B. Tadmor
28 #
29 
30 #
31 # Release: This file is part of the kim-api-2.1.0 package.
32 #
33 
34 
35 === kim-api-2.1.0 =============== 16Jul2019 ====================================
36 
37 * Added new KIM::SimulatorModel interface providing programatic support to
38  simulators for packaging of parameter files, input commands, and metadata
39  necessary to run a simulator's native potentials.
40 
41 * Added new KIM::Collections interface (and the supporting extensible
42  enumerations KIM::Collection and KIM::CollectionItemTypes) providing
43  programatic access to the KIM API Collections and its configuration settings.
44  (This included a refactor and removal of old_KIM_API_DIRS.*.)
45 
46 * Convert from old 'models' to 'portable-models' nomenclature for KIM API
47  collections, including environment variables, configuration file, etc. (For
48  backward compatibility, the old configuration file format is still accepted.)
49 
50 * Added support for Metadata files to (internal) KIM::SharedLibrary and
51  programatic access to these files from the new KIM::Collections interface.
52 
53 * Automatically add standard openkim.org metadata files (kimspec.edn,
54  kimprovenance.edn, and kimcite-*.bib) to an item's shared library if they
55  exist.
56 
57 * Significant documentation updates to describe the new interfaces as well as
58  changing to the the Portable Model (PM) and Simulator Model (SM) terminology.
59 
60 * Added explicit documentation of Fortran interfaces for routines called by the
61  KIM API (ModelCreate, ModelDestroy, GetNeighborList, etc.).
62 
63 * Added mention of "Toy Models" to documentation.
64 
65 * Added data-type error checking for Portable Model parameter get/set routines;
66  Thanks to Daniel Schopf.
67 
68 * Bug fixes and improvements to kim-api-collections-management script
69 
70 * Added support for Include-What-You-Use (IWYU).
71 
72 * Added (internal) copy of edn-cpp parser for use with SMs.
73 
74 * Updated existing examples as necessary and added SM example.
75 
76 * Added new "unit-test" examples of simulators using the Collections and SM
77  interfaces.
78 
79 * Improvement to pkgconfig support; Thanks to Christoph Junghans.
80 
81 * Added new tests to CI, based on INSTALL file.
82 
83 * Updates create-package script and added run-cmds-from-install script.
84 
85 * Added .clang-format-hook-ignore file and mechanism (specifically for edn-cpp).
86 
87 * Updates to better support binary installation on various systems.
88 
89 * Added CDDL headers to files that did not have them.
90 
91 
92 === kim-api-2.0.2 =============== 28Mar2019 ====================================
93 
94 * Transition from 'kim-api-v2' naming to 'kim-api' for better alignment with
95  open source conventions
96 
97 * Added a simulator model example
98 
99 * Refactored support for simulator models: separated from models in collections.
100  Updated collections-management utility appropriately
101 
102 * Updated calls to scanf() for better security
103 
104 * Refactored old_KIM_API_DIRS.cpp to remove calls to 'exit()'
105 
106 * Added build options to set system collection directories
107 
108 * Added support for colon-separated list of directories for user and system
109  collections
110 
111 * Added '--version' flag to utilities
112 
113 * Update bash completion to work with old and new bash
114 
115 * Improve robustness of creat-package script
116 
117 * Updated badges to point to 'devel' branch & create-package to change to
118  'master' branch for release commit
119 
120 * Added coverity & codecov badges to README.md
121 
122 * Added vX.Y.Z-git tags to git repo and updated create-package script
123 
124 * Added NEWS file to Doxygen documentation & updated doxygen settings
125 
126 * Improved version build metadata string using "git describe"
127 
128 * Updated link flags for codecov
129 
130 
131 === kim-api-v2-2.0.1 ============ 27Feb2019 ====================================
132 
133 * Fix bug in KIM::SemVer::ParseSemVer()
134 
135 * Various minor fixes to address issues identified by Coverity Scan
136 
137 * Fix version string in libkim-api-v2.pc to conform to RPM schema
138 
139 * Added advanced CMake options for compilers used to build items after install
140 
141 * Added item install prefix CMake variables to cache; helps with packaging
142 
143 * Remove dead code in top level CMakeLists.txt
144 
145 
146 === kim-api-v2-2.0.0 ============ 06Feb2019 ====================================
147 
148 * Update main documentation.
149 
150 * Added function level documentation with cross-references and input/output
151  argument descriptions.
152 
153 * Added Known() member function to extensible enumerations.
154 
155 * Extensible enumeration default constructors now create uninitialized objects.
156 
157 * Rename C++ *.String() routines to *.ToString.
158 
159 * Added 'recursive' to all Fortran routines (for better thread safety).
160 
161 * Added support files for readthedocs.
162 
163 * Additions and fixes for collections-management utility.
164 
165 * Travis CI configuration updates.
166 
167 * Avoid some compiler warnings from clang.
168 
169 * Various CMake fixes/adjustments.
170 
171 * Various bug fixes in api code.
172 
173 
174 === kim-api-v2-2.0.0-beta.3 ===== 07Dec2018 ====================================
175 
176 * Updated and added examples to work with and demonstrate api changes/additions
177 
178 * Implemented new KIM::Model::IsRoutinePresent interface to facilitate
179  backward compatibility
180 
181 * Updated SpeciesName entries for recently renamed periodic table elements
182 
183 * Added WriteParameterizedModel Routine and assoc. code
184 
185 * Added Extension Routine to allow for non-standard extensions
186 
187 * Added Push/Pop Default Verbosity to KIM::Log
188 
189 * Changed Release default LogVerbosity to INFORMATION
190 
191 * Added ctest test for items to check that shared libraries can be opened
192 
193 * Improvements to Collections-Management behavior
194 
195 * Removed unnecessary header files
196 
197 * Updated travis.ci configuration
198 
199 * Refactored some backend implementation to improve maintainability, including
200  significant new KIM_SharedLibrarySchema interface
201 
202 * Improvements to CMake build system
203 
204 * Updated create-package script
205 
206 * Updated documentation
207 
208 
209 === kim-api-v2.0.0-beta.2 ======= 28Oct2018 ====================================
210 
211 * CMake build and test replaces custom Makefiles; added travis, gitlab CI
212  A big thank you to Richard Berger and Christoph Junghans for their major
213  contribution in getting the KIM API package converted to CMake.
214 
215 * Using standard pkg-config setup instead of custom kim-api-v2-build-config
216 
217 * Major restructuring of the Fortran bindings.
218 
219 * Make ModelRefresh and ModelComputeArgumentsDestroy functions optional
220 
221 * Add Model routine and callback prototypes in KIM_Functions header
222 
223 * Add a required unique name field for parameters.
224 
225 * Refactoring of neighbor list hints. The half-list hint had a fatal flaw
226  which required its removal.
227 
228 * Significant refactoring of the logging macros in C and C++. Complete removal
229  of all preprocessing for Fortran.
230 
231 * Redesign of release and packaging script and process.
232 
233 * Added a couple of new models that illustrate various features of the api.
234 
235 * Removed v1 to v2 porting guide.
236 
237 * "Summary of Differences Between kim-api-v1 and kim-api-v2" docs page now
238  contains tables with a complete listing of all kim-api identifiers in all
239  languages and their mappings between one-another.
240 
241 * Complete update of documentation. Rework and correct definition of
242  partialVirial and partialParticleVirial.
243 
244 * Added emacs cc-mode settings
245 
246 * Added clang-format settings, scripts, and git-hooks for C/C++
247 
248 * Complete review of C++, C, and Fortran bindings for consistency
249 
250 * Many other small and not-so-small changes.
251 
252 
253 === kim-api-v2.0.0-beta.1 ======= 07Jul2018 ====================================
254 
255 * Fix memory leak and uninitialized variables id'ed by coverity scan.
256 
257 * Update docs and porting guide for neighbor list hints changes.
258 
259 * Implement neighbor list hints (paddingNeighbor & halfList); update examples.
260 
261 * Add SetArgumentPointer(xxx * const ptr) to C++ bindings for consistency.
262 
263 * Add C++ LennardJones_Ar stand-alone model example.
264 
265 * Fix compatibility checking code in example simulators.
266 
267 * Update LennardJones612 example to use 1/2 list short-circuit mechanism.
268 
269 * Fix collections-info to set log verbosity to debug.
270 
271 * Use NULL consistently to initialize pointers in implemenation code.
272 
273 
274 === kim-api-v1.9.7 ============== 07Jul2018 ====================================
275 
276 * Check for errors from mkdir() in KIM_API_DIRS.cpp (id'ed by coverity scan).
277 
278 * Fix support for required-compute of forces in utility-forces-numer-deriv.
279 
280 * Fix identifiers in bash-completions.
281 
282 * Added --log option to CM 'list' command.
283 
284 * Use fixed seed for random number generator in utility-forces-numer-deriv.
285 
286 
287 === kim-api-v2.0.0-beta.0 ======= 26Jun2018 ====================================
288 
289 * Added a 'Guide for porting content from KIM API v1 to v2' to documentation
290 
291 * Documentation updates and improvements
292 
293 * Implemented extensive error checking and logging within the API
294 
295 * Separated Model object into ComputeArguments and Model
296 
297 * Many refinements and corrections to the new API
298 
299 
300 === kim-api-v1.9.6 ============== 26Jun2018 ====================================
301 
302 * Updated INSTALL file
303 
304 * Added 'install OpenKIM_with_history' and 'install --force' options to the
305  collections-management utility
306 
307 * Collections-management utility now cleanly handles an unaccessible openkim.org
308 
309 * Fixed bugs and made improvements to build system
310 
311 
312 === kim-api-v1.9.5 ============== 12May2018 ====================================
313 
314 * Update build system to support parallel builds (make -j).
315 
316 * Fixed bug in collections-management for "install OpenKIM" option.
317 
318 * Update INSTALL file
319 
320 
321 === kim-api-v1.9.4 ============== 09Apr2018 ====================================
322 
323 * Added '--interactive' option to collections-management utility.
324 
325 * Added Travis-CI support through GitHub.
326 
327 * Fixed bugs in collections-management utility.
328 
329 * Fixed bugs in build system.
330 
331 
332 === kim-api-v1.9.3 ============== 10Feb2018 ====================================
333 
334 * Major additions to options supported by the kim-api-v1-collections-management
335  utility. Added options include:
336 
337  - list --with-version
338  - install CWD
339  - install environment
340  - reinstall
341  - remove-all
342 
343  Additionally, items can now be installed from a source directory on the local
344  file system. Also, multiple items can be listed on a single command line.
345 
346 * Added a kim-api-v1-activate/deactivate utilities (available when installed to
347  non-standard locations). These add/remove to PATH and setup the bash
348  completions.
349 
350 * Added bash completions for user utilities
351 
352 * Added support for the sysconfdir variable to the build system
353 
354 * Updated utilities to more closely follow docopt.org specifications.
355 
356 * Model/Driver 'make install-*' now respect the DESTDIR environment variable.
357 
358 * Added support for Model/Driver install to the environment collection.
359 
360 * Add tracking of Parameterized Model parameter file file-names within the
361  generated model shared library.
362 
363 * Rename vc_* examples to utility_* to avoid confusion with new openkim.org
364  Verification Checks.
365 
366 * Various minor typo and bug fixes.
367 
368 
369 === kim-api-v2.0.0-alpha.0 ====== 18Jan2018 ====================================
370 
371 * Complete rewrite of the kim-api package. Released as "alpha" to solicit
372  feedback from the user community. Changes (possibly incompatible) will be
373  made based on user experience.
374 
375 * Major changes are summarized below.
376 
377 * NBCs have been eliminated.
378 
379 * KIM descriptor files have been eliminated.
380 
381 * A new memory management scheme has been adopted.
382 
383 * The api is now much more consistent within each language (C++, C, Fortran)
384  binding.
385 
386 * Improved logging facilities and error messages.
387 
388 * Added Doxygen generated documentation. (See the docs for more details on
389  this version of the kim-api and on the differences between v1 and v2.)
390 
391 
392 === kim-api-v1.9.2 ============== 08Oct2017 ====================================
393 
394 * Update scripts to use xz compressed tarballs (txz) instead of gz (tgz). This
395  is for compatibility with the recent removal of tgz support on openkim.org.
396 
397 
398 === kim-api-v1.9.1 ============== 27Sep2017 ====================================
399 
400 * Adjustment to build config flags to make cross-language compiling a bit more
401  flexible
402 
403 * Fix subtle Fortran implementation bug associated with non-short-circuit
404  conditional fortran behavior
405 
406 * Remove 'make install-set-default-to-v1' target and update INSTALL instructions
407  No longer have kim-api-build-config, etc. Now they explicitly include the
408  major version number. For example, kim-api-v1-build-config
409 
410 * Make some shell code more portable
411 
412 * Fixed some other installation details
413 
414 * Fixed missing semi-colon in makefile
415 
416 
417 === kim-api-v1.9.0 ============== 09Sep2017 ====================================
418 
419 * Added collections-management user utility to manage build and install
420  of OpenKIM Models and Model Drivers
421 
422 * Added support for "Simulator Models"
423 
424 * Dramatically simplify build system by removing supported scenarios.
425  + Removed static-link build option
426  + Removed "in-place" build scenario
427  + Added support and use of the libexec directory to distinguish between
428  user executable utilities and program executable utilities
429 
430 * Incorporate fix to configure script contributed by Christoph Junghans
431 
432 * Fix minor bugs in KIM_API_DIRS
433 
434 
435 === kim-api-v1.8.2 ============== 17Apr2017 ====================================
436 
437 * Fixed issues reaised by Tobias Brink (this==NULL; and `find` portability)
438 
439 
440 === kim-api-v1.8.1 ============== 28Mar2017 ====================================
441 
442 * Added additional deprecations in prep. for kim-api-v2.0.0
443 
444 * Fixed other minor bugs in create_package script and build-config.cpp
445 
446 * Fixed bug in Makefile.ParameterizedModel
447 
448 * Fixed formatting error in Makefiles created by build-config utility
449 
450 * Fixed bug in ex_model_Ar_P_MLJ_CLUSTER_C example model
451 
452 
453 === kim-api-v1.8.0 ============== 17Jan2017 ====================================
454 
455 * Deprecated significatant features and methods in prep. for kim-api-v2.0.0
456 
457 * Updated `build-config' utility with more flexible options
458 
459 * Removed `KIM_LINK = dynamic-link' option of build system
460 
461 * Modified/Fixed/Improved the configuration and build system
462 
463 * Added `collections-info' utility for querying environment variables,
464  user configuration files, and lists of models and model drivers in the
465  collections.
466 
467 
468 === kim-api-v1.7.3 ============== 02Jun2016 ====================================
469 
470 * Added a `configure' script for setting up Makefile.KIM_Config
471 
472 * Added support for environment-variable-collection
473 
474 * Added support for user_config_file_dir_name setting
475 
476 * Documentation update/improvements
477 
478 * Minor improvements to error messages
479 
480 * Added `make add-OpenKIM' feature
481 
482 * Added `make help' feature
483 
484 * Added release dates to NEWS file
485 
486 * Bug fixs
487 
488 
489 === kim-api-v1.7.2 ============== 25Jun2015 ====================================
490 
491 * Updated copyright years in files
492 
493 * Rewrite of INSTALL file to provide a significantly improved description and
494  instructions for build and installation of the KIM API
495 
496 * Fix error checking bug in ex_test_Ar_multiple_models Test
497 
498 * Improve the build and install process to better follow standard conventions
499  for library soname values.
500 
501 * Increased the maximum number of species supported by the example Tests to 200
502 
503 * Fixed bug in example Tests related to maximum number of supported species
504 
505 * Updated 'make clean' so that it removes all old library files in the source
506  directories
507 
508 * Fixed default make target for Parameterized Models
509 
510 * Fixed a bug in the installation process associated with the use of DESTDIR
511 
512 * Fixed a regular expression error in the build system
513 
514 * Fixed memory leak in internal KIM API code
515 
516 * Added sanity check to make sure that the 'xxd' utility is available
517 
518 * vc_forces_numer_deriv now outputs configuration energy
519 
520 * Documentation updates
521 
522 
523 === kim-api-v1.7.1 ============== 02Dec2014 ====================================
524 
525 * Bug fix for build of parameterized Models
526 
527 * Minor documentation update
528 
529 
530 === kim-api-v1.7.0 ============== 21Nov2014 ====================================
531 
532 * Use 'xxd' utility for encapsulation of KIM descriptor files and param. files
533 
534 * Added LINKSOPATH variable to build system for advanced system install options
535 
536 * Added KIM_API_get_kim_str_len() routine
537 
538 * Fix inconsistencies in ex_test_Ar_multiple_models
539 
540 * remove build system dependency on 'ed' program
541 
542 * Update 'make add-*' mechanism to use permanent url's for openkim.org items
543 
544 * Fix bugs and minor improvements to build system
545 
546 * Minor improvements to error messages
547 
548 * Updates to documentation
549 
550 
551 === kim-api-v1.6.3 ============== 18Aug2014 ====================================
552 
553 * Fixed install to recognize := and = in Makefiles
554 
555 * Removed use of non-standard strtok_r()
556 
557 * Fixes to ex_model_Cu_PF_Johnson & model_El_PF_Template.c
558 
559 * Fixes build system
560 
561 
562 === kim-api-v1.6.2 ============== 11Aug2014 ====================================
563 
564 * Correct KIM_API_Versions in template ".kim" files
565 
566 * Update make clean target for Model Drivers and Models
567 
568 * All template ".kim" files now generated from "legos" in git repo
569 
570 
571 === kim-api-v1.6.1 ============== 08Aug2014 ====================================
572 
573 * Updates to Model Driver and Model template files (in docs/templates/)
574 
575 * Changed the internal mechanism for handling parameter files to remove a
576  security hole associated with the use of tmpnam().
577 
578 * Revise kim.log entries to be more informative and clear
579 
580 * Bug fixes in build system, examples, and build system
581 
582 * Other small documentation and code improvements
583 
584 
585 === kim-api-v1.6.0 ============== 28Jul2014 ====================================
586 
587 * Documentation updates.
588 
589 * Model Driver Template and training model examples are now generated from a
590  single consistent "lego" file. Training examples are not included in
591  official release tarballs.
592 
593 * Add SemVer version routines to the KIM API. ".kim" files now require a
594  KIM_API_Version line to indicate the Model/Simulator compatibility.
595 
596 * Change terminology from "Particle Types" to "Particle Species" for clarity
597  and uniformity with the rest of the OpenKIM project. (See
598  KIM_API_get_model_species(), and similar routines.)
599 
600 * Changed KIM API routines that output strings. This avoids output of arrays
601  of strings, which are unnatural in C/C++ and allows for more natural handling
602  of string arguments in Fortran. (See: KIM_API_get_NBC_method(),
603  KIM_API_get_params(), and similar routines.)
604 
605 * Simulators and OpenKIM Tests now should use the "kim-api-build-config"
606  utility in order to obtain appropriate compiler and linker flags for building
607  against the KIM API.
608 
609 * Changed CCFLAGS to more standard CFLAGS Make variable.
610 
611 * Build system now provides ability to download Model Drivers and Models
612  directly from openkim.org.
613 
614 * Change package name from "openkim-api" to "kim-api".
615 
616 * Rename this file (CHANGELOG) to NEWS, to better follow convention.
617 
618 * A complete restructuring of the package directory layout has been performed
619  in order to conform to more standard practices and to better reflect the
620  intended behavior and use of the package components.
621 
622 * Model Drivers now specify the name of their ".kim" file template in their
623  Makefile. The conventional name for these files now ends in ".kim.tpl".
624 
625 * Model ".kim" file name is now specified in the Makefile and can be anything
626  the developer desires.
627 
628 * Remove deprecated KIM_API_init() routine.
629 
630 * Remove deprecated Fortran Cray pointer support.
631 
632 
633 === openkim-api-v1.5.0 ========== 16Jul2014 ====================================
634 
635 * Documentation updates, including an extensive discussion of the installation
636  process in INSTALL.
637 
638 * Update examples to use KIM_API_file_init() and name their ".kim" file
639  "descriptor.kim" in accordance with the new convention of the openkim.org
640  processing pipeline.
641 
642 * Deprecate KIM_API_init() and add KIM_API_file_init() to replace it as the
643  primary openkim.org Tests should initialize the KIM API and specify their KIM
644  descriptor files.
645 
646 * Portability fixes for the make system
647 
648 * Move away from naming various files based on the item (Model Driver, Model,
649  Test) name. Instead establish standard names for each item type.
650 
651 * Added Makefile.Version to provided the make system with version information
652  and set policy (based on SemVer 2.0.0) for how, when, and why to update the
653  version.
654 
655 * Significant updates to the make system. Primarily associated with
656  installation of the KIM API to a system-wide location, and its use once
657  installed there.
658 
659 
660 === openkim-api-v1.4.1 ========== 19May2014 ====================================
661 
662 
663 * Added additional compiler flags to support differences between GCC and INTEL
664 
665 * Fixed examples that used set_data when they should have used set_method.
666 
667 * Added LDLIBS flag in split functionality of LDFLAGS variable more
668  appropriately. This is more inline with standard Makefile practice.
669 
670 * Now 32Bit and 64Bit settings add -m32 and -m64 compiler flags automatically
671 
672 * Added KIM_MAKE_VERBOSITY setting to Make system
673 
674 * Updates to README, INSTALL, and Templates
675 
676 * Make system improvements and fixes
677 
678 * Added checks for known buggy compilers
679 
680 * Updated and corrected documentation
681 
682 
683 === openkim-api-v1.4.0 ========== 26Feb2014 ====================================
684 
685 
686 * Improvements to robustness and efficiency of MAKE_SYSTEM
687 
688 * Updated copyright years in files
689 
690 * Updated documentation to reflect new Fortran 2003 bindings
691 
692 * Converted DOCS/TEMPLATES/ to Fortran 2003 bindings
693 
694 * Made significant improvement to neighbor list handling in example Tests
695 
696 * Made some minor improvements to example Models and Model Drivers
697 
698 * Converted example Models, Model Drivers, and Tests to Fortran 2003 bindings
699 
700 * DEPRECATED all Cray pointer bindings and associated code
701 
702 * Added Fortran 2003 bindings
703 
704 
705 === openkim-api-v1.3.1 ========== 20Jan2014 ====================================
706 
707 
708 * Fixes to make system to avoid undefined `directoryPATH()' symbol with INTEL
709  compilers and CYGWIN systems
710 
711 * Added notes to INSTALL for gun 4.4 and CYGWIN systems
712 
713 * Fixes to make system to work with gnu make 3.81 (avoid segmentation faults)
714 
715 
716 === openkim-api-v1.3.0 ========== 10Dec2013 ====================================
717 
718 
719 * change KIM_KEY_STRING_LENGTH to 128 (despite git log that says 257)
720 
721 * Split .kim files and parameter files into chunks to stay under C++ supported
722  string literal length.
723 
724 * Fix for dynamic-link compile option
725 
726 * Some minor code fixes/updates and documentation updates
727 
728 * Updates to `make install'
729 
730 * Fix bug in FCC example Tests
731 
732 * Fix/Update Templates
733 
734 * Fix a bug in Makefile.Test
735 
736 * Added KIM_API_get_rank and KIM_API_get_rank_by_index functions
737 
738 
739 === openkim-api-v1.2.3 ========== 15Nov2013 ====================================
740 
741 
742 * Fixed bugs in the KIM_API_string_init() function (discovered by Daniel Schopf)
743 
744 * Fixed a memory leak in the api (patch provided by Tobias Brink)
745 
746 * Moved `include "KIM_API_DIRS.h"' from KIM_API.h to KIM_API.cpp. This ensures
747  that this header file does not need to be installed by the `make install'
748  command.
749 
750 * Changes to Makefiles to improve portability (of `make uninstall')
751 
752 * Some minor changes to api code to remove compiler warnings from some compilers
753 
754 
755 === openkim-api-v1.2.2 ========== 17Sep2013 ====================================
756 
757 
758 * Improved speed of make system when many Models/Tests (and Drivers) exist
759 
760 * Improved an aspect of the api's error checking/reporting
761 
762 
763 === openkim-api-v1.2.1 ========== 21Jul2013 ====================================
764 
765 
766 * Reverted to gnu make v3.81 from v3.82 to better represent actual needs.
767 
768 
769 === openkim-api-v1.2.0 ========== 12Jul2013 ====================================
770 
771 
772 * Documentation updates.
773 
774 * Various bug fixes.
775 
776 * Added support for searching ${HOME}/.kim/ and ./ for Models and Model Drivers
777  when the package is installed via the `make install' command.
778 
779 * Added install and uninstall targets to the Make system.
780 
781 * Now the build system (in dynamic-load and dynamic-link modes) hides all
782  symbols in the Model Driver and Model libraries except for the model_init()
783  function and the Model's kim descriptor string. This means that there is no
784  need to worry about symbol clashes between Models, Model Drivers, or Tests.
785 
786 * Implemented dynamic-load, dynamic-link, and static-link build options.
787 
788 * Make system now provides only summary information on the build process. This
789  makes the progress easier to understand. To see the actual build commands
790  use `make -n'.
791 
792 * Removed `integer*8' and changed `real' and `real*8' to `float' and `double'.
793 
794 * Now use -g, -Wall, and -pedantic by default for all compilations.
795 
796 * Changed model_init() function conventions to simplify the scheme. This also
797  resulted in the removal of the Model or Test name from the descriptor files.
798 
799 * Added the openkim-api-descriptor-file-match utility.
800 
801 * Completely rewrote and streamlined the openkim-api Make system
802 
803 * Changed directory names from trailing `s' to trailing `S'.
804 
805 * Updated example Tests and Models to use the new get/set method routines.
806 
807 * Added `const' to api string parameters to avoid warnings in Models and Tests
808 
809 * Added get/set method routines to properly transfer pointers to functions
810  or methods via the api.
811 
812 * Added support to examples for NEIGH_RVEC_H.
813 
814 * Added the NEIGH_RVEC_H NBC method.
815 
816 * Added ex_free_cluster_CLUSTER_memory F90 Test which manages its own memory.
817 
818 * Added ex_model_Cu_PF_Johnson C pair-functional model and template.
819 
820 * Updates and bug fixes in example Models.
821 
822 * Bug fixes for vc_forces_numer_deriv and added vc_config_ener_forces and
823  vc_forces_delta to the distribution.
824 
825 
826 === openkim-api-v1.1.1 ========== 19Aug2012 ====================================
827 
828 
829 * Added run_forces_numer_deriv_for_all_models script that will run and
830  summarize the results of vc_forces_numer_deriv for all available Models.
831 
832 * Added vc_forces_numer_deriv "verification check" that can be used with any
833  Model to check the consistency of its computed forces with a numerical
834  derivative based on the Model's energy.
835 
836 * Fixed a bug in the MI_OPBC_* support for ex_model_Ne_P_fastLJ
837 
838 * Fixed a bug in the make system that occurred when using static linking that
839  would cause some Models to be incorrectly identified as "unknown"
840 
841 * ex_test_*_free_cluster and ex_test_*_free_cluster_stiff now support CLUSTER
842  NBC (which means they work with ALL NBC methods)
843 
844 * Documentation updates
845 
846 * Updated 32/64 bit switching in Fortran code for easier maintenance
847 
848 * Moved library compile flags to end of command line to make sure all libraries
849  are correctly associated with the appropriate .so files
850 
851 * Cleaned up ex_model_driver_P_* and ex_model_Ne_P_fastLJ to simplify memory
852  management and PARAM_* handling
853 
854 
855 === openkim-api-v1.1.0 ========== 12Jul2012 ====================================
856 
857 
858 * Documentation updates
859 
860 * Introduced the use of THIS_FILE_NAME in Fortran examples instead of __FILE__.
861  This allows for easily setting the value of THIS_FILE_NAME to something
862  appropriate (short) when the default preprocessor value of __FILE__ is longer
863  that 132 characters (the max line length for Fortran)
864 
865 * Changed KIM standard time unit from `fs' to `ps' to be consistent with LAMMPS
866  `metal' unit system
867 
868 * Changed KIM_COMPUTE and KIM_NOT_COMPUTE to KIM_COMPUTE_TRUE and
869  KIM_COMPUTE_FALSE, respectively
870 
871 * Removed KIM_API_MAX_NEIGHBORS; the api no longer puts any restriction on the
872  number of neighbors for an atom
873 
874 * Updated api and examples to always `return' with an error code instead of
875  `exit' or `stop'. This allows the Test to handle errors and is a better
876  convention for error handling
877 
878 * Added KIM_STATUS_MODEL_UNSUPPORTED_CONFIGURATION for cases where a
879  configuration is identified at run time as unsupported
880 
881 * Removed requirement for a trailing `/' in environment variables (such as
882  $KIM_DIR)
883 
884 * Added make warning if `make' is invoked from a Model directory when static
885  linking is being used.
886 
887 * Added `make examples-force' target
888 
889 * `make examples' only copies files; it no longer also compiles everything
890 
891 * Changed all call-back interfaces (model_init, model_reinit, model_compute,
892  model_destroy) to be consistent: integer functions (in Fortran speak). Also
893  updated examples and templates to conform to this new interface.
894 
895 * Added get_model_partcl_typs() and get_test_partcl_type() service routines
896  Removed get_partcl_types() routine.
897 
898 * Added ability of a Model/Model Driver to set its particle type codes at
899  runtime
900 
901 * Added support for .kimignore files in MODELS, MODEL_DRIVERS, and TESTS
902  directories
903 
904 * Added `Temperature' to standard.kim for "temperature dependent" Models
905 
906 * New Model Driver interface supports reading from any number of files (not
907  strings)
908 
909 * Support for 001-999 particle types in Model Drivers
910 
911 * Use $(strip ) function to avoid difficult trailing space problem in make files
912 
913 * Rearranged and simplify compiler settings files
914  (KIM_API/*_compiler_settings.mk)
915 
916 * Changed CPPLIBFLAG to LINKLIBFLAG in Make files to better represent its use
917 
918 * Many improvements to Make-system portability
919 
920 * Carriage returns are now striped from kim and parameter files during Make
921 
922 * Improvements to the vc_forces_numer_deriv verification check
923 
924 * Bug fixes for KIM_API_init() matching
925 
926 * Significant clean-up/rearrangement of core api code
927 
928 
929 === openkim-api-v1.0.1 ========== 25Feb2012 ====================================
930 
931 
932 * Bug fix to ex_model_Ne_P_fastLJ
933 
934 * Bug fix to ex_model_Al_PF_ErcolessiAdams (and associated template file)
935 
936 * Documentation updates
937 
938 
939 === openkim-api-v1.0.0 ========== 22Feb2012 ====================================
940 
941 
942 * Moved all examples to EXAMPLES directory and added `make examples' target.
943 
944 * Renamed all example Model Drivers, Models, and Tests. Now have `ex_' prefix.
945 
946 * Renamed nearly all API functions to improve readability and comprehension.
947 
948 * Changed KIM_API_get_half_neigh and KIM_API_get_full_neigh to just
949  KIM_API_get_neigh.
950 
951 * Total re-work of unit handling for the API.
952 
953 * Added KIM_API_model_info() function for Tests to use for discovering what a
954  Model supports.
955 
956 * Added KIM_API_getm_* and KIM_API_setm_* routines to get/set multiple arguments
957  in one function call.
958 
959 * Added KIM_API_sting_init() for use by Tests that generate their KIM descriptor
960  file "on-the-fly".
961 
962 * Added process_dEdr and process_dE2dr2 approach for calculating general
963  properties. Currently automatic support for `virial', `particleVirial', and
964  `hessian' is available.
965 
966 * Added "unsymmetric half neighbor lists" (numberContributingParticles).
967 
968 * Added model/test buffers for use by Model and Test, respectively.
969 
970 * Improvements in dynamic linking setup.
971 
972 * Examples additions, improvements, and bug fixes.
973 
974 * Bug fixes.
975 
976 
977 === openkim-api-v0.2.0 ========== 15Sep2011 ====================================
978 
979 
980 * Updated documentation
981 
982 * Added KIM_API_report_error() service function and updated all examples
983  and templates to use this function.
984 
985 * Added KIMstatus.h which contains definitions of KIM status codes.
986 
987 * Added KIM_API_status_msg() service routine to return a string describing a
988  given status code.
989 
990 * Updated messages printed to kim.log file to be more informative.
991 
992 * Model KIM descriptor files are now incorporated into the Model's binary
993  library file. This means that the file is no longer required at run time and
994  that the Model must be recompiled after changes to the descriptor file.
995 
996 * Added Model Driver Templates
997 
998 * Added two Model Drivers and four Models based on the Model Drivers
999 
1000 * Removed example model_Ar_P_MMorse in favor of the Morse Driver and its Models
1001 
1002 * Added support for Model Drivers
1003 
1004 * Bug fixes
1005 
1006 
1007 === openkim-api-v0.1.2 ========== 22Aug2011 ====================================
1008 
1009 
1010 * Fixed a number of bugs in the examples related to running on 64bit machines
1011 
1012 * Fixed a bug in kim_api_get_nbc_method_f() related to running on 64bit
1013  machines
1014 
1015 
1016 === openkim-api-v0.1.1 ========== 16Aug2011 ====================================
1017 
1018 
1019 * Fixed memory handling bug associated with the service functions
1020  KIM_API_get_listAtomTypes()
1021  KIM_API_get_listParams()
1022  KIM_API_get_listFreeParams()
1023  KIM_API_get_listFixedParams()
1024  KIM_API_get_NBC_method()
1025 
1026 * Fixed bug in test_**_free_cluster.F90
1027 
1028 * Renamed `README.git' to `README_GIT' to avoid confusion with the
1029  git convention that the extension `.git' refers to a bare repository
1030 
1031 
1032 === openkim-api-v0.1.0 ========== 08Aug2011 ====================================
1033 
1034 
1035 * Added TEMPLATE files to help users create their own KIM Models.
1036 
1037 * Added a number of example Models and Tests to help users understand how to
1038  implement their own openkim-api compliant codes.
1039 
1040 * Added support for ATOM/PARTICLE types
1041 
1042 * Added support for Models to publish their parameters
1043 
1044 * Added support for Models to define a `reinit' function for use when their
1045  parameters are changed by a Test.
1046 
1047 * Improved the Makefile system in general (although, more needs to be done)
1048 
1049 * Added support for neighbor list and boundary conditions (NBC)
1050 
1051 * Added support for dynamic linking
1052 
1053 * Updated documentation
1054 
1055 * Added documentation to the standard.kim file which now describes in detail
1056  the format and content of KIM descriptor files.
1057 
1058 * Added README files to every directory. These files provide a short
1059  (hopefully helpful) description of the contents of the directory)
1060 
1061 
1062 === openkim-api-v0.0.0 =========================================================
1063 
1064 
1065 The initial release of the openkim-api package. This was first made available
1066 to participants at the Inaugural Openkim Workshop held in San Diego, CA on
1067 Feb. 26-27, 2011.