| 1 | 3.0.0 2012-??-?? |
|---|
| 2 | API Changes |
|---|
| 3 | ======== |
|---|
| 4 | * chg: proto array xcache_clear_cache(int type, [ int id = -1 ]). -1 means all cache splits |
|---|
| 5 | * new: proto array xcache_enable_cache(int type, [ int id = -1, [ bool enable = true ] ]) |
|---|
| 6 | |
|---|
| 7 | Ini Settings Changes |
|---|
| 8 | ======== |
|---|
| 9 | * new: xcache.disable_on_crash = Off |
|---|
| 10 | * new: xcache.coverager_autostart = On |
|---|
| 11 | * new: xcache.allocator = bestfit (no other option value yet) |
|---|
| 12 | * new: xcache.var_allocator = bestfit (no other option value yet) |
|---|
| 13 | |
|---|
| 14 | ChangeLog |
|---|
| 15 | ======== |
|---|
| 16 | * closes #2: auto disable caching on crash |
|---|
| 17 | * closes #73: warn for improper PHP_FCGI_CHILDREN setting fcgi mode (>=PHP_5_3) |
|---|
| 18 | * closes #174: updates api to support "clear all cache" |
|---|
| 19 | * fixes #39: ini_set never work for xcache.coverager setting. use API instead |
|---|
| 20 | * code refactor |
|---|
| 21 | * uses extension= to load XCache. loading via zend_extension= is unsupported |
|---|
| 22 | * split XCache features into multiple sub modules |
|---|
| 23 | * updates XCache admin page |
|---|
| 24 | * adds an diagnosis module to give professional advise, accessable via htdocs pages |
|---|
| 25 | * cache can be enabled/disabled manually |
|---|
| 26 | |
|---|
| 27 | 2.0.1 2012-07-14 |
|---|
| 28 | ChangeLog |
|---|
| 29 | ======== |
|---|
| 30 | * fixed #279: segv when cache is full (since 2.0) |
|---|
| 31 | * fixed #281: subsequenc request segv when timeout happens during compiling |
|---|
| 32 | * admin/ config changed. please update accordingly |
|---|
| 33 | * WIN32: kill invalidate CRT parameters on shutdown |
|---|
| 34 | * fixed: <=PHP_5_2 duplicate error message failed to include file |
|---|
| 35 | * fixed #283: XCache admin APIs (admin page) cause SEGV if XCache failed to initize |
|---|
| 36 | * fixed possible re-include a file by mixing include/include_once |
|---|
| 37 | * fixed #264, #284: __FILE__ __DIR__ handling for moved/hardlinked files (set "xcache.experimental = on" to eanble this fix) |
|---|
| 38 | |
|---|
| 39 | 2.0.0 2012-04-20 |
|---|
| 40 | Ini Settings Changes |
|---|
| 41 | ======== |
|---|
| 42 | * new: xcache.experimental = Off |
|---|
| 43 | |
|---|
| 44 | ChangeLog |
|---|
| 45 | ======== |
|---|
| 46 | * support for PHP_5_4 |
|---|
| 47 | * reduce memory usage by caching 1 for multiple same content files |
|---|
| 48 | * correct __FILE__ __DIR__ supported for hardlinked files |
|---|
| 49 | * fixed #275: one line struct definition was confusing struct parser |
|---|
| 50 | * fixed #102: segv when var cacher is too small |
|---|
| 51 | * fixed #55: segv php tokenizer on certain special situation |
|---|
| 52 | * fixed #278: admin page: wrong layout in opera |
|---|
| 53 | * compiler errors: all compiler warning (E_STRICT only currently) is now cached and is supported for user handler |
|---|
| 54 | * tests/bug52160.phpt: report multiple error correctly |
|---|
| 55 | |
|---|
| 56 | 1.3.2 2011-06-04 |
|---|
| 57 | ======== |
|---|
| 58 | * avoid possible filename injection in admin page |
|---|
| 59 | * adds 30 seconds timeout to "compiling" flag |
|---|
| 60 | * decompiler: improves decompiling |
|---|
| 61 | * disassembler: improper handling of null field |
|---|
| 62 | * disassembler: DECLARE_INHERITED_CLASS/DELAYED class not found |
|---|
| 63 | * disassembler: don't dump builtin functions |
|---|
| 64 | * fix win32 build against win32 native gnu tools |
|---|
| 65 | * compatibility fix: fix segv on shutdown when ionCube Loader is loaded |
|---|
| 66 | * fixed undefined index for xcache.count=1 and xcache.var_size>1 |
|---|
| 67 | * fixed #258: builtin constant memory leak on compile |
|---|
| 68 | |
|---|
| 69 | 1.3.1 2010-11-27 |
|---|
| 70 | ======== |
|---|
| 71 | * 2G/4G limitation on 64bit arch |
|---|
| 72 | * xcache_unset matching e.g. prefixed_ values |
|---|
| 73 | |
|---|
| 74 | 1.3.0 2009-08-04 |
|---|
| 75 | == ChangeLog == |
|---|
| 76 | * PHP 5.3 support |
|---|
| 77 | * fixed #138: no segv if cache is not initialized correctly |
|---|
| 78 | * default to 64M for xcache.size in xcache.ini |
|---|
| 79 | * could not show module info in admin page when XCache is the last module |
|---|
| 80 | * wrong http auth realm |
|---|
| 81 | * coverager: font-size and newline fix for firefox |
|---|
| 82 | * admin page is now magic quote gpc aware |
|---|
| 83 | |
|---|
| 84 | 1.2.2 2007-12-29 |
|---|
| 85 | == ChangeLog == |
|---|
| 86 | * added module dependency |
|---|
| 87 | * live with wrong system time: allow caching files with mtime in further |
|---|
| 88 | * bug fix for compatibility with Zend Optimizer and other non-cachable |
|---|
| 89 | * #59: Maximum execution time of 60 seconds exceeded |
|---|
| 90 | * #102: segv when var cacher is too small |
|---|
| 91 | * #55: segv php tokenizer on certain special situation |
|---|
| 92 | |
|---|
| 93 | 1.2.1 2007-07-01 |
|---|
| 94 | == Ini Settings Changes == |
|---|
| 95 | * new: xcache.admin.enable_auth = On |
|---|
| 96 | |
|---|
| 97 | == ChangeLog == |
|---|
| 98 | * #86: remove/edit variable in admin page |
|---|
| 99 | * fixed #109: fast inc/dec was trying to break ro protection |
|---|
| 100 | * fixed #101, #105: Fixed compatibility issue for apache 1.x |
|---|
| 101 | * fixed #94: Garbage collector disabled when xcache.cacher set to off |
|---|
| 102 | * fixed #92: Zend Optimizer compatibility issue |
|---|
| 103 | * fixed #77: hits/misses was not updated |
|---|
| 104 | * fixed #59: pass by reference for internal function was broken |
|---|
| 105 | * fixed #56: xcache_set segfaults when xcache.var_size=0 |
|---|
| 106 | |
|---|
| 107 | ======== |
|---|
| 108 | 1.2.0 2006-12-10 |
|---|
| 109 | Ini Settings Changes |
|---|
| 110 | ======== |
|---|
| 111 | * new: xcache.stat = On |
|---|
| 112 | * new: xcache.coverager = Off |
|---|
| 113 | * chg: xcache.coveragedump_directory default to "" |
|---|
| 114 | * del: xcache.coveragedumper = Off |
|---|
| 115 | |
|---|
| 116 | New APIs |
|---|
| 117 | ======== |
|---|
| 118 | * array xcache_coverager_decode(string data) |
|---|
| 119 | * void xcache_coverager_start([bool clean = true]) |
|---|
| 120 | * void xcache_coverager_stop([bool clean = false]) |
|---|
| 121 | * array xcache_coverager_get([bool clean = false]) |
|---|
| 122 | |
|---|
| 123 | ChangeLog |
|---|
| 124 | ======== |
|---|
| 125 | * [290] [291] [292] build with the m4 on solaris |
|---|
| 126 | * [283] removed zend_append_version_info. not needed after [282] |
|---|
| 127 | * [282] fix possible alloca() scope problem in lock |
|---|
| 128 | * [281] keep config.nice on make xcachesvnclean |
|---|
| 129 | * [279] fixed #48, was leaking info when cacher is not enabled by size |
|---|
| 130 | * [280] [278] trunk: fix coredump on shutdown when loaded as "extension" and after "suhosin" or "zend optimizer". thanks to Alex, Cristian and Esser |
|---|
| 131 | * [271] fix auto detection of php-cli/php-cgi for test |
|---|
| 132 | * [270] make [269] pass test cases |
|---|
| 133 | * [269] do not destruct shallow copied tmp_auto_globals. also improve copying of other hash tables |
|---|
| 134 | * [268] full compatible with auto_globals_jit, no need to disable it in ini from now on |
|---|
| 135 | * [250] fixed css class on switcher |
|---|
| 136 | * [231] fix zval reference handling |
|---|
| 137 | * [230] update dprint support, added configure option: --enable-xcache-dprint |
|---|
| 138 | * [228] more robust coverager |
|---|
| 139 | * [227] cacher: remove redundant open_basedir check which broke php-src/ext/standard/tests/file/bug24313.phpt |
|---|
| 140 | * [221] cacher: fix eleak in op_array non-shadow-copy (readonly_protection=on) |
|---|
| 141 | * [220] fixed #36, Bug in inherited static class variables |
|---|
| 142 | * [219] fix prototype for readonly_protection=off, fix testcase Zend/tests/bug37632.phpt |
|---|
| 143 | * [217] kill leak warning on debug build |
|---|
| 144 | * [216] avoid crash on php compiler error |
|---|
| 145 | * [215] add `make xcachetest` to run xcache enabled test |
|---|
| 146 | * [214] [212] fixed #41, early class binding |
|---|
| 147 | * [272] [267] [263] [200] fixes for php6 |
|---|
| 148 | * [224] [193] kill 64bit warning when self test is enabled |
|---|
| 149 | * [190] trick to load and work with zend optimizer |
|---|
| 150 | * [189] call op_array_ctor handler on restore to be more compatible with other zend_extension |
|---|
| 151 | * [257] [183] xcache module is not required by coverage viewer any more |
|---|
| 152 | * [165] xcache.stat support to allow tuning off stat (new ini) |
|---|
| 153 | * [164] better way to handle system level ini settings so it can be display in phpinfo standardly |
|---|
| 154 | |
|---|
| 155 | 1.1.0 2006-11-11 |
|---|
| 156 | * merged [254] fix xcache.var_ttl displaying in info, fix xcache_get for ttl-unlimited |
|---|
| 157 | * merged [250] admin: fix switcher class on active |
|---|
| 158 | * merged [249] return 0 s instead of empty for deltatime |
|---|
| 159 | * merged [201] coverager: avoid crash when upstream failed to compile file |
|---|
| 160 | * merged from trunk: 159,161-162,167-180,182,184,186-187,194 |
|---|
| 161 | * [194] PHP_5_2: new element in zend_brk_cont_element |
|---|
| 162 | * [186] [187] fix build on some rare arch |
|---|
| 163 | * [184] fix tplcov |
|---|
| 164 | * [178] fix type processor_t conflict with Mac OS X |
|---|
| 165 | * remove redundant open_basedir check, it's done before compiling |
|---|
| 166 | * trick in_compilation state, don't trigger __autoload at compile time |
|---|
| 167 | * FIX conflict between sandbox and user error handler |
|---|
| 168 | * [154] fix segv on MSHUTDOWN |
|---|
| 169 | * [153] win32/vc build fix |
|---|
| 170 | * [150] avoid crash when OOM on mem_realloc |
|---|
| 171 | * [148] reconstruct shm/allocator |
|---|
| 172 | * [147] show module info in statistics page |
|---|
| 173 | * [146] avoid reading of uninitialized data. thanks to valgrind |
|---|
| 174 | * [144] compat size displaying in admin page func |
|---|
| 175 | * [143] fixed string parameter parsing arg type for disassembler functions. thanks to check_paramaters.php |
|---|
| 176 | * [141] fix cache clear corruption bug |
|---|
| 177 | * [140] fix refcount on cache #1 #2 … |
|---|
| 178 | * [133] admin-page: be more friendly if XCache isn't loaded |
|---|
| 179 | * [132] fix zts on calling destroy_op_array |
|---|
| 180 | * [131] move open_files out of sandbox, it's not needed |
|---|
| 181 | * [130] improve locking for compile |
|---|
| 182 | * [137] [138] changed the coding way of unlinking list. fixed ttl expires dead loop |
|---|
| 183 | * [114] gc expired items, new ini: xcache.ttl xcache.gc_interval xcache.var_ttl … |
|---|
| 184 | * [126] fix xcache_isset reported by http://forum.lighttpd.net/topic/1397 |
|---|
| 185 | * [119] fix leak in xcache.test=1; XCACHE_VERSION/XCACHE_MODULES length off-by-one |
|---|
| 186 | * [118] show gc countdown in admin page |
|---|
| 187 | * [113] zts build fix |
|---|
| 188 | * [112] avoid crash when OOM on mem_(calloc|realloc|strndup) |
|---|
| 189 | * [108] update percent bar to vertical/avail |
|---|
| 190 | * [107] show XCache version in admin page |
|---|
| 191 | * [105] trigger jit on $_SERVER when needed |
|---|
| 192 | * [101] note: xcache.mmap_path is a file |
|---|
| 193 | * [100] FIX: alloc'ed wrong size for string on restore |
|---|
| 194 | * [99] sohosin compatible & TSRM fix. |
|---|
| 195 | * [96] remove tailing \0 in filename of administration html output. reported by … |
|---|
| 196 | * [94] PHP_5_2: __tostring cache was MFH by php |
|---|
| 197 | * [93] try to show both count/size assert before abort |
|---|
| 198 | * [92] PHP_5_2: auto module_global is maintained by php engine |
|---|
| 199 | * [90] [91] kill compiler warnings |
|---|
| 200 | * [87] XCACHE_INDENT fallback |
|---|
| 201 | * [84] handle without inodes |
|---|
| 202 | * [79] fix messy XCACHE_MAP_FAILED checking |
|---|
| 203 | * [78] catch up with PHP_5_2, zend_property_info.ce |
|---|
| 204 | * [77] leakcheck |
|---|
| 205 | |
|---|
| 206 | (not all changesets is list here) |
|---|