1### 1.0.0 (unreleased)
2
3**Fixes**:
4
5* Catch a buffer overflow when formatting the error message
6* Import latest upstream sds. This breaks applications that are linked against the old hiredis v0.13
7* Fix warnings, when compiled with -Wshadow
8* Make hiredis compile in Cygwin on Windows, now CI-tested
9
10**BREAKING CHANGES**:
11
12* Change `redisReply.len` to `size_t`, as it denotes the the size of a string
13
14User code should compare this to `size_t` values as well.
15If it was used to compare to other values, casting might be necessary or can be removed, if casting was applied before.
16
17* Remove backwards compatibility macro's
18
19This removes the following old function aliases, use the new name now:
20
21| Old                         | New                    |
22| --------------------------- | ---------------------- |
23| redisReplyReaderCreate      | redisReaderCreate      |
24| redisReplyReaderCreate      | redisReaderCreate      |
25| redisReplyReaderFree        | redisReaderFree        |
26| redisReplyReaderFeed        | redisReaderFeed        |
27| redisReplyReaderGetReply    | redisReaderGetReply    |
28| redisReplyReaderSetPrivdata | redisReaderSetPrivdata |
29| redisReplyReaderGetObject   | redisReaderGetObject   |
30| redisReplyReaderGetError    | redisReaderGetError    |
31
32* The `DEBUG` variable in the Makefile was renamed to `DEBUG_FLAGS`
33
34Previously it broke some builds for people that had `DEBUG` set to some arbitrary value,
35due to debugging other software.
36By renaming we avoid unintentional name clashes.
37
38Simply rename `DEBUG` to `DEBUG_FLAGS` in your environment to make it working again.
39
40### 0.13.3 (2015-09-16)
41
42* Revert "Clear `REDIS_CONNECTED` flag when connection is closed".
43* Make tests pass on FreeBSD (Thanks, Giacomo Olgeni)
44
45
46If the `REDIS_CONNECTED` flag is cleared,
47the async onDisconnect callback function will never be called.
48This causes problems as the disconnect is never reported back to the user.
49
50### 0.13.2 (2015-08-25)
51
52* Prevent crash on pending replies in async code (Thanks, @switch-st)
53* Clear `REDIS_CONNECTED` flag when connection is closed (Thanks, Jerry Jacobs)
54* Add MacOS X addapter (Thanks, @dizzus)
55* Add Qt adapter (Thanks, Pietro Cerutti)
56* Add Ivykis adapter (Thanks, Gergely Nagy)
57
58All adapters are provided as is and are only tested where possible.
59
60### 0.13.1 (2015-05-03)
61
62This is a bug fix release.
63The new `reconnect` method introduced new struct members, which clashed with pre-defined names in pre-C99 code.
64Another commit forced C99 compilation just to make it work, but of course this is not desirable for outside projects.
65Other non-C99 code can now use hiredis as usual again.
66Sorry for the inconvenience.
67
68* Fix memory leak in async reply handling (Salvatore Sanfilippo)
69* Rename struct member to avoid name clash with pre-c99 code (Alex Balashov, ncopa)
70
71### 0.13.0 (2015-04-16)
72
73This release adds a minimal Windows compatibility layer.
74The parser, standalone since v0.12.0, can now be compiled on Windows
75(and thus used in other client libraries as well)
76
77* Windows compatibility layer for parser code (tzickel)
78* Properly escape data printed to PKGCONF file (Dan Skorupski)
79* Fix tests when assert() undefined (Keith Bennett, Matt Stancliff)
80* Implement a reconnect method for the client context, this changes the structure of `redisContext` (Aaron Bedra)
81
82### 0.12.1 (2015-01-26)
83
84* Fix `make install`: DESTDIR support, install all required files, install PKGCONF in proper location
85* Fix `make test` as 32 bit build on 64 bit platform
86
87### 0.12.0 (2015-01-22)
88
89* Add optional KeepAlive support
90
91* Try again on EINTR errors
92
93* Add libuv adapter
94
95* Add IPv6 support
96
97* Remove possiblity of multiple close on same fd
98
99* Add ability to bind source address on connect
100
101* Add redisConnectFd() and redisFreeKeepFd()
102
103* Fix getaddrinfo() memory leak
104
105* Free string if it is unused (fixes memory leak)
106
107* Improve redisAppendCommandArgv performance 2.5x
108
109* Add support for SO_REUSEADDR
110
111* Fix redisvFormatCommand format parsing
112
113* Add GLib 2.0 adapter
114
115* Refactor reading code into read.c
116
117* Fix errno error buffers to not clobber errors
118
119* Generate pkgconf during build
120
121* Silence _BSD_SOURCE warnings
122
123* Improve digit counting for multibulk creation
124
125
126### 0.11.0
127
128* Increase the maximum multi-bulk reply depth to 7.
129
130* Increase the read buffer size from 2k to 16k.
131
132* Use poll(2) instead of select(2) to support large fds (>= 1024).
133
134### 0.10.1
135
136* Makefile overhaul. Important to check out if you override one or more
137  variables using environment variables or via arguments to the "make" tool.
138
139* Issue #45: Fix potential memory leak for a multi bulk reply with 0 elements
140  being created by the default reply object functions.
141
142* Issue #43: Don't crash in an asynchronous context when Redis returns an error
143  reply after the connection has been made (this happens when the maximum
144  number of connections is reached).
145
146### 0.10.0
147
148* See commit log.
149
150