Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
8710b8c
Add JSPI support for PHP WASM extensions
wojtekn Feb 10, 2026
65d39cb
Download Node.js binary during postinstall for dev/test environments
wojtekn Feb 10, 2026
029766e
Enable multi-worker support for E2E tests
wojtekn Feb 10, 2026
61f241e
Merge branch 'trunk' into wojtekn/add/jspi-support
wojtekn Feb 10, 2026
085f3d7
Update package versions
fredrikekelund Feb 16, 2026
ac963dd
Temporarily remove patch
fredrikekelund Feb 16, 2026
560a43c
Remove patch again
fredrikekelund Feb 16, 2026
b6e1f52
Cleanup
fredrikekelund Feb 16, 2026
e8e4cd2
Bring back patches
fredrikekelund Feb 16, 2026
712b29d
Merge branch 'trunk' into wojtekn/add/jspi-support
fredrikekelund Feb 16, 2026
1d8a801
Remove asyncify builds in Vite build instead
fredrikekelund Feb 17, 2026
1886d32
Simplify
fredrikekelund Feb 17, 2026
548fd59
Merge remote-tracking branch 'origin/trunk' into wojtekn/add/jspi-sup…
wojtekn Feb 17, 2026
c93a474
Merge trunk into wojtekn/add/jspi-support
wojtekn Feb 18, 2026
5dee61c
With Redis and Memcached
fredrikekelund Feb 18, 2026
bdccb0f
Revert "With Redis and Memcached"
fredrikekelund Feb 18, 2026
7485eec
Temporarily undo changes to src/storage/paths.ts
fredrikekelund Feb 18, 2026
ed65ccd
Merge trunk into wojtekn/add/jspi-support
wojtekn Feb 19, 2026
c8927c0
Merge branch 'trunk' into wojtekn/add/jspi-support
wojtekn Feb 19, 2026
3a69b1b
Fix lint issues
wojtekn Feb 19, 2026
06b4257
Refresh lock
wojtekn Feb 19, 2026
104fb78
Reset lockfile
fredrikekelund Feb 19, 2026
782d649
Fix performance test
fredrikekelund Feb 19, 2026
9d20461
Fix paths in compare-perf job
fredrikekelund Feb 19, 2026
bde4715
One more fix
fredrikekelund Feb 19, 2026
ca7776c
Merge branch 'trunk' into wojtekn/add/jspi-support
wojtekn Feb 20, 2026
cc4c26a
Merge branch 'trunk' into wojtekn/add/jspi-support
wojtekn Feb 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions apps/cli/lib/pm2-manager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,7 @@ export async function startProcess(
const processConfig: StartOptions = {
name: processName,
interpreter: process.execPath,
node_args: '--experimental-wasm-jspi',
script: scriptPath,
exec_mode: 'fork',
autorestart: false,
Expand Down
20 changes: 19 additions & 1 deletion apps/cli/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
import { existsSync, readFileSync } from 'fs';
import { existsSync, readFileSync, rmSync } from 'fs';
import { dirname, join, resolve } from 'path';
import { sync as globSync } from 'glob';
import { defineConfig, normalizePath } from 'vite';
import { viteStaticCopy } from 'vite-plugin-static-copy';

const yargsPath = dirname( require.resolve( 'yargs' ) );
const yargsLocalesPath = join( yargsPath, 'locales' );
const cliNodeModulesPath = resolve( __dirname, 'node_modules' );
const distCliNodeModulesPath = resolve( __dirname, 'dist/cli/node_modules' );
const packageVersion = JSON.parse(
readFileSync( resolve( __dirname, '..', 'studio', 'package.json' ), 'utf-8' )
).version;
Expand All @@ -30,6 +32,22 @@ export default defineConfig( {
},
],
} ),
{
// Remove asyncify PHP-WASM builds from dist. JSPI is a newer and faster technology, and
// there's no need for us to bundle both build formats. Removing asyncify saves ~250MB.
name: 'prune-php-wasm-asyncify',
apply: 'build' as const,
closeBundle() {
const asyncifyPaths = globSync( '@php-wasm/node-*/asyncify/', {
cwd: distCliNodeModulesPath,
absolute: true,
} );

for ( const asyncifyPath of asyncifyPaths ) {
rmSync( asyncifyPath, { recursive: true, force: true } );
}
},
},
]
: [] ),
],
Expand Down
1 change: 1 addition & 0 deletions apps/studio/src/modules/cli/lib/execute-command.ts
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,7 @@ export function executeCliCommand(
const child = fork( cliPath, [ ...args, '--avoid-telemetry' ], {
stdio,
execPath: getBundledNodeBinaryPath(),
execArgv: [ '--experimental-wasm-jspi' ],
} );
const eventEmitter = new CliCommandEventEmitter< boolean >();

Expand Down