New test.
[mono.git] / mcs / class / System.Web / System.Web.Caching / ChangeLog
1 2006-09-11 Andrew Skiba <andrews@mainsoft.com>
2
3         * CacheDependency.cs: ifdef TARGET_JVM
4
5 2006-08-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6
7         * CacheDependency.cs:
8         * Cache.cs: check dependencies on other cache keys. Fixes bug #79002.
9
10 2006-03-18  Robert Jordan  <robertj@gmx.net>
11
12         * OutputCacheModule.cs: invoke the validation callbacks of
13         HttpCachePolicy. Fixes bug #77825.
14
15 2006-03-14  Robert Jordan  <robertj@gmx.net>
16
17         * CachedVaryBy.cs: Fixed VaryByParam="*". Replaced request.Param
18         with QueryString and Form lookups. Made the param name output case
19         insensitive. Fixes bug #77757.
20
21 2005-10-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
22
23         * Cache.cs: new internal method.
24
25 2005-09-08  Eyal Alaluf  <eyala@mainsoft.com>
26         * OutputCacheModule.cs: Use C# 1.0 style of delegate instantiating.
27           Needed to compile Grasshopper (TARGET_J2EE) which uses MS C# 1.0
28           compiler and does not use msc.
29
30 2005-09-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
31
32         * Cache.cs: ignore exceptions thrown by removed item callbacks.
33
34 2005-09-02  Sebastien Pouliot  <sebastien@ximian.com>
35
36         * Cache.cs: Added security permissions with Minimal level for
37         AspNetHostingPermissionLevel (only LinkDemand as the class is sealed).
38         * CacheDependency.cs: : Added security permissions with Minimal level 
39         for AspNetHostingPermissionLevel (note class is sealed only in 1.x).
40
41 2005-09-01 Eyal Alaluf <eyala@mainsoft.com>
42         * CacheDependency.cs: TARGET_J2EE fixes.
43
44 2005-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
45
46         * CacheDependency.cs: add missing ctor.
47
48 2005-08-15  Jackson Harper  <jackson@ximian.com>
49
50         * CacheItemPriority.cs:
51         * CacheItemRemovedCallback.cs:
52         * CacheItemRemovedReason.cs: New implementations.
53
54 2005-07-30  Miguel de Icaza  <miguel@novell.com>
55
56         * OutputCacheModule.cs: Make synchronous.
57
58 2005-07-15 Lluis Sanchez Gual <lluis@novell.com>
59
60         * Cache.cs: New implementation.
61         * CacheDependency.cs: New implementation.
62
63 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
64
65         * Cache.cs: added new InsertPrivate overload.
66
67 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
68
69         * Cache.cs: 
70         * CacheEntry.cs: style. Removed doc. comments.
71
72 2005-06-08 Ilya Kharmatsky <ilyak-at-mainsoft.com>
73         
74         * CacheDependency.cs - added TARGET_JVM directives in places,
75           where file watching is using (Mainsoft's implementation currently
76           doesn't support the feature).
77
78 2005-05-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
79
80         * CacheEntry.cs: credits for this patch should go to mcs. it catched
81         that the code after 'if ((_enumFlags & Flags.Removed) != 0)' was
82         unreachable.
83
84 2005-04-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
85
86         * ExpiresBuckets.cs:
87         * Cache.cs:
88         * CacheExpires.cs: fix NullReferenceException thrown sometimes when
89         using sliding expiration and under high load. Patch by Eyal Alayuf from
90         Mainsoft.
91
92 2005-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
93
94         * CacheDependency.cs: remove warnings.
95
96 2005-04-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
97
98         * CachedVaryBy.cs: fixed VaryByParam and wildcard (*). Patch by Ilya
99         Kharmatsky (Mainsoft) that fixes bug #73981.
100
101 2005-04-01  Lluis Sanchez Gual <lluis@novell.com>
102
103         * CachedRawResponse.cs: Fix warning.
104
105 2004-11-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
106
107         * CacheEntry.cs: convert the external DateTime to GMT, as everything
108         else uses that timezone. Fixes bug #69194.
109
110 2004-10-03 Ben Maurer  <bmaurer@ximian.com>
111
112         * Cache.cs, CacheEntry.cs, CacheExpires.cs, ExpiresBuckets.cs:
113         use UtcNow rather than Now.
114
115 2004-05-27      Patrik Torstensson <totte@hiddenpeaks.com>
116
117         * ExpiresBucket.cs (FlushExpiredItems): fix csc and a typo bug
118
119 2004-05-27      Patrik Torstensson <totte@hiddenpeaks.com>
120
121         * CacheEntry.cs,CacheExpires.cs,ExpiresBucket.cs,
122           Cache.cs : Fixed deadlock issues, fixed
123           items not correctly being flushed, fixed update
124           of item when expiration has been updated more
125           than 1 min (placed in wrong bucket), 
126           fixed deadlock during cache callback when item 
127           is removed due to expiriation.
128           
129           Rewrite of locking handling in Cache class, leading
130           to better performance and less bugs.
131           
132           This rewrite is due to a number of bugs found
133           in the output caching during load (leading to memory 
134           leaks and deadlocks)
135
136 2004-05-16      Patrik Torstensson <totte@hiddenpeaks.com>
137
138         * ExpiresBucket.cs: Style changes plus;
139         (Update): Fixed possible lock bug (bug 54531)
140         (Expand): remove lock optimization due to it can cause newly 
141         added items to be lost.
142         (Remove): fixed possible lock bug.
143                 
144 2004-04-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
145
146         * Cache.cs: fix from Jan Jaros for NullRef (bug #56996).
147
148 2004-04-07  Lluis Sanchez Gual <lluis@ximian.com>
149
150         * Cache.cs, CacheEntry.cs, ExpiresBuckets.cs: The value to use to
151         specify infinite timeout in ReaderWriterLock is -1, not 0.
152
153 2004-03-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
154
155         * Watcher.cs: Removed file. Jackson made it obsolete and already
156         removed it from the .sources file.
157
158 2004-02-09  Jackson Harper <jackson@ximian.com>
159
160         * ExpiresBucket.cs: Remove duplicate code. Fixes bug #54031.
161         
162 2004-02-09  Jackson Harper <jackson@ximian.com>
163
164         * Cache.cs: Close entries that are removed.
165         * CacheDependency.cs: Use FileSystemWatcher instead of custom
166         Watcher for file dependencies.
167         * OutputCacheModule.cs: Make the varyby objects dependent on the
168         cached page.
169         
170 2004-02-05  Jackson Harper <jackson@ximian.com>
171
172         * CacheDependency.cs: Handle cache keys that have not been added
173         to the cache yet.
174         
175 2004-02-02  Jackson Harper <jackson@ximian.com>
176
177         * OutputCacheModule.cs: We can use file dependancies now.
178         
179 2004-01-14  Jackson Harper <jackson@ximian.com>
180
181         * Cache.cs: Return null when items are expired but have not been
182         removed yet.
183         * OutputCacheModule.cs: Handle sliding expirations. Remove hacks
184         checking if the item is expired, the cache no longer returns
185         expired items.
186         
187 2004-01-14  Jackson Harper <jackson@ximian.com>
188
189         * Cache.cs: When using sliding expiration update the cache objects
190         expires time as well as the expires entry expire time because the
191         objects expire time is checked when objects are pulled out. This
192         fixex bug #52778.
193         
194 2004-01-11  Jackson Harper <jackson@ximian.com>
195
196         * OutputCacheModule.cs: Remove varyby objects when there are no
197         more raw responses that belong to them.
198         * CachedRawResponse.cs: Keep a reference to the VaryBy object that
199         this response belongs to this is so the varyby can be cleaned up.
200         * CachedVaryBy.cs: Keep a reference to the keys that belong to the
201         varyby and a reference to the varyby's key.
202         
203 2004-01-04  Jackson Harper <jackson@ximian.com>
204
205         * OutputCacheModule.cs: Dont cache items when trace is enabled.
206         
207 2004-01-04  Jackson Harper <jackson@ximian.com>
208
209         * OutputCacheModule.cs: Update the date header value.
210         * CachedRawResponse.cs: Expose a ref to the date header, so it can
211         be easily set/updated. Remove unused methods and vars.
212         
213 2004-01-04  Jackson Harper <jackson@ximian.com>
214
215         * CacheDependency.cs: Copy all the entries into the entries array,
216         set on removed callback for items that we are dependent on.
217         * Cache.cs: Add method to get CacheEntry objects.
218         * OutputCacheModule.cs: Make raw repsonse entries dependent on 
219         their varyby param entries.
220
221 2004-01-04  Jackson Harper <jackson@ximian.com>
222
223         * OutputCacheModule.cs: VaryBy keys now need the HttpContext not just the request.
224         * CachedVaryBy.cs: Handle vary by headers, and vary by custom.
225         
226 2004-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
227
228         * ExpiresBuckets.cs: set _intPos when expanding the array. Fixes bug
229         52541. Patch by Jan Jaros (mono-bug@jerryweb.info).
230
231 2003-11-21  Jackson Harper <jackson@ximian.com>
232
233         * OutputCacheModule.cs: Only cache a page if it has a 200 status
234         code. Fix tabbing.
235         * CachedVaryBy.cs: Give raw response keys a name, use the
236         httpmethod in the key, and delimit items with \n so it is easier
237         to read when debugging.
238         
239 2003-11-21  Jackson Harper <jackson@ximian.com>
240
241         * OutputCacheModule.cs: Store a CachedVaryBy object for each
242         cached page. Then store a CachedRawResponse for each combination
243         of varried parameters for a page.
244         * CachedRawResponse.cs: Do not need to store param values anymore
245         those are stored in the CachedVaryBy now. Get the content length
246         so we dont send back the entire buffer.
247         * CachedVaryBy.cs: New file - holds the varyby data for a page,
248         and a method to generate a key based on params. Right now this
249         only works with VaryByParams. TODO: support VaryByHeaders and
250         VaryByCustom.
251         
252 2003-11-20  Jackson Harper <jackson@ximian.com>
253
254         * Cache.cs: New method so non public cache items can be added.
255         * CachedRawResponse.cs: New file - A snapshot of a response that
256         is stored in the cache and can be used to create a new response.
257         * OutputCacheModule.cs: Module for inserting and retrieving
258         responses from the cache.
259         
260 2003-04-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
261
262         * CacheDependency.cs:
263         * CacheEntry.cs:
264         * Watcher.cs: added a FileSystemWatcher-like class for dependency checking.
265
266 2003-03-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
267
268         * Cache.cs:
269         * CacheDefinitions.cs:
270         * CacheDependency.cs:
271         * CacheEntry.cs:
272         * CacheExpires.cs:
273         * ExpiresBuckets.cs: reformatted, make class status page happier. Does
274         not work yet (wait for the next patch).
275
276 2002-12-27  Daniel Cazzulino <dcazzulino@users.sf.net>
277
278         * CacheEntry.cs: several changes. New constants, use of constants
279         defined in Cache.cs, modified locks to optimize perf. Fixed property
280         sets which weren't using the keyword value to set the new values
281         (don't know how this worked before!).
282
283         * Cache.cs: changed singleton implementation to only create the object
284         when actually used. Changed Insert overloads to use constants
285         defined instead of hard values.
286
287         * ExpiresBuchets: major changes. All locking now uses ReaderWriterLock
288         class. Bucket now efectively reuses free indexes from removed items
289         to avoid unnecessary expansions. Expansion now uses Array.CopyTo to
290         add elements to the new list. Added private Int32Collection to
291         handle int indexes efficiently (thanks Shawn Van Ness). See comments
292         there.
293
294 2002-10-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
295
296         * Cache.cs: little fixes.
297
298 2002-07-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
299
300         * CacheDefinitions.cs: fixed a couple of enums.
301
302         * CacheDependency.cs: the class is sealed.
303
304 2002-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
305
306         * CacheDependency.cs: fixed a couple of typos and don't throw
307         NotImplementedException in constructors.
308
309 2001-12-21      Gaurav Vaish <gvaish@iitk.ac.in>
310
311         * CacheDependency.cs:    Some unimplemented methods to make build
312
313 2001-07-20      Patrik Torstensson (Patrik.Torstensson@labs2.com)
314
315         * Cache.cs:     Implemented. (90% ready)
316         * CacheDefinitions.cs: Implemented.
317         * CacheDependency.cs: Added. (20% ready)
318         * CacheExpires: Implemented.
319         * CacheEntry.cs: Implemented. (95% ready, going to be changed due to CacheDependecy support)
320         * ExpiresBuckets.cs: Implemented.