5.0.0
See also:
- this Wiki page on how to update your code to be compatible with this release.
- The full Changelog.
Summary:
- The library is now thread safe.
- Split
json_moduleinto multiple files. - Added new
initialize(),failed(),print_error_message(),check_to_errors(), andclear_exceptions()to thejson_fileclass. - The number of spaces for indenting can now be user specified.
- Updates for Visual Studio project .
- Added a
validate()method for validating JSON linked lists. - Added some additional error checks for malformed JSON linked lists.
- Added a new routine
is_child_ofto check if onejson_valueis a descendant of another. - Added new options for case-insensitive searching of names/paths, as well as the option to consider trailing space significant.
- Added a routine to enable swapping of elements in a
json_valuelinked list. - Rename parameters
RK,IK,LK,CK, andCDKusing less generic names (json_RK,json_IK,json_LK,json_CK, andjson_CDK). - Calling the
initialize()method (which is now injson_coreandjson_file) is no longer mandatory. - Added a
rename()method for renaming ajson_valuevariable. - Added some compiler directives so that workarounds for Gfortran bugs are not used for other compilers.
- Added option for strict typing for
getroutines. - Various cosmetic changes and renaming of some of the dummy arguments in some procedures.
- Added checks to avoid unnecessary looping when traversing arrays if an exception is thrown.
- Added a new
get_childmethod to get the first child. - Added some additional error checks for unassociated pointers.
- Ensure null pointers are returned for some error cases.
- Fixed a bug in the
traverse()routine, where thefinishedoutput flag was not being correctly checked.