Project:
Plone
Code Location:
git://github.com/plone/plone.memoize.gitmaster
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
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
Changelog ========= 1.1.2 (unreleased) ------------------ 1.1.1 (2011-05-12) ------------------ - Add MANIFEST.in. [WouterVH] 1.1 (2010-07-18) ---------------- - Update license to GPL version 2 only. [hannosch] - Solve intermittent error during testing of CleanupDict class, as a cleanup period of zero seconds would not always result in a cleanup, if the tests were run fast. [maurits] 1.1b1 (2009-11-13 ------------------ - Updated package documentation. [hannosch] 1.1a4 (2009-07-23) ------------------ - Use the new `zope.ramcache` package instead of `zope.app.cache`. This reduces our dependencies by quite a bit. [hannosch] 1.1a3 (2009-05-10) ------------------ - Modernized and cleaned up the code a bit. Also drop BBB support for `zope.app.annotation` and made the tests work again. [hannosch] 1.1a2 (2009-05-08) ------------------ - Removed all testing dependencies on zope.app packages. [hannosch] - Changed a test to use zope.publisher instead of a Five BrowserView. This removes the entire Zope2 dependency. [hannosch] - Correct Zope2 dependency, it's indeed only a test dependency. [hannosch] 1.1a1 (2009-04-04) ------------------ - Clarified license statements. [hannosch] - Moved declaration of test dependencies into a test extra. [hannosch] - Avoid deprecation warnings for the md5 and sha modules in Python 2.6. [hannosch] - Specify package dependencies. [hannosch] - Added check for Unicode values in cache keys before calculating md5 checksums, as the md5 module doesn't seem to like Unicode. [hannosch] - Removed BBB code for zope.app.annotation. [hannosch] - The clearbefore decorator was mistakenly not tested. [maurits] 1.0.4 (2008-03-31) ------------------ - Documentation and release notes cleanup. [hannosch] 1.0.3 (2007-11-09) ------------------ - Remove features from Plone 3.0 branch. [nouri] - Maintenance branch for Plone 3.0. [nouri] - Get rid of sys.modules hack, which according to this changeset: http://dev.plone.org/plone/changeset/15030 was added because I advised it generally. With help from Kapil for the PloneGetPaid project I figured out a better way. [maurits] - Revise docs and project description. [nouri] - Merge patch from Gael Le Mignot: - Do not use hash anymore when making cache keys. This is to avoid cache collisions, and to avoid a potential security problem where an attacker could manually craft collisions. Also, stop recommending the use of hash() in tests. - Add support for using Pilot System's GenericCache as a backend for 'plone.memoize.volatile.cache'. - Add an arguments marshaller that gives you a more convenient way to declare that your cache is dependent on arguments. See 'plone.memoize.marshallers'. [nouri, gael] 1.0.1 (2007-09-10) ------------------ - Simplify forever by reuse of stuff from plone.memoize.volatile. [nouri] 1.0 (2007-08-17) ---------------- - Add a forever memo - lives until Zope restart. [optilude] - hash((1, 2)) returns something different on ree's 64-bit Python :) [nouri] - Don't treat None in a special way. Avoid one dict lookup. [nouri] - Extended the xhtml_compress method to use a utility lookup for IXHTMLCompressor utilities instead. Now you can turn the slimmer based compression on via a simple utility registration. See compress.py. [hannosch, fschulze] 1.0rc2 (2007-07-27) ------------------- - Added simple xhtml_compress method which can be used to plug in whitespace removal libraries. Peter Bengtsson's slimmer library is configured but not enabled by default. [hannosch] 1.0b4 (2007-07-09) ------------------ - Use a md5 hash of the provided key in RAMCacheAdapter, reducing the memory footprint and speeding up lookup time. [hannosch] - Reword the volatile section a bit to indicate why the example does not use anything from the volatile module. [wichert] - Use an exception `DontCache` instead of the DONT_CACHE marker return value. Allow for no `ICacheChooser` to be registered. [nouri] - Add cache decorator for request (which can in fact be used for all sorts of annotatable objects). [nouri] - Added decorator for storing cache values on the request as annotations. [nouri] - Always include the function's dotted name in the key. [nouri] - Added a new cache decorator which can memoize a the result of a method call on the request and lets you specify which argument on the function is the request. [hannosch] - Add MemcacheAdapter as an alternative to RAMCacheAdapter. [nouri] - Generalize `IRAMCacheChooser` to `ICacheChooser`, which doesn't return an IRAMCache but a simple dict. [nouri] - Use a more sensible default for the maxAge of the new RAMCache. [hannosch] - Add cache storage for `plone.memoize.volatile` for use with `zope.app.cache.ram.RAMCache`. [nouri] - Rolled in changes from memojito to fix recursively memoized methods(fix by Rob Miller and Whit Morriss) [whit] - Made plone.memoize backwardly compatible with zope2.9 and remain usable w/out zope.annotation. Minor wording changes to some docs. [whit] - Per default, use a volatile dict that cleans up after itself. [nouri] - This 'volatile' module defines a versatile caching decorator that gives you total control of how the cache key is calculated and where it is stored. [nouri] 1.0b3 (2007-05-05) ------------------ - Initial package structure and implementation. [hannosch, nouri, optilude, whit, zopeskel]
