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