Does HHVM (HipHop) support Postgresql / arbitary pecl extensions?

Facebook made a big announcement today - HHVM replaces the original hiphop compiler .

The old HipHop had limited extension support - including IIRC, without postgres support.

Does HHVM support all extensions for extensions? What part of the standard PHP library does it support?

What does not support HHVM?

+7
source share
3 answers

That year, when I initially answered this question, the situation changed dramatically. HHVM now publishes a list of extensions . Although they do not yet support ext/pgsql support, they point to this third-party extension that implements ext/pgsql and provides Postgres support for PDO. Now they also publish documentation when writing their own extensions .

My initial answer is below. Keep in mind that HHVM completely supplanted HipHop and the links and information below are out of date.


Does HHVM support all extensions for extensions?

All current PHP extensions are inexorably linked to the current PHP code base, Zend API, and existing PHP VM.

HipHop and HHVM are separate implementations of the PHP language, using different methods to execute PHP code. They do not use the existing PHP codebase, Zend ZPI or PHP VM. Any existing PHP extensions, such as hosted on PECL, cannot be directly ported to HipHop / HHVM.

In reality, this is not so much a β€œporting” of the extension that would have happened, but rather a complete completion of the re-implementation. The good news, if any, is that many PHP extensions are just thin veneers over a raw C-level API that is open to any library that turns into an extension. Depending on the purpose, the port can be very simple. On the other hand, not all extensions are wrappers around third-party libraries, so YMMV.

How many of the standard PHP library does it support?

It looks like a list of supported extensions can be found in the runtime/ext directory.

https://github.com/facebook/hiphop-php/tree/master/src/runtime/ext

It looks pretty comprehensive, they even have a PDO. No sign of Postgres support though.

+13
source

A year later - still not soaring like MySql, but there seems to be a way according to this official response to the comment on the HHVM blog (since December 19, 2013)

Jeremy Wilson says: I like to see support for Redis and PostgreSQL.

(Reply) Simon says: Redis support is already available, and you can use the PostgreSQL extension.

... referring to https://github.com/pocketRent/hhvm-pgsql

+3
source

After some trick, I found this post on facebook which suggests that most libs are still not supported

HHVM extension status

+1
source

All Articles