@php-wasm/node 1.1.3 → 1.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/asyncify/7_2_34/php_7_2.wasm +0 -0
  2. package/asyncify/7_3_33/php_7_3.wasm +0 -0
  3. package/asyncify/7_4_33/php_7_4.wasm +0 -0
  4. package/asyncify/8_0_30/php_8_0.wasm +0 -0
  5. package/asyncify/8_1_23/php_8_1.wasm +0 -0
  6. package/asyncify/8_2_10/php_8_2.wasm +0 -0
  7. package/asyncify/8_3_0/php_8_3.wasm +0 -0
  8. package/asyncify/8_4_0/php_8_4.wasm +0 -0
  9. package/asyncify/php_7_2.js +201 -138
  10. package/asyncify/php_7_3.js +200 -137
  11. package/asyncify/php_7_4.js +199 -136
  12. package/asyncify/php_8_0.js +203 -140
  13. package/asyncify/php_8_1.js +202 -139
  14. package/asyncify/php_8_2.js +203 -140
  15. package/asyncify/php_8_3.js +203 -140
  16. package/asyncify/php_8_4.js +202 -139
  17. package/fs_ext.node +0 -0
  18. package/index.cjs +9466 -3617
  19. package/index.js +9350 -3617
  20. package/jspi/7_2_34/php_7_2.wasm +0 -0
  21. package/jspi/7_3_33/php_7_3.wasm +0 -0
  22. package/jspi/7_4_33/php_7_4.wasm +0 -0
  23. package/jspi/8_0_30/php_8_0.wasm +0 -0
  24. package/jspi/8_1_23/php_8_1.wasm +0 -0
  25. package/jspi/8_2_10/php_8_2.wasm +0 -0
  26. package/jspi/8_3_0/php_8_3.wasm +0 -0
  27. package/jspi/8_4_0/php_8_4.wasm +0 -0
  28. package/jspi/php_7_2.js +2196 -1523
  29. package/jspi/php_7_3.js +2196 -1523
  30. package/jspi/php_7_4.js +9299 -7705
  31. package/jspi/php_8_0.js +2196 -1523
  32. package/jspi/php_8_1.js +2470 -1797
  33. package/jspi/php_8_2.js +2450 -1777
  34. package/jspi/php_8_3.js +2450 -1777
  35. package/jspi/php_8_4.js +2450 -1777
  36. package/lib/file-lock-manager-for-node.d.ts +149 -0
  37. package/lib/file-lock-manager.d.ts +96 -0
  38. package/lib/index.d.ts +2 -0
  39. package/lib/load-runtime.d.ts +31 -2
  40. package/package.json +10 -9
@@ -8,7 +8,7 @@ import path from 'path';
8
8
 
9
9
  const dependencyFilename = path.join(__dirname, '7_2_34', 'php_7_2.wasm');
10
10
  export { dependencyFilename };
