Skip to content

Docs: Prevent class name mismatch in deprecated blocks by defining apiVersion#70713

Open
shrivastavanolo wants to merge 1 commit intoWordPress:trunkfrom
shrivastavanolo:docs/update-block-deprecation
Open

Docs: Prevent class name mismatch in deprecated blocks by defining apiVersion#70713
shrivastavanolo wants to merge 1 commit intoWordPress:trunkfrom
shrivastavanolo:docs/update-block-deprecation

Conversation

@shrivastavanolo
Copy link
Copy Markdown
Contributor

@shrivastavanolo shrivastavanolo commented Jul 14, 2025

What?

See #70123

This PR updates the block deprecation documentation to clarify that deprecated block entries should explicitly define apiVersion to avoid unexpected behavior.

Why?

If apiVersion is not defined or is less than 1 in a deprecated block, Gutenberg applies the blocks.getSaveContent.extraProps filter, which may add extra class names (e.g., wp-block-{block-name} or is-loading) during serialization. These are often not present in the original saved content, leading to mismatches that prevent the deprecation logic from triggering correctly.

How?

The documentation now includes a new section explaining this behavior and recommending that apiVersion be explicitly set in each deprecated entry. An example is provided to illustrate how this prevents mismatches and ensures proper block validation and migration.

@shrivastavanolo shrivastavanolo marked this pull request as ready for review July 14, 2025 11:17
@github-actions
Copy link
Copy Markdown

Warning: Type of PR label mismatch

To merge this PR, it requires exactly 1 label indicating the type of PR. Other labels are optional and not being checked here.

  • Type-related labels to choose from: [Type] Automated Testing, [Type] Breaking Change, [Type] Bug, [Type] Build Tooling, [Type] Code Quality, [Type] Copy, [Type] Developer Documentation, [Type] Enhancement, [Type] Experimental, [Type] Feature, [Type] New API, [Type] Task, [Type] Technical Prototype, [Type] Performance, [Type] Project Management, [Type] Regression, [Type] Security, [Type] WP Core Ticket, Backport from WordPress Core, Gutenberg Plugin.
  • Labels found: .

Read more about Type labels in Gutenberg. Don't worry if you don't have the required permissions to add labels; the PR reviewer should be able to help with the task.

1 similar comment
@github-actions
Copy link
Copy Markdown

Warning: Type of PR label mismatch

To merge this PR, it requires exactly 1 label indicating the type of PR. Other labels are optional and not being checked here.

  • Type-related labels to choose from: [Type] Automated Testing, [Type] Breaking Change, [Type] Bug, [Type] Build Tooling, [Type] Code Quality, [Type] Copy, [Type] Developer Documentation, [Type] Enhancement, [Type] Experimental, [Type] Feature, [Type] New API, [Type] Task, [Type] Technical Prototype, [Type] Performance, [Type] Project Management, [Type] Regression, [Type] Security, [Type] WP Core Ticket, Backport from WordPress Core, Gutenberg Plugin.
  • Labels found: .

Read more about Type labels in Gutenberg. Don't worry if you don't have the required permissions to add labels; the PR reviewer should be able to help with the task.

@github-actions
Copy link
Copy Markdown

The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the props-bot label.

If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message.

Co-authored-by: shrivastavanolo <shreya0shrivastava@git.wordpress.org>

To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook.

@t-hamano t-hamano added the [Type] Developer Documentation Documentation for developers label Jul 14, 2025
@shrivastavanolo shrivastavanolo force-pushed the docs/update-block-deprecation branch from 86e8bae to dfdd5fe Compare July 14, 2025 13:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

[Type] Developer Documentation Documentation for developers

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants