Skip to content

PHP-WASM: improve phar support (Asyncify error – null function or function signature mismatch) #1241

@eliot-akira

Description

@eliot-akira

I'm trying to run PHPUnit (in PHAR format) using wp-now, and encountered an error from @php-wasm/node. I prepared an example repo that reproduces the issue.

git clone https://github.com/eliot-akira/wp-now-phpunit-example
cd wp-now-phpunit-example
npm install
npm run start

The error message:

  WASM ERROR
  null function or function signature mismatch 

PHP CLI error RuntimeError: null function or function signature mismatch
    at php_auto_globals_create_get (wasm://wasm/033de762:wasm-function[10756]:0x5a9c45)
    at php_hash_environment (wasm://wasm/033de762:wasm-function[10670]:0x59d883)
    at dynCall_i (wasm://wasm/033de762:wasm-function[12351]:0x62eee9)
    at ret.<computed> `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:33018:33)
    at runtime.asm.<computed> `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:71706:18)
    at invoke_i `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:33833:14)
    at php_request_startup (wasm://wasm/033de762:wasm-function[3796]:0x26c693)
    at dynCall_i (wasm://wasm/033de762:wasm-function[12351]:0x62eee9)
    at ret.<computed> `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:33018:33)
    at runtime.asm.<computed> `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:71706:18)
    at invoke_i `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:33833:14)
    at do_cli (wasm://wasm/033de762:wasm-function[12488]:0x636ef0)
    at dynCall_iii (wasm://wasm/033de762:wasm-function[12349]:0x62ed81)
    at ret.<computed> `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:33018:33)
    at runtime.asm.<computed> `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:71706:18)
    at invoke_iii `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:33756:14) {
  cause: Error
      at Asyncify.handleSleep `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:34003:45)
      at _wasm_poll_socket `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:32883:21)
      at php_pollfd_for (wasm://wasm/033de762:wasm-function[970]:0x91c74)
      at php_network_connect_socket (wasm://wasm/033de762:wasm-function[5416]:0x3926cc)
      at php_tcp_sockop_set_option (wasm://wasm/033de762:wasm-function[10420]:0x587eb1)
      at php_openssl_sockop_set_option (wasm://wasm/033de762:wasm-function[10549]:0x592aff)
      at _php_stream_set_option (wasm://wasm/033de762:wasm-function[520]:0x37949)
      at dynCall_iiiii (wasm://wasm/033de762:wasm-function[12347]:0x62ebd7)
      at ret.<computed> `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:33018:33)
      at runtime.asm.<computed> `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:71706:18)
      at invoke_iiiii `/wp-now-phpunit-example/node_modules/@php-wasm/node/index.cjs:33767:14)
      at _php_stream_xport_create (wasm://wasm/033de762:wasm-function[1715]:0xfb54c)
      at zif_stream_socket_client (wasm://wasm/033de762:wasm-function[7831]:0x49f2b8)
      at ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_USED_HANDLER (wasm://wasm/033de762:wasm-function[13699]:0x68d8f6)
      at execute_ex (wasm://wasm/033de762:wasm-function[12148]:0x624deb)
      at zend_execute (wasm://wasm/033de762:wasm-function[3379]:0x21da10)
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions