source: trunk/ChangeLog @ 1481

Last change on this file since 1481 was 1478, checked in by moo, 13 months ago

fixed #333: reduce memory usage for small or empty files

  • Property svn:eol-style set to native
File size: 11.9 KB
RevLine 
[1476]14.0.0 2014-??-??
2API Changes
3========
4 * new: proto array xcache_get_refcount(mixed &$variable), with +1 side effect removed
5 * chg: proto array xcache_get_cowcount(mixed $value)
6
7ChangeLog
8========
9 * cacher:
10   * (WIP) defragment
11   * (WIP) cache to disk
[1477]12 * misc:
13   * Reflection info added for APIs
[1476]14
[1478]153.2.0 2013-??-??
16ChangeLog
17========
18 * cacher:
19   * fixed #333: reduce memory usage for small or empty files
20
[1434]213.1.1 2013-??-??
22ChangeLog
23========
24 * cacher
25   * compatible with bcompiler
26
[1420]273.1.0 2013-10-10
[1213]28ChangeLog
29========
[1398]30 * added support for PHP_5_5 (cacher, optimizer, disassembler)
[1368]31 * cacher:
32   * closed #228: allow using var caching for cli to share data between child processes
33   * compatible with pcntl_fork()
34   * fixed support for __FILE__ __DIR__ to correctly handle files that got moved/hardlinked (this fix is now move out of xcache.experimental)
35 * disassembler:
36   * fixed crash with nested sandbox
[1398]37   * improved support for PHP_4 ~ PHP_5_4, also added support for PHP_5_5
[1375]38 * admin
39   * make mkpassword.php easier for noob
[1405]40 * optimizer
41   * rewrite try/catch handling to fix nested try/catch
[1213]42
[1420]433.0.4 2013-10-10
[1366]44ChangeLog
45========
[1368]46 * cacher
[1394]47   * fixed #324: xcache.readonly_protection = Off cause SEGV under mass concurrent
[1368]48   * fixed #323: refix locking impl for threaded env
[1418]49 * build
50   * win32: fix build with no indent.exe nor cat.exe
[1366]51
[1362]523.0.3 2013-06-18
[1366]53ChangeLog
[1265]54========
55 * clean files in release (fix htdocs config)
56
[1260]573.0.2 2013-06-10
[1230]58ChangeLog
59========
[1368]60 * cacher:
61   * fixed #296: (PHP5.4+ only bug), racecondition Multiple instances of the same software causes PHP "cannot redeclare class" errors when readonly_protection is not in use
62   * fixed #301: refix locking impl
63   * fixed #307: compatible with Zend Debugger which requires to be installed after Zend Extension Manager
64 * admin
65   * fixed #303: tablesort.js not found in Diagnosis and Coverager
66 * misc
67   * fixed #297: segv on startup under sparc, ini setting overflow
[1230]68
[1224]693.0.1 2013-01-11
[1161]70ChangeLog
71========
[1368]72 * cacher:
73   * fixed crash when cache is too small on start up
74   * fixed #295: crash using traits with PHP 5.4.8+
75   * fix random crash when cache is reinitialized yet failed (Thanks to Brad Baker for generating crash dump)
76   * fix locking impl: improve stability on threaded env (Thanks to Mircea Nicolae for reproducing the bug)
77 * optimizer:
78   * (PHP_5_4) fix ZEND_JMP_SET_VAR
79   * (PHP_5_4) fix for goto
80 * diagnosis:
81   * undefined variable when ini is not found
82 * misc:
83   * fixed #290: workaround phpize vs fbsd make bug again
84   * improve compatibility with "the ionCube PHP Loader", Zend Optimizer
[1161]85
[1155]863.0.0 2012-10-29
[976]87API Changes
88========
89 * chg: proto array xcache_clear_cache(int type, [ int id = -1 ]). -1 means all cache splits
[1064]90 * new: proto array xcache_enable_cache(int type, [ int id = -1, [ bool enable = true ] ])
[1146]91 * new: proto array xcache_admin_namespace()
92 * new: proto array xcache_set_namespace(string namespace)
[979]93
94Ini Settings Changes
95========
96 * new: xcache.disable_on_crash = Off
[1117]97 * new: xcache.coverager_autostart = On
[1137]98 * new: xcache.allocator = bestfit (no other option value yet)
99 * new: xcache.var_allocator = bestfit (no other option value yet)
[1165]100 * new: xcache.var_namespace_mode = 0
101 * new: xcache.var_namespace = ""
[979]102
[976]103ChangeLog
104========
[1368]105 * cacher:
106   * closed #2 (auto disable caching on crash)
107   * closed #174 (updated api to support "clear all cache")
108   * closed #198 (support for caching protocol url)
109   * closed #287 (namespace support)
110   * cache can be enabled/disabled manually
111 * coverager:
112   * fixed #39 (ini_set never work for xcache.coverager setting. use API instead)
[1036]113 * code refactor
[1368]114   * use extension= to load XCache. loading via zend_extension= is unsupported
[1036]115   * split XCache features into multiple sub modules
[1368]116 * admin:
117   * updated XCache admin page
118   * adds an diagnosis module to give professional advise, accessable via htdocs pages
119 * misc:
120   * (>=PHP_5_3) closed #73 (warn for improper PHP_FCGI_CHILDREN setting fcgi mode)
[973]121
[969]1222.0.1 2012-07-14
[901]123ChangeLog
124========
125 * fixed #279: segv when cache is full (since 2.0)
[908]126 * fixed #281: subsequenc request segv when timeout happens during compiling
[902]127 * admin/ config changed. please update accordingly
[943]128 * WIN32: kill invalidate CRT parameters on shutdown
[956]129 * fixed: <=PHP_5_2 duplicate error message failed to include file
[960]130 * fixed #283: XCache admin APIs (admin page) cause SEGV if XCache failed to initize
[962]131 * fixed possible re-include a file by mixing include/include_once
[964]132 * fixed #264, #284: __FILE__ __DIR__ handling for moved/hardlinked files (set "xcache.experimental = on" to eanble this fix)
[901]133
[898]1342.0.0 2012-04-20
[399]135Ini Settings Changes
136========
137 * new: xcache.experimental = Off
138
139ChangeLog
140========
[871]141 * support for PHP_5_4
142 * reduce memory usage by caching 1 for multiple same content files
143 * correct __FILE__ __DIR__ supported for hardlinked files
[891]144 * fixed #275: one line struct definition was confusing struct parser
[562]145 * fixed #102: segv when var cacher is too small
146 * fixed #55: segv php tokenizer on certain special situation
[893]147 * fixed #278: admin page: wrong layout in opera
[500]148 * compiler errors: all compiler warning (E_STRICT only currently) is now cached and is supported for user handler
[887]149 * tests/bug52160.phpt: report multiple error correctly
[562]150
[812]1511.3.2 2011-06-04
[697]152========
[783]153 * avoid possible filename injection in admin page
[765]154 * adds 30 seconds timeout to "compiling" flag
[1368]155 * decompiler: improved decompiling
[794]156 * disassembler: improper handling of null field
[714]157 * disassembler: DECLARE_INHERITED_CLASS/DELAYED class not found
[709]158 * disassembler: don't dump builtin functions
[697]159 * fix win32 build against win32 native gnu tools
[698]160 * compatibility fix: fix segv on shutdown when ionCube Loader is loaded
[704]161 * fixed undefined index for xcache.count=1 and xcache.var_size>1
[707]162 * fixed #258: builtin constant memory leak on compile
[697]163
[696]1641.3.1 2010-11-27
165========
166 * 2G/4G limitation on 64bit arch
167 * xcache_unset matching e.g. prefixed_ values
168
[665]1691.3.0 2009-08-04
[562]170== ChangeLog ==
171 * PHP 5.3 support
[665]172 * fixed #138: no segv if cache is not initialized correctly
173 * default to 64M for xcache.size in xcache.ini
[612]174 * could not show module info in admin page when XCache is the last module
175 * wrong http auth realm
[613]176 * coverager: font-size and newline fix for firefox
[665]177 * admin page is now magic quote gpc aware
[562]178
1791.2.2 2007-12-29
180== ChangeLog ==
[492]181 * added module dependency
[472]182 * live with wrong system time: allow caching files with mtime in further
[451]183 * bug fix for compatibility with Zend Optimizer and other non-cachable
[562]184 * #59: Maximum execution time of 60 seconds exceeded
185 * #102: segv when var cacher is too small
186 * #55: segv php tokenizer on certain special situation
187
1881.2.1 2007-07-01
189== Ini Settings Changes ==
190 * new: xcache.admin.enable_auth = On
191
192== ChangeLog ==
[395]193 * #86: remove/edit variable in admin page
[433]194 * fixed #109: fast inc/dec was trying to break ro protection
[425]195 * fixed #101, #105: Fixed compatibility issue for apache 1.x
196 * fixed #94: Garbage collector disabled when xcache.cacher set to off
[407]197 * fixed #92: Zend Optimizer compatibility issue
[395]198 * fixed #77: hits/misses was not updated
[562]199 * fixed #59: pass by reference for internal function was broken
[395]200 * fixed #56: xcache_set segfaults when xcache.var_size=0
201
202========
2031.2.0 2006-12-10
204Ini Settings Changes
205========
206 * new: xcache.stat = On
207 * new: xcache.coverager =  Off
208 * chg: xcache.coveragedump_directory default to ""
209 * del: xcache.coveragedumper = Off
210
211New APIs
212========
213 * array xcache_coverager_decode(string data)
214 * void  xcache_coverager_start([bool clean = true])
215 * void  xcache_coverager_stop([bool clean = false])
216 * array xcache_coverager_get([bool clean = false])
217
218ChangeLog
219========
220 * [290] [291] [292] build with the m4 on solaris
221 * [283] removed zend_append_version_info. not needed after [282]
222 * [282] fix possible alloca() scope problem in lock
223 * [281] keep config.nice on make xcachesvnclean
224 * [279] fixed #48, was leaking info when cacher is not enabled by size
225 * [280] [278] trunk: fix coredump on shutdown when loaded as "extension" and after "suhosin" or "zend optimizer". thanks to Alex, Cristian and Esser
226 * [271] fix auto detection of php-cli/php-cgi for test
227 * [270] make [269] pass test cases
228 * [269] do not destruct shallow copied tmp_auto_globals. also improve copying of other hash tables
229 * [268] full compatible with auto_globals_jit, no need to disable it in ini from now on
230 * [250] fixed css class on switcher
231 * [231] fix zval reference handling
232 * [230] update dprint support, added configure option: --enable-xcache-dprint
233 * [228] more robust coverager
234 * [227] cacher: remove redundant open_basedir check which broke php-src/ext/standard/tests/file/bug24313.phpt
235 * [221] cacher: fix eleak in op_array non-shadow-copy (readonly_protection=on)
236 * [220] fixed #36, Bug in inherited static class variables
237 * [219] fix prototype for readonly_protection=off, fix testcase Zend/tests/bug37632.phpt
238 * [217] kill leak warning on debug build
239 * [216] avoid crash on php compiler error
240 * [215] add `make xcachetest` to run xcache enabled test
241 * [214] [212] fixed #41, early class binding
242 * [272] [267] [263] [200] fixes for php6
243 * [224] [193] kill 64bit warning when self test is enabled
244 * [190] trick to load and work with zend optimizer
245 * [189] call op_array_ctor handler on restore to be more compatible with other zend_extension
246 * [257] [183] xcache module is not required by coverage viewer any more
247 * [165] xcache.stat support to allow tuning off stat (new ini)
248 * [164] better way to handle system level ini settings so it can be display in phpinfo standardly
249
2501.1.0 2006-11-11
251 * merged [254] fix xcache.var_ttl displaying in info, fix xcache_get for ttl-unlimited
252 * merged [250] admin: fix switcher class on active
253 * merged [249] return 0 s instead of empty for deltatime
254 * merged [201] coverager: avoid crash when upstream failed to compile file
255 * merged from trunk: 159,161-162,167-180,182,184,186-187,194
256   * [194] PHP_5_2: new element in zend_brk_cont_element
257   * [186] [187] fix build on some rare arch
258   * [184] fix tplcov
259   * [178] fix type processor_t conflict with Mac OS X
260 * remove redundant open_basedir check, it's done before compiling
261 * trick in_compilation state, don't trigger __autoload at compile time
262 * FIX conflict between sandbox and user error handler
263 * [154] fix segv on MSHUTDOWN
264 * [153] win32/vc build fix
265 * [150] avoid crash when OOM on mem_realloc
266 * [148] reconstruct shm/allocator
267 * [147] show module info in statistics page
268 * [146] avoid reading of uninitialized data. thanks to valgrind
269 * [144] compat size displaying in admin page func
270 * [143] fixed string parameter parsing arg type for disassembler functions. thanks to check_paramaters.php
271 * [141] fix cache clear corruption bug
272 * [140] fix refcount on cache #1 #2 …
273 * [133] admin-page: be more friendly if XCache isn't loaded
274 * [132] fix zts on calling destroy_op_array
275 * [131] move open_files out of sandbox, it's not needed
276 * [130] improve locking for compile
277 * [137] [138] changed the coding way of unlinking list. fixed ttl expires dead loop
278 * [114] gc expired items, new ini: xcache.ttl xcache.gc_interval xcache.var_ttl …
279 * [126] fix xcache_isset reported by http://forum.lighttpd.net/topic/1397
280 * [119] fix leak in xcache.test=1; XCACHE_VERSION/XCACHE_MODULES length off-by-one
281 * [118] show gc countdown in admin page
282 * [113] zts build fix
283 * [112] avoid crash when OOM on mem_(calloc|realloc|strndup)
284 * [108] update percent bar to vertical/avail
285 * [107] show XCache version in admin page
286 * [105] trigger jit on $_SERVER when needed
287 * [101] note: xcache.mmap_path is a file
288 * [100] FIX: alloc'ed wrong size for string on restore
289 * [99]  sohosin compatible & TSRM fix.
290 * [96]  remove tailing \0 in filename of administration html output. reported by …
291 * [94]  PHP_5_2: __tostring cache was MFH by php
292 * [93]  try to show both count/size assert before abort
293 * [92]  PHP_5_2: auto module_global is maintained by php engine
294 * [90] [91] kill compiler warnings
295 * [87]  XCACHE_INDENT fallback
296 * [84]  handle without inodes
297 * [79]  fix messy XCACHE_MAP_FAILED checking
298 * [78]  catch up with PHP_5_2, zend_property_info.ce
299 * [77]  leakcheck
300
301 (not all changesets is list here)
Note: See TracBrowser for help on using the repository browser.