11
- export const dependenciesTotalSize = 18094393;
11
+ export const dependenciesTotalSize = 18432541;
12
12
  export function init(RuntimeName, PHPLoader) {
13
13
  // The rest of the code comes from the built php.js file and esm-suffix.js
14
14
  // include: shell.js
@@ -228,7 +228,7 @@ export function init(RuntimeName, PHPLoader) {
228
228
  if (!Module['noFSInit'] && !FS.initialized) FS.init();
229
229
  TTY.init();
230
230
  PIPEFS.root = FS.mount(PIPEFS, {}, null);
231
- wasmExports['cb']();
231
+ wasmExports['db']();
232
232
  FS.ignorePermissions = false;
233
233
  }
234
234
 
@@ -396,9 +396,9 @@ export function init(RuntimeName, PHPLoader) {
396
396
  wasmExports = instance.exports;
397
397
  wasmExports = Asyncify.instrumentWasmExports(wasmExports);
398
398
  Module['wasmExports'] = wasmExports;
399
- wasmMemory = wasmExports['bb'];
399
+ wasmMemory = wasmExports['cb'];
400
400
  updateMemoryViews();
401
- wasmTable = wasmExports['db'];
401
+ wasmTable = wasmExports['eb'];
402
402
  removeRunDependency('wasm-instantiate');
403
403
  return wasmExports;
404
404
  }
@@ -6990,8 +6990,27 @@ export function init(RuntimeName, PHPLoader) {
6990
6990
 
6991
6991
  var allocateUTF8OnStack = stringToUTF8OnStack;
6992
6992
 
6993
+ function _js_getpid() {
6994
+ return PHPLoader.processId ?? 42;
6995
+ }
6996
+
6997
+ function _js_wasm_trace(format, ...args) {
6998
+ if (PHPLoader.trace instanceof Function) {
6999
+ PHPLoader.trace(_js_getpid(), format, ...args);
7000
+ }
7001
+ }
7002
+
6993
7003
  var PHPWASM = {
6994
7004
  init: function () {
7005
+ Module['ENV'] = Module['ENV'] || {};
7006
+ // Ensure a platform-level bin directory for a fallback `php` binary.
7007
+ Module['ENV']['PATH'] = [
7008
+ Module['ENV']['PATH'],
7009
+ '/internal/shared/bin',
7010
+ ]
7011
+ .filter(Boolean)
7012
+ .join(':');
7013
+
6995
7014
  // The /internal directory is required by the C module. It's where the
6996
7015
  // stdout, stderr, and headers information are written for the JavaScript
6997
7016
  // code to read later on.
@@ -7002,6 +7021,20 @@ export function init(RuntimeName, PHPLoader) {
7002
7021
  // The files from the preload directory are preloaded using the
7003
7022
  // auto_prepend_file php.ini directive.
7004
7023
  FS.mkdir('/internal/shared/preload');
7024
+ // Platform-level bin directory for a fallback `php` binary. Without it,
7025
+ // PHP may not populate the PHP_BINARY constant.
7026
+ FS.mkdir('/internal/shared/bin');
7027
+ const originalOnRuntimeInitialized = Module['onRuntimeInitialized'];
7028
+ Module['onRuntimeInitialized'] = () => {
7029
+ // Dummy PHP binary for PHP to populate the PHP_BINARY constant.
7030
+ FS.writeFile(
7031
+ '/internal/shared/bin/php',
7032
+ new TextEncoder().encode('#!/bin/sh\nphp "$@"')
7033
+ );
7034
+ // It must be executable to be used by PHP.
7035
+ FS.chmod('/internal/shared/bin/php', 0o755);
7036
+ originalOnRuntimeInitialized();
7037
+ };
7005
7038
  // Create stdout and stderr devices. We can't just use Emscripten's
7006
7039
  // default stdout and stderr devices because they stop processing data
7007
7040
  // on the first null byte. However, when dealing with binary data,
@@ -7995,7 +8028,7 @@ export function init(RuntimeName, PHPLoader) {
7995
8028
  var Asyncify = {
7996
8029
  instrumentWasmImports(imports) {
7997
8030
  var importPattern =
7998
- /^(_dlopen_js|invoke_i|invoke_ii|invoke_iii|invoke_iiii|invoke_iiiii|invoke_iiiiii|invoke_iiiiiii|invoke_iiiiiiii|invoke_iiiiiiiiii|invoke_v|invoke_vi|invoke_vii|invoke_viidii|invoke_viii|invoke_viiii|invoke_viiiii|invoke_viiiiii|invoke_viiiiiii|invoke_viiiiiiiii|js_open_process|_js_open_process|_asyncjs__js_open_process|js_popen_to_file|_js_popen_to_file|_asyncjs__js_popen_to_file|js_fd_read|_js_fd_read|js_module_onMessage|_js_module_onMessage|_asyncjs__js_module_onMessage|js_waitpid|_js_waitpid|_asyncjs__js_waitpid|wasm_poll_socket|_wasm_poll_socket|_asyncjs__wasm_poll_socket|wasm_shutdown|_wasm_shutdown|_asyncjs__wasm_shutdown|__asyncjs__.*)$/;
8031
+ /^(_dlopen_js|invoke_i|invoke_ii|invoke_iii|invoke_iiii|invoke_iiiii|invoke_iiiiii|invoke_iiiiiii|invoke_iiiiiiii|invoke_iiiiiiiiii|invoke_v|invoke_vi|invoke_vii|invoke_viidii|invoke_viii|invoke_viiii|invoke_viiiii|invoke_viiiiii|invoke_viiiiiii|invoke_viiiiiiiii|invoke_i|invoke_ii|invoke_iii|invoke_iiii|invoke_iiiii|invoke_iiiiii|invoke_iiiiiii|invoke_iiiiiiii|invoke_iiiiiiiiii|invoke_iij|invoke_iiji|invoke_iijii|invoke_iijiji|invoke_jii|invoke_jiii|invoke_viijii|invoke_vji|js_open_process|_js_open_process|_asyncjs__js_open_process|js_popen_to_file|_js_popen_to_file|_asyncjs__js_popen_to_file|__syscall_fcntl64|js_release_file_locks|js_flock|js_fd_read|_js_fd_read|_fd_close|js_module_onMessage|_js_module_onMessage|_asyncjs__js_module_onMessage|js_waitpid|_js_waitpid|_asyncjs__js_waitpid|wasm_poll_socket|_wasm_poll_socket|_asyncjs__wasm_poll_socket|_wasm_shutdown|_asyncjs__wasm_shutdown|__asyncjs__.*)$/;
7999
8032
  for (let [x, original] of Object.entries(imports)) {
8000
8033
  if (typeof original == 'function') {
8001
8034
  let isAsyncifyImport =
@@ -8586,78 +8619,78 @@ export function init(RuntimeName, PHPLoader) {
8586
8619
 
8587
8620
  var wasmImports = {
8588
8621
  /** @export */ m: ___assert_fail,
8589
- /** @export */ X: __asyncjs__js_module_onMessage,
8590
- /** @export */ ab: ___call_sighandler,
8622
+ /** @export */ Y: __asyncjs__js_module_onMessage,
8623
+ /** @export */ bb: ___call_sighandler,
8591
8624
  /** @export */ S: ___cxa_throw,
8592
- /** @export */ $a: ___syscall_accept4,
8593
- /** @export */ _a: ___syscall_bind,
8594
- /** @export */ Za: ___syscall_chdir,
8625
+ /** @export */ ab: ___syscall_accept4,
8626
+ /** @export */ $a: ___syscall_bind,
8627
+ /** @export */ _a: ___syscall_chdir,
8595
8628
  /** @export */ R: ___syscall_chmod,
8596
- /** @export */ Ya: ___syscall_connect,
8597
- /** @export */ Xa: ___syscall_dup,
8598
- /** @export */ Wa: ___syscall_dup3,
8599
- /** @export */ Va: ___syscall_faccessat,
8600
- /** @export */ Ua: ___syscall_fallocate,
8601
- /** @export */ Ta: ___syscall_fchmod,
8602
- /** @export */ Sa: ___syscall_fchown32,
8629
+ /** @export */ Za: ___syscall_connect,
8630
+ /** @export */ Ya: ___syscall_dup,
8631
+ /** @export */ Xa: ___syscall_dup3,
8632
+ /** @export */ Wa: ___syscall_faccessat,
8633
+ /** @export */ Va: ___syscall_fallocate,
8634
+ /** @export */ Ua: ___syscall_fchmod,
8635
+ /** @export */ Ta: ___syscall_fchown32,
8603
8636
  /** @export */ Q: ___syscall_fchownat,
8604
8637
  /** @export */ l: ___syscall_fcntl64,
8605
- /** @export */ Ra: ___syscall_fdatasync,
8606
- /** @export */ Qa: ___syscall_fstat64,
8607
- /** @export */ Pa: ___syscall_ftruncate64,
8608
- /** @export */ Oa: ___syscall_getcwd,
8609
- /** @export */ Na: ___syscall_getdents64,
8610
- /** @export */ Ma: ___syscall_getpeername,
8611
- /** @export */ La: ___syscall_getsockname,
8612
- /** @export */ Ka: ___syscall_getsockopt,
8638
+ /** @export */ Sa: ___syscall_fdatasync,
8639
+ /** @export */ Ra: ___syscall_fstat64,
8640
+ /** @export */ Qa: ___syscall_ftruncate64,
8641
+ /** @export */ Pa: ___syscall_getcwd,
8642
+ /** @export */ Oa: ___syscall_getdents64,
8643
+ /** @export */ Na: ___syscall_getpeername,
8644
+ /** @export */ Ma: ___syscall_getsockname,
8645
+ /** @export */ La: ___syscall_getsockopt,
8613
8646
  /** @export */ E: ___syscall_ioctl,
8614
- /** @export */ Ja: ___syscall_listen,
8615
- /** @export */ Ia: ___syscall_lstat64,
8616
- /** @export */ Ha: ___syscall_mkdirat,
8617
- /** @export */ Ga: ___syscall_newfstatat,
8647
+ /** @export */ Ka: ___syscall_listen,
8648
+ /** @export */ Ja: ___syscall_lstat64,
8649
+ /** @export */ Ia: ___syscall_mkdirat,
8650
+ /** @export */ Ha: ___syscall_newfstatat,
8618
8651
  /** @export */ x: ___syscall_openat,
8619
- /** @export */ Fa: ___syscall_pipe,
8620
- /** @export */ Ea: ___syscall_poll,
8621
- /** @export */ Da: ___syscall_readlinkat,
8622
- /** @export */ Ca: ___syscall_recvfrom,
8623
- /** @export */ Ba: ___syscall_renameat,
8652
+ /** @export */ Ga: ___syscall_pipe,
8653
+ /** @export */ Fa: ___syscall_poll,
8654
+ /** @export */ Ea: ___syscall_readlinkat,
8655
+ /** @export */ Da: ___syscall_recvfrom,
8656
+ /** @export */ Ca: ___syscall_renameat,
8624
8657
  /** @export */ P: ___syscall_rmdir,
8625
- /** @export */ Aa: ___syscall_sendto,
8658
+ /** @export */ Ba: ___syscall_sendto,
8626
8659
  /** @export */ O: ___syscall_socket,
8627
- /** @export */ za: ___syscall_stat64,
8628
- /** @export */ ya: ___syscall_statfs64,
8629
- /** @export */ xa: ___syscall_symlinkat,
8660
+ /** @export */ Aa: ___syscall_stat64,
8661
+ /** @export */ za: ___syscall_statfs64,
8662
+ /** @export */ ya: ___syscall_symlinkat,
8630
8663
  /** @export */ D: ___syscall_unlinkat,
8631
- /** @export */ wa: ___syscall_utimensat,
8632
- /** @export */ qa: __abort_js,
8633
- /** @export */ pa: __emscripten_lookup_name,
8634
- /** @export */ oa: __emscripten_runtime_keepalive_clear,
8635
- /** @export */ na: __emscripten_throw_longjmp,
8636
- /** @export */ ma: __gmtime_js,
8637
- /** @export */ la: __localtime_js,
8638
- /** @export */ ka: __mktime_js,
8639
- /** @export */ ja: __mmap_js,
8640
- /** @export */ ia: __munmap_js,
8664
+ /** @export */ xa: ___syscall_utimensat,
8665
+ /** @export */ ra: __abort_js,
8666
+ /** @export */ qa: __emscripten_lookup_name,
8667
+ /** @export */ pa: __emscripten_runtime_keepalive_clear,
8668
+ /** @export */ oa: __emscripten_throw_longjmp,
8669
+ /** @export */ na: __gmtime_js,
8670
+ /** @export */ ma: __localtime_js,
8671
+ /** @export */ la: __mktime_js,
8672
+ /** @export */ ka: __mmap_js,
8673
+ /** @export */ ja: __munmap_js,
8641
8674
  /** @export */ L: __setitimer_js,
8642
- /** @export */ ha: __tzset_js,
8643
- /** @export */ va: _clock_time_get,
8675
+ /** @export */ ia: __tzset_js,
8676
+ /** @export */ wa: _clock_time_get,
8644
8677
  /** @export */ K: _emscripten_date_now,
8645
- /** @export */ ga: _emscripten_get_heap_max,
8678
+ /** @export */ ha: _emscripten_get_heap_max,
8646
8679
  /** @export */ w: _emscripten_get_now,
8647
- /** @export */ fa: _emscripten_resize_heap,
8680
+ /** @export */ ga: _emscripten_resize_heap,
8648
8681
  /** @export */ J: _emscripten_sleep,
8649
- /** @export */ ua: _environ_get,
8650
- /** @export */ ta: _environ_sizes_get,
8682
+ /** @export */ va: _environ_get,
8683
+ /** @export */ ua: _environ_sizes_get,
8651
8684
  /** @export */ p: _exit,
8652
8685
  /** @export */ q: _fd_close,
8653
8686
  /** @export */ N: _fd_fdstat_get,
8654
8687
  /** @export */ M: _fd_read,
8655
- /** @export */ sa: _fd_seek,
8688
+ /** @export */ ta: _fd_seek,
8656
8689
  /** @export */ C: _fd_write,
8657
- /** @export */ ea: _getaddrinfo,
8690
+ /** @export */ fa: _getaddrinfo,
8658
8691
  /** @export */ I: _getnameinfo,
8659
- /** @export */ da: _getprotobyname,
8660
- /** @export */ ca: _getprotobynumber,
8692
+ /** @export */ ea: _getprotobyname,
8693
+ /** @export */ da: _getprotobynumber,
8661
8694
  /** @export */ i: invoke_i,
8662
8695
  /** @export */ c: invoke_ii,
8663
8696
  /** @export */ b: invoke_iii,
@@ -8667,11 +8700,11 @@ export function init(RuntimeName, PHPLoader) {
8667
8700
  /** @export */ u: invoke_iiiiiii,
8668
8701
  /** @export */ v: invoke_iiiiiiii,
8669
8702
  /** @export */ B: invoke_iiiiiiiiii,
8670
- /** @export */ ba: invoke_iiji,
8671
- /** @export */ aa: invoke_iijii,
8672
- /** @export */ $: invoke_iijiji,
8673
- /** @export */ _: invoke_jii,
8674
- /** @export */ Z: invoke_jiii,
8703
+ /** @export */ ca: invoke_iiji,
8704
+ /** @export */ ba: invoke_iijii,
8705
+ /** @export */ aa: invoke_iijiji,
8706
+ /** @export */ $: invoke_jii,
8707
+ /** @export */ _: invoke_jiii,
8675
8708
  /** @export */ e: invoke_v,
8676
8709
  /** @export */ a: invoke_vi,
8677
8710
  /** @export */ d: invoke_vii,
@@ -8684,12 +8717,13 @@ export function init(RuntimeName, PHPLoader) {
8684
8717
  /** @export */ n: invoke_viijii,
8685
8718
  /** @export */ H: invoke_vji,
8686
8719
  /** @export */ G: _js_create_input_device,
8687
- /** @export */ Y: js_fd_read,
8720
+ /** @export */ Z: js_fd_read,
8688
8721
  /** @export */ F: _js_open_process,
8689
- /** @export */ W: js_popen_to_file,
8690
- /** @export */ V: _js_process_status,
8691
- /** @export */ U: _js_waitpid,
8692
- /** @export */ ra: _proc_exit,
8722
+ /** @export */ X: js_popen_to_file,
8723
+ /** @export */ W: _js_process_status,
8724
+ /** @export */ V: _js_waitpid,
8725
+ /** @export */ U: _js_wasm_trace,
8726
+ /** @export */ sa: _proc_exit,
8693
8727
  /** @export */ T: _strptime,
8694
8728
  /** @export */ r: _wasm_close,
8695
8729
  /** @export */ t: wasm_poll_socket,
@@ -8700,31 +8734,31 @@ export function init(RuntimeName, PHPLoader) {
8700
8734
 
8701
8735
  createWasm();
8702
8736
 
8703
- var ___wasm_call_ctors = () => (___wasm_call_ctors = wasmExports['cb'])();
8737
+ var ___wasm_call_ctors = () => (___wasm_call_ctors = wasmExports['db'])();
8704
8738
 
8705
- var _malloc = (a0) => (_malloc = wasmExports['eb'])(a0);
8739
+ var _malloc = (a0) => (_malloc = wasmExports['fb'])(a0);
8706
8740
 
8707
- var _free = (a0) => (_free = wasmExports['fb'])(a0);
8741
+ var _free = (a0) => (_free = wasmExports['gb'])(a0);
8708
8742
 
8709
8743
  var _wasm_sleep = (Module['_wasm_sleep'] = (a0) =>
8710
- (_wasm_sleep = Module['_wasm_sleep'] = wasmExports['gb'])(a0));
8744
+ (_wasm_sleep = Module['_wasm_sleep'] = wasmExports['hb'])(a0));
8711
8745
 
8712
- var _ntohs = (a0) => (_ntohs = wasmExports['hb'])(a0);
8746
+ var _ntohs = (a0) => (_ntohs = wasmExports['ib'])(a0);
8713
8747
 
8714
- var _htons = (a0) => (_htons = wasmExports['ib'])(a0);
8748
+ var _htons = (a0) => (_htons = wasmExports['jb'])(a0);
8715
8749
 
8716
- var _htonl = (a0) => (_htonl = wasmExports['jb'])(a0);
8750
+ var _htonl = (a0) => (_htonl = wasmExports['kb'])(a0);
8717
8751
 
8718
8752
  var _wasm_read = (Module['_wasm_read'] = (a0, a1, a2) =>
8719
- (_wasm_read = Module['_wasm_read'] = wasmExports['kb'])(a0, a1, a2));
8753
+ (_wasm_read = Module['_wasm_read'] = wasmExports['lb'])(a0, a1, a2));
8720
8754
 
8721
- var _fflush = (a0) => (_fflush = wasmExports['lb'])(a0);
8755
+ var _fflush = (a0) => (_fflush = wasmExports['mb'])(a0);
8722
8756
 
8723
8757
  var _wasm_popen = (Module['_wasm_popen'] = (a0, a1) =>
8724
- (_wasm_popen = Module['_wasm_popen'] = wasmExports['mb'])(a0, a1));
8758
+ (_wasm_popen = Module['_wasm_popen'] = wasmExports['nb'])(a0, a1));
8725
8759
 
8726
8760
  var _wasm_php_exec = (Module['_wasm_php_exec'] = (a0, a1, a2, a3) =>
8727
- (_wasm_php_exec = Module['_wasm_php_exec'] = wasmExports['nb'])(
8761
+ (_wasm_php_exec = Module['_wasm_php_exec'] = wasmExports['ob'])(
8728
8762
  a0,
8729
8763
  a1,
8730
8764
  a2,
@@ -8732,14 +8766,14 @@ export function init(RuntimeName, PHPLoader) {
8732
8766
  ));
8733
8767
 
8734
8768
  var _php_pollfd_for = (Module['_php_pollfd_for'] = (a0, a1, a2) =>
8735
- (_php_pollfd_for = Module['_php_pollfd_for'] = wasmExports['ob'])(
8769
+ (_php_pollfd_for = Module['_php_pollfd_for'] = wasmExports['pb'])(
8736
8770
  a0,
8737
8771
  a1,
8738
8772
  a2
8739
8773
  ));
8740
8774
 
8741
8775
  var ___wrap_select = (Module['___wrap_select'] = (a0, a1, a2, a3, a4) =>
8742
- (___wrap_select = Module['___wrap_select'] = wasmExports['pb'])(
8776
+ (___wrap_select = Module['___wrap_select'] = wasmExports['qb'])(
8743
8777
  a0,
8744
8778
  a1,
8745
8779
  a2,
@@ -8749,116 +8783,119 @@ export function init(RuntimeName, PHPLoader) {
8749
8783
 
8750
8784
  var _wasm_set_sapi_name = (Module['_wasm_set_sapi_name'] = (a0) =>
8751
8785
  (_wasm_set_sapi_name = Module['_wasm_set_sapi_name'] =
8752
- wasmExports['qb'])(a0));
8786
+ wasmExports['rb'])(a0));
8753
8787
 
8754
8788
  var _wasm_set_phpini_path = (Module['_wasm_set_phpini_path'] = (a0) =>
8755
8789
  (_wasm_set_phpini_path = Module['_wasm_set_phpini_path'] =
8756
- wasmExports['rb'])(a0));
8790
+ wasmExports['sb'])(a0));
8757
8791
 
8758
8792
  var _wasm_add_cli_arg = (Module['_wasm_add_cli_arg'] = (a0) =>
8759
- (_wasm_add_cli_arg = Module['_wasm_add_cli_arg'] = wasmExports['sb'])(
8793
+ (_wasm_add_cli_arg = Module['_wasm_add_cli_arg'] = wasmExports['tb'])(
8760
8794
  a0
8761
8795
  ));
8762
8796
 
8763
8797
  var _run_cli = (Module['_run_cli'] = () =>
8764
- (_run_cli = Module['_run_cli'] = wasmExports['tb'])());
8798
+ (_run_cli = Module['_run_cli'] = wasmExports['ub'])());
8765
8799
 
8766
8800
  var _wasm_add_SERVER_entry = (Module['_wasm_add_SERVER_entry'] = (a0, a1) =>
8767
8801
  (_wasm_add_SERVER_entry = Module['_wasm_add_SERVER_entry'] =
8768
- wasmExports['ub'])(a0, a1));
8802
+ wasmExports['vb'])(a0, a1));
8769
8803
 
8770
8804
  var _wasm_add_ENV_entry = (Module['_wasm_add_ENV_entry'] = (a0, a1) =>
8771
8805
  (_wasm_add_ENV_entry = Module['_wasm_add_ENV_entry'] =
8772
- wasmExports['vb'])(a0, a1));
8806
+ wasmExports['wb'])(a0, a1));
8773
8807
 
8774
8808
  var _wasm_set_query_string = (Module['_wasm_set_query_string'] = (a0) =>
8775
8809
  (_wasm_set_query_string = Module['_wasm_set_query_string'] =
8776
- wasmExports['wb'])(a0));
8810
+ wasmExports['xb'])(a0));
8777
8811
 
8778
8812
  var _wasm_set_path_translated = (Module['_wasm_set_path_translated'] = (
8779
8813
  a0
8780
8814
  ) =>
8781
8815
  (_wasm_set_path_translated = Module['_wasm_set_path_translated'] =
8782
- wasmExports['xb'])(a0));
8816
+ wasmExports['yb'])(a0));
8783
8817
 
8784
8818
  var _wasm_set_skip_shebang = (Module['_wasm_set_skip_shebang'] = (a0) =>
8785
8819
  (_wasm_set_skip_shebang = Module['_wasm_set_skip_shebang'] =
8786
- wasmExports['yb'])(a0));
8820
+ wasmExports['zb'])(a0));
8787
8821
 
8788
8822
  var _wasm_set_request_uri = (Module['_wasm_set_request_uri'] = (a0) =>
8789
8823
  (_wasm_set_request_uri = Module['_wasm_set_request_uri'] =
8790
- wasmExports['zb'])(a0));
8824
+ wasmExports['Ab'])(a0));
8791
8825
 
8792
8826
  var _wasm_set_request_method = (Module['_wasm_set_request_method'] = (a0) =>
8793
8827
  (_wasm_set_request_method = Module['_wasm_set_request_method'] =
8794
- wasmExports['Ab'])(a0));
8828
+ wasmExports['Bb'])(a0));
8795
8829
 
8796
8830
  var _wasm_set_request_host = (Module['_wasm_set_request_host'] = (a0) =>
8797
8831
  (_wasm_set_request_host = Module['_wasm_set_request_host'] =
8798
- wasmExports['Bb'])(a0));
8832
+ wasmExports['Cb'])(a0));
8799
8833
 
