| Changelog for pthreads | 
                                    
                        | Release | What has changed? | 
                                            
                                                    
                                | 3.1.6 | fix explicit array cast for ASSIGN_DIM add Threaded::notifyOne
 fix bug in Threaded properties causing incorrect objects to be fetched by read
 fix bug in trait aliases
 fix INHERIT_NONE breaking lambdas
 fix bug in constant copy routine for 7.1
 | 
                                                                    
                                                    
                                | 3.1.5 | fix issue with return/param verification overload (32bit), gh issue #523 | 
                                                                    
                                                    
                                | 3.1.4 | fix various faults caused by globally allocated strings (removed) minor stability improvements
 | 
                                                                    
                                                    
                                | 3.1.3 | fix gh issue #482 | 
                                                                    
                                                    
                                | 3.1.2 | introduce explicit object cast (see test) | 
                                                                    
                                                    
                                | 3.1.1 | Fix fault when ::shutdown is called on Thread preceeding ::start | 
                                                                    
                                                    
                                | 3.1.0 | Initial development of v3 is complete, this release is the first supported release of pthreads v3 for PHP7.
 Breaking changes for Collectables in this release.
 SemVer will be (roughly) followed from this release onward.
 Everyone on PHP7 must upgrade!
 | 
                                                                    
                                                    
                                | 3.0.8 | fix gh issue #493 (exception handling bug) fix gh issue #495 (constant AST bug)
 creation/destruction of additional contexts done inside critical section for stability
 remove a bunch of redundant code, various
 | 
                                                                    
                                                    
                                | 3.0.7 | fix issue destroying monitors (deadlocking on shutdown) remove Thread::kill
 disable auto-join on __destruct of Thread
 use global persistent shared strings table
 support compiling and linking with AddressSanitizer support
 | 
                                                                    
                                                    
                                | 3.0.6 | only allow execution in CLI, the only place it is really sensible | 
                                                                    
                                                    
                                | 3.0.5 | fix gh issue #489 (errors on WIN64) | 
                                                                    
                                                    
                                | 3.0.4 | fix fault caused by manipulation of uninitialized properties table by various handlers | 
                                                                    
                                                    
                                | 3.0.3 | fix on store of resource type in threaded object causing resource to be dtored early fix for Thread::kill to stop it bailing out during thread shutdown
 coerce arrays to Volatile objects so they behave as expected when set as members of Threaded objects
 fix for the copying of classes which implement iterators, caused execution to be unsafe
 | 
                                                                    
                                                    
                                | 3.0.2 | fix gh issue #484 support object comparison
 do not allow exception handlers that are inconsistent with thread options to be inherited
 | 
                                                                    
                                                    
                                | 3.0.1 | fix gh issue #482 | 
                                                                    
                                                    
                                | 3.0.0 | first PHP7 release | 
                                                                    
                                                    
                                | 2.0.10 | fix crash when sending SIGINT, clashed with ::kill | 
                                                                    
                                                    
                                | 2.0.9 | add support for closures as members add support for creating anonymous objects from closures
 fix referencing issue
 | 
                                                                    
                                                    
                                | 2.0.8 | resolve bugs in static class members resolve bug in property table write failure causing fault
 introduce Collectable convenience class for Pools
 get deep copying of functions working
 add message to termination info
 make consistent isset/empty behaviour on Threaded objects
 add Threaded::extend voodoo method
 solve system memory leaks in windows
 introduce object cache, saving on allocation for access to all members
 fix crash when class has legacy ctor
 fix fault in ::chunk
 fix fault in fpm
 fix overflow in ::wait
 various other stability improvements
 | 
                                                                    
                                                    
                                | 2.0.7 | fix regression error in last release | 
                                                                    
                                                    
                                | 2.0.6 | fix build in windows | 
                                                                    
                                                    
                                | 2.0.5 | fix fault in windows fix fault from incorrect efree of run time cache
 | 
                                                                    
                                                    
                                | 2.0.4 | fix memory errors introduced in 2.0.0 fix 5.3 build
 synchronize versions
 | 
                                                                    
                                                    
                                | 2.0.3 | Fix bug in trait alias/precedence (gh bug #274) Fix leak (gh bug #272)
 | 
                                                                    
                                                    
                                | 2.0.2 | Fix build in BSD and other *nix where PTHREAD_MUTEX_RECURSIVE_NP is enum | 
                                                                    
                                                    
                                | 2.0.1 | Add globals inheritance option Add method to execute block in global scope
 Fix build when SPL is not loaded (spl sucks)
 | 
                                                                    
                                                    
                                | 2.0.0 | Fix errors; inheritance and scope in threads (bugs in prepare) Fix fault; accessing destroyed objects (throw ex)
 Make use of inheritance within pthreads (bc compatible using alias)
 Remove abstract flag from ::run method
 Remove use of errors in favour of exceptions
 Remove all final modifiers on threaded objects
 Fix fault; submit to incorrectly constructed Pool
 Fixed fault; (re)using primitives that are object members across contexts
 Fixed fault; intermittent fault on session_start inside threads
 Various internal improvements
 | 
                                                                    
                                                    
                                | 1.0.1 | Fix fault in logic of Pool Fix segfaut in synchronized blocks on exception #236
 | 
                                                                    
                                                    
                                | 1.0.0 | Pooling implemented as part of extension Stackable no longer abstract to reduce boilerplate
 Simplified code in a few places
 | 
                                                                    
                                                    
                                | 0.1.0 | fixed shutdown handler causing segfaults add ::kill method, safely kill threads that are blocking/misbehaving
 fix segfault induced by clone
 fix usage of sessions causing segfaults
 various internal changes to improve stability
 | 
                                                                    
                                                    
                                | 0.0.45 | additional functionality for all objects: pop/merge/shift/chunk shared class name table saves memory for each context/avoids errors
 segfaults/memory errors avoided where possible
 more predictable behaviour when objects gone away
 | 
                                                                    
                                                    
                                | 0.0.44 | fix ::merge duplicate keys (#97, #98) improvements from weltling for config.w32
 corrections to some examples
 fix #99 resources crash
 fix tests - missing include and format incorrect in expect section
 | 
                                                                    
                                                    
                                | 0.0.43 | ::isTerminated to detect fatal errors and uncaught exceptions cast pthreads objects to array
 implement count on pthreads object
 implement selective inheritance (control what is available in the threaded context)
 fix crash when undefined dimension is accessed
 fix state detection when crash encountered
 | 
                                                                    
                                                    
                                | 0.0.42 | stability and bugfix update iteration of objects working as expected from any context
 some leaks and segfaults avoided/fixed
 | 
                                                                    
                                                    
                                | 0.0.41 | stability and bug fix update remove ::wait(member, [timeout])
 fix bugs in synchronization
 remove the need to use default object properties
 less calls to EG at thread runtime
 remove complex variables ( resources / objects ) from static class members
 rely completely on pthreads storage for object members
 | 
                                                                    
                                                    
                                | 0.0.40 | access to static class properties bugs resolved provisions made for sharing resources among contexts
 additional options for synchronization and advancement of the API
 | 
                                                                    
                                                    
                                | 0.0.39 | fix access to undefined static class members fix redeclaration of some extension declared constants
 ::wait(member, timeout) functionality
 | 
                                                                    
                                                    
                                | 0.0.38 | removal of most globals, just the lock remains faster mechanism for connecting to pthreads objects
 locking independant of the underlying mutex type ( for when error checking is unavailable )
 interfaces working in the multi-threaded environment
 traits working in the multi-threaded environment
 inheritance working as the programmer declared it
 function table inherited
 INI entries inherited
 a more compatible method of creating class entries in the threading context
 thread startup and shutdown uniform across SAPI environments
 stack to workers from any context with a reference
 more tests, to help me with bug reports
 some other boring stuff ...
 | 
                                                                    
                                                    
                                | 0.0.37 | default properties working as expected leaks from default properties plugged
 advancements in state detection
 cleanup of PHP API, methods / parameters / classes etc ( final )
 stability improvements, various
 object functionality improvements
 storage improvements, various
 | 
                                                                    
                                                    
                                | 0.0.36 | Advancedments in Worker/Stackable functionality Better use of object funcionality
 protected methods provide synchronized access to instance methods for stackables, workers and threads
 private methods only allowed to be executed within the threading context
 read/write access to all thread data
 __prepare no longer required
 | 
                                                                    
                                                    
                                | 0.0.35 | The package with version 0.0.34 contains an error and will not build without debug enabled | 
                                                                    
                                                    
                                | 0.0.33 | Please report bugs at https://bugs.php.net/report.php?package=pthreads |