From 8fddbaf69f9cc4439c79d3083e210c4bca1e4b78 Mon Sep 17 00:00:00 2001 From: Joe Fusco Date: Mon, 2 Nov 2026 10:04:49 -0500 Subject: [PATCH 1/2] chore(examples): stop using deprecated Next.js image and link options Next.js 16 warns that images.domains is deprecated in favor of images.remotePatterns, and that Link's legacyBehavior will be removed. The getting-started example already used remotePatterns; the tutorial and block-support examples now match it, and getting-started's header and post links render their own anchors. --- examples/next/block-support/next.config.js | 6 +++++- .../components/Header/Header.js | 4 ++-- .../components/Post/Post.js | 20 ++++++++----------- examples/next/tutorial/next.config.js | 6 +++++- 4 files changed, 20 insertions(+), 16 deletions(-) diff --git a/examples/next/block-support/next.config.js b/examples/next/block-support/next.config.js index a6943da2d..ac8aa1f1c 100644 --- a/examples/next/block-support/next.config.js +++ b/examples/next/block-support/next.config.js @@ -10,7 +10,11 @@ module.exports = withFaust({ loadPaths: ['node_modules'], }, images: { - domains: [getWpHostname()], + remotePatterns: [ + { + hostname: getWpHostname(), + }, + ], }, i18n: { locales: ['en'], diff --git a/examples/next/faustwp-getting-started/components/Header/Header.js b/examples/next/faustwp-getting-started/components/Header/Header.js index 2b221d624..fef42e48d 100644 --- a/examples/next/faustwp-getting-started/components/Header/Header.js +++ b/examples/next/faustwp-getting-started/components/Header/Header.js @@ -19,8 +19,8 @@ export default function Header({
- - {title} + + {title} {description &&

{description}

}
diff --git a/examples/next/faustwp-getting-started/components/Post/Post.js b/examples/next/faustwp-getting-started/components/Post/Post.js index 6fcaaa74a..dc058d105 100644 --- a/examples/next/faustwp-getting-started/components/Post/Post.js +++ b/examples/next/faustwp-getting-started/components/Post/Post.js @@ -14,21 +14,17 @@ export default function Post({ return (
{featuredImage && ( - - - - + + )} - - -

{title}

-
+ +

{title}

Date: Mon, 2 Nov 2026 10:08:02 -0500 Subject: [PATCH 2/2] chore(examples): use Faust 4 in the examples The examples still asked for @faustwp/core and @faustwp/cli 3.x and @faustwp/blocks 6.x, so new projects started on the old majors. The getting-started example's category pages also crashed on 3.6.0 with "NextRouter was not mounted"; they render on 4.1.0. Inside the monorepo the example now resolves the workspace packages instead of installing 3.6.0 from npm, so its E2E run tests the current code. The tutorial example gets the same Node.js 22 engines entry as the others. --- examples/next/block-support/package.json | 6 +- .../next/faustwp-getting-started/package.json | 4 +- examples/next/tutorial/package.json | 9 ++- package-lock.json | 56 +------------------ 4 files changed, 13 insertions(+), 62 deletions(-) diff --git a/examples/next/block-support/package.json b/examples/next/block-support/package.json index 54f908589..9271779fa 100644 --- a/examples/next/block-support/package.json +++ b/examples/next/block-support/package.json @@ -12,9 +12,9 @@ }, "dependencies": { "@apollo/client": "^3.8.8", - "@faustwp/blocks": "^6.1.9", - "@faustwp/cli": "^3.2.5", - "@faustwp/core": "^3.3.2", + "@faustwp/blocks": "^7.1.0", + "@faustwp/cli": "^4.1.0", + "@faustwp/core": "^4.1.0", "classnames": "^2.5.1", "graphql": "^16.10.0", "next": "^16.3.8", diff --git a/examples/next/faustwp-getting-started/package.json b/examples/next/faustwp-getting-started/package.json index 850935c41..0eca539b7 100644 --- a/examples/next/faustwp-getting-started/package.json +++ b/examples/next/faustwp-getting-started/package.json @@ -11,8 +11,8 @@ }, "dependencies": { "@apollo/client": "^3.14.1", - "@faustwp/cli": "^3.4.1", - "@faustwp/core": "^3.4.2", + "@faustwp/cli": "^4.1.0", + "@faustwp/core": "^4.1.0", "@wordpress/base-styles": "^6.15.0", "@wordpress/block-library": "11.2.0", "classnames": "^2.5.1", diff --git a/examples/next/tutorial/package.json b/examples/next/tutorial/package.json index 7530ba95d..57faf6cb3 100644 --- a/examples/next/tutorial/package.json +++ b/examples/next/tutorial/package.json @@ -12,9 +12,9 @@ }, "dependencies": { "@apollo/client": "^3.13.9", - "@faustwp/blocks": "^6.1.9", - "@faustwp/cli": "^3.2.4", - "@faustwp/core": "^3.3.6", + "@faustwp/blocks": "^7.1.0", + "@faustwp/cli": "^4.1.0", + "@faustwp/core": "^4.1.0", "graphql": "^16.11.0", "next": "^16.3.8", "next-secure-headers": "^2.2.0", @@ -30,6 +30,9 @@ "postcss": "^8.5.25", "tailwindcss": "^4.3.3" }, + "engines": { + "node": ">=22" + }, "overrides": { "@babel/runtime": "^7.26.10", "fast-xml-parser": "^5.3.4", diff --git a/package-lock.json b/package-lock.json index 522cb3abf..7ee4ea04b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -42,8 +42,8 @@ "version": "0.1.0", "dependencies": { "@apollo/client": "^3.14.1", - "@faustwp/cli": "^3.4.1", - "@faustwp/core": "^3.4.2", + "@faustwp/cli": "^4.1.0", + "@faustwp/core": "^4.1.0", "@wordpress/base-styles": "^6.15.0", "@wordpress/block-library": "11.2.0", "classnames": "^2.5.1", @@ -61,58 +61,6 @@ "npm": ">=8" } }, - "examples/next/faustwp-getting-started/node_modules/@faustwp/cli": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@faustwp/cli/-/cli-3.6.0.tgz", - "integrity": "sha512-sMC3ffK3eLiWPfU8uUSwJpAAJ3FwQleNvF/TezX2VLD9+51M7DZPe3Q2AI4bbTRUu85gm7blHsr8acywPkyrpQ==", - "license": "MIT", - "dependencies": { - "archiver": "^8.0.0", - "chalk": "^4.1.2", - "dotenv-flow": "^4.1.0", - "form-data": "^4.0.6", - "fs-extra": "^11.4.1", - "glob": "^13.0.6", - "isomorphic-fetch": "^3.0.0", - "lodash": "^4.18.1", - "webpack-cli": "7.2.3" - }, - "bin": { - "faust": "dist/index.js" - }, - "engines": { - "node": ">=18", - "npm": ">=8" - } - }, - "examples/next/faustwp-getting-started/node_modules/@faustwp/core": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@faustwp/core/-/core-3.6.0.tgz", - "integrity": "sha512-xRZ2+RsKTm/3BWBlvtwOo5LlYy7w+fjCJpUGr7Oo3q/Kr19XVIbUN6t5PzST67JMBDID+h2zWj02z36HFFgdBg==", - "license": "MIT", - "dependencies": { - "@wordpress/hooks": "^4.57.0", - "chalk": "^4.1.2", - "classnames": "^2.3.2", - "cookie": "^1.1.1", - "deepmerge": "^4.2.2", - "fast-xml-parser": "^5.11.2", - "isomorphic-fetch": "^3.0.0", - "js-cookie": "^3.0.8", - "js-sha256": "^1.0.0", - "lodash": "^4.18.1" - }, - "engines": { - "node": ">=18", - "npm": ">=8" - }, - "peerDependencies": { - "@apollo/client": ">=3.6.6 <4", - "next": ">=12.1.6", - "react": ">=17.0.2", - "react-dom": ">=17.0.2" - } - }, "examples/next/faustwp-getting-started/node_modules/@types/gradient-parser": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz",