simplify cxBufferAppend() because it does not need to care about flushing anymore default tip

improves cxBufferPutString() and adds cxBufferAppendString() - resolves #779

improves cxBufferTerminate()

fix missing error handling when terminating the string

add cxJsonToString() and cxJsonToPrettyString() - resolves #778

adds new CX_BUFFER_DO_NOT_FREE buffer flag

removes buffer flush and adds maximum capacity instead - resolves #185

add test for multiple consecutive line continuations

adjusts documentation regarding line continuation support - relates to #457

add CHANGELOG entry for the bug found by test issue #777

fix cxJsonFromString() ignoring unexpected trailing data + fix wrong handling of trailing whitespaces in general

fix that the docu does not explain that you must reset a parser that ran into an error

fix that cxJsonFromString() stores NULL instead of a "nothing" value in case of a fill error

fix that token_destroy() did not set token->allocated to false

fix memory leak in the json parser and add more tests for cxJsonFromString - relates to #777

add support for line continuation in the properties parser - resolves #457

add more tests for cxPropertiesLoad()

add note that cxPropertiesLoad() does not roll back the changes to the map on error

fix that cxPropertiesLoad() is not falling back to the default allocator when the allocator is NULL

fix return value of cxPropertiesLoad() for non-empty files that do not contain keys

add allocator support to cxPropertiesLoad() - resolves #776

add cxJsonFromString() - resolves #771

properties.h: removes the source/sink API and adds a new cxPropertiesLoad()

changes cxFreeDefault() from a macro to a function so that it can be used as a simple destructor

fix the note about AnyStr and add it to the files where it was missing

fix order of bugfixes and removed features in changelog

improve member names of CxJsonArray

fix the example in json.h.md after removing the sort_members flag

changes CxTree structure so that it now inherits CX_COLLECTION_BASE - resolves #629

fixes cxJsonWrite() incorrectly returning non-zero when strings needed to be escaped

replace JSON object member array with kv-list - resolves #762

fixes that overwriting elements with cxMapPut() in a kv-list did not work

fixes critical memory leak when using cxMapFree() on a kv-list that is using destructors

add .clang-tidy file to mute warnings about using NULL instead of nullptr

use an anonymous union for the CxJsonValue

change cxBufferReserve() to allow reducing the capacity

fix that certain reallocate functions did not properly support size zero

fix name of cx_system_page_size() in allocator.c

add cx_system_page_size() to allocator.h

make clean and distclean are now independent from config.mk

add documentation for cx_linked_list_extra_data()

start development of UCX 4

Added tag v3.2 for changeset 38d3f40a50ec

instead of including stdalign.h, check if the macro is defined (Solaris does not have the header) v3.2

include stdalign.h when not using C23 or newer

fix missing memory alignment for linked list node extra data

fix out-of-bounds read in cx_array_insert_sorted_impl()

replace dist-clean target with a proper distclean target

fix that mkdir -p needs a trailing slash on some platforms

fix that pkgconfdir is only different on FreeBSD

add release date for UCX 3.2

add command line option for pkgconfigdir

fix missing fallback for doxygen executable

merge with remote changes

update uwproj and fix pkgconfigdir location on BSD

fix install-lib.sh compatibility with older shells

fix missing CX_EXPORT for cxTreeVisit()

fix missing parameter list in system_page_size()

add missing docstring for CX_INLINE

add the last test for full line coverage

add test case for cxBufferPop()

fixes that cxBufferWrite() could auto-extend the buffer beyond the configured threshold

add cxBufferReserve()

add cxBufferPop()

implement better strings for json.c + complete test coverage

add the note to the docstrings that tree iterator/visitor counter include the currently visited node

complete test coverage for tree.c

adjust test_hash_map_remove_via_iterator s.t. we achieve coverage for the case where we remove not the first element of a bucket

complete test coverage for array_list.c and delete unreachable code

optimize sorted insertion by using the infimum instead of the supremum

stable return value for binary search when there are duplicates in the array

fix that a particular tree test was never executed

fix that cxTreeVisitorDispose() does not set the queue pointers to NULL

add missing coverage exclusions for linked_list.c

add coverage exclusions for properties.c

increase test coverage for buffer.c

add fallback when sysconf() returns -1 when obtaining the page size

add missing test coverage in string.c and fix overflow checking bug in cx_strcat()

add coverage exclusion rules to hash_map.c

complete test coverage for CxHashKey

fix MSVC compilation error

add missing exclusions for some allocation error handling (all remaining uncovered lines must be covered eventually)

add missing test coverage for cx_array_copy()

add missing test coverage for cx_array_reserve()

add missing test coverage for inserting a duplicate for the beginning node with cx_linked_list_insert_sorted()

update uwproj

add missing test for cx_cmp_size()

exclude almost impossible negative return values for snprintf() from code coverage

fix various typos in the docs

fix wrong type of cast in C++ version of string.h

fix missing newline at end of list.c (-Wnewline-eof complains about that)

tighten the test expectation for cx_array_reserve() after the recent change

add tests for cxListShrink() and cxListReserve() + fixes a bug

add DESTDIR support

fix some memory management bugs in the map and list tests

implement a new allocation strategy for array lists and add cxListReserve() and cxListShrink()

improve insert_unique test case to cover previously uncovered cases

add tests for simple clone functions

implement simple versions of the clone functions

add warning, not to pass the same pointer multiple times to the clone functions

implement cxListUnion() - resolves #755

add documentation for cx_array_align_capacity() and use it in cx_arl_insert_array()

small improvement of the buffer config macros documentation

implement cxMapUnion() - resolves #756

protect arguments of rm and ln commands with quotes

fix install-lib.sh - relates #752

install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support

update uwproj (incl. fix of toolchain.sh)

implement cxListIntersection() - resolves #554

fix clone_func not checked for being nonnull

implements cxMapIntersection() and cxMapListIntersection() - resolves #555

difference shall not check already present items in the destination - fixes #753

(0) -1000 -112 tip

mercurial