HHVM 3.20 is released! This release improves compatibility with PHP7, and adds a couple new features. Packages have been published in the usual places; see the installation instructions for more information.

Noteworthy changes include:

  • PHP7 Scalar Typehints behavior corrected (the issue).
  • HHVM 3.20.2 and later works with Composer while running on HHVM in PHP7 mode, Tests have also been added.
  • Array, vec, keyset, dict, and shape class constants are now supported (the issue)
  • PHP7 exception classes (eg Throwable) are now imported into the root namespace, rather than being translated at the parser level (the issue)
  • LibSodium extension added: This is an extension that will be added in PHP7.2 (not built for Debian7). Since it is not released in PHP yet, we may need to mirror any upsstream changes, and the extension is experimental
  • Timelimit for time spent JITing per request. See the hhvm.jit_max_request_translation_time setting.
  • Reusable TC now runs on a worker thread, cleaning up translations without tieing up request threads, or the request treadmill.
  • Performance improvements
  • Bug fixes