Changelog
All notable changes to this project are documented in this file by a CI job that runs on every NPM release. The file follows the Keep a Changelog format.
[v2.0.9] (2025-08-11)
Breaking Changes
- [Website] Default demo content. (#2412)
Enhancements
- [PHP Playground] Select WordPress version. (#2472)
Blueprints
- [WordPress] Support auto-login with customize.php as a landing page. (#2467)
Documentation
- Tagalog: Add translations for Blueprints Tutorial. (#2477)
- Tagalog: Translations of Blueprints documentation page. (#2476)
Website
- Open external links in a new tab/window. (#2468)
Internal
- Skip flaky end-to-end tests. (#2475)
Various
- Add Japanese translations to Blueprint Examples and Troubleshoot and debug. (#2474)
Contributors
The following contributors merged PRs in this release:
@adamziel @rollybueno @shimotmk @zaerl
[v2.0.8] (2025-08-07)
Blueprints
- Fallback to URL-based file name when fetching remote ZIP files. (#2470)
Documentation
- [Docs] Adding Resources, Web instance, and guides pages on Brazilian Portuguese. (#2351)
- [Docs] Enabling language switcher. (#2465)
PHP WebAssembly
- Fix resolving mounted symlinks in secondary PHP instances. (#2444)
- [XDebug Bridge] List additional ASYNCIFY_ONLY functions to prevent
unreachable
crashes when using Devtools. (#2454)
Website
- [Browser] Do not use the Buffer class in web browsers. (#2469)
- Add PHP Playground. (#2463)
- Suppress PHP warnings when pre-fetching WordPress updates. (#2458)
Bug Fixes
- Fix invalid filename "<7.4" on Windows. (#2461)
Contributors
The following contributors merged PRs in this release:
@adamziel @brandonpayton @fellyph @JanJakes @mho22
[v2.0.7] (2025-08-05)
Tools
- [ CLI ] Rename CLI binaries in
@php-wasm/cli
and@wp-playground/cli
. (#2441)
Documentation
- Updating Docusaurus version from 3.7 to 3.8. (#2457)
- [Docs] Adding fixes to broken URLs. (#2451)
- [Docs] Bump PHP version to avoid WordPress PHP version Warning. (#2443)
PHP WebAssembly
- Patch the premature "request in progress" semaphore release. (#2455)
Bug Fixes
- Re-enable Playground CLI tests. (#2445)
Various
- Add check for SQLite driver missing in target folder. (#2440)
- Adding CLI reference to Playground README. (#2433)
- Adding Gujarati Intro documentation. (#2450)
- Bump WordPress old version demo to version 6.2.1. (#2460)
- Removing blog references on Docusaurus. (#2456)
Contributors
The following contributors merged PRs in this release:
@adamziel @brandonpayton @fellyph @mho22 @nikunj8866 @zaerl
[v2.0.6] (2025-08-04)
Documentation
- Adding Contribution pages Spanish translation. (#2431)
PHP WebAssembly
- Fix file locking for PROXYFS nodes that wrap NODEFS. (#2437)
Bug Fixes
- Translations: Fix command typo in docs. (#2449)
Various
- Add Japanese translations to Blueprint Bundles and API Consistency. (#2438)
- Translations: Clean up version from PR #2336. (#2448)
Contributors
The following contributors merged PRs in this release:
@brandonpayton @fellyph @rollybueno @shimotmk @vipul0425
[v2.0.5] (2025-07-28)
Bug Fixes
- Fix fcntl() F_GETLK fatal due to undefined flock struct address. (#2432)
Various
- Add Japanese translations to contributing index and sidebar. (#2434)
Contributors
The following contributors merged PRs in this release:
@brandonpayton @shimotmk
[v2.0.4] (2025-07-25)
Public API
Blueprints
- Distribute @wp-playground/client without any package.json dependencies. (#2426)
Tools
- Fix ESLint 9 linting in VSCode. (#2417)
- [ xdebug ] Add
--experimental-devtools
option in Playground CLI. (#2411)
PHP WebAssembly
- [PHP] Dispatch request.error for all non-zero-exit request handler errors. (#2429)
Website
- Query Monitor plugin support. (#2415)
Internal
- Skip flaky end-to-end tests in Firefox and Webkit. (#2425)
Bug Fixes
- [Xdebug Bridge] Correct error related to unresolved promises in bridge. (#2422)
Various
- Documentation add sidebar to blueprints bundles. (#2397)
Contributors
The following contributors merged PRs in this release:
@adamziel @brandonpayton @mho22 @shimotmk
[v2.0.3] (2025-07-24)
Tools
- [ xdebug ] Add
--experimental-devtools
option in php-wasm CLI. (#2408)
Bug Fixes
- Playground CLI Allow /wordpress subdirs to be mounted before WP install. (#2382)
Contributors
The following contributors merged PRs in this release:
@brandonpayton @mho22
[v2.0.2] (2025-07-23)
Tools
PHP WebAssembly
- [ xdebug ] Bridge DBGP session with CDP server. (#2402)
Internal
- [Build] Preserve optionalDependencies in built package.json. (#2410)
- Comlink] Throw the original error in the error handler. (#2407)
Contributors
The following contributors merged PRs in this release:
@adamziel
[v2.0.1] (2025-07-23)
Blueprints
- Rewrite paths in the wp-cli step. Improve error reporting. (#2406)
Contributors
The following contributors merged PRs in this release:
@adamziel
[v2.0.0] (2025-07-23)
Enhancements
- [Playground CLI] Improve error reporting. (#2401)
- [Playground CLI] Kebab-case yargs options declarations. (#2399)
Blueprints
- Expose Blueprints v2 runner in Playground CLI. (#2394)
- Extract Blueprint v1-specific parts of Playground CLI. (#2392)
- [Playground CLI] Separate Blueprints v1 and Blueprints v2 code paths. (#2396)
Tools
- [XDebug] Add a mock @php-wasm/xdebug-bridge package. (#2398)
Documentation
- Adding Brazilian Portuguese translation for developer documentation. (#2391)
Website
- [Remote] Use CORS proxy in embedded Playgrounds. (#2369)
Bug Fixes
- CLI: Fix --login option and "landingPage" Blueprint property. (#2344)
Various
- Add Japanese translations to steps and steps shorthands. (#2386)
- Add OPCache support. (#2400)
- [Node] Gracefully handle connection errors in the outbound network proxy. (#2370)
Contributors
The following contributors merged PRs in this release:
@adamziel @fellyph @shimotmk @zaerl
[v1.2.3] (2025-07-21)
Enhancements
- [Playground CLI] Consolidate auto mounting logic. (#2360)
- [Playground CLI] Move mounting code to mount.ts. (#2362)
Blueprints
- [CLI] Move Blueprints v2 to Playground CLI package. (#2364)
Public API
Blueprints
- [Client] Accept wasm.wordpress.net as an official origin. (#2368)
Tools
- Make PHP 8.3 the default version. (#2371)
PHP WebAssembly
- Add
--xdebug
option in php-wasm CLI and wp-playground CLI. (#2346)
Documentation
- Adding Playground CLI page and removing wp-now references. (#2337)
- Adding pt-br About and Launch Page. (#2358)
- Adding three new flags on the CLI README file. (#2325)
- Adding video content in Japanese to resources page. (#2354)
- Updating web instance page documentation. (#2365)
PHP WebAssembly
- [PHP-wasm Node] Remove unused node creation code from createNodeFsMountHandler. (#2379)
- [PHP-wasm] File mounting in NODEFS. (#2338)
- [PHP] Improve error logging. (#2357)
- [PHP] Isomorphic, reusable spawn handler. (#2359)
- [PHP] Refresh the latest PHP versions before recompiling. (#2372)
- [php-wasm/universal] Try require() before dynamic imprt in comlink-sync.ts. (#2363)
Website
- Deploy public web app after WP major/beta update. (#2378)
Bug Fixes
- Allow the WP update and changelog workflows to commit to trunk again. (#2377)
- Fix failing WP update workflows. (#2376)
Various
- Add Japanese translations to Resources References. (#2352)
- Add new logo and open graph image. (#2350)
- Adding Portuguese version for Code Standards, Code, and Documentation.. (#2343)
- Adding new icons and og:Image for the Playground Web instance. (#2367)
- Update Japanese translations to main directory. (#2375)
Contributors
The following contributors merged PRs in this release:
@adamziel @bgrgicak @brandonpayton @fellyph @mho22 @shimotmk
[v1.2.2] (2025-07-14)
Enhancements
- Add --internal-cookie-store option for Playground CLI. (#2323)
Tools
PHP WebAssembly
- [ php-wasm ] Add
xdebug
shared extension to @php-wasm/node ASYNCIFY. (#2326)
Documentation
- Add Japanese translations to Using Blueprints. (#2330)
- Add Japanese translations to Blueprint data Format. (#2340)
- Adding new videos about WordPress Playground. (#2348)
- Translate How to contribute pages to Brazilian Portuguese. (#2329)
- Updating Translation Guide. (#2342)
- Updating slack channel from #meta-playground to #playground. (#2345)
PHP WebAssembly
- Support multiple workers for NODEFS /wordpress mounts – Asyncify. (#2317)
- [PHP] Support non-blocking read streams. (#2339)
Bug Fixes
- Fix: Set an explicit path for docsaurus.config.js. (#2335)
Contributors
The following contributors merged PRs in this release:
@adamziel @brandonpayton @fellyph @mho22 @rollybueno @shimotmk
[v1.0.38] (2025-05-22)
Various
- Revert "[ php-wasm ] add Intl support (#150)". (#154)
- Use the new SQLite driver. (#144)
- [ php-wasm ] Add intl support. (#155)
- [ php-wasm ] Intl : Improve integration. (#159)
- [ php-wasm ] add Intl support. (#150)
- [CLI] Enable users to automatically mount their current working directory into Playground. (#39)
- [PHP-wasm Node] Fix Identifier '__filename' has already been declared. (#143)
- [Website] Support data URLs in blueprint-url query parameter. (#158)
Contributors
The following contributors merged PRs in this release:
@adamziel @bgrgicak @JanJakes @mho22
[v1.0.37] (2025-05-15)
Various
- Define
DB_NAME
constant when it's missing. (#140) - Support limiting files added to self-hosted packages. (#149)
Contributors
The following contributors merged PRs in this release:
@brandonpayton @JanJakes
[v1.0.36] (2025-05-08)
Various
- Document mounting OPFS storage after the boot. (#141)
- QUERY_STRING should default to empty string. (#139)
- Remove null steps that are added. (#135)
- [CLI] Fix package entry point path. (#136)
Contributors
The following contributors merged PRs in this release:
@ashfame @bgrgicak @sejas
[v1.0.35] (2025-05-08)
[v1.0.34] (2025-05-08)
Various
- Document mounting OPFS storage after the boot. (#141)
Contributors
The following contributors merged PRs in this release:
@ashfame
[v1.0.33] (2025-05-08)
Various
- Add MySQL network calls to Asyncify tests. (#108)
- Format the plugin-proxy file. (#127)
- Plugin proxy: Allow all repos from WordPress, Automattic and Woocommerce organizations. (#128)
- QUERY_STRING should default to empty string. (#139)
- Remove null steps that are added. (#135)
- Remove unused dependencies. (#116)
- [CLI] Fix package entry point path. (#136)
- [PHP-wasm Node] Add support for resolving wasm paths in Windows. (#129)
- [PHP-wasm Node] Dynamically mount symlinks. (#125)
Contributors
The following contributors merged PRs in this release:
@adamziel @ashfame @bgrgicak @ingeniumed @sejas
[v1.0.32] (2025-05-06)
Various
- Add MySQL network calls to Asyncify tests. (#108)
- Format the plugin-proxy file. (#127)
- Plugin proxy: Allow all repos from WordPress, Automattic and Woocommerce organizations. (#128)
- Remove unused dependencies. (#116)
- [PHP-wasm Node] Add support for resolving wasm paths in Windows. (#129)
- [PHP-wasm Node] Dynamically mount symlinks. (#125)
Contributors
The following contributors merged PRs in this release:
@adamziel @bgrgicak @ingeniumed
[v1.0.31] (2025-04-29)
Bug Fixes
Various
- Add private fork links to the changelog. (#98)
- Allow public access to A8C Playground instance. (#119)
- Make php-wasm and Playground CLI's fast to run with Node.js. (#107)
- Playground CLI: Add
skipSqliteSetup
flag for MySQL support. (#97) - Prep the WP update workflows to be re-enabled. (#110)
- Support building for additional remote origins. (#122)
- Tweak Blueprint test string to match WP 6.8. (#117)
- Update Nx, Vite, and ESLint dependencies. (#35)
- Upgrade octokit to 3.1.2 to fix vulnerability. (#106)
- Use Node as the Vitest environment. (#96)
Contributors
The following contributors merged PRs in this release:
@bgrgicak @brandonpayton @ivan-ottinger @wojtekn
[v1.0.30] (2025-04-07)
Bug Fixes
- Fix changelog workflow and backfill changelog entries from recent versions. (#83)
Various
- Consider unexpected undefined symbols to be errors. (#86)
- Ignore ca-bundle created by @php-wasm/cli. (#88)
- Support Node.js args to built-script executor. (#92)
- Support quickly testing php-wasm CLI changes with bun. (#85)
- Update Emscripten version to 4.0.5. (#93)
- Update Playground Node version to 20.9.0. (#89)
- Upgrade express to 4.21.2. (#90)
- [PHP-wasm] Use statfs from NODEFS in the Node version. (#94)
Contributors
The following contributors merged PRs in this release:
@bgrgicak @brandonpayton @wojtekn
[v1.0.29] (2025-03-11)
Various
- Blueprint bundles. (#75)
- CORS Proxy: fetch() with credentials: "include". (#66)
- Exif support for PHP-wasm. (#72)
- Remove Data Liberation PHP modules. (#79)
- Stop suppressing 64bit integer PHP warnings as 64bit longs are now suppoted. (#76)
- [Blueprints] setSiteLanguage fetch translation package URL from WP.org. (#81)
- [Website] Drop the static <link rel="manifest"> tag and generate one in JavaScript instead. (#78)
Contributors
The following contributors merged PRs in this release:
@adamziel @bgrgicak
[v1.0.28] (2025-03-05)
Various
- 64bit integer support, drop PHP 7.0 and 7.1 support. (#74)
- FS Journal: Handle renaming OPFS files via delete + create (instead of file.move()). (#64)
- GitHub: Cache node_modules per arch to avoid nx error. (#70)
- Merge from public Playground repo. (#59)
- OPFS site creation: Use the same "is this directory a site?" check as the site list. (#65)
- Stop adding source maps to offline assets list. (#68)
- Support mobile access to private Playground instance. (#73)
- TLS->HTTP Proxy: Support outbound request body. (#61)
- TLS: Only use the server_name extension during server hello. (#62)
- Website: Blueprints as PWAs with a dynamic manifest.json file. (#67)
- Website: Preserve the
mode
query arg when opening OPFS site. (#63)
Contributors
The following contributors merged PRs in this release:
@adamziel @brandonpayton
[v1.0.27] (2025-02-25)
Bug Fixes
- Fix php-wasm build error for WITH_SOURCEMAPS=yes. (#44)
- Fix php-wasm source map base. (#46)
- Fix private website deployment workflow. (#57)
- Fix up private website deployment workflow after initial commit. (#29)
Various
- Add WITH_DEBUG option for building php-wasm with DWARF debug info. (#47)
- Add
janjakes
to GitHub workflows actors. (#33) - Add a dedicated workflow for deploying private playground. (#28)
- Add remote data blocks to the allowlist. (#30)
- Allow ashfame to run self-hosted package release workflow. (#22)
- Allow deploying custom supported domains for CORS proxy. (#54)
- CORS proxy: Make allowed origins configurable. (#43)
- Make further fixes for unreliable end-to-end tests. (#9)
- Move DNS polyfills to a PHP extension and add missing constants. (#27)
- New playground CLI function interface. (#40)
- Replace some hardcoded refs to playground.wordpress.net web app. (#42)
- Restore safety condition for CORS proxy deployment workflow. (#55)
- Revert "Add the launch browser flag to CLI". (#24)
- Revert "Support file URL resources in command line environment". (#41)
- Schedule private deployment and use private environment. (#37)
- Stop assuming CLI stdout is a TTY write stream. (#51)
- Store WordPress site cookies in the browser instead of a custom Cookie Store. (#20)
- Support file URL resources in command line environment. (#34)
- Switch to relative paths in app manifest. (#36)
- Switch to runner with more CPU and RAM. (#45)
- Treat zip files as zip files regardless of file name. (#58)
- Try more Playwright workers since we have a runner with more resources. (#48)
- Update private Playground instance to use dedicated CORS proxy. (#56)
- Use rsync instead of scp in website deploy workflow. (#26)
- Use specified SQLite version also for PHP < 7.4. (#32)
Contributors
The following contributors merged PRs in this release:
@adamziel @bgrgicak @brandonpayton @ingeniumed @JanJakes @zaerl
[v1.0.26] (2025-02-04)
Bug Fixes
- Fix workflow for deploying self-hosted packages. (#6)
Various
Contributors
The following contributors merged PRs in this release:
@ashfame @brandonpayton @zaerl
[v1.0.25] (2025-02-04)
Various
Contributors
The following contributors merged PRs in this release:
@brandonpayton
[v1.0.24] (2025-02-03)
[v1.0.23] (2025-01-27)
[v1.0.22] (2025-01-20)
[v1.0.21] (2025-01-13)
Enhancements
- [Data Liberation] Add EPub to Blocks converter. (#2097)
- [Data Liberation] Block markup consumers and producers. (#2121)
- [Data Liberation] Filesystem entity reader. (#2125)
- [Data Liberation] Recognize self-closing blocks in WP_Block_Markup_Processor. (#2120)
- [Data Liberation] Refactor Entity Readers class diagram. (#2096)
PHP WebAssembly
- PHP 8.4 support. (#2038)
- Rewrote fileToUint8Array function to be also NodeJS/Deno compatible. (#2117)
- [PHP] Restore /internal files and Filesystem mounts after hotswapPhpRuntime is called. (#2119)
Bug Fixes
- [CORS Proxy] Support chunked encoding when running in Apache/Nginx/etc. (#2114)
Contributors
The following contributors merged PRs in this release:
@adamziel @mbuella
[v1.0.20] (2025-01-06)
Website
- Avoid login issue in deployment end-to-end tests. (#2065)
Contributors
The following contributors merged PRs in this release:
@brandonpayton
[v1.0.19] (2024-12-30)
[v1.0.18] (2024-12-23)
Enhancements
- [Data Liberation] Add HTML to Blocks converter. (#2095)
- [Data Liberation] Add Markdown parsing libraries. (#2092)
- [Data Liberation] Build markdown importer as phar. (#2094)
- [Data Liberation] Move Markdown importer to a separate package. (#2093)
Blueprints
- Prevent WSOD when autologin is enabled and a plugin logs a notice. (#2079)
Tools
GitHub integration
- [Website] GitHub export modal: Correctly compute the root path when exporting the entire site. (#2103)
Website
- Enable separate source maps for all package builds. (#2088)
Bug Fixes
- Fix README.md typos. (#2091)
Various
- Add small comment about lazy init of WXR reader. (#2102)
- [Blueprints] Prevent plugin activation error if plugin redirects during activation or produces an output. (#2066)
Contributors
The following contributors merged PRs in this release:
@adamziel @bgrgicak @brandonpayton @zaerl
[v1.0.17] (2024-12-17)
Tools
Blueprints Builder
- Use transparent CORS proxy in Blueprint Builder. (#2089)
PHP WebAssembly
- Build
@php-wasm
packages as dual ESM + CJS. (#2087)
- Add ESLint rule to avoid unintentional dependency on @wp-playgrounds/wordpress-builds. (#2048)
Contributors
The following contributors merged PRs in this release:
@adamziel @brandonpayton
[v1.0.16] (2024-12-16)
Enhancements
- Allow Authorization header pass-through with X-Cors-Proxy-Allowed-Request-Headers. (#2007)
- [Cors Proxy] Support Transfer-Encoding: Chunked. (#2077)
- [Website] Enable CORS proxy for all fetches. (#2076)
Tools
Blueprints
- [Blueprints] Preserve the first char of all filenames sourced from GitDirectoryReference. (#2070)
Import/Export
- [Blueprints] Support Data Liberation importer in the importWxr step. (#2058)
PHP WebAssembly
Website
- [Webiste] Switch the CORS Proxy URL to wordpress-playground-cors-proxy.net. (#2074)
Website
- Bugfix: Delist data-liberation-core.phar from the preloaded offline mode assets. (#2072)
- Don't show the error reporting modal on the initial load. (#2068)
- Prevent the initial flash of "You have no Playgrounds" message. (#2069)
- Remove old PR preview HTML files and add redirects to new preview modals. (#2081)
Internal
- [Meta] Remove GitHub Board Automation workflow. (#2073)
Bug Fixes
- Temporary: Skip more CI-only deployment test failures. (#2071)
Various
- Ensure that Site Editor templates are associated with the correct taxonomy. (#1997)
- PR Preview: Document and simplify targetParams. (#2052)
- Revert "Remove old PR preview HTML files and add redirects to new preview modals". (#2082)
Contributors
The following contributors merged PRs in this release:
@adamziel @ajotka @akirk @brandonpayton @maxschmeling
[v1.0.15] (2024-12-09)
Enhancements
- Shorten and simplify path to CORS proxy. (#2063)
- Support users choosing how to handle URLs for sites that do not exist. (#2059)
Tools
GitHub integration
- Add zaerl to GitHub workflows actors. (#2041)
PHP WebAssembly
- [Networking] Decrypt TLS 1.2 alert messages. (#2060)
Website
- Fix CORS proxy deploy workflow. (#2049)
- Nightly build bugfix – ship the actual nightly build, not the latest release. (#2056)
- Remove duplicate "Saved Playgrounds" label. (#2044)
Various
- Add deploy workflow for standalone CORS proxy. (#2022)
- Restore CORS support to CORS proxy. (#2023)
- [Data Liberation] "Fetch from a different URL" button for failed media downloads, Interactivity API support. (#2040)
- [Data Liberation] Sync WP_HTML API with WordPress 6.7.1 (and add a new test). (#2062)
Contributors
The following contributors merged PRs in this release:
@adamziel @bgrgicak @brandonpayton @zaerl
[v1.0.14] (2024-12-02)
Blueprints
- Resolve the latest WordPress version from the API instead of assuming it's the same as the last minified build. (#2027)
Tools
Blueprints Builder
- Add installPlugin support for single plugin files. (#2033)
PHP WebAssembly
- Networking: Preserve the content-type header when fetch()-ing. (#2028)
Website
- [Web] Re-enable wp-cron. (#2039)
Various
- [Data Liberation] WP_Stream_Importer: User-driven incremental import. (#2013)
Contributors
The following contributors merged PRs in this release:
@adamziel @brandonpayton
[v1.0.13] (2024-11-25)
Enhancements
- E2E: Disable a flaky deployment test. (#2016)
- [Data Liberation] Add WXR import CLI script. (#2012)
- [Data Liberation] Re-entrant WP_Stream_Importer. (#2004)
- [Data Liberation] wp-admin importer page. (#2003)
Blueprints
- SetSiteLanguage step – download the latest RC translations for Nightly and Beta builds of WordPress. (#1987)
- Use the major WordPress version to download RC/beta translations. (#2017)
Tools
Pull Request Previewer
- Fix path of PR preview URL in production. (#2014)
- Support submitting PR preview modal with ENTER key. (#2015)
Website
- Move WordPress & Gutenberg PR Preview to Playground website. (#1938)
- Restore basic element styles for modal dialog content. (#2021)
Bug Fixes
- Fix test.md link. (#2005)
Various
- [Data Liberation] WP_Stream_Importer with support for WXR and Markdown files. (#1982)