Donate Share

eAccelerator

File Release Notes and Changelog

Release Name: eAccelerator 0.9.5-rc1

Notes:
Changes in this version (from 0.9.4):
        - This version brings full php 5.1 support, this has as side-effect that
          eAccelerator won't work anymore with php 4 on windows, on other
          platforms this isn't a problem.
        - The shared memory functions, session handler and content cache are
          disabled by default now. They are only used by a small amount of
          users and they could allow local users to fill up the memory, if they
          aren't secured properly.
        - The old web control panel and the disassembler have been removed
          from the code. They have been replaced with a set of php functions
          that allow the same functionality to be implemented in a PHP script.
          The control.php and the dasm.php files are such scripts. More
          information about this can be found in the README.
        - Memory footprint should be reduced because redundant information in
          the cached scripts is no longer stored.
        - File hashing in the cache directory to improve performance with a
          big amount of cache files.
    WARNING: The encoder and loader DO not support php 5.1 nor php 5.0 and contain
    a lot of bug for php 4. This is the last release the encoder/loader
    functionality will be available. Maybe later a new encoder/loader will be
    included but there aren't any plans for that.
    As always all patches and help are more then welcome.

A list of know issues is avaible from our bugtracker:
http://www.eaccelerator.net/browser/eaccelerator/tags/0.9.5-rc1

The SHA1SUMS for the two files are:
a737dc9fe8a9e688585aaf2d9dc0c209cbb77ac3  eaccelerator-0.9.5-rc1.tar.bz2
f3b2efd4529274401294541f8ca05a1ab422c998  eaccelerator-0.9.5-rc1.zip

Changes: 2006-07-25 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Fix restoring of opcode handler for php 5.0.5 when files are loaded from disk cache. This fixes bug #147 * Some update in the release notes for the upcoming rc1 * Fix loader.c too so we don't get any linking errors. 2006-07-24 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Make clean routine support dir hashing. Again, this should be tested on win32! * Use a define for the magic string in the eAccelerator file headers * Bump up version to 0.9.5-rc1 * Put -O2 back on for -rc1 * Update the VC2005 project files * Add a config.w32 file for static building of eAccelerator 2006-07-24 Hans Rakers <hans at parse dot nl> * Fix for ticket #47 and #63, related to problems restoring empty strings and empty string array keys from the disk cache. 2006-07-23 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Fix ticket #143, seems that PHP < 5 doesn't make the extension lower case. 2006-07-22 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Some zval macro's differ for php4 and 5, this fixes #146. * Also rewrite clean code for cache files on win32 for directory hashing. This hasn't been tested on windows!!! * Added a script to create a bugreport file with more information about the userenvironment. 2006-07-19 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Use some more zval macro's to cleanup things a bit * Removed the code from mm.c that tried to allocate more then one segment because it didn't work, this part needs a redesign of the mm code to allow this. It should allocate one to init the shared memory and add the other to the free list. 2006-07-02 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Made some fixes to ea_info.c to make eA compile on windows again. This should fix bug #116. 2006-06-30 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Cleaned up the checking for other incompatible extensions a bit. This should fix the use of IonCube with eAccelerator. I did some test loading IonCube in different ways and never got in to trouble. This fixes ticket #66. 2006-06-30 Hans Rakers <hans at parse dot nl> * Added ability to sort table columns by clicking on the table headings in the control panel * Quick & dirty fix for eaccelerator_clear to work with the new cache dir hashing. This still needs to be done for win32. eaccelerator_clean still needs some fixing to work with the dir hashing. 2006-06-27 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Fixed ifdef for #108 to use only on windows * Fix for bug #109, #31 and SF-1102070 * Cleaned-up RINIT a bit for hostname determining * Included the fix from ticket #94 for zts 2006-06-26 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Fix ticket #108 * Removed webui.[c|h] from the windows project files 2006-06-06 Hans Rakers <hans at parse dot nl> * Fix for ticket #101 ('bailout' is used in zend_globals.h in a ZTS build) as suggested by <ihanick at gmail dot com> 2006-06-02 Hans Rakers <hans at parse dot nl> * Removed two unused vars from the internal datastructures * Fixed constructor inheritance. This fixes handling of implicit constructors and solves ticket #89 2006-05-14 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Forgot to remove some debug messages for the filter bug. 2006-05-08 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Make the disassembler do openbasedir checks before showing a file, this fixes bug #59 * Changed the filter logic a bit, this fixes bug #72 2006-05-07 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Added directory hashing for md5 and inode based keys based on a patch from <mattias at efterfesten.com>, default is 2 levels deep. * Renamed some left over MM based names to EA. * Increased default hash size for user and script to 512 for extra performance. 2006-05-04 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Don't store the doc_comments in op_array and class_entry. They are useless. this should reduce memory footprint. * Included patch from Stadler from ticket #23. It adds a nice menu and code highlighting. 2006-04-13 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * When content cache is used also compiled shared memory functions 2006-04-11 Hans Rakers <hans at parse dot nl> * Fix for 64-bit compilation warnings "cast to pointer from integer of different size" 2006-04-11 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * A lot of fixes to silence the compile warnings generated when compiling with the default Fedora compiler options * Removed FC compiled options from Makefile.in again, stupid me 2006-04-11 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Silenced the unlock function for win32 until a windows developer can take a look at it. * Updated the README a little more for the new control panel * Added release notes for beta2 * Bumped up version to 0.9.5-beta2 * Patch for dasm.php form Stadler, see #23 * Fixed typo in optimizer which broke compilation for PHP != 5.1 * Released beta2 2006-04-09 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Fixed some typos in dasm.php * Added authentication to the disassembler 2006-04-06 Hans Rakers <hans at parse dot nl> * Fixed handling of interfaces. This fixes sf.net bug #1440575. This fix also introduces some changes in the cached object structure so remember to empty your disk caches if you have them. This is always a good thing to do after upgrading btw :) 2006-04-06 Hans Rakers <hans at parse dot nl> * Reverted the change to the handling of ZEND_BRK made by me on 2006-03-17 since it wasn't working as it should. Since this reintroduces sf.net bug #1442923 i added some code to prevent this bug using a different approach, by restoring operand types changed by build_cfg if build_cfg exits with exit code 0. Since php-5.1 some opcode handlers expect a strict set of operand types, anything else results in 'Invalid opcode' errors. Since build_cfg changes some operand types these changes need to be reverted once the optimizer finishes. For now the only opcode to which this all applies is ZEND_FETCH_CONSTANT, which expects either a CONST or a UNUSED in op1 and a CONST in op2 (See zend_vm_def.h) 2006-04-04 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Fixed some error introduced by fixing some win32 stuff :( 2006-04-03 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Moved the FLOCK stuff to a place so it can be used by eLoader to * Fixed quite some compile warnings on Win32 * Updated VC6 project files 2006-03-28 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Removed the constant that were registered in the debug code. They could only be used in php code and not in the config file. This handles bug #29 2006-03-25 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Source code is now shown in dasm.php * Added source-code lines to the returned opcode array in ea_dasm.c 2006-03-21 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Fixed bug #24 2006-03-17 Hans Rakers <hans at parse dot nl> * Fix for sf.net bug #1442839 (handling of ZEND_ASSIGN_OBJ by the optimizer) * Changed BRK handling to not bail out of the optimizer prematurely on a multi-level break. This does need some more testing, but should fix sf.net bug #1442923 * Removed some dead code in ea_store.c and excluded some debug code from compilation in optimize.c 2006-03-09 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Included fcntl.h in ea_info.c, this should fix bug #13 2006-03-07 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Set refcount to 1 before storing a zval in the usercache. This fixes bug #4. * Some formatting cleanups in cache.c * In restore_zval the zval length could be something else then 0 when an empty string was set. * Removed the shorttags in control.php and dasm.php to fix bug #8. * Set the svn keywords property to some files. * Moved some function defs from eaccelerator.h to the right files. 2006-03-06 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Removed the old webui and made a new controlpanel and disassembler. * Added php api documentation 2006-03-02 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Changed copyright dates to 2006 * Updated the eaccelerator url in some last files * I removed all authors from specific files. Authors can be traced through mmcache and eaccelerator cvs. I did this because some names should be added to quite some source files while others have added their own while contributing less then the once not mentoined. All contributors are credited in the AUTHORS file and specific information can be found in the Changelog and cvs. 2006-03-01 Hans Rakers <hans at parse dot nl> * Bunch of Win32 fixes. It compiles cleanly now (tested with VC++ 6.0) * Fix to the optimizer for bug #1439344 * Fix to ea_store.c for a build problem on RHEL3 reported on the forums at https://sourceforge.net/forum/message.php?msg_id=3596327 2006-02-28 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Changed the module entry url to eaccelerator.net and year * Removed the crash function * Disable the keys, session and content cache by default. These could result in a local DoS by cache poisioning 2006-02-24 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Release of eaccelerator 0.9.5-beta1 2006-02-24 Hans Rakers <hans at parse dot nl> * Altered the way debug output is in/excluded by adding a macro that makes sure calls to functions like ea_debug_printf don't get compiled in a non-debug build. The macro approach was chosen to prevent swamping the code with any more ifdef statements. This approach (as opposed to the previous empty-function-if-no-debug-build) also makes sure debug function arguments such as the tons of getpid()'s (which don't come cheap) don't get compiled in and executed in a non-debug build. 2006-02-23 Hans Rakers <hans at parse dot nl> * Don't increase parent refcount in restore_class_parent. This is wrong and leads to trouble in the Zend shutdown phase (zend_destroy_class). This most likely also fixes the REMOVE_POINTER_FROM_LIST segfault of bug #1432758 2006-02-22 Hans Rakers <hans at parse dot nl> * Workaround for "multiple definitions of symbol" thread-safe build problem on OSX. This fixes bug #1407520 * Renamed mm_mutex to ea_mutex to avoid confusion with eA's memory manager. This was probably a leftover of mmCache times. 2006-02-21 Hans Rakers <hans at parse dot nl> * Ditched the variadic macros. They were kinda useless now anyway since they were only passing one arg. This should make the Win32 folks happy since VC6 doesn't seem to support variadic macros (its a C99 thing) * Removed some excessive debug output. 2006-02-20 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Fixed bypassing open_basedir restriction when the file was already cached. This fixes bug #1427719 * Included patch #1435196 to fix the problem of duplicate keys that don't get removed. 2006-02-20 Hans Rakers <hans at parse dot nl> * Fixed static_members handling for php-5.0. Broke this while working on PHP-5.1 support. Lost in ifdef statements ;) * Fixed ZE1 (<=PHP4) problem regarding parent class lookup during restore. Parent classname wasn't lowercased before lookup in class_table. This also fixes bug #1432758 (can't restore parent class "stdClass" of class xyz) 2006-02-19 Hans Rakers <hans at parse dot nl> * Restored PHP4 compatibility * Fixed inheritance/prototype issue with abstract methods and classes during restore. zend_do_inheritance handles these properly now. 2006-02-18 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Bumped up version to 0.9.5-dev 2006-02-17 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> * Merged PHP_5_1 branch with HEAD 2006-02-17 Hans Rakers <hans at parse dot nl> * PHP_5_1: Some final fixes before merging to HEAD: - Fixed bug #1410723 (handling of class constants by the optimizer) - Fixed backwards compatibility with PHP < 5.1 This revision works pretty well in my testing environment, PHP-5.1 support seems to be coming along quite well. Please test with your applications/ in your environment and report back with your experiences or possible problems!