Per today, the big chunk on the HHVM integration was implemented. However the state is quite rudimentary. For the big part it's about getting sufficient information from HHVM itself.
Currently the install command is worky
sudo hhvm bin/pickle install https://github.com/vipsoft/hhvm-ext-uuid
The --verbose option can be used to see what goes under the carpet in case of an error.
Many parts on figuring out the info about the HHVM binary itself are based on a guess:
https://github.com/FriendsOfPHP/pickle/blob/master/src/Engine/HHVM.php
Here for example to mention that php_ini_loaded_file() always delivers false, even when using hhvm -c ... But also, there's currently no way to read the informational parts (see the class) from the console, built-in constants or phpinfo() . That means, one currently can't use alternative engine instance, like hhvm pickle.phar install --php /path/to/other/hhvm someext. (Btw. --php should be probably renamed to something like --engine)
An issue I met when implementing the Build class is reported here
is reported here https://github.com/facebook/hhvm/issues/4906 , however a workaround exists. Another issue is that the PharData class is not fully implemented, this is not a show stopper, but might shrink the abilities to unpack tarballs or pack releases in certain format.
Other issues/questions about the current pickle commands
convert command is probably not applicable to hhvm
info command may work if hhvm exts have appropriate composer.json, in the current state it cannot be implemented
same with the release command
same with the validate command
the tests are currently missing, however the state is very rudimentary, given we also miss some important info from hhvm for the proper implementations. In the future atoum/behat tests should be added.
I might have overseen something as there's really much stuff, so lets try&discuss.
Per today, the big chunk on the HHVM integration was implemented. However the state is quite rudimentary. For the big part it's about getting sufficient information from HHVM itself.
Currently the install command is worky
sudo hhvm bin/pickle install https://github.com/vipsoft/hhvm-ext-uuid
The --verbose option can be used to see what goes under the carpet in case of an error.The extension list from https://github.com/facebook/hhvm/wiki/Extensions was used for the development.
From the current state of the dynamic HHVM exts, the information one can get is alone the package name, nothing else is available. See https://github.com/FriendsOfPHP/pickle/blob/master/src/Package/HHVM/Util/Cmake/Parser.php#L27 A minimal list on the info necessary is
Many parts on figuring out the info about the HHVM binary itself are based on a guess: https://github.com/FriendsOfPHP/pickle/blob/master/src/Engine/HHVM.php Here for example to mention that php_ini_loaded_file() always delivers false, even when using hhvm -c ... But also, there's currently no way to read the informational parts (see the class) from the console, built-in constants or phpinfo() . That means, one currently can't use alternative engine instance, like
hhvm pickle.phar install --php /path/to/other/hhvm someext
. (Btw. --php should be probably renamed to something like --engine)An issue I met when implementing the Build class is reported here is reported here https://github.com/facebook/hhvm/issues/4906 , however a workaround exists. Another issue is that the PharData class is not fully implemented, this is not a show stopper, but might shrink the abilities to unpack tarballs or pack releases in certain format.
Other issues/questions about the current pickle commands
convert
command is probably not applicable to hhvminfo
command may work if hhvm exts have appropriate composer.json, in the current state it cannot be implementedrelease
commandvalidate
commandI might have overseen something as there's really much stuff, so lets try&discuss.