1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
|
v4.10 (2023-01-29)
==================
Fixes:
* format: plug a memory leak relating to func_entry_clone
* Resolve mingw build failure
v4.9 (2023-01-23)
=================
Enhancements:
* socket: add sockaddr_is_local, ipaddr_is_local functions
Fixes:
* format: avoid return value truncation from HXformat_aprintf, HXformat_sprintf
* format: avoid calling HXmc_length on a non-hxmc object
* format: add new variations of printf functions returning ssize_t
* Resolve Coverity-SCAN reports
v4.8 (2022-12-03)
=================
Enhancements:
* io: call posix_fadvise when slurping files
Fixes:
* io: fix garbling of slurped data when read from an unknown-size source
v4.7 (2022-10-21)
=================
Enhancements:
* string: new quoting modes HXQUOTE_BASE64URL & HXQUOTE_BASE64IMAP
Fixes:
* socket: make HX_socket_from_env functional on OpenBSD
v4.6 (2022-06-27)
=================
Enhancements:
* HX_slurp_fd/HX_slurp_file now supports reading from files reporting their
own size as 0 (e.g. ttys, /proc special files).
v4.5 (2022-04-10)
=================
Fixes:
* Resolve a number of cov-scan reported warnings.
v4.4 (2022-03-15)
=================
Fixes:
* Build fixes for the mingw environment.
v4.3 (2022-03-14)
=================
Enhancements:
* string: New functions ``HX_strtoull_sec``, ``HX_unit_seconds`` for converting
between second-based time durations and human-readable durations like
129600 <-> 1d12h.
* io: New function ``HX_sendfile``.
* io: raise buffer size for ``HX_copy_file`` from 1 kiB to 64 kiB
v4.2 (2021-10-17)
=================
Enhancements:
* string: New functions ``HX_strtod_unit``, ``HX_strtoull_unit``,
``HX_unit_size``, ``HX_unit_size_cu`` for converting between
sizes and human-readable sizes like 1457664 <-> "1.45M"/"1.39M".
v4.1 (2021-10-13)
=================
Fixes:
* io: fix a use-after-free in conjunction with HX_realpath /
fix missing NULLing of a pointer within HX_readlink
v4.0 (2021-10-03)
=================
Enhancements:
* lib: add ``HX_slurp_fd``, ``HX_slurp_file``
* proc: add ``HXproc_switch_user``
* proc: add ``HXproc_top_fd``
* socket: add ``HX_socket_from_env``
* opt: add ``HXOPT_KEEP_ARGV`` flag
Fixes:
* proc: re-close pipes when ``HXproc_build_pipes`` failed
v3.26 (2021-08-03)
==================
Fixes:
* io: cure a potential infinite loop on EOF with HXio_fullread()
* io: HXio_fullread() now returns actual bytes read rather than bytes requested
* time: rectified HX_timeval_sub producing wrong results
Changes:
* nullptr checks were added to HXshconfig_free, HXformat_free, HXdeque_free and
HXmap_free to make their behavior be in line with free(3).
* Documentation has been switched to reStructured Text.
v3.25 (2020-05-14)
==================
Fixes:
* string: fix out-of-bounds access when calling ``HX_strlcpy(x,y,0)``
Changes:
* string: ``HX_split4`` renamed to ``HX_split_inplace``
* string: ``HX_split5`` renamed to ``HX_split_fixed``
* defs.h: removed partially implementation of ``FIELD_SIZEOF``
* defs.h: removed custom ``offsetof`` definition; you will need to include
``<stddef.h>`` or ``<cstddef>`` now.
v3.24 (2018-10-17)
==================
Fixes:
* defs: avoid compiler warning when using ``HX_list_for_each`` in C++
* opt: synchronize ``HXOPT_AUTOHELP`` C behavior to C++ mode
v3.23 (2018-08-28)
==================
Enhancements:
* opt: the option parser now recognizes long option abbreviations
* io: use modern ``readdir`` rather than ``readdir_r``
v3.22 (2014-08-25)
==================
Enhancements:
* string: add the ``HXQUOTE_SQLBQUOTE`` quoting variant
|