|
1 # Overview |
|
2 |
|
3 Welcome to the UAP Common Extensions. |
|
4 |
|
5 With this library we provide useful data structures and algorithms for common |
|
6 programmatic tasks in the C language. Using the build files you can create |
|
7 a static and a shared lib containing all units, but you may also use the UCX |
|
8 sources in your project and compile specific units by yourself. |
|
9 |
|
10 If you want to use this library, you can [download and install](install.md) |
|
11 the recent version. |
|
12 The source code is also available as Mercurial repository [at our site][1] and |
|
13 on [Source Forge][2]. |
|
14 |
|
15 [1]: https://develop.uap-core.de/hg/ucx/ |
|
16 [2]: https://sourceforge.net/p/ucx/code/ |
|
17 |
|
18 ### Authors |
|
19 |
|
20 Mike Becker [<universe@uap-core.de>](mailto:universe@uap-core.de) |
|
21 |
|
22 Olaf Wintermann |
|
23 [<olaf.wintermann@gmail.com>](mailto:olaf.wintermann@gmail.com) |
|
24 |
|
25 Changelog |
|
26 --------- |
|
27 |
|
28 ### Version 3.0 - 2023-07-09 {collapsible="true"} |
|
29 |
|
30 * complete redesign from scratch |
|
31 * collections can now store copies of objects and not just pointers |
|
32 * collections are now dynamically implemented |
|
33 * users of the library can specify own implementations of collections that work with the UCX API |
|
34 * low level API for custom lists that do not use the UCX structures |
|
35 * various fixes and improvements |
|
36 * drops some other, rarely used, features |
|
37 * removes testing implementation from the lib |
|
38 |
|
39 ### Version 2.1 - 2019-12-30 {collapsible="true"} |
|
40 |
|
41 * adds string replace functions |
|
42 * adds set operations for ` UcxList` and `UcxMap` |
|
43 * adds `sstrcaseprefix()` and `sstrcasesuffix()` |
|
44 * improves Doxygen documentation in ucx/string.h |
|
45 * adds `UcxArray` data type |
|
46 * adds support for CMake builds, but main build system is still autotools |
|
47 |
|
48 ### Version 2.0 - 2018-12-28 {collapsible="true"} |
|
49 |
|
50 * some uncritical bug fixes |
|
51 * overflow of `sstrnlen` now returns `SIZE_MAX` instead of zero |
|
52 * adds `scstr_t` - a `const char*` variant for sstr_t |
|
53 * renames utility compare functions |
|
54 |
|
55 ### Version 1.1 - 2018-05-14 {collapsible="true"} |
|
56 |
|
57 * adds missing 32 bit support to integer overflow checks |
|
58 * adds `ucx_buffer_to_sstr()` macro |
|
59 * adds `ucx_avl_free_content()` |
|
60 * adds some more compare and distance functions in utils.h |
|
61 * adds `SFMT()` and `PRIsstr` convenience macros |
|
62 * destructor functions for `*_free_content()` functions are now optional |
|
63 |
|
64 ### Version 1.0.1 - 2018-01-21 {collapsible="true"} |
|
65 |
|
66 * some bug fixes |
|
67 * adds integer overflow checks |
|
68 |
|
69 ### Version 1.0 - 2017-10-28 {collapsible="true"} |
|
70 |
|
71 * first stable version of UCX released |