--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/Writerside/topics/about.md Thu Jan 23 01:15:52 2025 +0100 @@ -0,0 +1,71 @@ +# Overview + +Welcome to the UAP Common Extensions. + +With this library we provide useful data structures and algorithms for common +programmatic tasks in the C language. Using the build files you can create +a static and a shared lib containing all units, but you may also use the UCX +sources in your project and compile specific units by yourself. + +If you want to use this library, you can [download and install](install.md) +the recent version. +The source code is also available as Mercurial repository [at our site][1] and +on [Source Forge][2]. + +[1]: https://develop.uap-core.de/hg/ucx/ +[2]: https://sourceforge.net/p/ucx/code/ + +### Authors + +Mike Becker [<universe@uap-core.de>](mailto:universe@uap-core.de) + +Olaf Wintermann +[<olaf.wintermann@gmail.com>](mailto:olaf.wintermann@gmail.com) + +Changelog +--------- + +### Version 3.0 - 2023-07-09 {collapsible="true"} + +* complete redesign from scratch +* collections can now store copies of objects and not just pointers +* collections are now dynamically implemented +* users of the library can specify own implementations of collections that work with the UCX API +* low level API for custom lists that do not use the UCX structures +* various fixes and improvements +* drops some other, rarely used, features +* removes testing implementation from the lib + +### Version 2.1 - 2019-12-30 {collapsible="true"} + +* adds string replace functions +* adds set operations for ` UcxList` and `UcxMap` +* adds `sstrcaseprefix()` and `sstrcasesuffix()` +* improves Doxygen documentation in ucx/string.h +* adds `UcxArray` data type +* adds support for CMake builds, but main build system is still autotools + +### Version 2.0 - 2018-12-28 {collapsible="true"} + +* some uncritical bug fixes +* overflow of `sstrnlen` now returns `SIZE_MAX` instead of zero +* adds `scstr_t` - a `const char*` variant for sstr_t +* renames utility compare functions + +### Version 1.1 - 2018-05-14 {collapsible="true"} + +* adds missing 32 bit support to integer overflow checks +* adds `ucx_buffer_to_sstr()` macro +* adds `ucx_avl_free_content()` +* adds some more compare and distance functions in utils.h +* adds `SFMT()` and `PRIsstr` convenience macros +* destructor functions for `*_free_content()` functions are now optional + +### Version 1.0.1 - 2018-01-21 {collapsible="true"} + +* some bug fixes +* adds integer overflow checks + +### Version 1.0 - 2017-10-28 {collapsible="true"} + +* first stable version of UCX released