4 "Ultramagnetic" 9-Oct-2014
6 - Closure::bind support
7 - Cleanup/shrink various runtime data structures
8 - Various jit performance optimizations
9 - Fix various debugger crashes
10 - Better handling of memory limits
11 - Hack: System user attributes will be prefixed with __, notably <<Override>> renamed to <<__Override>>
12 - Hack: Support for 'abstract final' non-instantiable non-inheritable "utility" classes
15 - Use vasm virtual registers in x64 backend, transition fully to vasm-xls
16 - 'arraykey' scalar typehint that accepts both ints and strings
17 - Add OSS benchmarking suite
19 - [resumable] Set resumed flag before suspending VarEnv
20 - Objprof for HHVM (Approx. instance counter)
21 - Make RUSAGE_THREAD available to getrusage PHP function
22 - clean up /tmp/test-run- files
23 - VASM register-coalescing via hinting
24 - Be more conservative about HNI types when there are InterceptableFunctions
25 - Add runtime support for null-safe method call operator "?->"
26 - Add sanity test system to OSS benchmarker
27 - Fix double deallocation of object in zend conversion of object to string
28 - [hhvm|memoize] Makes <<__Memoize>> work with arbitrary args
29 - Use raw troff encoding for official HHVM man page
30 - Add --php options to HHVM man page
31 - Fix GMP tests/crashes
32 - Implement posix_errno
33 - Xdebug remote debugging compatibility and bug fixes
34 - Add options parameter to DOMDocument::load/loadHTML()
35 - Add support for GNU tar symlinks to PharData
36 - Add max_file_uploads support
37 - Improve process error checking in perf runner
38 - posix_getgrgid()['members'] should be empty array if no users found
39 - Convert from jemalloc's obsolete *allocm() to *allocx()
40 - Use EqX instead of Eq for Obj/Num comparisons.
41 - make class closure consist with PHP
42 - Fix guard relaxation to work with bytecode control flow
43 - Allow vm-stack flushing in rpc threads
44 - stop killing LightProcesses while writing out stacktrace.log
45 - Get hhvm compiling with clang-3.5
46 - Update .hhi files for ConstSet, Set, and ImmSet
47 - Force the linker to keep symbols in lowmem on MacOSX
48 - Make guard relaxation work with unreachable code
49 - Add minimal hdf support to test runner
50 - Analyze/optimize pseudomains in hhbbc
51 - [hhvm|memoize] Fix segfault on certain memoized functions
52 - Support mappy ini configuration
53 - Xdebug cleanup and trivial features
54 - Abort the server if a request gets stuck
55 - Added support for Closure::bind()
57 "Snoop Dogg" 11-Sep-2014
58 - VASM phase 1: emit vasm instructions, with existing register allocation
60 - [hack] Implement async lambdas.
61 - add process memory and code segment size to admin memory page
62 - Overhauled xdebug remote debugging testing
63 - Add a mechanism for building and testing a zend extension as a DSO.
64 - Support fast object allocation path when Eval.EnableObjDestruct call is on
65 - Static string table memory usage
66 - Implement parallel repo preloading.
67 - Add mcrypt constants to hhi
68 - Move var_dump() to HNI, kill off variable.idl.json
69 - JIT: Use std, boost, and folly instead of smart containers.
70 - Hack: Support for variance (+/-) annotations on type-parameters
71 - Implement APCIterator
72 - Convert v?s?printf() to HNI using Variadics
73 - Enable variadics for HNI functions/methods
74 - Smooth a wrinkle in HHVM's safesort impl
75 - Make Set implement KeyedIterable and support bracket syntax for reading
79 - Make MemExceeded flag sticky
80 - Check for OOM during json decoding
81 - Check surprise flags when unserializing arrays and objects
82 - Limit curl timeout to remaining request timeout
83 - Add variant of openssl_pkcs7_verify that ignores cert expiration
84 - Numerous changes to support xdebug
85 - Remove use of non-threadsafe strtok()
86 - Numerous changes to normalize INI setting names
87 - update to new sqlite
88 - <<__Memoize>> support
89 - Hack: Print backtrace when worker dies
90 - Parser support for "varray(..)"
91 - Introduce kVPackedKind for vector-like arrays
92 - Move mailparse to HNI
93 - VASM start phase 1; emit vasm for some instructions
94 - Fix in headers defines for cygwin
95 - [hack] Parser: Fix decl mode's confusion of type hints and xhp.
96 - Create a unified stack for Xenon
97 - Move debugger from IDL to HNI
98 - Fix mcrypt_create_iv(..., MCRYPT_RAND) to auto-seed RNG
99 - Fix information leak in hash_equals() implementation
100 - don't statically link libgcc/libstdc++ by default on OSX
101 - Adds ssdeep module to HHVM
102 - added new raise_error family functions that skip the top frame of the backtrace.
103 - Add initial support for -d outside of --php mode
104 - Fix covariance for Const{Vector,Map,Set}, add tests
106 - Implement SplDoublyLinkedList::add
107 - Link against LLVM library if present.
108 - Disallow multiple 'default:' blocks in a single switch
109 - Introduce async function lambdas
110 - Document the PHP profilers
111 - Fix sample profiler output; make it more efficient
112 - Properly shut down fastcgi worker threads when connection is closed
113 - Delete SimpleProfiler
114 - Create HHVM man page
115 - Improved PHP compatibility in the reflection API.
117 "Queen Latifah" 14-Aug-2014
118 - Implement RecursiveCallbackFilterIterator
119 - cmake installations should no longer put files in hphp and now put them in hhvm
120 - Fix error for (Recursive)CachingIterator::ctor's param 1
121 - Force OOM check on large smart allocations
122 - Support stream wrappers in XML parser extensions, add external entity loader
123 - Fix LowPtr load in codegen
124 - Fix race condition in DebuggerProxy start/stop
125 - Log per request if oom or timeout triggered in dynostats
126 - Break out hhvm request timeout / memout counters for psp vs non-psp
127 - Support collections for third parameter of preg_replace() and friends
128 - Added functions imagewebp and imagecreatefromwebp
129 - Fix mb_convert_case when encoding set other than default
130 - Added function imagepalettecopy to ext_gd
131 - Remove reflection hacks for primitive typehints
132 - Fixed tempnam() creates paths with '//'
133 - Add LibGMP extension
134 - Fix heap overflow in sql_regcase() for input >1GB
135 - Add HHVM hookups for folly::Singleton
136 - Fix isset on classes extending ArrayObject
137 - Only track live objects that actually have destructors
138 - Specify ssl cipher list for curl with OpenSSL only
139 - Remove support for "service threads"
140 - PDO MySQL's getCode() didn't match errorInfo
141 - Run usercode before ending the request
142 - Make DynamicExtensions work in ini
143 - Provide backup utf8 sanitizer when UConverter is unavailable
144 - Pass duplicate flag to SNI Initial Handler Callback
145 - fb_intercept now accounts for variadic functions
146 - Add variadic function to fb_intercept test
147 - Implemented basic xdebug tracing
148 - Rename snappy methods
149 - Add sort_flags to ArrayObject::asort
150 - Changed CRYPT_BLOWFISH to 1 because apparently it is available
151 - Convert ext/mysql to HNI
152 - Add log when memory usage reached the MaxRSS
153 - Fix http headers parsing + Remove unused code + Fix indentation
154 - Fixed error output for json_encode
155 - Corrected the var_dump output for Exception class
156 - Relax restrictions on the typing of class constant shape field names.
157 - Fix file:// URL decoding in libxml functions and elsewhere
159 "Public Enemy" 31-July-2014
160 - Interface requirements (similar to trait requirements) enforced
161 - Initial support for PHP5.6 argument unpacking: f($x, $y, ...$args)
162 - Hack: hhi files are embedded in the hh_server binary
163 - removed trampolines and the Eval.JitTrampolines option
164 - Hack: improved support for Generators, including async generators
165 - Documentation of PHP-level profiling in doc/profiling.md
166 - Cleanup of PHP-level profilers
167 - Change default for Eval.EnableObjDestructCall to true
168 - Bundle PCRE 8.32 with open-source HHVM, so we can use the JIT
170 "Outkast" 17-July-2014
171 - PHP_VERSION is now 5.6
172 - Introduce Dbl specific relational IR opcodes
173 - Expose APC info to admin port
174 - Improve Zend compatibility in the reflection API
175 - Implement xdebug_call_class
176 - Hack: first version of formatter
177 - Convert ext/xsl to HNI
178 - Hack: improve init time
179 - Remove JIT::RuntimeType
180 - Fix floating-point overflow for binary, octal and hex literals
181 - Collections: Vector::addAllKeysOf
182 - Hack can build on OSX now
183 - Fix await/yield operator precedence
184 - Fix various xcontroller issues
185 - Enable HHIRBytecodeControlFlow by default
186 - Various changes/fixes to WholeCFG region selector
187 - Introduce async generators
189 - Fix Memcache::get($keys) when $keys is an array
190 - Implement xdebug_call_function
191 - Change order of wait handle processing from FIFO to LIFO
192 - Add Redis::_serialize()
194 "Notorious B.I.G." 25-Jun-2014
195 - Remove Translator::analyze (replaced by tracelet region selector)
196 - Allow empty keys in hash_hmac() and hash_hmac_file()
197 - Interface requirements supported in parser
198 - Implement xdebug_{peak_,}memory_usage
199 - Inline singleton-pattern functions
200 - Cleanup in PhpFile and FileRepository
201 - Fix mysqli_query return value for query without result
202 - Implement xdebug_call_file
203 - Add fastlz support to memcached extension
204 - Fix ini_get to return false for non-supported settings
205 - Fix PHP version constants
206 - All numeric comparisons involving NAN, except != and !==, are now false.
207 - Implement xdebug_call_line
209 - Remove dump-file-repo admin command
210 - Fix stdclass promotion of static private properties
211 - Remove unused locals in global dce (HHBBC)
212 - Get mockery at 100%
213 - Fix casting resource to object
214 - Relocate code to arbitrary alignment
215 - Always let the first character through for camelcase searching
216 - Implement xdebug configuration options
217 - Convert ext/memcache to HNI
218 - Match php5's memcache getoption
219 - ./configure --help now has all the options
220 - mysqli: return false on non-selects
221 - Don't include bt_handler or killpg in backtraces
222 - Don't buffer overrun on bad DNS TXT records
223 - Fixed property access to DOM and XMLReader classes
224 - Add support for ParamCoerceModeFalse
226 "Mos Def" 11-Jun-2014
227 - Turn on new tracelet region selector by default; analyze() is deprecated
228 - Fix a bug in debugBacktrace with NativeImpl methods
229 - Request local allocator now uses logarithmically spaced size classes
230 - Improvements to JIT'd FCallBuiltin to cause fewer spills
231 - Enable vtable-style dispatch on methods marked "abstract"
232 - JIT several instructions that were being punted: Unbox, File, Dir
233 - Increase "hinted drop" time on write lease, improving JIT'd code layout
234 - Implemented __toString functions in reflection classes
235 - Several tc-print bug fixes
236 - Some improvements in hhbbc arithmetic type inference
237 - More service requests are "ephemeral", reducing wasted stubs space
238 - HH\Vector now has a packed array internally, for O(1) conversions to array
239 - current() and key() now support expressions that can't be taken by reference
240 - Fix a long-standing but very rare race condition with Closure class names
241 - gcc 4.8 is the new minimum to build
242 - Various bug/compat fixes in Soap, SimpleXML, ArrayObject, DOMNode, mysqli
243 - Add a scheme to extend support for efficient packed arrays w/ cap up to 2^32
244 - Move vmfp, vmsp, and vmpc into RDS
245 - Fix some hard-to-hit bugs in inlining relating to stack overflow checks
246 - Faster int to double conversion when calling builtins from the JIT
247 - Fix ReflectionParameter::getClass for scalar typehints
248 - better tuning of the PGO 'hot function' threshold
249 - performance improvements to calling native class methods
250 - improve performance of async functions that exit via exception
251 - several bug fixes in refcount optimization pass relating to async functions
252 - More hhir-related docs in the hackers-guide
253 - Initial support for relocating generated machine code
254 - JIT optimizations for count()
255 - Corrected the result of var_dump and print_r for ArrayObject
256 - fix HH\autoload_set_paths with nested maps
257 - make ReflectionClass serializable
258 - ext/standard/output HNI conversion
259 - allow usage of zend-qsort in user sorts with a runtime option
261 "LL Cool J" 28-May-2014
262 - Over 200 other bug fixes (go lockdown!)
263 - Every HDF setting is now available as INI
264 - Cut session_id() size by 1/2
265 - Added 'Z' format string for pack/unpack
266 - We now build on clang
267 - Fix pcre cache to not fatal when full
268 - Implement $php_errormsg
269 - Adding -n CLI option to hhvm php mode
270 - Fix substitution of invalid UTF8 sequences in htmlspecialchars
271 - FastCGI: Use SCRIPT_FILENAME as the PHP script to run
272 - Can create DateTimeZone's from abbreviations
273 - Put all fastcgi params into $_SERVER
274 - Many DOM classes are now serializable
275 - Define the xhp tokens
276 - Many reflection changes for perf and compatibility
277 - Default fastcgi to listen on 127.0.0.1
278 - remove register_cleanup_function
280 - Set: retain(), reserve(), addAllKeysOf()
281 - {Set|ImmSet|Vector|ImmVector}::fromKeysOf()
284 - Backport fix for CVE-2011-2202
285 - Interfaces {Keyed}Container match arrays *and* collections, not iterables
286 - Added ** and **= operators to HHVM and more compatibility fixes with PHP5.6
287 - Fixes and improvements to collections
288 - Replace json decoder with json-c library
289 - Document VMRegAnchor and isVMFrame()
290 - Improvements to array iterator code
291 - Improvements to the type checker
292 - Allow parser to be generated with bison 3
293 - Improvements and speed up to reflection code
296 - Make handling of code.hot overflows more robust
297 - Catch server errors sooner
298 - Fix segfault and infinite recursion in fileinfo extension
299 - Resolve systemlib constants at compile time
300 - Resume resumables natively
301 - Import round() table optimizations from php-src
302 - Delete bytecode Peephole optimizer
303 - Remove most of annotation.cpp, and some other code gated on !UsedHHBBC
304 - Create phis for locals
305 - Fix free of "" in rfc1867PostHandler
306 - Add firstValue(), firstKey(), lastValue(), lastKey() to collections
307 - Add concat() to collections
308 - Clarify Hack license
309 - Add CakePHP3 to test runner
310 - Better error when TC is full
311 - Add hash_equals() from PHP 5.6
313 "Insane Poetry" 24-Apr-2014
314 - Support for PHP 5.6 variadic ...$args syntax for func declarations
315 - Open source HHMeasure, a simple and extensible microbenchmarking tool
316 - Added a new time-based sampling profiler (Project Xenon)
317 - Fix PCRE unicode handling
318 - Convert Zend compatibility layer and various extensions to HNI
319 - Encode execution mode (eager or resumed) into SrcKey
320 - Merge eager and resumed parts of async functions
321 - Rework various async / continuation bytecode instructions
323 "House of PHPain" 1-Apr-2014
324 - Allow direct arg passing with up to 15 params (7 if at least one is a double)
326 "Ghostface Killah" 17-Mar-2014
327 - Remove "HipHop" from error messages
328 - Add __IsFoldable user attribute for const-foldable functions
329 - Add __Native("NoFCallBuiltin") UA for builtins which need an actrec
330 - Add support for testing different outputs in repo mode
331 - Implement remaining functionality from intl extension
332 - Implement XSL extension
333 - Implement Stream Filters
334 - Improve php.ini support and get ready to kill HDF files
335 - Parse config files as ini files, unless filename contains '.hdf'
336 - Various fixes to Redis, JSON, SPL, DateTime, MySQLi, and others
337 - Remove C<T>Ref typedefs (use const T& now)
338 - JIT default on in command line mode
339 - gethostname() just returns what the syscall returns (Zend compat)
340 - HHBBC turned on in the build for facebook.com
342 "Fifty Cent" 3-Mar-2014
343 - Array parameter type constraints implicitly cast collections to arrays
344 - Fix issues with feof and fwrite
345 - Fix issues with sleep and inaccessible properties
346 - Dump a jemalloc pprod dump when a request hits OOM
347 - Make method_exists work with interface inheritance
348 - Fix crash in preg_replace with /e
349 - Support filename and content type in Curl uploads
351 - Handle relative paths in is_dir
352 - Add string conversion for array_fill_keys
353 - Implement various Imagick functionality
354 - Implement CUROPT_PROGRESSFUNCTION
355 - Implement PHP 5.6 __debugInfo() magic method
356 - Raise warnings when return type annotations mismatch
357 - Fix nested ArrayObject assignment
358 - Switch many ini settings to thread-time binding
359 - Clean up memory stat tracking
360 - Immutable collections are now prefixed with Imm instead of Fixed/Frozen
361 - Clean up type parameter for CheckType-related IR opcodes
362 - Remove legacy linear-scan register allocator and Eval.HHIRXls option
365 - reenabled jemalloc tcache flush for idle threads
366 - array_combine now performs __toString conversion on objects in $keys
367 - Allow streams in move_uploaded_file
368 - Fix a bug double closing a UserFile
369 - Warn when first arg to call_user_func is an object with no __invoke
370 - kill userland hdf functions
371 - Final method reports itself as final
372 - Implement IntlCalendar
373 - Disallow create_function in RepoAuthoritative mode
374 - Case-insensitive check for Accept-Encoding: gzip
376 "Donald Glover" 3-Feb-2014
377 - Support for "::class"
378 - Enable FCallBuiltin for HNI functions
379 - json_decode parity with PHP 5.4
380 - Fix race condition with profiling vs. non-profiling functions prologues
381 - Implement ini_get_all()
382 - Begin conversion of runtime options to INI
383 - Fix potential PGO-mode crash
384 - Fixes and enhancement in IR printing
385 - Vector and Set now supported by:
386 array_{shift,unshift,fill_keys,reverse,flip,size,chunk}, min, and max
387 - StableMap is now an alias for Map, which retains insertion order
388 - Map moved to HH namespace
389 - Fixes in XLS spilling of SIMD registers
390 - Support SCRIPT_FILENAME in FastCGI
391 - Implement stream_context_{get,set}_default
392 - Support for Intel VTune Amplifier XE
393 - Rewrite of SimpleXML
394 - Several HNI conversions, and a helper script
395 - Move Pair to HH namespace
396 - Fix get_included_files ordering
397 - Fix $_SERVER and $_ENV in FastCGI
398 - Update timelib to php 5.5.8
399 - Some dead code removal
403 - FastCGI fixes, perf improvements
404 - ext_zend_compat fixes
405 - Turn on XLS Register Allocator by default
406 - Fix server stats reporting
407 - 'num' scalar typehint that accepts both ints and floats
408 - fix support for typedef'd namespaces
409 - don't swallow fatals when autoloading
410 - Map collections learned the in-place retain() and retainWithKey()
411 - rename Set::difference() to Set::removeAll()
412 - Update Set to retain element insertion order
415 - FrozenMap collection
416 - Deprecated Vector|Set|Map::put() method removed
417 - == between Frozen{Vector|Set|Map} and {Vector|Set|Map} now can return true
419 "Beastie Boys" 6-Jan-2014
420 - Support lex-time binary constants (eg. 0b10111)
421 - StreamWrappers now support rmdir, mkdir, rename and unlink
422 - Miscellaneous PHP5 compatibility fixes
423 - Default StatCache to off
424 - Miscellaneous FastCGI fixes
425 - Miscellaneous region compiler fixes
426 - Map and StableMap collections use the same underlying implementation
427 - Trait requirements enforced
428 - hhprof performance improvements
429 - Add array to string conversion notice
430 - Add RaiseNotice IR opcode
431 - Fix VirtualHost.<name>.Pattern matching
432 - Fix various memory leaks (pdo_parse_params, Gen*WaitHandle)
433 - Import a lot more Zend tests that used to crash or hang
435 - XLS register allocation cleanup
436 - Enable region compiler by default for JIT functions in ahot
437 - Fatal on eval() in RepoAuthoritative mode
438 - Enable LTO for HHVM
439 - Fix a few SPL compatibility issues
441 "Appleseed" 23-Dec-2013
442 - Fix issues with DOCUMENT_ROOT in fastcgi
443 - Better type inference for collections and builtins in repo mode
444 - Shorter syntax for lambda expressions w/ automatic captures
445 - Parser support for trait require clauses
446 - Move FrozenVector and Set to the HH namespace
447 - Fix resource to array conversion
448 - Fix a request local memory leak in foreach of apc arrays
449 - Initial php_odbc API implementation
450 - Implement PHP's hash_copy() function
451 - Experimental tool: Memoization Opportunity Profiler
452 - Various small parity/behavior fixes (in phar, proc_open, filter_var)
453 - A Eval.DumpHhas=1 option to dump hhas for a php file
454 - Better warnings in Set::toArray
455 - Fix the behavior of foreach loops in finally blocks
456 - chmod -x runtime/vm/jit/*.{cpp,h}
457 - Changes to make hhvm build clean with clang-3.4
458 - Fix array_product to not be bug-compatible with PHP 5.2
459 - Change the Map datastructure---preserves order and does faster foreach
460 - FrozenSet collection
461 - Generate pid.map when we unmap text section, for the perf tool
462 - Implemented GlobIterator
463 - Implemented Reflection::export and Reflection::getModifierNames
466 - support date.timezone in ini files
468 - special comparisons for DateTime
469 - delete unimplemented functions
470 - support for the finally clause in try blocks
472 "Huarache" 26-Nov-2013
473 - Linker re-ordering of hot functions
474 - Huge pages for hot functions
475 - Implement ZipArchive
476 - preg_replace /e support
477 - get_mem_usage() no longer can be negative
478 - Userland file system support
479 - Implement fileinfo extension
481 - PDO::sqliteCreateFunction()
482 - Implement NumberFormatter
484 - Implement DatePeriod
485 - Many reflection fixes
487 - A ton of performance fixes
488 - A ton of open source framework fixes
489 - FastCGI Server Support
491 "Garlic Alfredo" 11-Nov-2013
492 - teach implode() about collections
493 - fix ini parsing leak
494 - Make array not an instanceof Traversable
496 "Burrito" 28-Oct-2013
497 - Initial support for using FastCGI
498 - Initial support for php.ini configuration files
499 - Log when a nullable (e.g. ?int) is incorrect
500 - Add support for collections to array_diff, array_diff_key, array_intersect,
502 - tc-print improvements and fixes
503 - Several debugger fixes
504 - More improvements to the experimental PHP extension compat layer
505 - Fixed how parse errors are handled by eval()
506 - Support custom reason for status header
507 - Emit better error message when hhvm's systemlib doesn't load properly
508 - Fixes / clarifications added to the bytecode specification
509 - Lots of other bug fixes, clean up, PHP compat fixes, and JIT improvements
511 "Sausage" 14-Oct-2013
512 - Direct invocation of callable arrays: $f = [$cls_or_obj, 'method']; $f()
514 - Support dynamically loadable extensions
515 - Support loading mini-systemlibs from extensions
517 "Tabasco" 30-Sep-2013
518 - Fix issues with __toString() functions that return non-string values
519 - Don't allow mock classes to extend collection classes
520 - Smarter memory allocation and scheduling for NUMA systems
521 - Improve profiler performance in the jit
522 - Fix several Zend compatibility issues
523 - Fix several bugs uncovered by ASAN
524 - Add collection support to array_keys, array_values, and array_combine
525 - Return a set-like array from Set::toArray
526 - Add to(Vector|Map|StableMap|Set) methods to collections
527 - Collections convert to boolean false when empty
528 - get_class_vars invokes the autoloader when necessary
529 - Rework the Zend compatibility layer to be more robust
530 - Allow traits to implement interfaces
531 - Support arbitrary expressions inside empty()
533 "Bobotie" 16-Sep-2013
534 - HNI (HipHop Native Interface) for calling C++ functions from PHP
535 - Fix PropertyAccessorMap::isset
536 - Expose more POSIX constants
537 - Fixed behavior of stream_get_contents when default args are used.
538 - Implement str_getcsv, and fix some fgetcsv related issues.
539 - [IPv6] Fix stream_socket_recvfrom & stream_socket_sendto.
540 - [IPv6] Fix socket_sentto_recvfrom_ipv6_udp Zend compatibility.
541 - Optimize closure invocation and __invoke (~3x faster to invoke)
542 - Import gettext extension
543 - string and object allocation optimizations (reduced memory usage for both)
544 - Import YAML extension
545 - Import ftp extension
548 - Fix order of custom attributes and visibility in ctor arg promotion
549 - Implement CachingIterator
550 - Implement RecursiveCachingIterator
551 - Generalized heuristic for choosing when to inline in the jit
552 - Introduced a Zend compatibility layer to compile extensions
553 - Imported calendar extension
554 - Use gcc-4.8.1 by default
555 - Improve hhvm command line parsing logic
556 - Fix register_shutdown in session_set_save_handler to match PHP 5.4
557 - Add "native" functions for use in Systemlib
558 - PHP extension source-compatitblility layer
559 - Fix ArrayIterator constructor PHP compatibility
560 - Enable building against libmemcached 1.0.8
561 - Debugger: $_ not cleared but still printed after exception
562 - Fix clone of SplPriorityQueue
563 - Debugger: Fix bugs when multiple threads hit the same breakpoint
564 - Fix several namespace bugs
565 - Several PHP compatibility fixes for ArrayObject and ArrayIterator
566 - Fix list assignment with collection literals
567 - support "tuple(...)" in initializer expressions
568 - HHVM should compile with libmemcached 1.0.9+
569 - Support "(new Vector {..})->method()" style syntax
570 - use trigger_error in PHP for Redis user errors
571 - multiple simplexml fixes
572 - fixed serialize/unserialize for SplObjectStorage
573 - Implement ReflectionParameter::IsCallable()
575 "Achiote" 19-Aug-2013
576 - Async stack traces in the debugger via the "wa" command
577 - Fix late static binding in static closures
578 - Fix breakpoints on generators
579 - Add SplObserver and SplSubject interfaces
580 - Update Iterable interface and add toArray() method
581 - Allow __get for undefined properties
582 - Implement get_included_files()
583 - Limit use of huge pages
585 "Churrasco" 05-Aug-2013
586 - Implement stream_is_local
587 - Implement read support for .phar
588 - Implement assert with string arguments
589 - Implement RecursiveArrayIterator
590 - Implement php_strip_whitespace()
591 - Support for timeouts in cli mode
592 - Closure allocation optimizations (~2x faster to allocate a closure)
593 - Implement Redis session handler
594 - New memory profiler, hhprof, with pprof compatible output
595 - Update isset($string[$k]) and empty($string[$k) to PHP 5.5 semantics
596 - Fixed a few parser bugs
597 - Fixed a few bugs with token_get_all()
598 - Fix (string)$obj semantics when __toString() is not defined
601 - Optimize vector-shaped Arrays (arrays with keys in range 0..size-1)
602 - Enable HHBC by default in debug builds
603 - Implement SplObjectStorage::getInfo()
604 - Initial rough draft of xhpast2, a replacement for xhpast
605 - fix compilation on Ubuntu 13.04
606 - OSX changes, next round
607 - Modify PHP's ext/standard/math/tests/(pow|abs).phpt to be HHVM friendly
608 - add XHP comment syntax based on http://www.w3.org/TR/REC-xml/#sec-comments
610 "Wasabi Peas" 08-Jul-2013
611 - always_assert when we run out of TC space
612 - Initial changes to get HHVM compiling on OSX
613 - Consolidate ObjectData and Instance
614 - Prototype heap tracing framework & Heap profiler
615 - Better JIT code generation for Mod and Div
616 - Fixes to enable compilation with clang
617 - Support for yield k => v
618 - Make HHVM's command line parsing closer to PHP
619 - Implement Redis extension
620 - Implement LimitIterator from SPL
621 - add SessionHandler from PHP 5.4
622 - Numerous Debugger fixes and new developer docs for Debugger
623 - Ported many extension tests to PHP