Merge pull request #140 from hussainnaqvee/patch-1
[awesomized/libmemcached] / ChangeLog-1.1.md
1 # ChangeLog v1.1
2
3 ## v 1.1.4
4
5 > released 2023-03-06
6
7 * Fix [gh #107](https://github.com/awesomized/libmemcached/issues/107):
8 macOS: deprecated sasl API (improve detection of `libsasl2`).
9 * Fix [gh #131](https://github.com/awesomized/libmemcached/issues/131):
10 Consider renaming tools (add `CLIENT_PREFIX` build option; default: `mem`)
11 * Fix [gh #132](https://github.com/awesomized/libmemcached/issues/132):
12 Add build of static library (add `BUILD_SHARED_LIBS` build option; default: `ON`).
13 * Fix [gh #134](https://github.com/awesomized/libmemcached/issues/134):
14 Update client option documentation.
15 * Fix [gh #136](https://github.com/awesomized/libmemcached/issues/136):
16 `libmemcachedutil` is underlinked (link against libmemcached).
17 * Fix [gh php-memcached#531](https://github.com/php-memcached-dev/php-memcached/issues/531):
18 `get` returns random values when lower than default `OPT_POLL_TIMEOUT` is set.
19 **NOTE:** This is a security related fix; more information can be found at:
20 https://github.com/awesomized/libmemcached/security/advisories/GHSA-wwmh-39wj-fx59
21
22 ## v 1.1.3
23
24 > released 2022-11-09
25
26 * Fix [gh #130](https://github.com/awesomized/libmemcached/issues/130)
27 with [gh #124](https://github.com/awesomized/libmemcached/issues/124):
28 Server response count can underflow.
29
30 ## v 1.1.2
31
32 > released 2022-08-10
33
34 * Fix handling of negative expiration values, which are somehow allowed by legacy.
35 See also [gh #125](https://github.com/awesomized/libmemcached/issues/125),
36 and [gh #76](https://github.com/awesomized/libmemcached/issues/76).
37 * Fix [gh #122](https://github.com/awesomized/libmemcached/issues/122):
38 If libcrypto implementation of AES is used, do not compile internal.
39 * Fix missing include of <array> in tests.
40 * Fix warnings with non-SASL builds.
41 * Fix pthread.h detection.
42
43 ## v 1.1.1
44
45 > released 2021-09-16
46
47 * Fix [gh #67](https://github.com/awesomized/libmemcached/issues/67):
48 GET returns `NOTFOUND` on `TIMEOUT`.
49 * Fix [gh #113](https://github.com/awesomized/libmemcached/issues/105):
50 Build failure with Catch2 < 2.13.5.
51 * Add [gh #114](https://github.com/awesomized/libmemcached/pull/114):
52 Add possibility to use libcrypto for encryption.
53 * Add [gh #115](https://github.com/awesomized/libmemcached/pull/115):
54 Add `LIBMEMCACHED_AWESOME` CPP define.
55 * Add test for [gh #75](https://github.com/awesomized/libmemcached/issues/75):
56 memcached_clone of SASL connection closes random file descriptor.
57 * Fix [gh #116](https://github.com/awesomized/libmemcached/issues/116):
58 Add libmemcachedpotocol-0-0/configure.h guarding `ssize_t` typedef.
59 * Fix [gh #120](https://github.com/awesomized/libmemcached/issues/120):
60 libmemcached.pc is missing a `Requires` entry for libsasl2.
61
62 ## v 1.1.0
63
64 > released 2021-06-23
65
66 **Changes from beta3:**
67
68 * Add ASCII multi get support to bin/memslap.
69
70 See logs from `beta3`, `beta2`, and `beta1` for
71 the full list of changes since the last 1.0 release.
72
73 ## v 1.1.0-beta3
74
75 > released 2021-04-15
76
77 **Changes from beta2:**
78
79 * Fix [gh #108](https://github.com/awesomized/libmemcached/issues/105):
80 macOS Big Sur: dtrace does not understand -G switch.
81 * Add support for IPv6 bracketed syntax in `memcached_servers_parse`.
82 * Make `memcat`'s `--file` option's argument optional defaulting to `<key>`.
83 * Fix libmemcachedprotocol's binary `STAT` and `VERSION` handlers.
84 * Fix [gh #105](https://github.com/awesomized/libmemcached/issues/105):
85 EINTR handled too defensively when polling.
86
87 ## v 1.1.0-beta2
88
89 > released 2020-12-28
90
91 **Changes from beta1:**
92
93 * Fix [gh #103](https://github.com/awesomized/libmemcached/issues/103):
94 Build failure on 32-bit.
95 * Fix [gh #102](https://github.com/awesomized/libmemcached/issues/102):
96 Doc build with old sphinx.
97 * Fix [gh #100](https://github.com/awesomized/libmemcached/issues/100):
98 Revert symbolic rename of public header include directories.
99 * Fix [gh #98](https://github.com/awesomized/libmemcached/issues/98):
100 Library SONAMEs and NAME_LINKs differ from 1.0.18.
101 * Fix [gh #97](https://github.com/awesomized/libmemcached/issues/97):
102 Location of cmake files installation directory.
103 * Fix [gh #96](https://github.com/awesomized/libmemcached/issues/96):
104 LIBXXX_VERSION_HEX constants format.
105
106 ## v 1.1.0-beta1
107
108 > released 2020-12-21
109
110 **NOTE:**
111 This is a bug fix release, not a feature release. The minor version number
112 was incremented due to the following changes:
113
114 * Ported build system to CMake.
115 * Ported test suite to Catch2.
116 * Build requires C++11 compiler support.
117 * Tests require C++17 compiler support.
118 * Moved to the Semantic Versioning Specification: https://semver.org
119 * Moved the project from launchpad to github:
120 * Source: https://github.com/awesomized/libmemcached
121 * Documentation: https://awesomized.github.io/libmemcached
122 * Continuous Integration:
123 * Github: https://github.com/awesomized/libmemcached/actions (Linux, MacOS, Windows **·** amd64)
124 * Sourcehut: https://builds.sr.ht/~m6w6/libmemcached (FreeBSD,
125 OpenBSD **·** amd64)
126 * Build artifacts: https://artifacts.m6w6.name/libmemcached/ rsync://m6w6.name::artifacts/libmemcached/
127
128
129 * Fix build failure due to comparison of incompatible types in bin/memflush and bin/memstat.
130 * Fix wrong type of memcached_instance_st::server_timeout_counter_query_id from uint32_t to uint64_t.
131 * Fix memcached_dump():
132 returned MEMCACHED_CLIENT_ERROR on request to dump illegal slab id.
133 * Fix bin/memcapable:
134 failed with "No hostname was provided" when providing a hostname.
135 * Fix hashkit/murmur and hashkit/murur3:
136 undefined behavior on platforms requiring aligned access.
137 * Fix Memcache::set():
138 possible subscription of empty vector.
139 * Fix libmemcached_util_version_check().
140 * Fix ketama/consistent hashing:
141 crash on reallocation of continuum.
142 * Fix [gh #90](https://github.com/awesomized/libmemcached/issues/90):
143 Build fails on Darwin.
144 * Fix [gh #83](https://github.com/awesomized/libmemcached/issues/83):
145 memcp waits forever if file no found.
146 * Fix [gh #80](https://github.com/awesomized/libmemcached/issues/80):
147 memparse docs.
148 * Fix [gh #72](https://github.com/awesomized/libmemcached/issues/72)
149 and [gh #47](https://github.com/awesomized/libmemcached/issues/47):
150 memcached_return_t docs.
151 * Fix [gh #62](https://github.com/awesomized/libmemcached/issues/62):
152 uint32_t overflow cause busy loop.
153 * Removed restriction of UDP+IPv6.
154 * Fix SERVER_ERROR_MEMORY_ALLOCATION_FAILURE:
155 recognize more strings returned by the server.
156 * Fix [gh #13](https://github.com/awesomized/libmemcached/issues/13):
157 reset continuum counter after freeing them.
158 * Fix [gh #14](https://github.com/awesomized/libmemcached/issues/14)
159 and [gh #17](https://github.com/awesomized/libmemcached/issues/17):
160 SASL: AUTH_CONTINUE was considered a failure and caused IO reset.
161 * Fix [gh #25](https://github.com/awesomized/libmemcached/issues/25):
162 hashkit/murmur3 unavailable.
163 * Fix missing handling of EAGAIN for non-blocking unix domain socket.
164 * Fix [gh #35](https://github.com/awesomized/libmemcached/issues/35):
165 handling of BEHAVIOR_REMOVE_FAILED_SERVERS.
166 * Fix [gh #41](https://github.com/awesomized/libmemcached/issues/41):
167 ensure stable sort on continuum host key collision.
168 * Fix [gh #42](https://github.com/awesomized/libmemcached/issues/42):
169 MEMCACHED_MAX_BUFFER docs.
170 * Fix [gh #43](https://github.com/awesomized/libmemcached/issues/43):
171 libmemcached_configuration docs.
172 * Fix [gh #46](https://github.com/awesomized/libmemcached/issues/46):
173 clarification on millisecond timeout docs.
174 * Fix [gh #50](https://github.com/awesomized/libmemcached/issues/50):
175 memcached_fetch_result() can return previously returned data.
176 * Fix [gh #53](https://github.com/awesomized/libmemcached/issues/53):
177 stack overflow in memcached_fetch_result().
178 * Fix [gh #57](https://github.com/awesomized/libmemcached/issues/57):
179 include <inttypes.h> vs <cinttypes>
180 * Fix [gh #58](https://github.com/awesomized/libmemcached/issues/58):
181 more specific error messages when connect() fails.
182 * Fix [gh #59](https://github.com/awesomized/libmemcached/issues/59):
183 bin/memcat: typo in "No servers provied".
184 * Fix [gh #77](https://github.com/awesomized/libmemcached/issues/77):
185 undeclared UINT64_C in ketama.cc.
186 * Fix [gh #12](https://github.com/awesomized/libmemcached/issues/12):
187 never reconnects after connection reset (binary protocol).
188 * Fix [gh #49](https://github.com/awesomized/libmemcached/issues/49):
189 assertion memcached_failed(rc) failed in memcached_send_ascii().
190 * Fix [gh #67](https://github.com/awesomized/libmemcached/issues/67):
191 get returns NOTFOUND on timeout.
192 * Fix [gh #76](https://github.com/awesomized/libmemcached/issues/76):
193 memcached_touch() crashes when expiration=-1 (ASCII only).
194 * Fix [gh #23](https://github.com/awesomized/libmemcached/issues/23):
195 build fails with bison 2.3.
196 * Fix memaslap: build fails with newer compiler versions.
197 * Fix usage of strerror_r() implementations returning pointer to char.
198 * Fix pipelining commands with memcached >= 1.6.
199 * Fix memcached_stat_get_value(): buffer overflow.
200 * Fix memcached_stat(): undefined behavior due to unintialized memcached_return_t.
201 * Fix SASL tests: requires SASL_PWDB_CONF.
202 * Fix bin/memaslap to idnentify itself as memaslap instead of memslap.
203 * Fix bin/memcapable to work with memcached >= 1.6.
204 * Fix murmur and murmur3 hashes on big endian platforms.
205 * Fix [gh #82](https://github.com/awesomized/libmemcached/issues/82),
206 [gh #64](https://github.com/awesomized/libmemcached/issues/64) and
207 [gh #21](https://github.com/awesomized/libmemcached/issues/21):
208 clarify documentation on replication.
209 * Fix [gh #95](https://github.com/awesomized/libmemcached/issues/95):
210 MEMCACHED_CALLBACK_GET_FAILURE and MEMCACHED_BEHAVIOR_BUFFER_REQUESTS
211 * Fix bin/memcat to output flags if requested with `--flag`.
212 * Fix [gh #68](https://github.com/awesomized/libmemcached/issues/68):
213 Windows support.
214
215 ---
216
217 See [ChangeLog-1.0](./ChangeLog-1.0.md) for changes prior v1.1.