Skip to content

[Blueprints] Move blueprints.phar to the Blueprints package #2471

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 15 commits into
base: trunk
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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
82 changes: 37 additions & 45 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,162 +41,154 @@ The following contributors merged PRs in this release:

### Tools

- [ CLI ] Rename CLI binaries in `@php-wasm/cli` and `@wp-playground/cli`. ([#2441](https://github.com/WordPress/wordpress-playground/pull/2441))
- [ CLI ] Rename CLI binaries in `@php-wasm/cli` and `@wp-playground/cli`. ([#2441](https://github.com/WordPress/wordpress-playground/pull/2441))

### Documentation

- Updating Docusaurus version from 3.7 to 3.8. ([#2457](https://github.com/WordPress/wordpress-playground/pull/2457))
- [Docs] Adding fixes to broken URLs. ([#2451](https://github.com/WordPress/wordpress-playground/pull/2451))
- [Docs] Bump PHP version to avoid WordPress PHP version Warning. ([#2443](https://github.com/WordPress/wordpress-playground/pull/2443))
- Updating Docusaurus version from 3.7 to 3.8. ([#2457](https://github.com/WordPress/wordpress-playground/pull/2457))
- [Docs] Adding fixes to broken URLs. ([#2451](https://github.com/WordPress/wordpress-playground/pull/2451))
- [Docs] Bump PHP version to avoid WordPress PHP version Warning. ([#2443](https://github.com/WordPress/wordpress-playground/pull/2443))

### PHP WebAssembly

- Patch the premature "request in progress" semaphore release. ([#2455](https://github.com/WordPress/wordpress-playground/pull/2455))
- Patch the premature "request in progress" semaphore release. ([#2455](https://github.com/WordPress/wordpress-playground/pull/2455))

### Bug Fixes

- Re-enable Playground CLI tests. ([#2445](https://github.com/WordPress/wordpress-playground/pull/2445))
- Re-enable Playground CLI tests. ([#2445](https://github.com/WordPress/wordpress-playground/pull/2445))

### Various

- Add check for SQLite driver missing in target folder. ([#2440](https://github.com/WordPress/wordpress-playground/pull/2440))
- Adding CLI reference to Playground README. ([#2433](https://github.com/WordPress/wordpress-playground/pull/2433))
- Adding Gujarati Intro documentation. ([#2450](https://github.com/WordPress/wordpress-playground/pull/2450))
- Bump WordPress old version demo to version 6.2.1. ([#2460](https://github.com/WordPress/wordpress-playground/pull/2460))
- Removing blog references on Docusaurus. ([#2456](https://github.com/WordPress/wordpress-playground/pull/2456))
- Add check for SQLite driver missing in target folder. ([#2440](https://github.com/WordPress/wordpress-playground/pull/2440))
- Adding CLI reference to Playground README. ([#2433](https://github.com/WordPress/wordpress-playground/pull/2433))
- Adding Gujarati Intro documentation. ([#2450](https://github.com/WordPress/wordpress-playground/pull/2450))
- Bump WordPress old version demo to version 6.2.1. ([#2460](https://github.com/WordPress/wordpress-playground/pull/2460))
- Removing blog references on Docusaurus. ([#2456](https://github.com/WordPress/wordpress-playground/pull/2456))

### Contributors

The following contributors merged PRs in this release:

@adamziel @brandonpayton @fellyph @mho22 @nikunj8866 @zaerl


## [v2.0.6] (2025-08-04)
## [v2.0.6] (2025-08-04)

### Documentation

- Adding Contribution pages Spanish translation. ([#2431](https://github.com/WordPress/wordpress-playground/pull/2431))
- Adding Contribution pages Spanish translation. ([#2431](https://github.com/WordPress/wordpress-playground/pull/2431))

### PHP WebAssembly

- Fix file locking for PROXYFS nodes that wrap NODEFS. ([#2437](https://github.com/WordPress/wordpress-playground/pull/2437))
- Fix file locking for PROXYFS nodes that wrap NODEFS. ([#2437](https://github.com/WordPress/wordpress-playground/pull/2437))

### Bug Fixes

- Translations: Fix command typo in docs. ([#2449](https://github.com/WordPress/wordpress-playground/pull/2449))
- Translations: Fix command typo in docs. ([#2449](https://github.com/WordPress/wordpress-playground/pull/2449))

### Various

- Add Japanese translations to Blueprint Bundles and API Consistency. ([#2438](https://github.com/WordPress/wordpress-playground/pull/2438))
- Translations: Clean up version from PR #2336. ([#2448](https://github.com/WordPress/wordpress-playground/pull/2448))
- Add Japanese translations to Blueprint Bundles and API Consistency. ([#2438](https://github.com/WordPress/wordpress-playground/pull/2438))
- Translations: Clean up version from PR #2336. ([#2448](https://github.com/WordPress/wordpress-playground/pull/2448))

### Contributors

The following contributors merged PRs in this release:

@brandonpayton @fellyph @rollybueno @shimotmk @vipul0425


## [v2.0.5] (2025-07-28)
## [v2.0.5] (2025-07-28)

### Bug Fixes

- Fix fcntl() F_GETLK fatal due to undefined flock struct address. ([#2432](https://github.com/WordPress/wordpress-playground/pull/2432))
- Fix fcntl() F_GETLK fatal due to undefined flock struct address. ([#2432](https://github.com/WordPress/wordpress-playground/pull/2432))

### Various

- Add Japanese translations to contributing index and sidebar. ([#2434](https://github.com/WordPress/wordpress-playground/pull/2434))
- Add Japanese translations to contributing index and sidebar. ([#2434](https://github.com/WordPress/wordpress-playground/pull/2434))

### Contributors

The following contributors merged PRs in this release:

@brandonpayton @shimotmk


## [v2.0.4] (2025-07-25)
## [v2.0.4] (2025-07-25)

### Public API


#### Blueprints

- Distribute @wp-playground/client without any package.json dependencies. ([#2426](https://github.com/WordPress/wordpress-playground/pull/2426))
- Distribute @wp-playground/client without any package.json dependencies. ([#2426](https://github.com/WordPress/wordpress-playground/pull/2426))

### Tools

- Fix ESLint 9 linting in VSCode. ([#2417](https://github.com/WordPress/wordpress-playground/pull/2417))
- [ xdebug ] Add `--experimental-devtools` option in Playground CLI. ([#2411](https://github.com/WordPress/wordpress-playground/pull/2411))
- Fix ESLint 9 linting in VSCode. ([#2417](https://github.com/WordPress/wordpress-playground/pull/2417))
- [ xdebug ] Add `--experimental-devtools` option in Playground CLI. ([#2411](https://github.com/WordPress/wordpress-playground/pull/2411))

### PHP WebAssembly

- [PHP] Dispatch request.error for all non-zero-exit request handler errors. ([#2429](https://github.com/WordPress/wordpress-playground/pull/2429))
- [PHP] Dispatch request.error for all non-zero-exit request handler errors. ([#2429](https://github.com/WordPress/wordpress-playground/pull/2429))

### Website

- Query Monitor plugin support. ([#2415](https://github.com/WordPress/wordpress-playground/pull/2415))
- Query Monitor plugin support. ([#2415](https://github.com/WordPress/wordpress-playground/pull/2415))

### Internal

- Skip flaky end-to-end tests in Firefox and Webkit. ([#2425](https://github.com/WordPress/wordpress-playground/pull/2425))
- Skip flaky end-to-end tests in Firefox and Webkit. ([#2425](https://github.com/WordPress/wordpress-playground/pull/2425))

### Bug Fixes

- [Xdebug Bridge] Correct error related to unresolved promises in bridge. ([#2422](https://github.com/WordPress/wordpress-playground/pull/2422))
- [Xdebug Bridge] Correct error related to unresolved promises in bridge. ([#2422](https://github.com/WordPress/wordpress-playground/pull/2422))

### Various

- Documentation add sidebar to blueprints bundles. ([#2397](https://github.com/WordPress/wordpress-playground/pull/2397))
- Documentation add sidebar to blueprints bundles. ([#2397](https://github.com/WordPress/wordpress-playground/pull/2397))

### Contributors

The following contributors merged PRs in this release:

@adamziel @brandonpayton @mho22 @shimotmk


## [v2.0.3] (2025-07-24)
## [v2.0.3] (2025-07-24)

### Tools

- [ xdebug ] Add `--experimental-devtools` option in php-wasm CLI. ([#2408](https://github.com/WordPress/wordpress-playground/pull/2408))
- [ xdebug ] Add `--experimental-devtools` option in php-wasm CLI. ([#2408](https://github.com/WordPress/wordpress-playground/pull/2408))

### Bug Fixes

- Playground CLI Allow /wordpress subdirs to be mounted before WP install. ([#2382](https://github.com/WordPress/wordpress-playground/pull/2382))
- Playground CLI Allow /wordpress subdirs to be mounted before WP install. ([#2382](https://github.com/WordPress/wordpress-playground/pull/2382))

### Contributors

The following contributors merged PRs in this release:

@brandonpayton @mho22


## [v2.0.2] (2025-07-23)
## [v2.0.2] (2025-07-23)

### Tools


#### PHP WebAssembly

- [ xdebug ] Bridge DBGP session with CDP server. ([#2402](https://github.com/WordPress/wordpress-playground/pull/2402))
- [ xdebug ] Bridge DBGP session with CDP server. ([#2402](https://github.com/WordPress/wordpress-playground/pull/2402))

### Internal

- [Build] Preserve optionalDependencies in built package.json. ([#2410](https://github.com/WordPress/wordpress-playground/pull/2410))
- [Build] Preserve optionalDependencies in built package.json. ([#2410](https://github.com/WordPress/wordpress-playground/pull/2410))

###
###

- Comlink] Throw the original error in the error handler. ([#2407](https://github.com/WordPress/wordpress-playground/pull/2407))
- Comlink] Throw the original error in the error handler. ([#2407](https://github.com/WordPress/wordpress-playground/pull/2407))

### Contributors

The following contributors merged PRs in this release:

@adamziel


## [v2.0.1] (2025-07-23)

### Blueprints
Expand Down
15 changes: 14 additions & 1 deletion packages/meta/src/node-es-module-loader/loader.mts
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ export async function resolve(
}

const specifierUrl = new URL(specifier, 'file://');
for (const format of ['raw', 'json', 'url']) {
for (const format of ['raw', 'json', 'url', 'base64']) {
if (specifierUrl.searchParams.has(format)) {
// This is a custom format import and can be handled by our custom loader.
return {
Expand Down Expand Up @@ -189,6 +189,19 @@ export async function load(
};
}

if (context.format === 'base64' || urlObj.searchParams.has('base64')) {
// Load binary file content and export as base64 string
const content = readFileSync(urlObj.pathname);
const base64 = content.toString('base64');
return {
format: 'module',
shortCircuit: true,
source: `export default Uint8Array.from(atob(${JSON.stringify(
base64
)}), c => c.charCodeAt(0));`,
};
}

if (context.format === 'json' || urlObj.pathname.endsWith('.json')) {
const source = readFileSync(urlObj.pathname, 'utf8');
return {
Expand Down
4 changes: 3 additions & 1 deletion packages/nx-extensions/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
/// <reference types="vitest" />
import { defineConfig } from 'vite';
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
// eslint-disable-next-line @nx/enforce-module-boundaries
import viteGlobalExtensions from '../vite-extensions/vite-global-extensions';

export default defineConfig({
cacheDir: '../../../node_modules/.vite/nx-extensions',

plugins: [nxViteTsPaths()],
plugins: [nxViteTsPaths(), ...viteGlobalExtensions],

test: {
globals: true,
Expand Down
4 changes: 3 additions & 1 deletion packages/php-wasm/cli/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
/// <reference types="vitest" />
import { defineConfig } from 'vite';
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
// eslint-disable-next-line @nx/enforce-module-boundaries
import viteGlobalExtensions from '../../vite-extensions/vite-global-extensions';

export default defineConfig({
assetsInclude: ['**/*.ini'],
cacheDir: '../../../node_modules/.vite/php-cli',

plugins: [nxViteTsPaths()],
plugins: [nxViteTsPaths(), ...viteGlobalExtensions],

// Configuration for building your library.
// See: https://vitejs.dev/guide/build.html#library-mode
Expand Down
4 changes: 4 additions & 0 deletions packages/php-wasm/fs-journal/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ import { join } from 'path';
import { viteTsConfigPaths } from '../../vite-extensions/vite-ts-config-paths';
// eslint-disable-next-line @nx/enforce-module-boundaries
import { getExternalModules } from '../../vite-extensions/vite-external-modules';
// eslint-disable-next-line @nx/enforce-module-boundaries
import viteGlobalExtensions from '../../vite-extensions/vite-global-extensions';

export default defineConfig({
cacheDir: '../../../node_modules/.vite/php-wasm-fs-journal',
Expand All @@ -22,6 +24,8 @@ export default defineConfig({
viteTsConfigPaths({
root: '../../../',
}),

...viteGlobalExtensions,
],

// Configuration for building your library.
Expand Down
4 changes: 4 additions & 0 deletions packages/php-wasm/logger/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ import { join } from 'path';
import { viteTsConfigPaths } from '../../vite-extensions/vite-ts-config-paths';
// eslint-disable-next-line @nx/enforce-module-boundaries
import { getExternalModules } from '../../vite-extensions/vite-external-modules';
// eslint-disable-next-line @nx/enforce-module-boundaries
import viteGlobalExtensions from '../../vite-extensions/vite-global-extensions';

export default defineConfig({
cacheDir: '../../../node_modules/.vite/php-wasm-logger',
Expand All @@ -22,6 +24,8 @@ export default defineConfig({
viteTsConfigPaths({
root: '../../../',
}),

...viteGlobalExtensions,
],

// Configuration for building your library.
Expand Down
4 changes: 4 additions & 0 deletions packages/php-wasm/node-polyfills/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ import dts from 'vite-plugin-dts';
import viteTsConfigPaths from 'vite-tsconfig-paths';
// eslint-disable-next-line @nx/enforce-module-boundaries
import { getExternalModules } from '../../vite-extensions/vite-external-modules';
// eslint-disable-next-line @nx/enforce-module-boundaries
import viteGlobalExtensions from '../../vite-extensions/vite-global-extensions';

export default defineConfig({
cacheDir: '../../../node_modules/.vite/php-wasm-node-polyfills',
Expand All @@ -18,6 +20,8 @@ export default defineConfig({
tsconfigPath: join(__dirname, 'tsconfig.lib.json'),
pathsToAliases: false,
}),

...viteGlobalExtensions,
],

// Uncomment this if you are using workers.
Expand Down
4 changes: 4 additions & 0 deletions packages/php-wasm/node/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ import path from 'path';
import type { Plugin } from 'vite';
// eslint-disable-next-line @nx/enforce-module-boundaries
import { getExternalModules } from '../../vite-extensions/vite-external-modules';
// eslint-disable-next-line @nx/enforce-module-boundaries
import viteGlobalExtensions from '../../vite-extensions/vite-global-extensions';

export default defineConfig(function () {
return {
Expand Down Expand Up @@ -52,6 +54,8 @@ export default defineConfig(function () {
return null;
},
} as Plugin,

...viteGlobalExtensions,
],

// Configuration for building your library.
Expand Down
4 changes: 4 additions & 0 deletions packages/php-wasm/progress/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ import { join } from 'path';
import { viteTsConfigPaths } from '../../vite-extensions/vite-ts-config-paths';
// eslint-disable-next-line @nx/enforce-module-boundaries
import { getExternalModules } from '../../vite-extensions/vite-external-modules';
// eslint-disable-next-line @nx/enforce-module-boundaries
import viteGlobalExtensions from '../../vite-extensions/vite-global-extensions';

export default defineConfig({
cacheDir: '../../../node_modules/.vite/php-wasm-progress',
Expand All @@ -22,6 +24,8 @@ export default defineConfig({
viteTsConfigPaths({
root: '../../../',
}),

...viteGlobalExtensions,
],

// Uncomment this if you are using workers.
Expand Down
4 changes: 4 additions & 0 deletions packages/php-wasm/scopes/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ import { join } from 'path';
import { viteTsConfigPaths } from '../../vite-extensions/vite-ts-config-paths';
// eslint-disable-next-line @nx/enforce-module-boundaries
import { getExternalModules } from '../../vite-extensions/vite-external-modules';
// eslint-disable-next-line @nx/enforce-module-boundaries
import viteGlobalExtensions from '../../vite-extensions/vite-global-extensions';

export default defineConfig({
cacheDir: '../../../node_modules/.vite/php-wasm-scope',
Expand All @@ -22,6 +24,8 @@ export default defineConfig({
viteTsConfigPaths({
root: '../../../',
}),

...viteGlobalExtensions,
],

// Configuration for building your library.
Expand Down
4 changes: 4 additions & 0 deletions packages/php-wasm/stream-compression/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ import * as path from 'path';
import { viteTsConfigPaths } from '../../vite-extensions/vite-ts-config-paths';
// eslint-disable-next-line @nx/enforce-module-boundaries
import { getExternalModules } from '../../vite-extensions/vite-external-modules';
// eslint-disable-next-line @nx/enforce-module-boundaries
import viteGlobalExtensions from '../../vite-extensions/vite-global-extensions';

export default defineConfig({
cacheDir: '../../../node_modules/.vite/php-wasm-stream-compression',
Expand All @@ -19,6 +21,8 @@ export default defineConfig({
viteTsConfigPaths({
root: '../../../',
}),

...viteGlobalExtensions,
],

// Uncomment this if you are using workers.
Expand Down
Loading