make cx_kvl_remove() also remove the keys from the map

kv-list: remove obsolete TODOs and add a test case to prove it

kv-list: fix a possible source of UB when allocation fails during list creation

kv-list: fix support for CX_STORE_POINTERS when using the map interface

remove now unused destructor wrapper

change kv-list destructor strategy to only use the list destructors

change linked_list.c to allow custom data in nodes + implement cx_kv_list_set_key()

add failing test case test_kv_list_set_key()

implement a patch function that results in (almost) always calling the correct destructors

fix that the fallthrough attributes were not abstracted by the cx_attr macros

add failing tests for when clear/remove are called with destructors in the "opposite" aspect of a kv-list

add several fixme and todo comments regarding invoking destructors

implement support for registering destructors to a kv-list using its map aspect

implement cx_kvl_map_remove()

add test_kv_list_map_remove()

make test_kv_list_map_put() pass

add failing test case for inserting into kv-list via map

add missing attributes to generic implementations

fix broken C++ build

fix wrong position of cstr argument in attribute

fix that the wrong vtable is patched when CX_STORE_POINTERS is used

make comparisons between kv_list and linked_list optimizable

fix some grammar and wording issues

implement kv-list to a point where it correctly behaves like a list

remove overlooked unnecessary attribute

roll out the function stubs for the kv-list

create a header file for the new key-value-lists

remove obsolete attributes

fix that the support for NULL when creating mutating iterators was broken

add support for NULL in map iterators

also support NULL in index-based iterator generating functions

fix the documentation regarding member function that now support emplace-mechanics

add cxMapEmplace()

prepare index comparison for potential changes to binary search results

add documentation for cxJsonArrRemove() and cxJsonObjRemove()

add cxJsonObjRemove() #627

add cxJsonArrayRemove()

fix incorrect memcpy() in cxMempoolTransfer()

update uwproj - adds libdir detection w/o config.site

allow NULL for creating UCX strings - resolves #683

merge remote tracking changes

add support for C-strings in cx_strcast() - resolves #549

apply latest uwproj fixes

implement zalloc() - resolves #679

add base allocator to mempool

stabilizes mempool implementation

make test-compile depend on both static and shared

fix test coverage for cxStdlibAllocator

improve mempool destructor support (3/3)

improve mempool destructor support (2/3)

improve mempool destructor support (1/3)

fix critical memory overflow in the stack-based array reallocator

fix stack buffer overflow in arl_swap_no_sbo test

add an option to enable address sanitizer

add convenience macros for using the default allocator - relates to #669

allow changing the cxDefaultAllocator - resolves #669

fix that testing allocator is counting free(NULL)

add cxListEmplace() and cxListEmplaceAt() plus some improvements to the array list implementation

add convenience functions for easy access to first/last element of a list

critical: fixes uninitialized memory in tree iterator

fix copy/paste documentation

remove unused file

fix wrong flags in toolchain.mk files after updating uwproj

update uwproj

fix that iteration continued with siblings for a subtree-root - fixes #656

add explanation of depth to the iterator/visitor field

add a test case that proves that visitors are not affected by issue #656

add test case that shows issue #656

some cxListIterator() variants now also allow NULL lists

adds cx_strcpy() and cx_strcpy_a()

C23 is not a preview any longer

fix unnecessary explicit zero-terminator

fix code not compiling with GCC 15

improve cx_strreplacen() - resolves #623

fix theoretical (but not actual) use-after-free

use new string formatting macros in documentation

bring back CX_PRIstr and CX_SFMT macros - resolves #612

fixes unnecessary allocations in cx_strcat() family of functions

add cxTreeSize() - resolves #624

add test and documentation for cxListContains() - fixes #643

adds cxListContains() implementation (still needs test and docu)

add windows support for new buffer auto-extend strategy - relates to #641

new auto-extend strategy for CxBuffer - resolves #641

adds cxBufferShrink() - resolves #626

fixes missing cx_attr_export - relates to #642

fixes errno value after failing cxBufferSeek() to be consistently EINVAL

adds cxListSet() - resolves #642

fixes that cx_tree_search() did not investigate subtrees with equally good distance

fix allocator of some printf.h functions not being const - fixes #611

fix implementation of cxBufferTerminate() - fixes #631

add cxMempoolTransferObject() - resolves #640

remove warning regarding destruction order, because it is actually not a problem

add cxMempoolTransfer() - partially resolves #640

start development of UCX 3.2

Added tag v3.1 for changeset 18a1a499f065

Removed tag v3.1 v3.1

(0) -1000 -300 -100 -96 tip

mercurial