1 | CacheFu History |
---|
2 | =============== |
---|
3 | |
---|
4 | This file contains change information for previous versions of |
---|
5 | CacheFu. Change information for the current release can be found |
---|
6 | in the file CHANGES.txt. |
---|
7 | |
---|
8 | |
---|
9 | 1.2 - released 2008-05-02 |
---|
10 | ------------------------- |
---|
11 | |
---|
12 | Release manager: |
---|
13 | Ricardo Newbery, ric@digitalmarbles.com |
---|
14 | Compatible with: |
---|
15 | Plone 3.0 and Plone 2.5.x |
---|
16 | |
---|
17 | - Refactor the GS export/import code. |
---|
18 | Add support for multiple caching policies. |
---|
19 | The format of the XML file is now consistent with standard property |
---|
20 | and object manager formats. |
---|
21 | [wichert] |
---|
22 | |
---|
23 | - Allow installation via a GenericSetup profile. Keep using the old style |
---|
24 | external method as default installation option. This means you can now |
---|
25 | install CacheSetup completely through a GenericSetup profile dependency. |
---|
26 | [wichert] |
---|
27 | |
---|
28 | - Repackaged as an egg. |
---|
29 | [wichert] |
---|
30 | |
---|
31 | |
---|
32 | 1.1.2 - released 2008-04-23 |
---|
33 | --------------------------- |
---|
34 | |
---|
35 | Release manager: |
---|
36 | Ricardo Newbery, ric@digitalmarbles.com |
---|
37 | Compatible with: |
---|
38 | Plone 3.0 and Plone 2.5.x |
---|
39 | |
---|
40 | - Removed some deprecated tests. [newbery] |
---|
41 | |
---|
42 | - Synced up the squid and varnish configs with the changes in |
---|
43 | plone.recipe.squid and plone.recipe.varnish. Mostly removed |
---|
44 | the special handling of cookie-authenticated requests and in |
---|
45 | the varnish case, added some handling of cache-control tokens. |
---|
46 | [newbery] |
---|
47 | |
---|
48 | - Added a default_ttl of zero seconds to the varnish runner. |
---|
49 | [newbery] |
---|
50 | |
---|
51 | - Unauthorized requests now do not trigger a full CacheFu disable. |
---|
52 | CacheFu is still disabled but no objects are actually removed. |
---|
53 | A temporary fix for http://plone.org/products/cachefu/issues/134 |
---|
54 | [newbery] |
---|
55 | |
---|
56 | - Removed no-cache from the default cache policies and added a warning |
---|
57 | to the noCache and noStore fields about the IE/SSL bug. |
---|
58 | Fixes http://plone.org/products/cachefu/issues/117 |
---|
59 | [newbery] |
---|
60 | |
---|
61 | - Fixed reordering UI. http://plone.org/products/cachefu/issues/131 |
---|
62 | [newbery] |
---|
63 | |
---|
64 | - Removed lazy expression cleanup routine since we don't do macro |
---|
65 | caching anymore. [newbery] |
---|
66 | |
---|
67 | - Fixed UnicodeDecodeError in PT_pt_render() |
---|
68 | http://plone.org/products/cachefu/issues/126 |
---|
69 | [newbery] |
---|
70 | |
---|
71 | - Fixed rewritePurgeUrls.py. Was referencing the method before |
---|
72 | its definition. [newbery] |
---|
73 | |
---|
74 | - Cleaned up the descriptions of some cache rules. [newbery] |
---|
75 | |
---|
76 | - Removed RSS from the container rule since we do this in a |
---|
77 | separate rule now. [newbery] |
---|
78 | |
---|
79 | - Fixed typo in getHeaderSetIdForCSSAndJs.py which would throw |
---|
80 | an error if still using the old cache policy (pre-1.1.1). |
---|
81 | [newbery] |
---|
82 | |
---|
83 | |
---|
84 | 1.1.1 - released 2008-02-03 |
---|
85 | --------------------------- |
---|
86 | |
---|
87 | Release manager: |
---|
88 | Ricardo Newbery, ric@digitalmarbles.com |
---|
89 | Compatible with: |
---|
90 | Plone 3.0 and Plone 2.5.3 |
---|
91 | |
---|
92 | - Added an VHM 'inside-out' example to the custom rewritePurgeUrls |
---|
93 | script. [newbery] |
---|
94 | |
---|
95 | - Fixed the migration from pre-1.1 cache policies. [newbery] |
---|
96 | |
---|
97 | - After reinstall we now move the new policies to the top of |
---|
98 | the list. [newbery] |
---|
99 | |
---|
100 | - For most use cases, Accept-Language in Vary is unnecessarily |
---|
101 | conservative. Even in many multi-lingual sites, Accept-Language |
---|
102 | is not common. So it's no longer the default. [newbery] |
---|
103 | |
---|
104 | - Cachefu is now disabled if filesystem version doesn't match installed |
---|
105 | version. We also update the schemas upon reinstall. The combination of |
---|
106 | both of these should catch most problems with mutating schemas. [newbery] |
---|
107 | |
---|
108 | - Implemented feature enhancement #9: stale-while-revalidate / |
---|
109 | stale-if-error [newbery] |
---|
110 | |
---|
111 | - We no longer magically override the headerset settings based on the |
---|
112 | proxy cache configuration selection. We might have a reverse proxy |
---|
113 | cache that is not purgeable so now we always respect the policy settings. |
---|
114 | This is better done explicitly anyway. [newbery] |
---|
115 | |
---|
116 | - The id widget for the cachetool is now always hidden. Changing |
---|
117 | this id would break things badly. [newbery] |
---|
118 | |
---|
119 | - Fixed several svn external properties broken because of svn |
---|
120 | reorganization. [erral] |
---|
121 | |
---|
122 | - Reorganized several imports and schema definitions to improve |
---|
123 | code readablity. [newbery] |
---|
124 | |
---|
125 | - Fixed the reinstall sequence to route around potential cachepolicy |
---|
126 | id collisions. [newbery] |
---|
127 | |
---|
128 | - Removed two policy sets from the default install. Squid-without-vary |
---|
129 | because latest squid now properly supports purge with vary. |
---|
130 | Default-cache-policy-v2 because tests don't show any improvement |
---|
131 | over the old default policy and because of potential (but unconfirmed) |
---|
132 | problems with the no-cache rule. [newbery] |
---|
133 | |
---|
134 | - Added kss registry to resource cache rule [newbery] |
---|
135 | |
---|
136 | - Added a cache rule for RSS feeds [newbery] |
---|
137 | |
---|
138 | - Added 'b_start' to etag for templates cache rule. |
---|
139 | Fixes http://plone.org/products/cachefu/issues/97 [newbery] |
---|
140 | |
---|
141 | - Removed cachetool.unindexObject() from Install.py since we've already |
---|
142 | disabled the indexing and it was contributing to |
---|
143 | http://plone.org/products/cachefu/issues/92 [newbery] |
---|
144 | |
---|
145 | - Eliminated a possible source for zodb write conflicts in high write |
---|
146 | scenarios. Hopefully fixes http://plone.org/products/cachefu/issues/105 |
---|
147 | [newbery] |
---|
148 | |
---|
149 | - Fixed traceback_supplement for Plone 3.0 [rossp] |
---|
150 | |
---|
151 | - After Plone 3.0.1, something changed in Archetypes trunk that |
---|
152 | breaks a couple of our templates. Added an explicit definition |
---|
153 | for the "allow_tabbing" variable in these templates to fix it. |
---|
154 | [newbery] |
---|
155 | |
---|
156 | - Fixed references to 'CacheFu' in install instructions where it |
---|
157 | should be 'CacheSetup' [erikrose] |
---|
158 | |
---|
159 | - Products.PageTemplates.TALES is obsolete. We now import |
---|
160 | zope.tales.tales instead [wichert] |
---|
161 | |
---|
162 | - With plone 3 trunk and zope 2.10.4 the (un)registerUtility keywords |
---|
163 | are 'component' and 'provided', in IFiveSiteManager (Five 1.5.5) |
---|
164 | they are the old way (utility, interface) but IFiveSiteManager does |
---|
165 | not seem to be used here so this is changed [svincic] |
---|
166 | |
---|
167 | - Added keyword arguments when calling (un)registerUtility, because |
---|
168 | the order of the arguments is the other way round in the IFiveSiteManager |
---|
169 | interface (at least with Five 1.4.4) [witsch] |
---|
170 | |
---|
171 | - Was previously doing a naive check for Plone 3 style site managers |
---|
172 | which would fail on Plone 2.5 if the portal had been converted to |
---|
173 | a local site with Five 1.4. Fixed to test for five.localsitemanager. |
---|
174 | [rocky] |
---|
175 | |
---|
176 | - Added method getEnabled to cache_tool to partly fix |
---|
177 | http://plone.org/products/cachefu/issues/96 [maurits] |
---|
178 | |
---|
179 | - Cleaned up the icon. Properly transparent with no white border, |
---|
180 | slightly bigger, a little color, and a bit of 3D embellishment |
---|
181 | [newbery] |
---|
182 | |
---|
183 | - Added a documentFirstHeading class and removed the icon from the main tab |
---|
184 | to match the other control panels -- don't want to stand out do we? |
---|
185 | [newbery] |
---|
186 | |
---|
187 | - Added BaseCacheRule to types_not_searched. |
---|
188 | Fixes http://plone.org/products/cachefu/issues/113 [newbery] |
---|
189 | |
---|
190 | - Some tests were updated; some new tests added; some test refactoring. |
---|
191 | Added policy http cache manager cache rule implementation tests. |
---|
192 | Testing schemas is deprecated. Added tests for class and skeleton |
---|
193 | tests for methods. Removed unused imports [hvelarde] |
---|
194 | |
---|
195 | - Moved BaseContent class inheritance to BaseCacheRule to simplify code |
---|
196 | in final classes. BaseCacheRule class is initialized now to avoid |
---|
197 | potential security issues. Updated test suite to reflect these changes. |
---|
198 | [hvelarde] |
---|
199 | |
---|
200 | - Added plone_tool marker to cache_tool [hvelarde] |
---|
201 | |
---|
202 | - Brought back cachingPoliciesDummy.html. This was accidently removed |
---|
203 | in the last release. It's a cosmetic thing; caching_policy_manager |
---|
204 | needs this for it's ZMI view. [newbery] |
---|
205 | |
---|
206 | - Proxy config changes: |
---|
207 | |
---|
208 | 1) Cleaned up and updated the proxy configs. Moved 'config' directory |
---|
209 | to the more descriptive 'cachefu-proxy-configs'. Cleaned up the |
---|
210 | readme instructions. Renamed the makeconfig configuration to makeconfig.cfg, |
---|
211 | to clarify it's purpose. Added new configs for Squid and Varnish proxy |
---|
212 | cache setups. Added some example configs for an Apache-only proxy cache |
---|
213 | setup. Eventually, we're probably going to deprecate this and recommend |
---|
214 | buildouts for the proxy configs. [newbery] |
---|
215 | |
---|
216 | 2) Bug fixes: Corrected the log file path for squid log files, but |
---|
217 | kept them commented. Removed references to unexistent scripts in |
---|
218 | proxy config deploy script [erral] |
---|
219 | |
---|
220 | 3) Bug fix: Moved ';' to the tal:define in xxxxxxx. Was just behind it [redcor] |
---|
221 | |
---|
222 | 4) Bug fixes: Fixed print statement in makeconfig. Removed unnecessary |
---|
223 | squid_direct condition. Removed "direct" directive and adjusted |
---|
224 | makeconfig to match. [newbery] |
---|
225 | |
---|
226 | 5) Bug fixes: In apache configs, uncommented the "RewriteEngine On" line. |
---|
227 | Added an 'all' acl to the Squid configs, since Squid appears to |
---|
228 | need this in some situations. Fixed the proxy deploy script to not |
---|
229 | try to chmod files that do not exist. Fixed some bugs in makeconfig. |
---|
230 | [wichert] |
---|
231 | |
---|
232 | - Bundled the current tagged CMFSquidTool which includes the latest changes: |
---|
233 | |
---|
234 | 1) Many Squid configurations ignore query strings, but not all. |
---|
235 | Query strings are not retained in purge urls. [alecm] |
---|
236 | |
---|
237 | 2) Fixed getUrlsToPurge when the object has no REQUEST. [maurits, reinout] |
---|
238 | |
---|
239 | 3) Fixed a blocking Queue.put call that never raised Queue.Full |
---|
240 | and so was never caught [rossp] |
---|
241 | |
---|
242 | 4) Squid (at least version 2.6.STABLE14) returns 404's for PURGE requests |
---|
243 | using HTTP 1.1 when an "Accept-Encoding: identity" header is included |
---|
244 | in the request. Squid now doesn't generate this header. [dunny] |
---|
245 | |
---|
246 | |
---|
247 | 1.1 - released 2007-08-17 |
---|
248 | ------------------------- |
---|
249 | |
---|
250 | Release manager: |
---|
251 | Ricardo Newbery, ric@digitalmarbles.com |
---|
252 | Compatible with: |
---|
253 | Plone 3.0 and Plone 2.5.3 |
---|
254 | |
---|
255 | - Added an INSTALL.txt [newbery] |
---|
256 | |
---|
257 | - Fixed http://plone.org/products/cachefu/issues/69 [newbery] |
---|
258 | |
---|
259 | - Applied patch from http://plone.org/products/cachefu/issues/57 |
---|
260 | [newbery] |
---|
261 | |
---|
262 | - Removed CacheSetup content items from catalog [newbery] |
---|
263 | |
---|
264 | - Unadvertised the GenericSetup profile since it's currently |
---|
265 | broken [newbery] |
---|
266 | |
---|
267 | - Archived some old docs and updated a couple [newbery] |
---|
268 | |
---|
269 | - Added cache policies framework (and some alternative policies) |
---|
270 | [newbery] |
---|
271 | |
---|
272 | - Added subscription adapters: getRelativeUrls, getAbsoluteUrls |
---|
273 | [wichert] |
---|
274 | |
---|
275 | - Overhauled and simplified Squid configs [newbery] |
---|
276 | |
---|
277 | - Added Varnish configs [newbery] |
---|
278 | |
---|
279 | - Added a bunch of tests [hvelarde] |
---|
280 | |
---|
281 | - Refactored Install.py [hvelarde] |
---|
282 | |
---|
283 | - Removed CookierCrumbler setup since it's deprecated in Plone 2.5 |
---|
284 | [hvelarde] |
---|
285 | |
---|
286 | - Consolidated interfaces. Both old style and new. Will convert |
---|
287 | all to new style in next release. [newbery] |
---|
288 | |
---|
289 | - Made 'ids' visible in the UI to ease diagnostics of response |
---|
290 | headers [newbery] |
---|
291 | |
---|
292 | - Fixed potential cross-site vulnerabilty, |
---|
293 | http://plone.org/products/cachefu/issues/88 [newbery] |
---|
294 | |
---|
295 | - Added a customizable rewritePurgeUrls.py [newbery] |
---|
296 | |
---|
297 | - Added 'enabler.py' module. An "off" switch. [newbery] |
---|
298 | |
---|
299 | - Fixed caching of Zope 3 views for Plone 2.5 [rafrombrc] |
---|
300 | |
---|
301 | - Added caching of Zope 3 views for Plone 3.0 [optilude] |
---|
302 | |
---|
303 | - Fixed template when in Plone 3 to use deprecated |
---|
304 | old_folder_contents [optilude] |
---|
305 | |
---|
306 | - Added getFolderButtons.py since folder_button actions are not |
---|
307 | available as global actions in Plone 3 [newbery] |
---|
308 | |
---|
309 | - Install.py now removes the old unused 'cached_macros' folder |
---|
310 | during upgrade [newbery] |
---|
311 | |
---|
312 | - Added lastDate() and getLastTransactionDate() functions for |
---|
313 | better Last-Modified dates [newbery] |
---|
314 | |
---|
315 | - Added an aliases lookup, to find the default view for objects. |
---|
316 | Fixes caching for PloneHelpCenter types [wichert] |
---|
317 | |
---|
318 | - Added invalidation of file and image fields in content objects |
---|
319 | [wichert] |
---|
320 | |
---|
321 | - Added some acquisition safety to getRelativeUrlsToPurge in |
---|
322 | content_cache_rule.py [wichert] |
---|
323 | |
---|
324 | - Added invalidation of content item instead of discussion item |
---|
325 | [wichert] |
---|
326 | |
---|
327 | - Added 'statusmessages' to 'cachestop' items [reinout] |
---|
328 | |
---|
329 | - Added a check for installed types in installation test in |
---|
330 | preparation for migration to GS [tomster] |
---|
331 | |
---|
332 | - Removed macro caching code (which doesn't work in v2.5-v3.0) |
---|
333 | [tomster] |
---|
334 | |
---|
335 | - Fixed bailout when encountering "views" [fschulze] |
---|
336 | |
---|
337 | - Added more stuff to GS profiles [fschulze] |
---|
338 | |
---|
339 | - Merged misc. fixes from sorrento branch |
---|
340 | [fschulze, reinout, mdziergwa] |
---|
341 | |
---|
342 | - Fixed some bugs in old-style squid configs [justizin] |
---|
343 | |
---|
344 | - Fixed potential AttributeError with getObjectDefaultView in |
---|
345 | base_cache_rule.py [alecm] |
---|
346 | |
---|
347 | - Updated imports for new Zope [tesdal] |
---|
348 | |
---|
349 | - Fixed fields using StringField when they should be using |
---|
350 | TextField [witsch] |
---|
351 | |
---|
352 | - Fixed some functional tests in "/tests/cache_manager.txt" and |
---|
353 | "/tests/test_doctests.py" [witsch] |
---|
354 | |
---|
355 | - Fixed login_form name in /tests/test_functional.py [tesdal] |
---|
356 | |
---|
357 | - Fixed patch_cmf.py so tests work in Plone 3 [tesdal] |
---|
358 | |
---|
359 | - Fixed traceback in patch_cmf.py [tesdal] |
---|
360 | |
---|
361 | |
---|
362 | 1.0.3 - released 2007-08-16 |
---|
363 | --------------------------- |
---|
364 | |
---|
365 | Release manager: |
---|
366 | Ricardo Newbery, ric@digitalmarbles.com |
---|
367 | Compatible with: |
---|
368 | Plone 2.1 and Plone 2.5 |
---|
369 | |
---|
370 | - Fixed potential cross-site vulnerabilty, |
---|
371 | http://plone.org/products/cachefu/issues/88 [newbery] |
---|
372 | |
---|
373 | - Applied patch from http://plone.org/products/cachefu/issues/57 |
---|
374 | [newbery] |
---|
375 | |
---|
376 | - Added an aliases lookup, to find the default view for objects. |
---|
377 | Fixes caching for PloneHelpCenter types [wichert] |
---|
378 | |
---|
379 | - Added logic to invalidate file and image fields in content objects |
---|
380 | [wichert] |
---|
381 | |
---|
382 | - Added some acquisition safety to getRelativeUrlsToPurge in |
---|
383 | content_cache_rule.py [wichert] |
---|
384 | |
---|
385 | - Added invalidation of content item instead of discussion item |
---|
386 | [wichert] |
---|
387 | |
---|
388 | - Fixed potential AttributeError with getObjectDefaultView in |
---|
389 | base_cache_rule.py [alecm] |
---|
390 | |
---|
391 | |
---|
392 | 1.0.2 - released 2006-12-19 |
---|
393 | --------------------------- |
---|
394 | |
---|
395 | Release manager: |
---|
396 | Alec Mitchell, apm13@columbia.edu |
---|
397 | Compatible with: |
---|
398 | Plone 2.1 and Plone 2.5 |
---|
399 | |
---|
400 | - Addresses some minor issues with generated configuration, |
---|
401 | documentation, and version compatibility with Plone and Squid. |
---|
402 | |
---|
403 | |
---|
404 | 1.0.1 - released 2006-06-29 |
---|
405 | --------------------------- |
---|
406 | |
---|
407 | Release manager: |
---|
408 | Geoff Davis, geoffd@phds.org |
---|
409 | Compatible with: |
---|
410 | Plone 2.5 |
---|
411 | |
---|
412 | - Bug fix release. |
---|
413 | |
---|
414 | - Fixes some thread safety issues. |
---|
415 | |
---|
416 | - Fixes several potential race conditions that can cause your |
---|
417 | site to deadlock or consume 100% CPU. It is strongly recommended |
---|
418 | that you upgrade to 1.0.1. |
---|
419 | |
---|
420 | |
---|
421 | 1.0 - released 2006-06-16 |
---|
422 | ------------------------- |
---|
423 | |
---|
424 | Release manager: |
---|
425 | Geoff Davis, geoffd@phds.org |
---|
426 | Compatible with: |
---|
427 | Plone 2.5 |
---|
428 | |
---|
429 | - Now ready for production! |
---|
430 | |
---|
431 | |
---|
432 | 1.0-rc-3 - released 2006-06-13 |
---|
433 | ------------------------------ |
---|
434 | |
---|
435 | Release manager: |
---|
436 | Geoff Davis, geoffd@phds.org |
---|
437 | Compatible with: |
---|
438 | Plone 2.5 |
---|
439 | |
---|
440 | - Fixed a macro cache bug that caused conflict errors when |
---|
441 | recataloging a site in heavy traffic. |
---|
442 | |
---|
443 | - Minor bug fix: The macro cache was persisting some variables |
---|
444 | that should have been volatile. The variables have been made volatile. |
---|
445 | |
---|
446 | |
---|
447 | 1.0-rc-2 - released 2006-06-09 |
---|
448 | ------------------------------ |
---|
449 | |
---|
450 | Release manager: |
---|
451 | Geoff Davis, geoffd@phds.org |
---|
452 | Compatible with: |
---|
453 | Plone 2.5 |
---|
454 | |
---|
455 | - Fixes some threading problems in the macro cache and some |
---|
456 | problems with asynchronous purging of squid. |
---|
457 | |
---|
458 | - The macro cache is now threadsafe. RC1 and beta 2 had some |
---|
459 | non-threadsafe code that could lead to deadlocks. |
---|
460 | |
---|
461 | - The squid purge queue has been fixed (thanks, Sidnei!) |
---|
462 | |
---|
463 | - Squid purging is done with HTTP 1.0 and the correct URL |
---|
464 | is used (thanks, Alec!) |
---|
465 | |
---|
466 | - Added a rule for CSS files generated by DTML (e.g. IEFixes.css) |
---|
467 | |
---|
468 | - Added the host to the cache key for cached macros so that |
---|
469 | absolute_url works consistently in cached content. |
---|
470 | |
---|
471 | |
---|
472 | 1.0-rc-1 - released 2006-06-02 |
---|
473 | ------------------------------ |
---|
474 | |
---|
475 | Release manager: |
---|
476 | Geoff Davis, geoffd@phds.org |
---|
477 | Compatible with: |
---|
478 | Plone 2.5 |
---|
479 | |
---|
480 | - Memory related fixes. The various memory caches are now much |
---|
481 | more space-efficient, and a major memory leak has been fixed. |
---|
482 | |
---|
483 | - A number of smaller UI fixes are included as well. |
---|
484 | |
---|
485 | |
---|
486 | 1.0-beta-2 - released 2006-05-12 |
---|
487 | -------------------------------- |
---|
488 | |
---|
489 | Release manager: |
---|
490 | Geoff Davis, geoffd@phds.org |
---|
491 | Compatible with: |
---|
492 | Plone 2.1 and Plone 2.5 |
---|
493 | |
---|
494 | - Workarounds for IE bugs |
---|
495 | |
---|
496 | - Script to auto-generate and deploy squid config files for |
---|
497 | squid standalone and for squid behind apache |
---|
498 | |
---|
499 | - Macro caching. Speeds up all pages using main_template (Plone 2.0 |
---|
500 | and 2.1 only; experimental, off by default). |
---|
501 | |
---|
502 | |
---|
503 | 1.0-beta-1 (codename: spoon) - released 2006-03-29 |
---|
504 | -------------------------------------------------- |
---|
505 | |
---|
506 | Release manager: |
---|
507 | Geoff Davis, geoffd@phds.org |
---|
508 | Compatible with: |
---|
509 | Plone 2.1 and Plone 2.5 |
---|
510 | |
---|
511 | - The first official CacheFu release. |
---|
512 | |
---|
513 | - Major refactoring. |
---|
514 | |
---|
515 | - Added lots of unit tests and functional tests. |
---|
516 | |
---|
517 | |
---|
518 | 0.1 (codename: danielsan) - released ? |
---|
519 | -------------------------------------- |
---|
520 | |
---|
521 | Release manager: |
---|
522 | Geoff Davis, geoffd@phds.org |
---|
523 | Compatible with: |
---|
524 | Plone 2.1 |
---|
525 | |
---|
526 | - The original release of CacheFu, very guerilla, but still very good, |
---|
527 | with no configlet. Don't use it unless you're crazy. |
---|
528 | |
---|
529 | |
---|