changelog
    
    
    - Mon, 10 Feb 2025 19:20:43 +0100
 
    - by Mike Becker <universe@uap-core.de> [Mon, 10 Feb 2025 19:20:43 +0100] rev 1177
 
    - fix unicode tests not working on all platforms
 
    - Mon, 10 Feb 2025 18:25:16 +0100
 
    - by Mike Becker <universe@uap-core.de> [Mon, 10 Feb 2025 18:25:16 +0100] rev 1176
 
    - remove cx_strupper() and cx_strlower() - fixes #591
 
    - Sun, 09 Feb 2025 22:06:00 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 09 Feb 2025 22:06:00 +0100] rev 1175
 
    - reorder the topics to make more sense when read from top to bottom
relates to #451 
    - Sun, 09 Feb 2025 22:03:52 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 09 Feb 2025 22:03:52 +0100] rev 1174
 
    - add missing documentation about what header to include
relates to #451 
    - Sun, 09 Feb 2025 22:02:13 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 09 Feb 2025 22:02:13 +0100] rev 1173
 
    - add sub-section intro texts to install.md
relates to #451 
    - Sun, 09 Feb 2025 22:00:17 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 09 Feb 2025 22:00:17 +0100] rev 1172
 
    - basic structure for printf documentation
relates to #451 
    - Sat, 08 Feb 2025 20:38:05 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sat, 08 Feb 2025 20:38:05 +0100] rev 1171
 
    - adds documentation for destructor functions and collections
also invented some new macros for the collection.h
relates to #451 
    - Sat, 08 Feb 2025 14:24:22 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sat, 08 Feb 2025 14:24:22 +0100] rev 1170
 
    - add Memory Management Section description
relates to #451 
    - Sat, 08 Feb 2025 14:13:59 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sat, 08 Feb 2025 14:13:59 +0100] rev 1169
 
    - add documentation for allocator.h
relates to #451 
    - Fri, 07 Feb 2025 17:55:28 +0100
 
    - by Mike Becker <universe@uap-core.de> [Fri, 07 Feb 2025 17:55:28 +0100] rev 1168
 
    - add mempool documentation
relates to #451 
    - Thu, 06 Feb 2025 20:26:31 +0100
 
    - by Mike Becker <universe@uap-core.de> [Thu, 06 Feb 2025 20:26:31 +0100] rev 1167
 
    - add documentation for compare.h
relates to #451 
    - Thu, 06 Feb 2025 20:09:55 +0100
 
    - by Mike Becker <universe@uap-core.de> [Thu, 06 Feb 2025 20:09:55 +0100] rev 1166
 
    - write introduction for the Utilities Section
relates to #451 
    - Wed, 29 Jan 2025 23:58:17 +0100
 
    - by Mike Becker <universe@uap-core.de> [Wed, 29 Jan 2025 23:58:17 +0100] rev 1165
 
    - basic structur for the strings chapter
relates to #451 
    - Tue, 28 Jan 2025 18:31:17 +0100
 
    - by Mike Becker <universe@uap-core.de> [Tue, 28 Jan 2025 18:31:17 +0100] rev 1164
 
    - merge recent changes into docs branch
 
    - Tue, 28 Jan 2025 18:27:46 +0100
 
    - by Mike Becker <universe@uap-core.de> [Tue, 28 Jan 2025 18:27:46 +0100] rev 1163
 
    - optimize cx_arl_find_remove for sorted arrays - fixes #547
 
    - Mon, 27 Jan 2025 20:27:39 +0100
 
    - by Mike Becker <universe@uap-core.de> [Mon, 27 Jan 2025 20:27:39 +0100] rev 1162
 
    - remove dependency to ssize_t - fixes #552
 
    - Sun, 26 Jan 2025 14:37:07 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 26 Jan 2025 14:37:07 +0100] rev 1161
 
    - improve cx_strchr()
 
    - Sun, 26 Jan 2025 14:23:13 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 26 Jan 2025 14:23:13 +0100] rev 1160
 
    - simplify array access
 
    - Sun, 26 Jan 2025 14:15:21 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 26 Jan 2025 14:15:21 +0100] rev 1159
 
    - fix wrong inequality
 
    - Sun, 26 Jan 2025 14:13:48 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 26 Jan 2025 14:13:48 +0100] rev 1158
 
    - extract unescape_unicode_string() and fix rages
 
    - Sun, 26 Jan 2025 13:22:58 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 26 Jan 2025 13:22:58 +0100] rev 1157
 
    - fix memory leaks
 
    - Sun, 26 Jan 2025 13:20:05 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 26 Jan 2025 13:20:05 +0100] rev 1156
 
    - add test and implementation for malformed escape sequences
 
    - Sun, 26 Jan 2025 12:24:49 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 26 Jan 2025 12:24:49 +0100] rev 1155
 
    - do not trim strings before conversion to number
 
    - Sun, 26 Jan 2025 11:59:16 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 26 Jan 2025 11:59:16 +0100] rev 1154
 
    - add missing test coverage for escape sequences
 
    - Sun, 26 Jan 2025 11:28:50 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 26 Jan 2025 11:28:50 +0100] rev 1153
 
    - put coverage report into a subdir
 
    - Sun, 26 Jan 2025 10:23:32 +0100
 
    - by Olaf Wintermann <olaf.wintermann@gmail.com> [Sun, 26 Jan 2025 10:23:32 +0100] rev 1152
 
    - implement decoder for utf16 surrogate pairs in unescape_string
 
    - Sat, 25 Jan 2025 16:27:48 +0100
 
    - by Olaf Wintermann <olaf.wintermann@gmail.com> [Sat, 25 Jan 2025 16:27:48 +0100] rev 1151
 
    - replace cx_strtou32_lc_ with cx_strtou32_lc in json.c
 
    - Sat, 25 Jan 2025 16:27:32 +0100
 
    - by Olaf Wintermann <olaf.wintermann@gmail.com> [Sat, 25 Jan 2025 16:27:32 +0100] rev 1150
 
    - fix incorrect str length comparision in unescape_string
 
    - Sat, 25 Jan 2025 16:13:28 +0100
 
    - by Olaf Wintermann <olaf.wintermann@gmail.com> [Sat, 25 Jan 2025 16:13:28 +0100] rev 1149
 
    - implement unicode escape sequences in json unescape_string function
 
    - Sat, 25 Jan 2025 15:22:01 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sat, 25 Jan 2025 15:22:01 +0100] rev 1148
 
    - documentation of test.h
