docs/Writerside/topics/about.md

Fri, 23 May 2025 12:44:24 +0200

author
Mike Becker <universe@uap-core.de>
date
Fri, 23 May 2025 12:44:24 +0200
changeset 1327
ed75dc1db503
parent 1325
20caf6efaf07
child 1328
2cf66dee40b8
permissions
-rw-r--r--

make test-compile depend on both static and shared

the shared lib is not needed for the tests,
but when run with coverage, gcov will be confused
when outdated line information is available from
a previous shared build

1140
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
1 # Overview
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
2
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
3 Welcome to the UAP Common Extensions.
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
4
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
5 With this library we provide useful data structures and algorithms for common
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
6 programmatic tasks in the C language. Using the build files you can create
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
7 a static and a shared lib containing all units, but you may also use the UCX
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
8 sources in your project and compile specific units by yourself.
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
9
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
10 If you want to use this library, you can [download and install](install.md)
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
11 the recent version.
1227
0bf1c1fdf1e3 fix outdated link to develop.uap-core.de and link to latest dist
Mike Becker <universe@uap-core.de>
parents: 1194
diff changeset
12 The source code is also available as Mercurial repository [at our site](https://uap-core.de/hg/ucx/) and
1191
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
13 on [Source Forge](https://sourceforge.net/p/ucx/code/).
1140
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
14
1191
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
15 ## Authors
1140
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
16
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
17 Mike Becker [&lt;universe@uap-core.de&gt;](mailto:universe@uap-core.de)
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
18
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
19 Olaf Wintermann
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
20 [&lt;olaf.wintermann@gmail.com&gt;](mailto:olaf.wintermann@gmail.com)
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
21
1191
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
22 ## Other Resources
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
23
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
24 * [Doxygen Documentation](https://ucx.sourceforge.io/api/)
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
25 * [Test Coverage Report](https://ucx.sourceforge.io/coverage/)
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
26
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
27 ## Changelog
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
28
1280
60123b3db06e start development of UCX 3.2
Mike Becker <universe@uap-core.de>
parents: 1227
diff changeset
29 ### Version 3.2 - preview {collapsible="true"}
60123b3db06e start development of UCX 3.2
Mike Becker <universe@uap-core.de>
parents: 1227
diff changeset
30
1283
89935fea4b7c add cxMempoolTransferObject() - resolves #640
Mike Becker <universe@uap-core.de>
parents: 1281
diff changeset
31 * adds cxMempoolTransfer() and cxMempoolTransferObject()
1325
20caf6efaf07 improve mempool destructor support (3/3)
Mike Becker <universe@uap-core.de>
parents: 1322
diff changeset
32 * adds support for different destruction strategies in CxMempool
1287
3a3ffc27813f adds cxListSet() - resolves #642
Mike Becker <universe@uap-core.de>
parents: 1286
diff changeset
33 * adds cxListSet()
1294
30d7ae76c76a add test and documentation for cxListContains() - fixes #643
Mike Becker <universe@uap-core.de>
parents: 1291
diff changeset
34 * adds cxListContains()
1315
b4c3e0b4c3d5 add convenience functions for easy access to first/last element of a list
Mike Becker <universe@uap-core.de>
parents: 1309
diff changeset
35 * adds cxListFirst() and cxListLast()
b4c3e0b4c3d5 add convenience functions for easy access to first/last element of a list
Mike Becker <universe@uap-core.de>
parents: 1309
diff changeset
36 * adds cxListRemoveAndGetFirst() and cxListRemoveAndGetLast(),
b4c3e0b4c3d5 add convenience functions for easy access to first/last element of a list
Mike Becker <universe@uap-core.de>
parents: 1309
diff changeset
37 and corresponding macro aliases cxListPopFront() and cxListPop()
1316
c41538edfcef add cxListEmplace() and cxListEmplaceAt() plus some improvements to the array list implementation
Mike Becker <universe@uap-core.de>
parents: 1315
diff changeset
38 * adds cxListEmplace() and cxListEmplaceAt()
1290
4ac889e14211 adds cxBufferShrink() - resolves #626
Mike Becker <universe@uap-core.de>
parents: 1288
diff changeset
39 * adds cxBufferShrink()
1295
b00c6ae1441a add cxTreeSize() - resolves #624
Mike Becker <universe@uap-core.de>
parents: 1294
diff changeset
40 * adds cxTreeSize()
1297
0811fb9a8dba bring back CX_PRIstr and CX_SFMT macros - resolves #612
Mike Becker <universe@uap-core.de>
parents: 1296
diff changeset
41 * adds CX_PRIstr and CX_SFMT macros for formatting UCX strings
1304
57e062a4bb05 adds cx_strcpy() and cx_strcpy_a()
Mike Becker <universe@uap-core.de>
parents: 1301
diff changeset
42 * adds cx_strcpy() and cx_strcpy_a()
1318
12fa1d37fe48 allow changing the cxDefaultAllocator - resolves #669
Mike Becker <universe@uap-core.de>
parents: 1316
diff changeset
43 * adds cxStdlibAllocator and allows changes of cxDefaultAllocator
1316
c41538edfcef add cxListEmplace() and cxListEmplaceAt() plus some improvements to the array list implementation
Mike Becker <universe@uap-core.de>
parents: 1315
diff changeset
44 * improves performance of the CxList array list implementation
1300
fcb149ee60ff improve cx_strreplacen() - resolves #623
Mike Becker <universe@uap-core.de>
parents: 1297
diff changeset
45 * changes grow strategy for the memory pool to reduce reallocations
1291
5942859fd76c new auto-extend strategy for CxBuffer - resolves #641
Mike Becker <universe@uap-core.de>
parents: 1290
diff changeset
46 * changes grow strategy for CxBuffer, which does now take the page size into account
1300
fcb149ee60ff improve cx_strreplacen() - resolves #623
Mike Becker <universe@uap-core.de>
parents: 1297
diff changeset
47 * changes the implementation of cx_strreplacen() for improved efficiency
1305
c34a72d8e104 some cxListIterator() variants now also allow NULL lists
Mike Becker <universe@uap-core.de>
parents: 1304
diff changeset
48 * changes all cxListIterator() without index to also accept NULL as list argument
1316
c41538edfcef add cxListEmplace() and cxListEmplaceAt() plus some improvements to the array list implementation
Mike Becker <universe@uap-core.de>
parents: 1315
diff changeset
49 * changes insert_element member function of CxList to accept NULL source and return a pointer to the inserted element
1322
7be10b57f658 fix critical memory overflow in the stack-based array reallocator
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
50 * fixes critical memory overflow in the stack-based array reallocator (this unfortunately breaks the function signature)
1309
b240b73d2a10 fix that iteration continued with siblings for a subtree-root - fixes #656
Mike Becker <universe@uap-core.de>
parents: 1305
diff changeset
51 * fixes that starting an iteration in a non-root node incorrectly continues iteration with the siblings of that node
1296
2a2403c63439 fixes unnecessary allocations in cx_strcat() family of functions
Mike Becker <universe@uap-core.de>
parents: 1295
diff changeset
52 * fixes unnecessary allocations in cx_strcat() family of functions
1288
b41ad5d9bcbf fixes errno value after failing cxBufferSeek() to be consistently EINVAL
Mike Becker <universe@uap-core.de>
parents: 1287
diff changeset
53 * fixes errno value after failing cxBufferSeek() to be consistently EINVAL
1284
b2103354baed fix implementation of cxBufferTerminate() - fixes #631
Mike Becker <universe@uap-core.de>
parents: 1283
diff changeset
54 * fixes implementation of cxBufferTerminate()
1286
5492e8ef05f4 fixes that cx_tree_search() did not investigate subtrees with equally good distance
Mike Becker <universe@uap-core.de>
parents: 1285
diff changeset
55 * fixes allocator arguments for some printf.h functions not being const
5492e8ef05f4 fixes that cx_tree_search() did not investigate subtrees with equally good distance
Mike Becker <universe@uap-core.de>
parents: 1285
diff changeset
56 * fixes that cx_tree_search() did not investigate subtrees with equally good distance
1318
12fa1d37fe48 allow changing the cxDefaultAllocator - resolves #669
Mike Becker <universe@uap-core.de>
parents: 1316
diff changeset
57 * fixes that memory was freed by the wrong allocator in cx_vasprintf_a() when the underlying vsnprintf() failed
1301
f81d8b4f40c4 fix code not compiling with GCC 15
Mike Becker <universe@uap-core.de>
parents: 1300
diff changeset
58 * removes the use of C23 attributes because they don't mix well with GNU attributes in GCC 15
1280
60123b3db06e start development of UCX 3.2
Mike Becker <universe@uap-core.de>
parents: 1227
diff changeset
59
1191
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
60 ### Version 3.1 - 2025-02-11 {collapsible="true"}
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
61
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
62 * adds properties.h
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
63 * adds tree.h
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
64 * adds json.h
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
65 * adds locale-independent string to number conversion functions
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
66 * adds reallocarray() like functions to allocator.h
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
67 * adds cxIterator() to create iterators over raw C arrays
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
68 * adds cxIteratorPtr() to create iterators over raw C pointer arrays
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
69 * adds cx_array_reallocator() and cx_array_default_reallocator
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
70 * adds several new array and list functions
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
71 * adds cxBufferReset()
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
72 * adds cxBufferAppend()
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
73 * adds cxBufferEnableFlushing() and cxBufferFlush()
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
74 * adds CX_BUFFER_COPY_ON_WRITE and CX_BUFFER_COPY_ON_EXTEND flags
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
75 * adds cxBufferWriteFunc and cxBufferReadFunc function pointers (for convenience)
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
76 * adds cx_cmp_ptr()
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
77 * adds cx_vcmp_* family of functions
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
78 * adds cx_sprintf() and several more variants
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
79 * adds runtime constants to read out the actual SBO sizes
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
80 * adds improved version of UCX 2 Test framework (now a self-contained header)
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
81 * adds cx_nmemb() utility function to common.h
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
82 * changes that CxMap returns own CxMapIterator to save memory in CxIterator
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
83 * changes name of cxBasicMempoolCreate() to cxMempoolCreateSimple()
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
84 * changes all functions, for which there is no dedicated xyz_a variant,
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
85 to accept NULL as allocator argument (in which case a default allocator will be used)
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
86 * changes the name of destroy functions that actually free the memory to better indicate their behavior
1194
b9654414c087 fix typos in CHANGELOG
Mike Becker <universe@uap-core.de>
parents: 1191
diff changeset
87 * changes cx_strcat variants to allow handling of ENOMEM
b9654414c087 fix typos in CHANGELOG
Mike Becker <universe@uap-core.de>
parents: 1191
diff changeset
88 * changes cx_strcast() to also accept cxstring (and doing nothing in that case)
b9654414c087 fix typos in CHANGELOG
Mike Becker <universe@uap-core.de>
parents: 1191
diff changeset
89 * changes the behavior of cxBufferSeek() to allow offset zero for SEEK_END
1191
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
90 * moves cx_compare_func typedef to compare.h
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
91 * moves cx_szmul() to common.h
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
92 * moves stream copy functions to new streams.h
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
93 * removes cx_strupper() and cx_strlower() because they only do the right thing in special cases
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
94 * removes several *_m variants of functions in string.h in favor of automatic conversion
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
95 * removes utils.h
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
96 * removes flag_removal function from iterator
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
97 * removes cxMapDetach() and makes cxMapRemoveAndGet() compatible with both map variants
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
98 * removes the API for changing the store_pointer property of collections after their creation
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
99 * removes CMake
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
100 * removes GTest dependency
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
101 * removes flags to disable SBO in tests
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
102 * removes CX_LINKED_LIST_SWAP_SBO_SIZE (it's not really an optimization for linked lists)
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
103 * fixes cx_strcmp() and cx_strcasecmp() not being useful for lexicographic ordering
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
104 * fixes cx_hash_key_cxstr() evaluating the argument twice
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
105 * fixes critical bug that produced wrong results when comparing lists of different type but same size
11a0f6f0f30b link doxygen and coverage reports on overview page
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
106 * ends UCX 2.1 long term support
1140
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
107
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
108 ### Version 3.0 - 2023-07-09 {collapsible="true"}
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
109
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
110 * complete redesign from scratch
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
111 * collections can now store copies of objects and not just pointers
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
112 * collections are now dynamically implemented
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
113 * users of the library can specify own implementations of collections that work with the UCX API
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
114 * low level API for custom lists that do not use the UCX structures
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
115 * various fixes and improvements
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
116 * drops some other, rarely used, features
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
117 * removes testing implementation from the lib
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
118
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
119 ### Version 2.1 - 2019-12-30 {collapsible="true"}
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
120
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
121 * adds string replace functions
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
122 * adds set operations for ` UcxList` and `UcxMap`
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
123 * adds `sstrcaseprefix()` and `sstrcasesuffix()`
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
124 * improves Doxygen documentation in ucx/string.h
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
125 * adds `UcxArray` data type
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
126 * adds support for CMake builds, but main build system is still autotools
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
127
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
128 ### Version 2.0 - 2018-12-28 {collapsible="true"}
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
129
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
130 * some uncritical bug fixes
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
131 * overflow of `sstrnlen` now returns `SIZE_MAX` instead of zero
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
132 * adds `scstr_t` - a `const char*` variant for sstr_t
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
133 * renames utility compare functions
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
134
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
135 ### Version 1.1 - 2018-05-14 {collapsible="true"}
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
136
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
137 * adds missing 32 bit support to integer overflow checks
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
138 * adds `ucx_buffer_to_sstr()` macro
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
139 * adds `ucx_avl_free_content()`
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
140 * adds some more compare and distance functions in utils.h
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
141 * adds `SFMT()` and `PRIsstr` convenience macros
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
142 * destructor functions for `*_free_content()` functions are now optional
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
143
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
144 ### Version 1.0.1 - 2018-01-21 {collapsible="true"}
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
145
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
146 * some bug fixes
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
147 * adds integer overflow checks
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
148
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
149 ### Version 1.0 - 2017-10-28 {collapsible="true"}
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
150
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff changeset
151 * first stable version of UCX released

mercurial