8800
8834
  var _wasm_set_content_type = (Module['_wasm_set_content_type'] = (a0) =>
8801
8835
  (_wasm_set_content_type = Module['_wasm_set_content_type'] =
8802
- wasmExports['Cb'])(a0));
8836
+ wasmExports['Db'])(a0));
8803
8837
 
8804
8838
  var _wasm_set_request_body = (Module['_wasm_set_request_body'] = (a0) =>
8805
8839
  (_wasm_set_request_body = Module['_wasm_set_request_body'] =
8806
- wasmExports['Db'])(a0));
8840
+ wasmExports['Eb'])(a0));
8807
8841
 
8808
8842
  var _wasm_set_content_length = (Module['_wasm_set_content_length'] = (a0) =>
8809
8843
  (_wasm_set_content_length = Module['_wasm_set_content_length'] =
8810
- wasmExports['Eb'])(a0));
8844
+ wasmExports['Fb'])(a0));
8811
8845
 
8812
8846
  var _wasm_set_cookies = (Module['_wasm_set_cookies'] = (a0) =>
8813
- (_wasm_set_cookies = Module['_wasm_set_cookies'] = wasmExports['Fb'])(
8847
+ (_wasm_set_cookies = Module['_wasm_set_cookies'] = wasmExports['Gb'])(
8814
8848
  a0
8815
8849
  ));
8816
8850
 
8817
8851
  var _wasm_set_request_port = (Module['_wasm_set_request_port'] = (a0) =>
8818
8852
  (_wasm_set_request_port = Module['_wasm_set_request_port'] =
8819
- wasmExports['Gb'])(a0));
8853
+ wasmExports['Hb'])(a0));
8820
8854
 