relates to #451 
    - Sat, 25 Jan 2025 14:05:35 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sat, 25 Jan 2025 14:05:35 +0100] rev 1147
 
    - fix minor bugs in hash_key.h and streams.h docs
relates to #451 
    - Sat, 25 Jan 2025 13:44:24 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sat, 25 Jan 2025 13:44:24 +0100] rev 1146
 
    - add marker to every incomplete page
relates to #451 
    - Sat, 25 Jan 2025 13:40:50 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sat, 25 Jan 2025 13:40:50 +0100] rev 1145
 
    - add stream.h docs and reworks hash_key.h docs
relates to #451 
    - Fri, 24 Jan 2025 21:38:40 +0100
 
    - by Mike Becker <universe@uap-core.de> [Fri, 24 Jan 2025 21:38:40 +0100] rev 1144
 
    - documentation of hash_key.h
relates to #451 
    - Fri, 24 Jan 2025 21:12:09 +0100
 
    - by Mike Becker <universe@uap-core.de> [Fri, 24 Jan 2025 21:12:09 +0100] rev 1143
 
    - assign proper names to the documentation topics
relates to #451 
    - Thu, 23 Jan 2025 20:19:03 +0100
 
    - by Mike Becker <universe@uap-core.de> [Thu, 23 Jan 2025 20:19:03 +0100] rev 1142
 
    - add symbols that need documentation as TODOs
relates to #451 
    - Thu, 23 Jan 2025 01:33:36 +0100
 
    - by Mike Becker <universe@uap-core.de> [Thu, 23 Jan 2025 01:33:36 +0100] rev 1141
 
    - create new page structure
relates to #451 
    - Thu, 23 Jan 2025 01:15:52 +0100
 
    - by Mike Becker <universe@uap-core.de> [Thu, 23 Jan 2025 01:15:52 +0100] rev 1140
 
    - start overhauling the entire web documentation
relates to #451 
    - Wed, 22 Jan 2025 21:02:46 +0100
 
    - by Mike Becker <universe@uap-core.de> [Wed, 22 Jan 2025 21:02:46 +0100] rev 1139
 
    - remove token_escape bool from CxJson struct
 
    - Wed, 22 Jan 2025 20:36:10 +0100
 
    - by Mike Becker <universe@uap-core.de> [Wed, 22 Jan 2025 20:36:10 +0100] rev 1138
 
    - avoid recursion in cxBufferWrite() - fixes #567
 
    - Mon, 20 Jan 2025 22:50:24 +0100
 
    - by Mike Becker <universe@uap-core.de> [Mon, 20 Jan 2025 22:50:24 +0100] rev 1137
 
    - allocate first index buffer for strreplacen on the stack - fixes #575
 
    - Mon, 20 Jan 2025 22:43:46 +0100
 
    - by Mike Becker <universe@uap-core.de> [Mon, 20 Jan 2025 22:43:46 +0100] rev 1136
 
    - reduce default SBO memory for strstr - relates to #575
 
    - Sun, 19 Jan 2025 17:17:01 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 19 Jan 2025 17:17:01 +0100] rev 1135
 
    - add test case for flushing when target is full and fixes a bug related to that
fixes #564 
    - Sat, 18 Jan 2025 14:10:51 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sat, 18 Jan 2025 14:10:51 +0100] rev 1134
 
    - fix that some IDEs cannot resolve documentation
