This project adheres to Semantic Versioning.
The structure and content of this file follows Keep a Changelog.
- Chunked reads were off by one on tokens. Now fixed.
- Makefiles updated
- Some code reorganization
- Almost everything has changed. Same approach but different
implemenation. A
oj_
prefix is used instead ofojc_
to make the change over easier.
- Reverted len arg to int from size_t for create string.
- Added functions to support the external wire format.
- Removed wire format which is now in the
ohler55/opo-c
github repository.
- Reorganized files and directory structure.
- Renamed parse functions to match argument better.
- Added wire format for faster transmission of and stream handling.
- Updated buffer (buf.h) support.
- Added check for double free.
- Multiple fixes and minor changes to the API.
- Added functions to remove elements by path.
- Added support for opaque elements that can be set but do not get written. They do not show up in string output unless the new ojc_write_opaque is set to true.
- Fixed bug in ocj_get() that missed keys of a medium size range.
- Added an option for case insensitive searches. By setting the ojc_case_insensitive flag to true search and replace functions become case insensitive.
- Added support for arrays in ojc_replace().
- Added ojc_array_remove(), ojc_array_replace(), ojc_array_insert().
- Aliased ojc_set() to ojc_replace() and ojc_aset() to ojc_areplace().
- Changed ojc_object_remove_by_pos() to ojc_remove_by_pos() which now supports arrays.
- Changed ojc_object_replace to return a boolean.
- Added ojc_append() and ojc_aappend() for appending to a tree with a path.
- Added ojc_replace() and ojc_areplace() for replacing or append to a tree with a path.
- Added ojc_cmp() function that compares two ojcVal values.
- Fixed follow parser to remain open as expected.
- Added ojc_duplicate() function that make a deep copy of an element (ojcVal).
- Added option to parse decimal numbers as strings instead of doubles.
- Added ojc_number() function.
- Added parse function where the caller provides a read function. Planned for use with external libraries such as zlib.
- Cleaned up ubuntu/g++ errors.
- Fixed memory leak with number strings.
- Added an unbuffered parse function to work with tail -f.
- Attempting to extract from a NULL val no longer crashes.
- Fixed bug in parse destroy during callback parsing.
- Added cleanup function to free memory used in re-use pools.
- Added functions to get members of an object and an array.
- Added support for non quoted words as values if a flag is set to allow the non-standard feature. Functions create and get values from word values also added.
- Added object functions for changing the members of the object.
- Added function to set the key of a value.
- Fixed buffer overflow by 1 error.
- Allow raw \n in output when ojc newline ok is true.
- Allow raw \n in output.
- Added push and pop to array values.
- Fixed ubuntu compilation.
- Changed callback for parsing to allow the parsing to be aborted by the callback.
- Added static initializer for ojcErr.
- Added ojc_str().
- Corrected compile errors with clang and made ojc.h C++ compatible.
- Initial release.