changelog
- Wed, 10 Dec 2025 14:05:20 +0100
- by Olaf Wintermann <olaf.wintermann@gmail.com> [Wed, 10 Dec 2025 14:05:20 +0100] rev 1563
- fix memory leak in the json parser and add more tests for cxJsonFromString - relates to #777
- Wed, 10 Dec 2025 13:12:27 +0100
- by Olaf Wintermann <olaf.wintermann@gmail.com> [Wed, 10 Dec 2025 13:12:27 +0100] rev 1562
- add support for line continuation in the properties parser - resolves #457
- Tue, 09 Dec 2025 19:05:35 +0100
- by Mike Becker <universe@uap-core.de> [Tue, 09 Dec 2025 19:05:35 +0100] rev 1561
- add more tests for cxPropertiesLoad()
resolves #775
- Tue, 09 Dec 2025 18:55:14 +0100
- by Mike Becker <universe@uap-core.de> [Tue, 09 Dec 2025 18:55:14 +0100] rev 1560
- add note that cxPropertiesLoad() does not roll back the changes to the map on error
- Tue, 09 Dec 2025 18:51:11 +0100
- by Mike Becker <universe@uap-core.de> [Tue, 09 Dec 2025 18:51:11 +0100] rev 1559
- fix that cxPropertiesLoad() is not falling back to the default allocator when the allocator is NULL
- Tue, 09 Dec 2025 17:27:58 +0100
- by Mike Becker <universe@uap-core.de> [Tue, 09 Dec 2025 17:27:58 +0100] rev 1558
- fix return value of cxPropertiesLoad() for non-empty files that do not contain keys
relates to #775
- Mon, 08 Dec 2025 23:09:11 +0100
- by Mike Becker <universe@uap-core.de> [Mon, 08 Dec 2025 23:09:11 +0100] rev 1557
- add allocator support to cxPropertiesLoad() - resolves #776
- Sun, 07 Dec 2025 19:36:51 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 07 Dec 2025 19:36:51 +0100] rev 1556
- add cxJsonFromString() - resolves #771
- Sun, 07 Dec 2025 15:34:46 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 07 Dec 2025 15:34:46 +0100] rev 1555
- properties.h: removes the source/sink API and adds a new cxPropertiesLoad()
resolves #610
- Sun, 07 Dec 2025 15:33:16 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 07 Dec 2025 15:33:16 +0100] rev 1554
- changes cxFreeDefault() from a macro to a function so that it can be used as a simple destructor
- Sun, 07 Dec 2025 13:24:18 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 07 Dec 2025 13:24:18 +0100] rev 1553
- fix the note about AnyStr and add it to the files where it was missing
- Sun, 07 Dec 2025 13:18:22 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 07 Dec 2025 13:18:22 +0100] rev 1552
- fix order of bugfixes and removed features in changelog
- Sun, 07 Dec 2025 13:17:25 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 07 Dec 2025 13:17:25 +0100] rev 1551
- improve member names of CxJsonArray
- Sat, 06 Dec 2025 18:13:28 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 06 Dec 2025 18:13:28 +0100] rev 1550
- fix the example in json.h.md after removing the sort_members flag
- Sat, 06 Dec 2025 18:01:52 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 06 Dec 2025 18:01:52 +0100] rev 1549
- changes CxTree structure so that it now inherits CX_COLLECTION_BASE - resolves #629
- Sat, 06 Dec 2025 17:51:08 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 06 Dec 2025 17:51:08 +0100] rev 1548
- fixes cxJsonWrite() incorrectly returning non-zero when strings needed to be escaped
- Sat, 06 Dec 2025 16:30:11 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 06 Dec 2025 16:30:11 +0100] rev 1547
- replace JSON object member array with kv-list - resolves #762
- Sat, 06 Dec 2025 16:22:19 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 06 Dec 2025 16:22:19 +0100] rev 1546
- fixes that overwriting elements with cxMapPut() in a kv-list did not work
- Sat, 06 Dec 2025 15:55:53 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 06 Dec 2025 15:55:53 +0100] rev 1545
- fixes critical memory leak when using cxMapFree() on a kv-list that is using destructors
- Sat, 06 Dec 2025 15:50:55 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 06 Dec 2025 15:50:55 +0100] rev 1544
- add .clang-tidy file to mute warnings about using NULL instead of nullptr
- Sat, 06 Dec 2025 13:46:55 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 06 Dec 2025 13:46:55 +0100] rev 1543
- use an anonymous union for the CxJsonValue
- Fri, 05 Dec 2025 16:38:17 +0100
- by Mike Becker <universe@uap-core.de> [Fri, 05 Dec 2025 16:38:17 +0100] rev 1542
- change cxBufferReserve() to allow reducing the capacity
resolves #773
- Fri, 05 Dec 2025 16:36:10 +0100
- by Mike Becker <universe@uap-core.de> [Fri, 05 Dec 2025 16:36:10 +0100] rev 1541
- fix that certain reallocate functions did not properly support size zero
- Fri, 05 Dec 2025 16:22:57 +0100
- by Mike Becker <universe@uap-core.de> [Fri, 05 Dec 2025 16:22:57 +0100] rev 1540
- fix name of cx_system_page_size() in allocator.c
relates to #763
- Fri, 05 Dec 2025 16:11:39 +0100
- by Mike Becker <universe@uap-core.de> [Fri, 05 Dec 2025 16:11:39 +0100] rev 1539
- add cx_system_page_size() to allocator.h
resolves #763
- Thu, 04 Dec 2025 18:57:54 +0100
- by Mike Becker <universe@uap-core.de> [Thu, 04 Dec 2025 18:57:54 +0100] rev 1538
- make clean and distclean are now independent from config.mk
fixes #769
- Wed, 03 Dec 2025 00:01:17 +0100
- by Mike Becker <universe@uap-core.de> [Wed, 03 Dec 2025 00:01:17 +0100] rev 1537
- add documentation for cx_linked_list_extra_data()
fixes #764
- Tue, 02 Dec 2025 17:35:54 +0100
- by Mike Becker <universe@uap-core.de> [Tue, 02 Dec 2025 17:35:54 +0100] rev 1536
- start development of UCX 4
- Sun, 30 Nov 2025 16:01:48 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 30 Nov 2025 16:01:48 +0100] rev 1535
- Added tag v3.2 for changeset 38d3f40a50ec
- Sun, 30 Nov 2025 15:50:36 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 30 Nov 2025 15:50:36 +0100] rev 1534
- instead of including stdalign.h, check if the macro is defined (Solaris does not have the header)
- Sun, 30 Nov 2025 15:45:35 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 30 Nov 2025 15:45:35 +0100] rev 1533
- include stdalign.h when not using C23 or newer
- Sun, 30 Nov 2025 15:41:15 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 30 Nov 2025 15:41:15 +0100] rev 1532
- fix missing memory alignment for linked list node extra data
- Sun, 30 Nov 2025 15:06:02 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 30 Nov 2025 15:06:02 +0100] rev 1531
- fix out-of-bounds read in cx_array_insert_sorted_impl()
- Sun, 30 Nov 2025 15:05:21 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 30 Nov 2025 15:05:21 +0100] rev 1530
- replace dist-clean target with a proper distclean target
- Sun, 30 Nov 2025 14:40:39 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 30 Nov 2025 14:40:39 +0100] rev 1529
- fix that mkdir -p needs a trailing slash on some platforms
- Sun, 30 Nov 2025 14:33:19 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 30 Nov 2025 14:33:19 +0100] rev 1528
- fix that pkgconfdir is only different on FreeBSD
- Sun, 30 Nov 2025 14:10:56 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 30 Nov 2025 14:10:56 +0100] rev 1527
- add release date for UCX 3.2
- Sun, 30 Nov 2025 14:08:52 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 30 Nov 2025 14:08:52 +0100] rev 1526
- add command line option for pkgconfigdir
- Sun, 30 Nov 2025 13:55:12 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 30 Nov 2025 13:55:12 +0100] rev 1525
- fix missing fallback for doxygen executable
- Sun, 30 Nov 2025 13:29:35 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 30 Nov 2025 13:29:35 +0100] rev 1524
- merge with remote changes
- Sun, 30 Nov 2025 13:29:07 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 30 Nov 2025 13:29:07 +0100] rev 1523
- update uwproj and fix pkgconfigdir location on BSD
- Sat, 29 Nov 2025 12:10:27 +0100
- by Olaf Wintermann <olaf.wintermann@gmail.com> [Sat, 29 Nov 2025 12:10:27 +0100] rev 1522
- fix install-lib.sh compatibility with older shells
- Sat, 29 Nov 2025 10:33:50 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 29 Nov 2025 10:33:50 +0100] rev 1521
- fix missing CX_EXPORT for cxTreeVisit()
- Fri, 28 Nov 2025 15:23:40 +0100
- by Mike Becker <universe@uap-core.de> [Fri, 28 Nov 2025 15:23:40 +0100] rev 1520
- fix missing parameter list in system_page_size()
- Fri, 28 Nov 2025 15:16:19 +0100
- by Mike Becker <universe@uap-core.de> [Fri, 28 Nov 2025 15:16:19 +0100] rev 1519
- add missing docstring for CX_INLINE
- Fri, 28 Nov 2025 15:09:57 +0100
- by Mike Becker <universe@uap-core.de> [Fri, 28 Nov 2025 15:09:57 +0100] rev 1518
- add the last test for full line coverage
- Thu, 27 Nov 2025 21:39:20 +0100
- by Mike Becker <universe@uap-core.de> [Thu, 27 Nov 2025 21:39:20 +0100] rev 1517
- add test case for cxBufferPop()
- Wed, 26 Nov 2025 23:35:25 +0100
- by Mike Becker <universe@uap-core.de> [Wed, 26 Nov 2025 23:35:25 +0100] rev 1516
- fixes that cxBufferWrite() could auto-extend the buffer beyond the configured threshold
- Wed, 26 Nov 2025 23:22:03 +0100
- by Mike Becker <universe@uap-core.de> [Wed, 26 Nov 2025 23:22:03 +0100] rev 1515
- add cxBufferReserve()
- Wed, 26 Nov 2025 23:06:12 +0100
- by Mike Becker <universe@uap-core.de> [Wed, 26 Nov 2025 23:06:12 +0100] rev 1514
- add cxBufferPop()
- Tue, 25 Nov 2025 20:35:27 +0100
- by Mike Becker <universe@uap-core.de> [Tue, 25 Nov 2025 20:35:27 +0100] rev 1513
- implement better strings for json.c + complete test coverage
- Mon, 24 Nov 2025 22:39:18 +0100
- by Mike Becker <universe@uap-core.de> [Mon, 24 Nov 2025 22:39:18 +0100] rev 1512
- add the note to the docstrings that tree iterator/visitor counter include the currently visited node
- Mon, 24 Nov 2025 22:38:50 +0100
- by Mike Becker <universe@uap-core.de> [Mon, 24 Nov 2025 22:38:50 +0100] rev 1511
- complete test coverage for tree.c
- Mon, 24 Nov 2025 22:15:16 +0100
- by Mike Becker <universe@uap-core.de> [Mon, 24 Nov 2025 22:15:16 +0100] rev 1510
- 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
- Sun, 23 Nov 2025 13:30:07 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 23 Nov 2025 13:30:07 +0100] rev 1509
- complete test coverage for array_list.c and delete unreachable code
- Sun, 23 Nov 2025 13:15:19 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 23 Nov 2025 13:15:19 +0100] rev 1508
- optimize sorted insertion by using the infimum instead of the supremum
The reason is that the supremum returns the equal element with the smallest index, and we want the largest.
Therefore, we use the infimum, which already gives us the largest index when there are equal elements, and increase the index by one. The infimum is also guaranteed to exist in that case.
- Sun, 23 Nov 2025 12:19:24 +0100
- by Mike Becker <universe@uap-core.de> [Sun, 23 Nov 2025 12:19:24 +0100] rev 1507
- stable return value for binary search when there are duplicates in the array
- Sat, 22 Nov 2025 19:16:27 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 22 Nov 2025 19:16:27 +0100] rev 1506
- fix that a particular tree test was never executed
bonus: the test was broken
- Sat, 22 Nov 2025 19:16:10 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 22 Nov 2025 19:16:10 +0100] rev 1505
- fix that cxTreeVisitorDispose() does not set the queue pointers to NULL
plus add coverage exclusion to tree.c
- Sat, 22 Nov 2025 19:03:04 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 22 Nov 2025 19:03:04 +0100] rev 1504
- add missing coverage exclusions for linked_list.c
- Sat, 22 Nov 2025 19:00:44 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 22 Nov 2025 19:00:44 +0100] rev 1503
- add coverage exclusions for properties.c
- Sat, 22 Nov 2025 18:49:43 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 22 Nov 2025 18:49:43 +0100] rev 1502
- increase test coverage for buffer.c
- Sat, 22 Nov 2025 18:49:39 +0100
- by Mike Becker <universe@uap-core.de> [Sat, 22 Nov 2025 18:49:39 +0100] rev 1501
- add fallback when sysconf() returns -1 when obtaining the page size
- Thu, 20 Nov 2025 20:06:20 +0100
- by Mike Becker <universe@uap-core.de> [Thu, 20 Nov 2025 20:06:20 +0100] rev 1500
- add missing test coverage in string.c and fix overflow checking bug in cx_strcat()