forked from jazzband/django-redis
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGES.txt
259 lines (166 loc) · 6.34 KB
/
CHANGES.txt
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
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
Changelog
=========
Version 4.2.0
-------------
Date: 2015-07-03
- Add `persist` and `expire` methods.
- Remove old and broken dummy client.
- Expose a redis lock method.
Version 4.1.0
-------------
Date: 2015-06-15
- Add plugable serializers architecture (thanks to @jdufresne)
- Add json serializer (thanks to @jdufresne)
- Add msgpack serializer (thanks to @uditagarwal)
- Implement delete_pattern using iter_scan for better performance (thanks to @lenzenmi)
Version 4.0.0
-------------
- Remove usage of deprecated `get_cache` method.
- Added connection option SOCKET_CONNECT_TIMEOUT. [Jorge C. Leitão].
- Replace setex and friends with set, because it now supports all need for atomic.
updates (thanks to @23doors) (re revert changes from 3.8.x branch).
- Fix django 1.8 compatibilities.
- Fix django 1.9 compatibilities.
- BREAKING CHANGE: Now timeout=0 works as django specified (expires immediately)
- Now requires redis server >= 2.8
- BREAKING CHANGE: `redis_cache` is no longer a valid package name
Version 3.8.4
-------------
- Backport django 1.8 fixes from master.
Version 3.8.3
-------------
- Minor fix on regular expression for old url notation.
Version 3.8.2
-------------
- Revert some changes from 3.8.1 that are incompatible with redis server < 2.6.12
Version 3.8.1
-------------
- Fix documentation related to new url format.
- Fix documentation parts that uses now removed functions.
- Fix invalid url transformation from old format (password was not set properly)
- Replace setex and friends with set, because it now supports all need for atomic
updates (thanks to @23doors).
Version 3.8.0
-------------
- Add compression support. (Thanks to @alanjds)
- Change package name from redis_cache to django_redis.
- Add backward compatibility layer for redis_cache package name.
- BACKWARD INCOMPATIBLE CHANGE: use StrictRedis instead of Redis class of redis-py
- Add redis dummy backend for development purposes. (Thanks to @papaloizouc)
- Now use redis native url notation for connection string (the own connection string
notation is also supported but is marked as deprecated).
- Now requires redis-py >= 2.10.0
- Remove deprecated `raw_cache` property from backend.
Version 3.7.2
-------------
- Add missing forward of version parameter from `add()` to `set()` function. (by @fellowshipofone)
Version 3.7.1
-------------
- Improve docs (by @dkingman).
- Fix missing imports on sentinel client (by @opapy).
- Connection closing improvements on sentinel client (by @opapy).
Version 3.7.0
-------------
- Add support for django's `KEY_FUNCTION` and `REVERSE_KEY_FUNCTION` (by @teferi)
- Accept float value for socket timeout.
- Fix wrong behavior of `DJANGO_REDIS_IGNORE_EXCEPTIONS` with socket timeouts.
- Backward incompatible change: now raises original exceptions instead of self defined.
Version 3.6.2
-------------
- Add ttl method purposed to be included in django core.
- Add iter_keys method that uses redis scan methods for memory efficient keys retrieval.
- Add version keyword parameter to keys.
- Deprecate django 1.3.x support.
Version 3.6.1
-------------
- Fix wrong import on sentinel client.
Version 3.6.0
-------------
- Add pluggable connection factory.
- Negative timeouts now works as expected.
- Delete operation now returns a number of deleted items instead of None.
Version 3.5.1
-------------
- Fixed redis-py < 2.9.0 incompatibilities
- Fixed runtests error with django 1.7
Version 3.5.0
-------------
- Removed: stats module (should be replaced with an other in future)
- New: experimental client for add support to redis-sentinel.
- Now uses a django DEFAULT_TIMEOUT constant instead of ``True``. Deprecation
warning added for code that now uses True (unlikely).
- Fix wrong forward of timeout on shard client.
- Fix incr_version wrong behavior when using shard client (wrong client used for set new key).
Version 3.4.0
-------------
- Fix exception name from ConnectionInterrumped to
ConnectionInterrupted maintaining an old exception class
for backward compatibility (thanks Łukasz Langa (@ambv))
- Fix wrong behavior for "default" parameter on get method
when DJANGO_REDIS_IGNORE_EXCEPTIONS is True
(also thanks to Łukasz Langa (@ambv)).
- Now added support for master-slave connection to default
client (it still experimental because is not tested in
production environments).
- Merged SimpleFailoverClient experimental client (only for
experiment with it, not ready for use in production)
- Django 1.6 cache changes compatibility. Explicitly passing in
timeout=None no longer results in using the default timeout.
- Major code cleaning. (Thanks to Bertrand Bordage @BertrandBordage)
- Bugfixes related to some index error on hashring module.
Version 3.3.0
-------------
- Add SOCKET_TIMEOUT attribute to OPTIONS (thanks to @eclipticplane)
Version 3.2.0
-------------
- Changed default behavior of connection error exceptions: now by default
raises exception on connection error is occurred.
Thanks to Mümin Öztürk:
- cache.add now uses setnx redis command (atomic operation)
- cache.incr and cache.decr now uses redis incrby command (atomic operation)
Version 3.1.7
-------------
- Fix python3 compatibility on utils module.
Version 3.1.6
-------------
- Add nx argument on set method for both clients (thanks to Kirill Zaitsev)
Version 3.1.5
-------------
- Bug fixes on sharded client.
Version 3.1.4
-------------
- Now reuse connection pool on massive use of `get_cache` method.
Version 3.1.3
-------------
- Fixed python 2.6 compatibility.
Version 3.1.2
-------------
- Now on call close() not disconnect all connection pool.
Version 3.1.1
-------------
- Fixed incorrect exception message on LOCATION has wrong format.
(Thanks to Yoav Weiss)
Version 3.1
-----------
- Helpers for access to raw redis connection.
Version 3.0
-----------
- Python 3.2+ support.
- Code cleaning and refactor.
- Ignore exceptions (same behavior as memcached backend)
- Pluggable clients.
- Unified connection string.
Version 2.2.2
-------------
- Bug fixes on ``keys`` and ``delete_pattern`` methods.
Version 2.2.1
-------------
- Remove duplicate check if key exists on ``incr`` method.
- Fix incorrect behavior of ``delete_pattern`` with sharded client.
Version 2.2
-----------
- New ``delete_pattern`` method. Useful for delete keys using wildcard syntax.
Version 2.1
-----------
- Many bug fixes.
- Client side sharding.