-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Synced with trunk and resolved conflicts
- Loading branch information
Showing
167 changed files
with
13,200 additions
and
2,302 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
https://github.com/WordPress/wordpress-develop/pull/7020 | ||
|
||
* https://github.com/WordPress/gutenberg/pull/63470 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,16 +1,63 @@ | ||
# Core Backport Changelog | ||
|
||
Any PR that makes changes to be backported to [core](https://github.com/WordPress/wordpress-develop) should log a core PR here. It's possible to have multiple Gutenberg PRs link to a single core backport PR. The core backport PR can remain open as long as wanted/needed. The entries are sorted by core release (in folders), and each entry should be an md file with the core PR number as the file name, and the link to the Gutenberg PR in the file content. The file content should start with the core PR URL, followed by a Markdown list of Gutenberg PRs (see example). Files are used to avoid rebase conflicts. | ||
If you've changed or added files to the Gutenberg plugin, you'll need to confirm whether the changes are to be backported to [WordPress Core](https://github.com/WordPress/wordpress-develop), and therefore featured in the next release of WordPress. | ||
|
||
If you think a file path is wrongly flagged as needing a core backport PR, you can add it to the list of exceptions in `.github/workflows/check-backport-changelog.yml`. | ||
On open Gutenberg PRs, changes to certain files are flagged as requiring backporting to WordPress Core, for example, PHP files in `/lib` and PHP unit tests. | ||
|
||
## Example | ||
These changes must have a corresponding Core PR before they can be merged to Gutenberg trunk. | ||
|
||
To create a Core PR, first create a [new Trac ticket](https://core.trac.wordpress.org/newticket) and submit a pull request to the [WordPress Core GitHub repository](https://github.com/WordPress/wordpress-develop). | ||
|
||
The Core PR can remain open as long as is required. | ||
|
||
For more information on how to create a Core PR, see the [WordPress Core Handbook](https://make.wordpress.org/core/handbook/contribute/git/github-pull-requests-for-code-review/). | ||
|
||
## How to add a Core Backport PR to the changelog | ||
|
||
After you create Core PR, you'll need to create a corresponding markdown file, and place it within the appropriate release subdirectory. | ||
|
||
The filename is the Core PR number. | ||
|
||
For example, if your Core PR number is `1234` and is slated to be part of the WordPress 6.9 release, the filename will be `1234.md`, and will be placed in the `/backport-changelog/6.9` directory. | ||
|
||
The content of the markdown file should be the Github URL of the Core PR, followed by a list of Gutenberg PR Github URLs whose changes are backported in the Core PR. | ||
|
||
A single Core PR may contain changes from one or multiple Gutenberg PRs. | ||
|
||
### Examples | ||
|
||
Let's say the next WordPress release is 6.9. You have two Gutenberg PRs — `1111` and `2222` — whose changes are backported in a single Core PR, number `1234`. | ||
|
||
First you would create a file named `1234.md` in the `/6.9` folder. | ||
|
||
If the `/6.9` folder doesn't exist, create it. | ||
|
||
Then you would add the following content to your new file: | ||
|
||
Path: `{wp-release-number-x.x}/{core-pr-number}.md`, e.g. `6.6/1234.md`. | ||
File content: | ||
```md | ||
https://github.com/WordPress/wordpress-develop/pull/{core-pr-number} | ||
https://github.com/WordPress/wordpress-develop/pull/1234 | ||
|
||
* https://github.com/WordPress/gutenberg/pull/{first-gb-pr-number} | ||
* https://github.com/WordPress/gutenberg/pull/{second-gb-pr-number} | ||
* https://github.com/WordPress/gutenberg/pull/1111 | ||
* https://github.com/WordPress/gutenberg/pull/2222 | ||
``` | ||
|
||
If `1234.md` already exists, you would add the Gutenberg PRs to the list in the existing file. | ||
|
||
## Why use individual files? | ||
|
||
For the backport changelog, Gutenberg uses individual files as opposed to a single changelog file to avoid rebase conflicts. | ||
|
||
## Exceptions | ||
|
||
Some Gutenberg PRs may be flagged as needing a core backport PR when they don't, for example when the PR contains minor comment changes, or the changes already exist in Core. | ||
|
||
For individual PRs, there are two Github labels that can be used to exclude a PR from the backport changelog CI check: | ||
|
||
- `Backport from WordPress Core` - Indicates that the PR is a backport from WordPress Core and doesn't need a Core PR. | ||
- `No Core Sync Required` - Indicates that any changes do not need to be synced to WordPress Core. | ||
|
||
If there are specific file or directory changes that should **never** be flagged as requiring a Core backport PR, you can add it to the list of exceptions in [.github/workflows/check-backport-changelog.yml](https://github.com/WordPress/gutenberg/tree/trunk/.github/workflows/check-backport-changelog.yml). | ||
|
||
## Where to get help | ||
|
||
If you're unsure, you can always ask the Gutenberg Core team for help on the Gutenberg PR `@WordPress/gutenberg-core` or via the #core-editor channel in [WordPress Slack](https://make.wordpress.org/chat/). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
<?php | ||
/** | ||
* Temporary compatibility code for new functionalitites/changes related to block bindings APIs present in Gutenberg. | ||
* | ||
* @package gutenberg | ||
*/ | ||
|
||
/** | ||
* Adds the block bindings sources registered in the server to the editor settings. | ||
* | ||
* This allows them to be bootstrapped in the editor. | ||
* | ||
* @param array $settings The block editor settings from the `block_editor_settings_all` filter. | ||
* @return array The editor settings including the block bindings sources. | ||
*/ | ||
function gutenberg_add_server_block_bindings_sources_to_editor_settings( $editor_settings ) { | ||
// Check if the sources are already exposed in the editor settings. | ||
if ( isset( $editor_settings['blockBindingsSources'] ) ) { | ||
return $editor_settings; | ||
} | ||
|
||
$registered_block_bindings_sources = get_all_registered_block_bindings_sources(); | ||
if ( ! empty( $registered_block_bindings_sources ) ) { | ||
// Initialize array. | ||
$editor_settings['blockBindingsSources'] = array(); | ||
foreach ( $registered_block_bindings_sources as $source_name => $source_properties ) { | ||
// Add source with the label to editor settings. | ||
$editor_settings['blockBindingsSources'][ $source_name ] = array( | ||
'label' => $source_properties->label, | ||
); | ||
// Add `usesContext` property if exists. | ||
if ( ! empty( $source_properties->uses_context ) ) { | ||
$editor_settings['blockBindingsSources'][ $source_name ]['usesContext'] = $source_properties->uses_context; | ||
} | ||
} | ||
} | ||
return $editor_settings; | ||
} | ||
|
||
add_filter( 'block_editor_settings_all', 'gutenberg_add_server_block_bindings_sources_to_editor_settings', 10 ); |
Oops, something went wrong.