the way we used macros was confusing the IDE
fixes #562 
    - Sat, 18 Jan 2025 14:07:52 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sat, 18 Jan 2025 14:07:52 +0100] rev 1133
 
    - fix duplicate dependency
 
    - Sat, 18 Jan 2025 13:30:51 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sat, 18 Jan 2025 13:30:51 +0100] rev 1132
 
    - remove uses of ctype.h - temporarily fixes #577
we are in desperate need of a good solution that also supports Unicode, though 
    - Fri, 17 Jan 2025 17:55:21 +0100
 
    - by Mike Becker <universe@uap-core.de> [Fri, 17 Jan 2025 17:55:21 +0100] rev 1131
 
    - fix cxBufferAppend() not adjusting position after flush
fixes #565 
    - Fri, 17 Jan 2025 17:41:29 +0100
 
    - by Mike Becker <universe@uap-core.de> [Fri, 17 Jan 2025 17:41:29 +0100] rev 1130
 
    - fix wrong accidental unicode escaping
 
    - Thu, 16 Jan 2025 18:56:44 +0100
 
    - by Mike Becker <universe@uap-core.de> [Thu, 16 Jan 2025 18:56:44 +0100] rev 1129
 
    - fix #566 by changing the spec (pro-move 8)
 
    - Thu, 16 Jan 2025 18:56:17 +0100
 
    - by Mike Becker <universe@uap-core.de> [Thu, 16 Jan 2025 18:56:17 +0100] rev 1128
 
    - fix stupid signature of the flush helper
 
    - Wed, 15 Jan 2025 19:42:49 +0100
 
    - by Mike Becker <universe@uap-core.de> [Wed, 15 Jan 2025 19:42:49 +0100] rev 1127
 
    - removes some unnecessary string functions - fixes #561
 
    - Wed, 15 Jan 2025 19:32:53 +0100
 
    - by Mike Becker <universe@uap-core.de> [Wed, 15 Jan 2025 19:32:53 +0100] rev 1126
 
    - fix mistake string test: CX_STR should be used for initializers only
 
    - Tue, 14 Jan 2025 21:40:29 +0100
 
    - by Mike Becker <universe@uap-core.de> [Tue, 14 Jan 2025 21:40:29 +0100] rev 1125
 
    - avoid unnecessary comparison
 
    - Sun, 12 Jan 2025 13:25:50 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 12 Jan 2025 13:25:50 +0100] rev 1124
 
    - fix wrong status of cxPropertiesLoad() when data is incomplete - fixes #560
 
    - Sun, 12 Jan 2025 13:04:32 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sun, 12 Jan 2025 13:04:32 +0100] rev 1123
 
    - make escaping slashes optional - fixes #569
 
    - Sat, 11 Jan 2025 12:56:54 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sat, 11 Jan 2025 12:56:54 +0100] rev 1122
 
    - add more escape sequences to unescape function
and change the name of token_start to more clearly express what it actually is
(the start of the currently parsed PART of the token) 
    - Sat, 11 Jan 2025 12:33:10 +0100
 
    - by Mike Becker <universe@uap-core.de> [Sat, 11 Jan 2025 12:33:10 +0100] rev 1121
 
    - minor cleanup of json.c
 
    - Fri, 10 Jan 2025 23:16:36 +0100
 
    - by Mike Becker <universe@uap-core.de> [Fri, 10 Jan 2025 23:16:36 +0100] rev 1120
 
    - remove unreachable assert(false) since some compilers might warn about it - relates to #541
 
    - Fri, 10 Jan 2025 23:11:08 +0100
 
    - by Mike Becker <universe@uap-core.de> [Fri, 10 Jan 2025 23:11:08 +0100] rev 1119
 
    - implement string escape - resolves #526
 
    - Fri, 10 Jan 2025 15:03:58 +0100
 
    - by Olaf Wintermann <olaf.wintermann@gmail.com> [Fri, 10 Jan 2025 15:03:58 +0100] rev 1118
 
    - fix build on Solaris 10 and other platforms, where ferror is a just a macro
 
    - Thu, 09 Jan 2025 22:37:10 +0100
 
    - by Mike Becker <universe@uap-core.de> [Thu, 09 Jan 2025 22:37:10 +0100] rev 1117
 
    - add fractional number formatting - relates to #526
 
    - Thu, 09 Jan 2025 21:19:52 +0100
 
    - by Mike Becker <universe@uap-core.de> [Thu, 09 Jan 2025 21:19:52 +0100] rev 1116
 
    - fix JSON create value functions not actually accepting NULL as allocator arg
 
    - Wed, 08 Jan 2025 20:06:37 +0100
 
    - by Mike Becker <universe@uap-core.de> [Wed, 08 Jan 2025 20:06:37 +0100] rev 1115
 
    - create specialized map iterators - fixes #550
 
    - Tue, 07 Jan 2025 19:16:03 +0100
 
    - by Mike Becker <universe@uap-core.de> [Tue, 07 Jan 2025 19:16:03 +0100] rev 1114
 
    - fix that overwriting a map element did not call any destructor function
fixes also, that two tests were never called and increases test coverage in general
fixes #558