diff --git a/docs/release-notes/6.4.12/changelog.ai.txt b/docs/release-notes/6.4.12/changelog.ai.txt new file mode 100644 index 000000000..13cfbbe5f --- /dev/null +++ b/docs/release-notes/6.4.12/changelog.ai.txt @@ -0,0 +1,8 @@ +AI Context: 6.4.12 Changelog (changelog.mdx) + +This file tracks manual edits made after the generation script ran. +The script reads the "Skipped PRs" section to avoid re-adding removed entries. + +## Skipped PRs + +## Manual Rewrites diff --git a/docs/release-notes/6.4.12/changelog.mdx b/docs/release-notes/6.4.12/changelog.mdx new file mode 100644 index 000000000..a8ac2fbee --- /dev/null +++ b/docs/release-notes/6.4.12/changelog.mdx @@ -0,0 +1,72 @@ +--- +id: d6yac3ip +title: Webiny 6.4.12 Changelog +description: See what's new in Webiny version 6.4.12 +--- + +import { GithubRelease } from "@/components/GithubRelease"; +import { Alert } from "@/components/Alert"; + + + +## Website Builder + +### Fixed Missing `version` and `metadata` Fields in Single-Page Queries ([#5727](https://github.com/webiny/webiny-js/pull/5727)) +{/* REVIEW-PENDING @Pavel910 — confirm this entry, then delete this line */} + +The `GET_PAGE_BY_ID` and `GET_PAGE_BY_PATH` queries in the Website Builder SDK were missing the `version` and `metadata` fields from their selection sets. If you needed these fields, you had to patch the SDK manually. Both fields are now included by default. + +### Fixed Stale Page Revision Data After Mutations ([#5757](https://github.com/webiny/webiny-js/pull/5757)) +{/* REVIEW-PENDING @Pavel910 — confirm this entry, then delete this line */} + +Creating, publishing, unpublishing, or deleting page revisions did not update the revisions cache, so the editor's revisions drawer and top bar dropdown displayed stale data until a page reload. All revision mutations now properly update the cache, and both UI components are driven from a shared `RevisionListPresenter` instead of local state copies. + +### Added Delete Revision API Endpoint ([#5757](https://github.com/webiny/webiny-js/pull/5757)) +{/* REVIEW-PENDING @Pavel910 — confirm this entry, then delete this line */} + +The admin app called `websiteBuilder.deletePageRevision`, but the mutation was never declared on the backend — the entire client feature was wired to a non-existent endpoint. The mutation now exists and delegates to the CMS `DeleteEntryRevisionUseCase`, which handles deleting the latest revision and cascading to a full entry delete when necessary. + +### Improved Revision List Actions and Confirmations ([#5757](https://github.com/webiny/webiny-js/pull/5757)) +{/* REVIEW-PENDING @Pavel910 — confirm this entry, then delete this line */} + +Per-revision actions (create from, edit, publish, unpublish, delete) are now determined by the presenter rather than derived in the view. Destructive actions now require confirmation through a dialog and display a toast with the outcome. Previously, delete ran on the first click and failed silently on error. + +### Fixed Workflow Decorators Not Applying to Top Bar Actions ([#5757](https://github.com/webiny/webiny-js/pull/5757)) +{/* REVIEW-PENDING @Pavel910 — confirm this entry, then delete this line */} + +The page editor config was not registered through `Plugins`, so workflow decorators were never applied to the top bar actions. Additionally, an approved review no longer counts as "under review", so the editor becomes writable again and offers **Publish** instead of **New Revision**. + +## Development + +### Debug Logger Tool ([#5734](https://github.com/webiny/webiny-js/pull/5734)) +{/* REVIEW-PENDING @brunozoric — confirm this entry, then delete this line */} + +A new opt-in, permission-gated debugger is now available for troubleshooting issues in environments where you cannot access AWS or the underlying code. When a user with the `dev-tools.debug` permission enables capture, debug payloads from instrumented call sites are returned in the GraphQL response under `extensions.debug`. + +**Key details:** + +- Capture is requested per-request via the `x-webiny-debug` header (set to `1`, or a glob pattern like `cms.os.*` with `!` to exclude). +- Debug sessions are buffered in memory (capped at 4 MB), and payloads never reach CloudWatch—only the permitted user sees them. +- The first instrumented call site is `cms.os.list`, which captures OpenSearch query and response data around entry listing. + +A new **Dev Tools → Debugger** panel in Admin lets you toggle capture, filter by namespace, and download a JSON report. Collected sessions are held in memory only and do not persist beyond the browser tab. + + + +After deploying this release, you must redeploy your API infrastructure (`yarn webiny deploy api`) and invalidate your CloudFront distribution to ensure the new `x-webiny-debug` header is forwarded correctly. Without this, the feature silently captures nothing. + + + +### Fixed Peer Dependency Ranges Being Locked During Package Publishing ([#5777](https://github.com/webiny/webiny-js/pull/5777)) +{/* REVIEW-PENDING @adrians5j — confirm this entry, then delete this line */} + +When publishing packages, peer dependencies were incorrectly locked to the exact version installed in the monorepo rather than preserving the original range. This caused installation failures with `@webiny/website-builder-nextjs` — npm would error with `ERESOLVE` if your project used a different Next.js version than the one pinned during publishing. + +Peer dependencies are now published with their original version ranges. For example, `@webiny/website-builder-nextjs` now correctly declares `next: >=15.0.0 <16.0.0`, allowing installation alongside any compatible Next.js 15 version. + +## Admin + +### Fixed Keyboard Shortcut Leak on Component Unmount ([#5757](https://github.com/webiny/webiny-js/pull/5757)) +{/* REVIEW-PENDING @Pavel910 — confirm this entry, then delete this line */} + +`useHotkeys` leaked registered shortcuts when a component unmounted while shortcuts were active. The cleanup effect closed over stale state, so a drawer that unmounted while open never released its `esc` binding, causing the next component to claim it to throw an error. diff --git a/docs/release-notes/6.4.12/upgrade-guide.mdx b/docs/release-notes/6.4.12/upgrade-guide.mdx new file mode 100644 index 000000000..2ecb9004b --- /dev/null +++ b/docs/release-notes/6.4.12/upgrade-guide.mdx @@ -0,0 +1,61 @@ +--- +id: tiuvp42p +title: Upgrade from 6.4.x to 6.4.12 +description: Learn how to upgrade Webiny from 6.4.x to 6.4.12. +--- + +import { Alert } from "@/components/Alert"; +import { AdditionalNotes } from "@/components/upgrade/AdditionalNotes"; + + + +- how to upgrade Webiny from 6.4.x to 6.4.12 + + + + + +Make sure to check out the [6.4.12 changelog](./changelog) to get familiar with the changes introduced in this release. + + + +## Step-by-Step Guide + +### 1. Upgrade Webiny Packages + +Upgrade all Webiny packages by running the following command: + +```bash +yarn webiny upgrade 6.4.12 --debug +``` + +Note that the command above will run upgrades for all available versions of Webiny up to 6.4.12. If there are upgrades for 6.4.1, 6.4.5, they will be ran. + +You can omit the version to upgrade to the latest available: + +```bash +yarn webiny upgrade --debug +``` + +Once the upgrade has finished, running the `yarn webiny --version` command in your terminal should return **6.4.12**. + + + +If the above command fails or is not available in your setup, you can run the upgrade script directly via `npx`: + +```bash +npx https://github.com/webiny/webiny-upgrades-v6 6.4.12 --debug +``` + + + +### 2. Deploy Your Project + +Proceed by redeploying your Webiny project: + +```bash +# Execute in your project root. +yarn webiny deploy --env {environment} +``` + +