8821
8855
  var _wasm_sapi_request_shutdown = (Module['_wasm_sapi_request_shutdown'] =
8822
8856
  () =>
8823
8857
  (_wasm_sapi_request_shutdown = Module[
8824
8858
  '_wasm_sapi_request_shutdown'
8825
8859
  ] =
8826
- wasmExports['Hb'])());
8860
+ wasmExports['Ib'])());
8827
8861
 
8828
8862
  var _wasm_sapi_handle_request = (Module['_wasm_sapi_handle_request'] = () =>
8829
8863
  (_wasm_sapi_handle_request = Module['_wasm_sapi_handle_request'] =
8830
- wasmExports['Ib'])());
8864
+ wasmExports['Jb'])());
8831
8865
 
8832
8866
  var _php_wasm_init = (Module['_php_wasm_init'] = () =>
8833
- (_php_wasm_init = Module['_php_wasm_init'] = wasmExports['Jb'])());
8867
+ (_php_wasm_init = Module['_php_wasm_init'] = wasmExports['Kb'])());
8834
8868
 
8835
8869
  var _wasm_free = (Module['_wasm_free'] = (a0) =>
8836
- (_wasm_free = Module['_wasm_free'] = wasmExports['Kb'])(a0));
8870
+ (_wasm_free = Module['_wasm_free'] = wasmExports['Lb'])(a0));
8837
8871
 
