Thu, 23 Jan 2025 01:15:52 +0100
start overhauling the entire web documentation
relates to #451
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. |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
12 | The source code is also available as Mercurial repository [at our site][1] and |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
13 | on [Source Forge][2]. |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
14 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
15 | [1]: https://develop.uap-core.de/hg/ucx/ |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
16 | [2]: https://sourceforge.net/p/ucx/code/ |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
17 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
18 | ### Authors |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
19 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
20 | Mike Becker [<universe@uap-core.de>](mailto:universe@uap-core.de) |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
21 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
22 | Olaf Wintermann |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
23 | [<olaf.wintermann@gmail.com>](mailto:olaf.wintermann@gmail.com) |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
24 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
25 | Changelog |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
26 | --------- |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
27 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
28 | ### Version 3.0 - 2023-07-09 {collapsible="true"} |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
29 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
30 | * complete redesign from scratch |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
31 | * 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
|
32 | * collections are now dynamically implemented |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
33 | * 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
|
34 | * 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
|
35 | * various fixes and improvements |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
36 | * drops some other, rarely used, features |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
37 | * removes testing implementation from the lib |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
38 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
39 | ### Version 2.1 - 2019-12-30 {collapsible="true"} |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
40 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
41 | * adds string replace functions |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
42 | * adds set operations for ` UcxList` and `UcxMap` |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
43 | * adds `sstrcaseprefix()` and `sstrcasesuffix()` |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
44 | * improves Doxygen documentation in ucx/string.h |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
45 | * adds `UcxArray` data type |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
46 | * 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
|
47 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
48 | ### Version 2.0 - 2018-12-28 {collapsible="true"} |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
49 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
50 | * some uncritical bug fixes |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
51 | * 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
|
52 | * 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
|
53 | * renames utility compare functions |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
54 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
55 | ### Version 1.1 - 2018-05-14 {collapsible="true"} |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
56 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
57 | * 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
|
58 | * adds `ucx_buffer_to_sstr()` macro |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
59 | * adds `ucx_avl_free_content()` |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
60 | * 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
|
61 | * adds `SFMT()` and `PRIsstr` convenience macros |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
62 | * 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
|
63 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
64 | ### 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
|
65 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
66 | * some bug fixes |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
67 | * adds integer overflow checks |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
68 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
69 | ### Version 1.0 - 2017-10-28 {collapsible="true"} |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
70 | |
88a9ee79c102
start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
71 | * first stable version of UCX released |