8838
- var ___funcs_on_exit = () => (___funcs_on_exit = wasmExports['Lb'])();
8872
+ var _wasm_trace = (Module['_wasm_trace'] = (a0, a1) =>
8873
+ (_wasm_trace = Module['_wasm_trace'] = wasmExports['Mb'])(a0, a1));
8874
+
8875
+ var ___funcs_on_exit = () => (___funcs_on_exit = wasmExports['Nb'])();
8839
8876
 
8840
8877
  var _emscripten_builtin_memalign = (a0, a1) =>
8841
- (_emscripten_builtin_memalign = wasmExports['Mb'])(a0, a1);
8878
+ (_emscripten_builtin_memalign = wasmExports['Ob'])(a0, a1);
8842
8879
 
8843
8880
  var __emscripten_timeout = (a0, a1) =>
8844
- (__emscripten_timeout = wasmExports['Nb'])(a0, a1);
8881
+ (__emscripten_timeout = wasmExports['Pb'])(a0, a1);
8845
8882
 
8846
- var _setThrew = (a0, a1) => (_setThrew = wasmExports['Ob'])(a0, a1);
8883
+ var _setThrew = (a0, a1) => (_setThrew = wasmExports['Qb'])(a0, a1);
8847
8884
 
8848
8885
  var __emscripten_stack_restore = (a0) =>
8849
- (__emscripten_stack_restore = wasmExports['Pb'])(a0);
8886
+ (__emscripten_stack_restore = wasmExports['Rb'])(a0);
8850
8887
 
8851
8888
  var __emscripten_stack_alloc = (a0) =>
8852
- (__emscripten_stack_alloc = wasmExports['Qb'])(a0);
8889
+ (__emscripten_stack_alloc = wasmExports['Sb'])(a0);
8853
8890
 
8854
8891
  var _emscripten_stack_get_current = () =>
8855
- (_emscripten_stack_get_current = wasmExports['Rb'])();
8892
+ (_emscripten_stack_get_current = wasmExports['Tb'])();
8856
8893
 
8857
8894
  var dynCall_vi = (Module['dynCall_vi'] = (a0, a1) =>
8858
- (dynCall_vi = Module['dynCall_vi'] = wasmExports['Sb'])(a0, a1));
8895
+ (dynCall_vi = Module['dynCall_vi'] = wasmExports['Ub'])(a0, a1));
8859
8896
 
8860
8897
  var dynCall_iiii = (Module['dynCall_iiii'] = (a0, a1, a2, a3) =>
8861
- (dynCall_iiii = Module['dynCall_iiii'] = wasmExports['Tb'])(
8898
+ (dynCall_iiii = Module['dynCall_iiii'] = wasmExports['Vb'])(
8862
8899
  a0,
8863
8900
  a1,
8864
8901
  a2,
@@ -8866,13 +8903,13 @@ export function init(RuntimeName, PHPLoader) {
8866
8903
  ));
8867
8904
 
8868
8905
  var dynCall_ii = (Module['dynCall_ii'] = (a0, a1) =>
8869
- (dynCall_ii = Module['dynCall_ii'] = wasmExports['Ub'])(a0, a1));
8906
+ (dynCall_ii = Module['dynCall_ii'] = wasmExports['Wb'])(a0, a1));
8870
8907
 
8871
8908
  var dynCall_vii = (Module['dynCall_vii'] = (a0, a1, a2) =>
8872
- (dynCall_vii = Module['dynCall_vii'] = wasmExports['Vb'])(a0, a1, a2));
8909
+ (dynCall_vii = Module['dynCall_vii'] = wasmExports['Xb'])(a0, a1, a2));
8873
8910
 
8874
8911
  var dynCall_viiiii = (Module['dynCall_viiiii'] = (a0, a1, a2, a3, a4, a5) =>
8875
- (dynCall_viiiii = Module['dynCall_viiiii'] = wasmExports['Wb'])(
8912
+ (dynCall_viiiii = Module['dynCall_viiiii'] = wasmExports['Yb'])(
8876
8913
  a0,
8877
8914
  a1,
8878
8915
  a2,
@@ -8882,10 +8919,10 @@ export function init(RuntimeName, PHPLoader) {
8882
8919
  ));
8883
8920
 
8884
8921
  var dynCall_iii = (Module['dynCall_iii'] = (a0, a1, a2) =>
8885
- (dynCall_iii = Module['dynCall_iii'] = wasmExports['Xb'])(a0, a1, a2));
8922
+ (dynCall_iii = Module['dynCall_iii'] = wasmExports['Zb'])(a0, a1, a2));
8886
8923
 
8887
8924
  var dynCall_iiiii = (Module['dynCall_iiiii'] = (a0, a1, a2, a3, a4) =>
8888
- (dynCall_iiiii = Module['dynCall_iiiii'] = wasmExports['Yb'])(
8925
+ (dynCall_iiiii = Module['dynCall_iiiii'] = wasmExports['_b'])(
8889
8926
  a0,
8890
8927
  a1,
8891
8928
  a2,
@@ -8902,7 +8939,7 @@ export function init(RuntimeName, PHPLoader) {
8902
8939
  a5,
8903
8940
  a6
8904
8941
  ) =>
8905
- (dynCall_iiiiiii = Module['dynCall_iiiiiii'] = wasmExports['Zb'])(
8942
+ (dynCall_iiiiiii = Module['dynCall_iiiiiii'] = wasmExports['$b'])(
8906
8943
  a0,
8907
8944
  a1,
8908
8945
  a2,
@@ -8913,7 +8950,7 @@ export function init(RuntimeName, PHPLoader) {
8913
8950
  ));
8914
8951
 
8915
8952
  var dynCall_iiiiii = (Module['dynCall_iiiiii'] = (a0, a1, a2, a3, a4, a5) =>
8916
- (dynCall_iiiiii = Module['dynCall_iiiiii'] = wasmExports['_b'])(
8953
+ (dynCall_iiiiii = Module['dynCall_iiiiii'] = wasmExports['ac'])(
8917
8954
  a0,
8918
8955
  a1,
8919
8956
  a2,
@@ -8923,10 +8960,10 @@ export function init(RuntimeName, PHPLoader) {
8923
8960
  ));
8924
8961
 
8925
8962
  var dynCall_i = (Module['dynCall_i'] = (a0) =>
8926
- (dynCall_i = Module['dynCall_i'] = wasmExports['$b'])(a0));
8963
+ (dynCall_i = Module['dynCall_i'] = wasmExports['bc'])(a0));
8927
8964
 
8928
8965
  var dynCall_viii = (Module['dynCall_viii'] = (a0, a1, a2, a3) =>
8929
- (dynCall_viii = Module['dynCall_viii'] = wasmExports['ac'])(
8966
+ (dynCall_viii = Module['dynCall_viii'] = wasmExports['cc'])(
8930
8967
  a0,
8931
8968
  a1,
8932
8969
  a2,
@@ -8934,7 +8971,7 @@ export function init(RuntimeName, PHPLoader) {
8934
8971
  ));
8935
8972
 
8936
8973
  var dynCall_viiii = (Module['dynCall_viiii'] = (a0, a1, a2, a3, a4) =>
8937
- (dynCall_viiii = Module['dynCall_viiii'] = wasmExports['bc'])(
8974
+ (dynCall_viiii = Module['dynCall_viiii'] = wasmExports['dc'])(
8938
8975
  a0,
8939
8976
  a1,
8940
8977
  a2,
@@ -8943,10 +8980,10 @@ export function init(RuntimeName, PHPLoader) {
8943
8980
  ));
8944
8981
 
8945
8982
  var dynCall_v = (Module['dynCall_v'] = (a0) =>
8946
- (dynCall_v = Module['dynCall_v'] = wasmExports['cc'])(a0));
8983
+ (dynCall_v = Module['dynCall_v'] = wasmExports['ec'])(a0));
8947
8984
 
8948
8985
  var dynCall_iijii = (Module['dynCall_iijii'] = (a0, a1, a2, a3, a4) =>
8949
- (dynCall_iijii = Module['dynCall_iijii'] = wasmExports['dc'])(
8986
+ (dynCall_iijii = Module['dynCall_iijii'] = wasmExports['fc'])(
8950
8987
  a0,
8951
8988
  a1,
8952
8989
  a2,
@@ -8955,7 +8992,7 @@ export function init(RuntimeName, PHPLoader) {
8955
8992
  ));
8956
8993
 
8957
8994
  var dynCall_jiii = (Module['dynCall_jiii'] = (a0, a1, a2, a3) =>
8958
- (dynCall_jiii = Module['dynCall_jiii'] = wasmExports['ec'])(
8995
+ (dynCall_jiii = Module['dynCall_jiii'] = wasmExports['gc'])(
8959
8996
  a0,
8960
8997
  a1,
8961
8998
  a2,
@@ -8974,7 +9011,7 @@ export function init(RuntimeName, PHPLoader) {
8974
9011
  a8,
8975
9012
  a9
8976
9013
  ) =>
8977
- (dynCall_viiiiiiiii = Module['dynCall_viiiiiiiii'] = wasmExports['fc'])(
9014
+ (dynCall_viiiiiiiii = Module['dynCall_viiiiiiiii'] = wasmExports['hc'])(
8978
9015
  a0,
8979
9016
  a1,
8980
9017
  a2,
@@ -8996,7 +9033,7 @@ export function init(RuntimeName, PHPLoader) {
8996
9033
  a5,
8997
9034
  a6
8998
9035
  ) =>
8999
- (dynCall_viiiiii = Module['dynCall_viiiiii'] = wasmExports['gc'])(
9036
+ (dynCall_viiiiii = Module['dynCall_viiiiii'] = wasmExports['ic'])(
9000
9037
  a0,
9001
9038
  a1,
9002
9039
  a2,
@@ -9016,7 +9053,7 @@ export function init(RuntimeName, PHPLoader) {
9016
9053
  a6,
9017
9054
  a7
9018
9055
  ) =>
9019
- (dynCall_iiiiiiii = Module['dynCall_iiiiiiii'] = wasmExports['hc'])(
9056
+ (dynCall_iiiiiiii = Module['dynCall_iiiiiiii'] = wasmExports['jc'])(
9020
9057
  a0,
9021
9058
  a1,
9022
9059
  a2,
@@ -9039,7 +9076,7 @@ export function init(RuntimeName, PHPLoader) {
9039
9076
  a8,
9040
9077
  a9
9041
9078
  ) =>
9042
- (dynCall_iiiiiiiiii = Module['dynCall_iiiiiiiiii'] = wasmExports['ic'])(
9079
+ (dynCall_iiiiiiiiii = Module['dynCall_iiiiiiiiii'] = wasmExports['kc'])(
9043
9080
  a0,
9044
9081
  a1,
9045
9082
  a2,
@@ -9053,7 +9090,7 @@ export function init(RuntimeName, PHPLoader) {
9053
9090
  ));
9054
9091
 
9055
9092
  var dynCall_iiji = (Module['dynCall_iiji'] = (a0, a1, a2, a3) =>
9056
- (dynCall_iiji = Module['dynCall_iiji'] = wasmExports['jc'])(
9093
+ (dynCall_iiji = Module['dynCall_iiji'] = wasmExports['lc'])(
9057
9094
  a0,
9058
9095
  a1,
9059
9096
  a2,
@@ -9061,10 +9098,10 @@ export function init(RuntimeName, PHPLoader) {
9061
9098
  ));
9062
9099
 
9063
9100
  var dynCall_jii = (Module['dynCall_jii'] = (a0, a1, a2) =>
9064
- (dynCall_jii = Module['dynCall_jii'] = wasmExports['kc'])(a0, a1, a2));
9101
+ (dynCall_jii = Module['dynCall_jii'] = wasmExports['mc'])(a0, a1, a2));
9065
9102
 
9066
9103
  var dynCall_viijii = (Module['dynCall_viijii'] = (a0, a1, a2, a3, a4, a5) =>
9067
- (dynCall_viijii = Module['dynCall_viijii'] = wasmExports['lc'])(
9104
+ (dynCall_viijii = Module['dynCall_viijii'] = wasmExports['nc'])(
9068
9105
  a0,
9069
9106
  a1,
9070
9107
  a2,
@@ -9074,7 +9111,7 @@ export function init(RuntimeName, PHPLoader) {
9074
9111
  ));
9075
9112
 
9076
9113
  var dynCall_iijiji = (Module['dynCall_iijiji'] = (a0, a1, a2, a3, a4, a5) =>
9077
- (dynCall_iijiji = Module['dynCall_iijiji'] = wasmExports['mc'])(
9114
+ (dynCall_iijiji = Module['dynCall_iijiji'] = wasmExports['oc'])(
9078
9115
  a0,
9079
9116
  a1,
9080
9117
  a2,
@@ -9084,10 +9121,10 @@ export function init(RuntimeName, PHPLoader) {
9084
9121
  ));
9085
9122
 
9086
9123
  var dynCall_vji = (Module['dynCall_vji'] = (a0, a1, a2) =>
9087
- (dynCall_vji = Module['dynCall_vji'] = wasmExports['nc'])(a0, a1, a2));
9124
+ (dynCall_vji = Module['dynCall_vji'] = wasmExports['pc'])(a0, a1, a2));
9088
9125
 
9089
9126
  var dynCall_viidii = (Module['dynCall_viidii'] = (a0, a1, a2, a3, a4, a5) =>
9090
- (dynCall_viidii = Module['dynCall_viidii'] = wasmExports['oc'])(
9127
+ (dynCall_viidii = Module['dynCall_viidii'] = wasmExports['qc'])(
9091
9128
  a0,
9092
9129
  a1,
9093
9130
  a2,
@@ -9097,16 +9134,16 @@ export function init(RuntimeName, PHPLoader) {
9097
9134
  ));
9098
9135
 
9099
9136
  var _asyncify_start_unwind = (a0) =>
9100
- (_asyncify_start_unwind = wasmExports['pc'])(a0);
9137
+ (_asyncify_start_unwind = wasmExports['rc'])(a0);
9101
9138
 
9102
9139
  var _asyncify_stop_unwind = () =>
9103
- (_asyncify_stop_unwind = wasmExports['qc'])();
9140
+ (_asyncify_stop_unwind = wasmExports['sc'])();
9104
9141
 
9105
9142
  var _asyncify_start_rewind = (a0) =>
9106
- (_asyncify_start_rewind = wasmExports['rc'])(a0);
9143
+ (_asyncify_start_rewind = wasmExports['tc'])(a0);
9107
9144
 
9108
9145
  var _asyncify_stop_rewind = () =>
9109
- (_asyncify_stop_rewind = wasmExports['sc'])();
9146
+ (_asyncify_stop_rewind = wasmExports['uc'])();
9110
9147
 
9111
9148
  function invoke_iiiiiii(index, a1, a2, a3, a4, a5, a6) {
9112
9149
  var sp = stackSave();
@@ -9519,6 +9556,32 @@ export function init(RuntimeName, PHPLoader) {
9519
9556
  PHPLoader['free'] =
9520
9557
  typeof _free === 'function' ? _free : PHPLoader['_wasm_free'];
9521
9558
 
9559
+ if (typeof NODEFS === 'object') {
9560
+ // We override NODEFS.createNode() to add an `isSharedFS` flag to all NODEFS
9561
+ // nodes. This way we can tell whether file-locking is needed and possible
9562
+ // for an FS node, even if wrapped with PROXYFS.
9563
+ const originalCreateNode = NODEFS.createNode;
9564
+ NODEFS.createNode = function createNodeWithSharedFlag() {
9565
+ const node = originalCreateNode.apply(NODEFS, arguments);
9566
+ node.isSharedFS = true;
9567
+ return node;
9568
+ };
9569
+
9570
+ var originalHashAddNode = FS.hashAddNode;
9571
+ FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
9572
+ if (
9573
+ typeof locking === 'object' &&
9574
+ locking?.is_shared_fs_node(node)
9575
+ ) {
9576
+ // Avoid caching shared VFS nodes so multiple instances
9577
+ // can access the same underlying filesystem without
9578
+ // conflicting caches.
9579
+ return;
9580
+ }
9581
+ return originalHashAddNode.apply(FS, arguments);
9582
+ };
9583
+ }
9584
+
9522
9585
  return PHPLoader;
9523
9586
 
9524
9587
  // Close the opening bracket from esm-prefix.js: