diff --git a/packages/components/src/resizable-box/styles/resizable-box.styles.js b/.cache/.gitkeep similarity index 100% rename from packages/components/src/resizable-box/styles/resizable-box.styles.js rename to .cache/.gitkeep diff --git a/.eslintrc.js b/.eslintrc.js index 22cb9209b2e9e8..d0c22090b93e87 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -36,14 +36,130 @@ const typedFiles = glob( 'packages/*/package.json' ) .filter( ( fileName ) => require( join( __dirname, fileName ) ).types ) .map( ( fileName ) => fileName.replace( 'package.json', '**/*.js' ) ); +const restrictedImports = [ + { + name: 'framer-motion', + message: + 'Please use the Framer Motion API through `@wordpress/components` instead.', + }, + { + name: 'lodash', + message: 'Please use native functionality instead.', + }, + { + name: '@ariakit/react', + message: + 'Please use Ariakit API through `@wordpress/components` instead.', + }, + { + name: 'redux', + importNames: [ 'combineReducers' ], + message: 'Please use `combineReducers` from `@wordpress/data` instead.', + }, + { + name: '@emotion/css', + message: + 'Please use `@emotion/react` and `@emotion/styled` in order to maintain iframe support. As a replacement for the `cx` function, please use the `useCx` hook defined in `@wordpress/components` instead.', + }, + { + name: '@wordpress/edit-post', + message: + "edit-post is a WordPress top level package that shouldn't be imported into other packages", + }, + { + name: '@wordpress/edit-site', + message: + "edit-site is a WordPress top level package that shouldn't be imported into other packages", + }, + { + name: '@wordpress/edit-widgets', + message: + "edit-widgets is a WordPress top level package that shouldn't be imported into other packages", + }, + { + name: 'classnames', + message: + "Please use `clsx` instead. It's a lighter and faster drop-in replacement for `classnames`.", + }, +]; + +const restrictedSyntax = [ + // NOTE: We can't include the forward slash in our regex or + // we'll get a `SyntaxError` (Invalid regular expression: \ at end of pattern) + // here. That's why we use \\u002F in the regexes below. + { + selector: + 'ImportDeclaration[source.value=/^@wordpress\\u002F.+\\u002F/]', + message: 'Path access on WordPress dependencies is not allowed.', + }, + { + selector: + 'CallExpression[callee.name="deprecated"] Property[key.name="version"][value.value=/' + + majorMinorRegExp + + '/]', + message: + 'Deprecated functions must be removed before releasing this version.', + }, + { + selector: + 'CallExpression[callee.object.name="page"][callee.property.name="waitFor"]', + message: + 'This method is deprecated. You should use the more explicit API methods available.', + }, + { + selector: + 'CallExpression[callee.object.name="page"][callee.property.name="waitForTimeout"]', + message: 'Prefer page.waitForSelector instead.', + }, + { + selector: 'JSXAttribute[name.name="id"][value.type="Literal"]', + message: + 'Do not use string literals for IDs; use withInstanceId instead.', + }, + { + // Discourage the usage of `Math.random()` as it's a code smell + // for UUID generation, for which we already have a higher-order + // component: `withInstanceId`. + selector: + 'CallExpression[callee.object.name="Math"][callee.property.name="random"]', + message: + 'Do not use Math.random() to generate unique IDs; use withInstanceId instead. (If you’re not generating unique IDs: ignore this message.)', + }, + { + selector: + 'CallExpression[callee.name="withDispatch"] > :function > BlockStatement > :not(VariableDeclaration,ReturnStatement)', + message: + 'withDispatch must return an object with consistent keys. Avoid performing logic in `mapDispatchToProps`.', + }, + { + selector: + 'LogicalExpression[operator="&&"][left.property.name="length"][right.type="JSXElement"]', + message: + 'Avoid truthy checks on length property rendering, as zero length is rendered verbatim.', + }, +]; + +/** `no-restricted-syntax` rules for components. */ +const restrictedSyntaxComponents = [ + { + selector: + 'JSXOpeningElement[name.name="Button"]:not(:has(JSXAttribute[name.name="accessibleWhenDisabled"])) JSXAttribute[name.name="disabled"]', + message: + '`disabled` used without the `accessibleWhenDisabled` prop. Disabling a control without maintaining focusability can cause accessibility issues, by hiding their presence from screen reader users, or preventing focus from returning to a trigger element. (Ignore this error if you truly mean to disable.)', + }, +]; + module.exports = { root: true, extends: [ 'plugin:@wordpress/eslint-plugin/recommended', 'plugin:eslint-comments/recommended', + 'plugin:storybook/recommended', ], + plugins: [ 'react-compiler' ], globals: { wp: 'off', + globalThis: 'readonly', }, settings: { jsdoc: { @@ -54,9 +170,16 @@ module.exports = { }, rules: { 'jest/expect-expect': 'off', + 'react/jsx-boolean-value': 'error', + 'react/jsx-curly-brace-presence': [ + 'error', + { props: 'never', children: 'never' }, + ], '@wordpress/dependency-group': 'error', - '@wordpress/is-gutenberg-plugin': 'error', + '@wordpress/wp-global-usage': 'error', '@wordpress/react-no-unsafe-timeout': 'error', + '@wordpress/i18n-hyphenated-range': 'error', + '@wordpress/i18n-no-flanking-whitespace': 'error', '@wordpress/i18n-text-domain': [ 'error', { @@ -70,137 +193,7 @@ module.exports = { 'no-restricted-imports': [ 'error', { - paths: [ - { - name: 'framer-motion', - message: - 'Please use the Framer Motion API through `@wordpress/components` instead.', - }, - { - name: 'lodash', - importNames: [ - 'camelCase', - 'capitalize', - 'castArray', - 'chunk', - 'clamp', - 'cloneDeep', - 'compact', - 'concat', - 'countBy', - 'debounce', - 'deburr', - 'defaults', - 'defaultTo', - 'delay', - 'difference', - 'differenceWith', - 'dropRight', - 'each', - 'escape', - 'escapeRegExp', - 'every', - 'extend', - 'findIndex', - 'findKey', - 'findLast', - 'first', - 'flatMap', - 'flatten', - 'flattenDeep', - 'flow', - 'flowRight', - 'forEach', - 'fromPairs', - 'has', - 'identity', - 'includes', - 'invoke', - 'isArray', - 'isBoolean', - 'isFinite', - 'isFunction', - 'isMatch', - 'isNil', - 'isNumber', - 'isObject', - 'isObjectLike', - 'isPlainObject', - 'isString', - 'isUndefined', - 'keyBy', - 'keys', - 'last', - 'lowerCase', - 'mapKeys', - 'maxBy', - 'memoize', - 'negate', - 'noop', - 'nth', - 'omitBy', - 'once', - 'overEvery', - 'partial', - 'partialRight', - 'random', - 'reduce', - 'reject', - 'repeat', - 'reverse', - 'size', - 'snakeCase', - 'some', - 'sortBy', - 'startCase', - 'startsWith', - 'stubFalse', - 'stubTrue', - 'sum', - 'sumBy', - 'take', - 'throttle', - 'times', - 'toString', - 'trim', - 'truncate', - 'unionBy', - 'uniq', - 'uniqBy', - 'uniqueId', - 'uniqWith', - 'upperFirst', - 'values', - 'without', - 'words', - 'xor', - 'zip', - ], - message: - 'This Lodash method is not recommended. Please use native functionality instead. If using `memoize`, please use `memize` instead.', - }, - { - name: 'reakit', - message: - 'Please use Reakit API through `@wordpress/components` instead.', - }, - { - name: 'redux', - importNames: [ 'combineReducers' ], - message: - 'Please use `combineReducers` from `@wordpress/data` instead.', - }, - { - name: 'puppeteer-testing-library', - message: - '`puppeteer-testing-library` is still experimental.', - }, - { - name: '@emotion/css', - message: - 'Please use `@emotion/react` and `@emotion/styled` in order to maintain iframe support. As a replacement for the `cx` function, please use the `useCx` hook defined in `@wordpress/components` instead.', - }, - ], + paths: restrictedImports, }, ], '@typescript-eslint/no-restricted-imports': [ @@ -216,61 +209,27 @@ module.exports = { ], }, ], - 'no-restricted-syntax': [ + '@typescript-eslint/consistent-type-imports': [ 'error', - // NOTE: We can't include the forward slash in our regex or - // we'll get a `SyntaxError` (Invalid regular expression: \ at end of pattern) - // here. That's why we use \\u002F in the regexes below. - { - selector: - 'ImportDeclaration[source.value=/^@wordpress\\u002F.+\\u002F/]', - message: - 'Path access on WordPress dependencies is not allowed.', - }, - { - selector: - 'CallExpression[callee.name="deprecated"] Property[key.name="version"][value.value=/' + - majorMinorRegExp + - '/]', - message: - 'Deprecated functions must be removed before releasing this version.', - }, { - selector: - 'CallExpression[callee.object.name="page"][callee.property.name="waitFor"]', - message: - 'This method is deprecated. You should use the more explicit API methods available.', - }, - { - selector: - 'CallExpression[callee.object.name="page"][callee.property.name="waitForTimeout"]', - message: 'Prefer page.waitForSelector instead.', - }, - { - selector: 'JSXAttribute[name.name="id"][value.type="Literal"]', - message: - 'Do not use string literals for IDs; use withInstanceId instead.', - }, - { - // Discourage the usage of `Math.random()` as it's a code smell - // for UUID generation, for which we already have a higher-order - // component: `withInstanceId`. - selector: - 'CallExpression[callee.object.name="Math"][callee.property.name="random"]', - message: - 'Do not use Math.random() to generate unique IDs; use withInstanceId instead. (If you’re not generating unique IDs: ignore this message.)', + prefer: 'type-imports', + disallowTypeAnnotations: false, }, + ], + 'no-restricted-syntax': [ 'error', ...restrictedSyntax ], + 'jsdoc/check-tag-names': [ + 'error', { - selector: - 'CallExpression[callee.name="withDispatch"] > :function > BlockStatement > :not(VariableDeclaration,ReturnStatement)', - message: - 'withDispatch must return an object with consistent keys. Avoid performing logic in `mapDispatchToProps`.', + definedTags: [ 'jest-environment' ], }, + ], + 'react-compiler/react-compiler': [ + 'error', { - selector: - 'LogicalExpression[operator="&&"][left.property.name="length"][right.type="JSXElement"]', - message: - 'Avoid truthy checks on length property rendering, as zero length is rendered verbatim.', + environment: { + enableTreatRefLikeIdentifiersAsRefs: true, + validateRefAccessDuringRender: false, + }, }, ], }, @@ -287,6 +246,7 @@ module.exports = { 'import/no-unresolved': 'off', 'import/named': 'off', '@wordpress/data-no-store-string-literals': 'off', + 'react-compiler/react-compiler': 'off', }, }, { @@ -323,15 +283,93 @@ module.exports = { }, }, { - files: [ 'packages/components/src/**/*.[tj]s?(x)' ], - excludedFiles: [ ...developmentFiles ], + files: [ + 'packages/*/src/**/*.[tj]s?(x)', + 'storybook/stories/**/*.[tj]s?(x)', + ], + excludedFiles: [ '**/*.native.js' ], + rules: { + 'no-restricted-syntax': [ + 'error', + ...restrictedSyntax, + ...restrictedSyntaxComponents, + ], + }, + }, + { + files: [ 'packages/*/src/**/*.[tj]s?(x)' ], + excludedFiles: [ + 'packages/*/src/**/@(test|stories)/**', + '**/*.@(native|ios|android).js', + ], rules: { - 'react-hooks/exhaustive-deps': 'error', + 'no-restricted-syntax': [ + 'error', + ...restrictedSyntax, + ...restrictedSyntaxComponents, + // Temporary rules until we're ready to officially deprecate the bottom margins. + ...[ + 'BaseControl', + 'CheckboxControl', + 'ComboboxControl', + 'DimensionControl', + 'FocalPointPicker', + 'RangeControl', + 'SearchControl', + 'SelectControl', + 'TextControl', + 'TextareaControl', + 'ToggleControl', + 'ToggleGroupControl', + 'TreeSelect', + ].map( ( componentName ) => ( { + selector: `JSXOpeningElement[name.name="${ componentName }"]:not(:has(JSXAttribute[name.name="__nextHasNoMarginBottom"]))`, + message: + componentName + + ' should have the `__nextHasNoMarginBottom` prop to opt-in to the new margin-free styles.', + } ) ), + // Temporary rules until we're ready to officially default to the new size. + ...[ + 'BorderBoxControl', + 'BorderControl', + 'BoxControl', + 'Button', + 'ComboboxControl', + 'CustomSelectControl', + 'DimensionControl', + 'FontAppearanceControl', + 'FontFamilyControl', + 'FontSizePicker', + 'FormTokenField', + 'InputControl', + 'LetterSpacingControl', + 'LineHeightControl', + 'NumberControl', + 'RangeControl', + 'SelectControl', + 'TextControl', + 'ToggleGroupControl', + 'UnitControl', + ].map( ( componentName ) => ( { + // Falsy `__next40pxDefaultSize` without a non-default `size` prop. + selector: `JSXOpeningElement[name.name="${ componentName }"]:not(:has(JSXAttribute[name.name="__next40pxDefaultSize"][value.expression.value!=false])):not(:has(JSXAttribute[name.name="size"][value.value!="default"]))`, + message: + componentName + + ' should have the `__next40pxDefaultSize` prop when using the default size.', + } ) ), + { + // Falsy `__next40pxDefaultSize` without a `render` prop. + selector: + 'JSXOpeningElement[name.name="FormFileUpload"]:not(:has(JSXAttribute[name.name="__next40pxDefaultSize"][value.expression.value!=false])):not(:has(JSXAttribute[name.name="render"]))', + message: + 'FormFileUpload should have the `__next40pxDefaultSize` prop to opt-in to the new default size.', + }, + ], }, }, { files: [ 'packages/jest*/**/*.js', '**/test/**/*.js' ], - excludedFiles: [ 'test/e2e/**/*.js' ], + excludedFiles: [ 'test/e2e/**/*.js', 'test/performance/**/*.js' ], extends: [ 'plugin:@wordpress/eslint-plugin/test-unit' ], }, { @@ -341,15 +379,14 @@ module.exports = { 'packages/react-native-*/**/*.[tj]s?(x)', 'test/native/**/*.[tj]s?(x)', 'test/e2e/**/*.[tj]s?(x)', + 'test/performance/**/*.[tj]s?(x)', + 'test/storybook-playwright/**/*.[tj]s?(x)', ], extends: [ 'plugin:jest-dom/recommended', 'plugin:testing-library/react', + 'plugin:jest/recommended', ], - rules: { - 'testing-library/no-container': 'off', - 'testing-library/no-node-access': 'off', - }, }, { files: [ 'packages/e2e-test*/**/*.js' ], @@ -362,9 +399,21 @@ module.exports = { { files: [ 'test/e2e/**/*.[tj]s', + 'test/performance/**/*.[tj]s', 'packages/e2e-test-utils-playwright/**/*.[tj]s', ], - extends: [ 'plugin:eslint-plugin-playwright/playwright-test' ], + extends: [ + 'plugin:@wordpress/eslint-plugin/test-playwright', + 'plugin:@typescript-eslint/base', + ], + parserOptions: { + tsconfigRootDir: __dirname, + project: [ + './test/e2e/tsconfig.json', + './test/performance/tsconfig.json', + './packages/e2e-test-utils-playwright/tsconfig.json', + ], + }, rules: { '@wordpress/no-global-active-element': 'off', '@wordpress/no-global-get-selection': 'off', @@ -386,6 +435,10 @@ module.exports = { message: 'Prefer page.locator instead.', }, ], + 'playwright/no-conditional-in-test': 'off', + '@typescript-eslint/await-thenable': 'error', + '@typescript-eslint/no-floating-promises': 'error', + '@typescript-eslint/no-misused-promises': 'error', }, }, { @@ -412,11 +465,106 @@ module.exports = { 'jsdoc/require-param': 'off', }, }, + { + files: [ 'packages/components/src/**' ], + excludedFiles: [ + 'packages/components/src/utils/colors-values.js', + 'packages/components/src/theme/**', + ], + rules: { + 'no-restricted-syntax': [ + 'error', + ...restrictedSyntax, + ...restrictedSyntaxComponents, + { + selector: + ':matches(Literal[value=/--wp-admin-theme-/],TemplateElement[value.cooked=/--wp-admin-theme-/])', + message: + '--wp-admin-theme-* variables do not support component theming. Use variables from the COLORS object in packages/components/src/utils/colors-values.js instead.', + }, + { + selector: + // Allow overriding definitions, but not access with var() + ':matches(Literal[value=/var\\(\\s*--wp-components-color-/],TemplateElement[value.cooked=/var\\(\\s*--wp-components-color-/])', + message: + 'To ensure proper fallbacks, --wp-components-color-* variables should not be used directly. Use variables from the COLORS object in packages/components/src/utils/colors-values.js instead.', + }, + ], + }, + }, { files: [ 'packages/components/src/**' ], excludedFiles: [ 'packages/components/src/**/@(test|stories)/**' ], plugins: [ 'ssr-friendly' ], extends: [ 'plugin:ssr-friendly/recommended' ], }, + { + files: [ 'packages/components/src/**' ], + rules: { + 'no-restricted-imports': [ + 'error', + // The `ariakit` and `framer-motion` APIs are meant to be consumed via + // the `@wordpress/components` package, hence why importing those + // dependencies should be allowed in the components package. + { + paths: restrictedImports.filter( + ( { name } ) => + ! [ + '@ariakit/react', + 'framer-motion', + ].includes( name ) + ), + }, + ], + }, + }, + { + files: [ 'packages/block-editor/**' ], + rules: { + 'no-restricted-imports': [ + 'error', + { + paths: [ + ...restrictedImports, + { + name: '@wordpress/api-fetch', + message: + "block-editor is a generic package that doesn't depend on a server or WordPress backend. To provide WordPress integration, consider passing settings to the BlockEditorProvider components.", + }, + { + name: '@wordpress/core-data', + message: + "block-editor is a generic package that doesn't depend on a server or WordPress backend. To provide WordPress integration, consider passing settings to the BlockEditorProvider components.", + }, + ], + }, + ], + }, + }, + { + files: [ 'packages/edit-post/**', 'packages/edit-site/**' ], + rules: { + 'no-restricted-imports': [ + 'error', + { + paths: [ + ...restrictedImports, + { + name: '@wordpress/interface', + message: + 'The edit-post and edit-site package should not directly import the interface package. They should import them from the private APIs of the editor package instead.', + }, + ], + }, + ], + }, + }, + { + files: [ 'packages/interactivity*/src/**' ], + rules: { + 'react-compiler/react-compiler': 'off', + 'react/react-in-jsx-scope': 'error', + }, + }, ], }; diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs index 6e5072a91b0018..477cd4fbacb400 100644 --- a/.git-blame-ignore-revs +++ b/.git-blame-ignore-revs @@ -6,3 +6,18 @@ f63053cace3c02e284f00918e1854284c85b9132 # Prettier upgrade to 2.6.2. 33d84b036592a5bf31af05b7710f3b2b14163dc4 + +# Prettier upgrade to 2.8.5. +c56e8a1910ed74f405b74bbb12fe81dea974e5c3 + +# Prettier upgrade to 3.0.3. +0bee15148fe4330c20cf372cb46a33693e45cb5f + +# ESLint: Enable react/jsx-boolean-value +9a34927870df80ac3b2da14d71f81d20ec23e2b6 + +# Autofix eslint curly rule. +0221522f253e094b277a1485b7a2d186cb172632 + +# ESLint: Enable react/jsx-curly-brace-presence +5d4baa9ab5f57d207cc3a048003216a8574574d9 diff --git a/.gitattributes b/.gitattributes index aaaedda10d2dc0..1dc48620d8b67c 100644 --- a/.gitattributes +++ b/.gitattributes @@ -11,3 +11,15 @@ *.jpg binary *.png binary *.ttf binary + +# Directories with vendored code. +packages/edit-site/lib/** linguist-vendored + +# The changelog.txt file is authored as markdown. +changelog.txt linguist-language=Markdown + +# Flag docs directory as documentation for GitHub stats. +docs/** linguist-documentation + +# TSConfig files use jsonc. +tsconfig*.json linguist-language=jsonc diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 2cc7b0ce34bd1e..2ec03cba722c6b 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,8 +1,9 @@ # Documentation -/docs @ajitbohra @ryanwelcher @juanmaguitar @fabiankaegy +/docs @ajitbohra @juanmaguitar @fabiankaegy @ndiego +/packages/interactivity/docs @juanmaguitar # Schemas -/schemas/json @ajlende +/schemas/json # Data /packages/api-fetch @nerrad @mmtr @@ -14,24 +15,23 @@ # Blocks /packages/block-library @ajitbohra /packages/block-library/src/gallery @geriux -/packages/block-library/src/navigation @tellthemachines -/packages/block-library/src/navigation-link @tellthemachines -/packages/block-library/src/navigation-submenu @tellthemachines -/packages/block-library/src/page-list @tellthemachines /packages/block-library/src/comment-template @michalczaplinski /packages/block-library/src/comments @michalczaplinski /packages/block-library/src/table-of-contents @ZebulanStanphill +/packages/block-library/src/image @artemiomorales # Duotone -/lib/block-supports/duotone.php @ajlende -/packages/block-editor/src/components/duotone-control @ajlende -/packages/block-editor/src/hooks/duotone.js @ajlende -/packages/components/src/duotone-picker @ajlende +/lib/block-supports/duotone.php +/packages/block-editor/src/components/duotone-control +/packages/block-editor/src/hooks/duotone.js +/packages/components/src/duotone-picker # Editor /packages/annotations @atimmer /packages/autop /packages/block-editor @ellatrix +/packages/block-editor/src/hooks @tellthemachines +/packages/block-editor/src/layouts @tellthemachines /packages/block-serialization-spec-parser @dmsnell /packages/block-serialization-default-parser @dmsnell /packages/blocks @@ -44,50 +44,51 @@ /packages/interface /packages/media-utils /packages/server-side-render +/packages/block-editor/src/components/link-control @getdave # Widgets -/packages/edit-widgets @draganescu @talldan @noisysocks @tellthemachines @adamziel @kevin940726 -/packages/customize-widgets @noisysocks -/packages/widgets @noisysocks - -# Navigation -/packages/edit-navigation @draganescu @talldan @tellthemachines @adamziel @kevin940726 @getdave +/packages/edit-widgets @draganescu @adamziel @kevin940726 +/packages/customize-widgets +/packages/widgets # Full Site Editing /packages/edit-site +# Interactivity API +/packages/interactivity @luisherranz @darerodz + # Tooling /bin @ntwb @nerrad @ajitbohra /bin/api-docs @ntwb @nerrad @ajitbohra -/docs/tool @ajitbohra +/docs/tool @ajitbohra @ndiego /packages/babel-plugin-import-jsx-pragma @ntwb @nerrad @ajitbohra /packages/babel-plugin-makepot @ntwb @nerrad @ajitbohra /packages/babel-preset-default @gziolo @ntwb @nerrad @ajitbohra /packages/browserslist-config @ntwb @nerrad @ajitbohra /packages/create-block @gziolo @ryanwelcher /packages/create-block-tutorial-template @gziolo @ryanwelcher -/packages/custom-templated-path-webpack-plugin @ntwb @nerrad @ajitbohra /packages/dependency-extraction-webpack-plugin @gziolo /packages/docgen /packages/e2e-test-utils @ntwb @nerrad @ajitbohra /packages/e2e-tests @ntwb @nerrad @ajitbohra +/packages/e2e-test-utils-playwright @kevin940726 /packages/eslint-plugin @gziolo @ntwb @nerrad @ajitbohra /packages/jest-console @gziolo @ntwb @nerrad @ajitbohra /packages/jest-preset-default @gziolo @ntwb @nerrad @ajitbohra /packages/jest-puppeteer-axe @gziolo @ntwb @nerrad @ajitbohra -/packages/library-export-default-webpack-plugin @ntwb @nerrad @ajitbohra /packages/npm-package-json-lint-config @gziolo @ntwb @nerrad @ajitbohra /packages/postcss-themes @ntwb @nerrad @ajitbohra /packages/prettier-config @ntwb @gziolo /packages/scripts @gziolo @ntwb @nerrad @ajitbohra @ryanwelcher /packages/stylelint-config @ntwb +/test/php/gutenberg-coding-standards @anton-vlasenko # UI Components /packages/components @ajitbohra /packages/compose @ajitbohra /packages/element @ajitbohra /packages/notices @ajitbohra -/packages/nux @ajitbohra +/packages/nux @ajitbohra @peterwilsoncc /packages/viewport @ajitbohra /packages/base-styles /packages/icons @@ -118,19 +119,23 @@ /packages/plugins @gziolo @adamsilverstein # Rich Text -/packages/format-library @ellatrix @fluiddot -/packages/rich-text @ellatrix @fluiddot -/packages/block-editor/src/components/rich-text @ellatrix @fluiddot +/packages/format-library @ellatrix +/packages/rich-text @ellatrix +/packages/block-editor/src/components/rich-text @ellatrix # Project Management -/.github +/.github @desrosj /packages/project-management-automation +/packages/report-flaky-tests @kevin940726 # wp-env -/packages/env @noahtallen +/packages/env @ObliviousHarmony @t-hamano # PHP /lib @spacedmonkey +/lib/block-supports/layout.php @tellthemachines +/lib/class-wp-theme-json-gutenberg.php @tellthemachines +/lib/compat/*/html-api @dmsnell /lib/experimental/rest-api.php @timothybjacobs /lib/experimental/class-wp-rest-* @timothybjacobs /lib/experimental/class-wp-rest-block-editor-settings-controller.php @timothybjacobs @spacedmonkey @geriux diff --git a/.github/ISSUE_TEMPLATE/Bug_report.yml b/.github/ISSUE_TEMPLATE/Bug_report.yml index ab001b41ff793e..41bb6f1c9ba108 100644 --- a/.github/ISSUE_TEMPLATE/Bug_report.yml +++ b/.github/ISSUE_TEMPLATE/Bug_report.yml @@ -1,5 +1,6 @@ name: Bug report description: Report a bug with the WordPress block editor or Gutenberg plugin +labels: ['[Type] Bug'] body: - type: markdown attributes: @@ -48,25 +49,29 @@ body: validations: required: false - - type: dropdown + - type: checkboxes id: existing attributes: label: Please confirm that you have searched existing issues in the repo. description: You can do this by searching https://github.com/WordPress/gutenberg/issues and making sure the bug is not related to another plugin. - multiple: true options: - - 'Yes' - - 'No' - validations: - required: true + - label: 'Yes' + required: true - - type: dropdown + - type: checkboxes id: plugins attributes: label: Please confirm that you have tested with all plugins deactivated except Gutenberg. - multiple: true options: - - 'Yes' - - 'No' - validations: - required: true + - label: 'Yes' + required: true + + - type: checkboxes + id: themes + attributes: + label: Please confirm which theme type you used for testing. + options: + - label: 'Block' + - label: 'Classic' + - label: 'Hybrid (e.g. classic with theme.json)' + - label: 'Not sure' diff --git a/.github/ISSUE_TEMPLATE/Feature_request.md b/.github/ISSUE_TEMPLATE/Feature_request.md index cfae99f42ff9ea..66bd0943c31b45 100644 --- a/.github/ISSUE_TEMPLATE/Feature_request.md +++ b/.github/ISSUE_TEMPLATE/Feature_request.md @@ -1,6 +1,7 @@ --- name: Feature request about: Propose an idea for a feature or an enhancement +labels: "[Type] Enhancement" --- diff --git a/.github/ISSUE_TEMPLATE/New_release.md b/.github/ISSUE_TEMPLATE/New_release.md new file mode 100644 index 00000000000000..c07dcfa3c466c6 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/New_release.md @@ -0,0 +1,53 @@ +--- +name: Gutenberg Release +about: A checklist for the Gutenberg plugin release process +labels: Gutenberg Plugin, [Type] Project Management +--- + +This issue is to provide visibility on the progress of the release process of Gutenberg VERSION_NUMBER and to centralize any conversations about it. The ultimate goal of this issue is to keep the reference of the steps, resources, work, and conversations about this release so it can be helpful for the next contributors releasing a new Gutenberg version. + +- Gutenberg version to release: VERSION_NUMBER ([milestone](ADD_LINK)) +- Release Manager (a.k.a. Release Lead): +- Release Date VERSION_NUMBER RC: ADD DATE +- Release Date VERSION_NUMBER: ADD DATE +- Previous version change log (as a reference): [15.3](https://github.com/WordPress/gutenberg/releases/tag/v15.3.0) + +## Resources + +- 📖 Read: [Gutenberg Release Process](https://developer.wordpress.org/block-editor/contributors/code/release/) +- 📽 Watch: [Gutenberg Plugin: New Release Workflow](https://www.youtube.com/watch?v=TnSgJd3zpJY) +- 📽 Watch: [Creating the Gutenberg plugin v12.0 Release Candidate](https://www.youtube.com/watch?v=FLkLHKecxWg) +- 📽 Watch: [Gutenberg plugin v12.0.0 Release Party!](https://www.youtube.com/watch?v=4SDtpVPDsLc) + +## Checklist + +### RC Day - {Weekday, Month, Date} + +- [ ] Post a message in `#core-editor` channel to let folks know you are starting the RC release process +- [ ] Organize and Label PRs on the relevant milestone +- [ ] Start the release process by triggering the `rc` [workflow](https://developer.wordpress.org/block-editor/contributors/code/release/#running-workflow) +- [ ] [Update the created Draft Release accordingly](https://developer.wordpress.org/block-editor/contributors/code/release/#view-the-release-draft) +- [ ] [Curate the changelog](https://developer.wordpress.org/block-editor/contributors/code/release/#1-curating-the-changelog) before publishing +- [ ] Publish Release +- [ ] Announce in `#core-editor` channel that RC1 has been released and is ready for testing +- [ ] Ping any other relevant channels announcing that the RC is available +- [ ] Create Draft of Release post on Make Core blog _(initial draft in [Google doc](https://docs.google.com/document/d/1D-MTOCmL9eMlP9TDTXqlzuKVOg_ghCPm9_whHFViqMk/edit))_ + +### Between RC and Release + +- [ ] Post a reminder in #core-editor for backporting PRs to RC (~Label Backport to Gutenberg RC) +- [ ] If there are any PRs marked as [Backport to RC](https://github.com/WordPress/gutenberg/pulls?q=is%3Apr+label%3A%22Backport+to+Gutenberg+RC%22+is%3Aclosed), run the [cherry-pick command to apply them](https://developer.wordpress.org/block-editor/contributors/code/release/auto-cherry-picking/#how-can-i-use-it-for-a-gutenberg-plugin-release) to the release branch. **This needs to be run locally** +- [ ] [Draft Release Post Highlights and Change Log](https://docs.google.com/document/d/1D-MTOCmL9eMlP9TDTXqlzuKVOg_ghCPm9_whHFViqMk/edit) +- [ ] Get assets from [Design Team](https://make.wordpress.org/design/) for the post +- [ ] Reach out to Highlight Authors to draft sections (if necessary) + +### Release Day - {Weekday, Month, Date} + +- [ ] Post a message in `#core-editor` channel to let folks know you are starting the release process +- [ ] Start the release process by triggering the `stable` [workflow](https://developer.wordpress.org/block-editor/contributors/code/release/#running-workflow) +- [ ] Update the created Draft Release accordingly. Typically by copy/pasting the last RC release notes and add any changes/updates as needed. +- [ ] Publish Release +- [ ] Trigger the update to the plugin directory. _(Get approval from a member of [Gutenberg Release team](https://github.com/orgs/WordPress/teams/gutenberg-release/members) if necessary)_ +- [ ] Announce in `#core-editor` channel that the plugin has been released +- [ ] Reach out to other contributors to help get the post reviewed +- [ ] Publish Release post on Make Core blog diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index 51bfb0d1bb7c13..a3abc5ece034ce 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -6,6 +6,3 @@ contact_links: - name: Technical help request url: https://wordpress.org/support/forum/wp-advanced/ about: For more technical help requests, create a new topic in the Developing with WordPress Forum - - name: Development help request - url: https://wordpress.stackexchange.com/ - about: For questions about WordPress development, ask a question in the WordPress Development Stack Exchange diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 2ac98e4c82aef5..69fd34d709bdc5 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -12,8 +12,17 @@ https://github.com/WordPress/gutenberg/blob/trunk/CONTRIBUTING.md --> ## Testing Instructions - - + + +### Testing Instructions for Keyboard + + ## Screenshots or screencast + + + +|Before|After| +|-|-| +||| diff --git a/.github/SUPPORT.md b/.github/SUPPORT.md index 02165e02a7f955..ce1a0a1acffa54 100644 --- a/.github/SUPPORT.md +++ b/.github/SUPPORT.md @@ -5,8 +5,8 @@ Welcome to Gutenberg, a WordPress project. We hope you join us in creating the f * Please see the [Contributing Guidelines](https://github.com/WordPress/gutenberg/blob/HEAD/CONTRIBUTING.md) for additional information on how to contribute. -* As with all WordPress projects, we want to ensure a welcoming environment for everyone. With that in mind, all contributors are expected to follow our [Code of Conduct](https://github.com/WordPress/gutenberg/blob/HEAD/CODE_OF_CONDUCT.md). +* As with all WordPress projects, we want to ensure a welcoming environment for everyone. With that in mind, all contributors are expected to follow our [Code of Conduct](https://make.wordpress.org/handbook/community-code-of-conduct/). * Join us on Slack for real-time communication, it is where maintainers coordinate around the project. To get started using Slack, see: https://make.wordpress.org/chat/ -* For general WordPress support with the core editor, see the [WordPress.org support forums](https://wordpress.org/support/) — it is highly active and well maintained. +* For general WordPress support with the core editor, see the [WordPress.org support forums](https://wordpress.org/support/forums/) — it is highly active and well maintained. diff --git a/.github/dependabot.yml b/.github/dependabot.yml index f6202ef81dea89..76d1e45e3c6ce8 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -10,5 +10,17 @@ updates: open-pull-requests-limit: 10 labels: - 'GitHub Actions' - - 'Automated Testing' - '[Type] Build Tooling' + groups: + github-actions: + patterns: + - '*' + exclude-patterns: + - 'actions/setup-java' + - 'gradle/*' + - 'reactivecircus/*' + react-native: + patterns: + - 'actions/setup-java' + - 'gradle/*' + - 'reactivecircus/*' diff --git a/.github/setup-node/action.yml b/.github/setup-node/action.yml new file mode 100644 index 00000000000000..a17adfe5f50071 --- /dev/null +++ b/.github/setup-node/action.yml @@ -0,0 +1,54 @@ +name: 'Setup Node.js and install npm dependencies' +description: 'Configure Node.js and install npm dependencies while managing all aspects of caching.' +inputs: + node-version: + description: 'Optional. The Node.js version to use. When not specified, the version specified in .nvmrc will be used.' + required: false + type: string + +runs: + using: 'composite' + steps: + - name: Use desired version of Node.js + uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2 + with: + node-version-file: '.nvmrc' + node-version: ${{ inputs.node-version }} + check-latest: true + cache: npm + + - name: Get Node.js and npm version + id: node-version + run: | + echo "NODE_VERSION=$(node -v)" >> $GITHUB_OUTPUT + shell: bash + + - name: Cache node_modules + id: cache-node_modules + uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2 + with: + path: '**/node_modules' + key: node_modules-${{ runner.os }}-${{ runner.arch }}-${{ steps.node-version.outputs.NODE_VERSION }}-${{ hashFiles('package-lock.json') }} + + - name: Install npm dependencies + if: ${{ steps.cache-node_modules.outputs.cache-hit != 'true' }} + run: | + npm ci + shell: bash + - name: Upload npm logs as an artifact on failure + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 + if: failure() + with: + name: npm-logs + path: C:\npm\cache\_logs + + # On cache hit, we run the post-install script to match the native `npm ci` behavior. + # An example of this is to patch `node_modules` using patch-package. + - name: Post-install + if: ${{ steps.cache-node_modules.outputs.cache-hit == 'true' }} + run: | + # Run the post-install script for the root project. + npm run postinstall + # Run the post-install scripts for workspaces. + npx lerna run postinstall + shell: bash diff --git a/.github/workflows/build-plugin-zip.yml b/.github/workflows/build-plugin-zip.yml index c7380265293153..7ed57c5c5865ac 100644 --- a/.github/workflows/build-plugin-zip.yml +++ b/.github/workflows/build-plugin-zip.yml @@ -3,7 +3,10 @@ name: Build Gutenberg Plugin Zip on: pull_request: push: - branches: [trunk] + branches: + - trunk + - 'release/**' + - 'wp/**' workflow_dispatch: inputs: version: @@ -56,7 +59,7 @@ jobs: github.event.inputs.version == 'rc' || github.event.inputs.version == 'stable' ) || ( - endsWith( github.ref, needs.compute-stable-branches.outputs.current_stable_branch ) && + startsWith( github.ref, 'refs/heads/release/' ) && github.event.inputs.version == 'stable' ) ) @@ -69,9 +72,10 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: token: ${{ secrets.GUTENBERG_TOKEN }} + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - name: Compute old and new version id: get_version @@ -122,7 +126,7 @@ jobs: VERSION: ${{ steps.get_version.outputs.new_version }} run: | cat <<< $(jq --tab --arg version "${VERSION}" '.version = $version' package.json) > package.json - cat <<< $(jq --tab --arg version "${VERSION}" '.version = $version' package-lock.json) > package-lock.json + cat <<< $(jq --tab --arg version "${VERSION}" '.version = $version | .packages[""].version = $version' package-lock.json) > package-lock.json sed -i "s/${{ steps.get_version.outputs.old_version }}/${VERSION}/g" gutenberg.php - name: Commit the version bump to the release branch @@ -164,14 +168,16 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: ref: ${{ needs.bump-version.outputs.release_branch || github.ref }} + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 + - name: Use desired version of Node.js + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version-file: '.nvmrc' + check-latest: true cache: npm - name: Build Gutenberg plugin ZIP file @@ -180,7 +186,7 @@ jobs: NO_CHECKS: 'true' - name: Upload artifact - uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1 + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 with: name: gutenberg-plugin path: ./gutenberg.zip @@ -203,7 +209,7 @@ jobs: - name: Upload release notes artifact if: ${{ needs.bump-version.outputs.new_version }} - uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1 + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 with: name: release-notes path: ./release-notes.txt @@ -219,11 +225,12 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: fetch-depth: 2 ref: ${{ needs.bump-version.outputs.release_branch }} token: ${{ secrets.GUTENBERG_TOKEN }} + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - name: Configure git user name and email run: | @@ -266,12 +273,12 @@ jobs: run: echo "version=$(echo $VERSION | cut -d / -f 3 | sed 's/-rc./ RC/' )" >> $GITHUB_OUTPUT - name: Download Plugin Zip Artifact - uses: actions/download-artifact@9782bd6a9848b53b110e712e20e42d89988822b7 # v3.0.1 + uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 with: name: gutenberg-plugin - name: Download Release Notes Artifact - uses: actions/download-artifact@9782bd6a9848b53b110e712e20e42d89988822b7 # v3.0.1 + uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 with: name: release-notes @@ -307,18 +314,20 @@ jobs: if: ${{ endsWith( needs.bump-version.outputs.new_version, '-rc.1' ) }} steps: - name: Checkout (for CLI) - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: path: main ref: trunk + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - name: Checkout (for publishing) - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: path: publish # Later, we switch this branch in the script that publishes packages. ref: trunk token: ${{ secrets.GUTENBERG_TOKEN }} + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - name: Configure git user name and email (for publishing) run: | @@ -326,11 +335,12 @@ jobs: git config user.name "Gutenberg Repository Automation" git config user.email gutenberg@wordpress.org - - name: Setup Node (for CLI) - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 + - name: Setup Node.js + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version-file: 'main/.nvmrc' registry-url: 'https://registry.npmjs.org' + check-latest: true - name: Publish packages to npm ("latest" dist-tag) run: | diff --git a/.github/workflows/bundle-size.yml b/.github/workflows/bundle-size.yml index 5a07b367ffa114..3d95e7aa92bc16 100644 --- a/.github/workflows/bundle-size.yml +++ b/.github/workflows/bundle-size.yml @@ -37,18 +37,20 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: fetch-depth: 1 + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 + - name: Use desired version of Node.js + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version-file: '.nvmrc' + check-latest: true cache: npm - - uses: preactjs/compressed-size-action@8119d3d31b6e57b167e09c81dfa877eada3bcb35 # v2.5.0 + - uses: preactjs/compressed-size-action@6fa0e7ca017120c754863b31123c5ee2860fd434 # v2.7.0 with: repo-token: '${{ secrets.GITHUB_TOKEN }}' - pattern: '{build/**/*.min.js,build/**/*.css}' + pattern: '{build/**/*.min.js,build/**/*.css,build-module/**/*.min.js}' clean-script: 'distclean' diff --git a/.github/workflows/check-backport-changelog.yml b/.github/workflows/check-backport-changelog.yml new file mode 100644 index 00000000000000..48fb56b425be39 --- /dev/null +++ b/.github/workflows/check-backport-changelog.yml @@ -0,0 +1,54 @@ +name: Verify Core Backport Changelog + +on: + pull_request: + types: [opened, synchronize, labeled, unlabeled] + branches: + - trunk + paths: + - 'lib/**' + - '!lib/load.php' + - '!lib/experiments-page.php' + - '!lib/experimental/**' + - 'phpunit/**' + - '!phpunit/experimental/**' + - '!phpunit/blocks/**' + - 'packages/**/*.php' + - '!packages/block-library/**' + - '!packages/e2e-tests/**' +jobs: + check: + name: Check for a Core backport changelog entry + runs-on: ubuntu-latest + if: ${{ !contains(github.event.pull_request.labels.*.name, 'No Core Sync Required') && !contains(github.event.pull_request.labels.*.name, 'Backport from WordPress Core') }} + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + ref: ${{ github.event.pull_request.head.ref }} + repository: ${{ github.event.pull_request.head.repo.full_name }} + - name: Check the changelog folder + env: + PR_NUMBER: ${{ github.event.number }} + run: | + changelog_folder="backport-changelog" + + # Find any changelog file that contains the Gutenberg PR link + gutenberg_pr_url="https://github\.com/WordPress/gutenberg/pull/${PR_NUMBER}" + changelog_file=$(grep -rl "[-*] ${gutenberg_pr_url}" "${changelog_folder}" | head -n 1) + + # Confirm that there is an entry containing the Gutenberg PR link + if [[ -z "${changelog_file}" ]]; then + echo "Please create a core backport PR and add a file with the path /.md in the $changelog_folder folder with the core backport PR URL and a list item with this PR URL." + echo "If changes are related to an existing, open core PR, you may add this PR URL to the core PR's file." + echo "See $changelog_folder/readme.md for more information." + exit 1 + fi + + core_pr_number=$(basename "${changelog_file}" .md) + core_pr_url="https://github\.com/WordPress/wordpress-develop/pull/${core_pr_number}" + + # Confirm that the entry has the correct core backport PR URL. + if ! grep -q -e "${core_pr_url}" "${changelog_file}"; then + echo "Please update the content of ${changelog_file} to include the core backport PR URL, or update the file name to match the core backport PR number." + exit 1 + fi diff --git a/.github/workflows/check-components-changelog.yml b/.github/workflows/check-components-changelog.yml new file mode 100644 index 00000000000000..373a782d5d6ddf --- /dev/null +++ b/.github/workflows/check-components-changelog.yml @@ -0,0 +1,68 @@ +name: OPTIONAL - Verify @wordpress/components CHANGELOG update + +on: + pull_request: + types: [opened, synchronize] + branches: + - trunk + paths: + - 'packages/components/**' + - '!packages/components/src/**/stories/**' + - '!packages/components/src/**/test/**' + - '!packages/components/src/**/*.android.js' + - '!packages/components/src/**/*.ios.js' + - '!packages/components/src/**/*.native.js' + - '!packages/components/src/**/*.native.scss' + - '!packages/components/src/**/react-native-*' +jobs: + check: + name: Check CHANGELOG diff + runs-on: ubuntu-latest + steps: + - name: 'Get PR commit count' + run: echo "PR_COMMIT_COUNT=$(( ${{ github.event.pull_request.commits }} + 1 ))" >> "${GITHUB_ENV}" + - name: Checkout code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + ref: ${{ github.event.pull_request.head.ref }} + repository: ${{ github.event.pull_request.head.repo.full_name }} + fetch-depth: ${{ env.PR_COMMIT_COUNT }} + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} + - name: 'Fetch relevant history from origin' + run: git fetch origin ${{ github.event.pull_request.base.ref }} + - name: Check CHANGELOG status + env: + PR_NUMBER: ${{ github.event.number }} + run: | + changelog_path="packages/components/CHANGELOG.md" + optional_check_notice="This isn't a required check, so if you think your changes are small enough that they don't warrant a CHANGELOG entry, please go ahead and merge without one." + + # Fail if the PR doesn't touch the changelog + if git diff --quiet ${{ github.event.pull_request.base.sha }} HEAD -- "$changelog_path"; then + echo "Please add a CHANGELOG entry to $changelog_path" + echo + echo "${optional_check_notice}" + exit 1 + fi + + pr_link_pattern="\[#${PR_NUMBER}\]\(https://github\.com/WordPress/gutenberg/pull/${PR_NUMBER}\)" + pr_link_grep_pattern="\[#${PR_NUMBER}\](https://github\.com/WordPress/gutenberg/pull/${PR_NUMBER})" + + unreleased_section=$(sed -n '/^## Unreleased$/,/^## /p' "${changelog_path}") + + # Confirm that the CHANGELOG has an entry for the current PR + if ! grep -nq -e "${pr_link_grep_pattern}" "${changelog_path}"; then + echo "Please add a CHANGELOG entry to $changelog_path, and make sure your CHANGELOG entry has a link to the current PR." + echo + echo "${optional_check_notice}" + exit 1 + fi + + # Confirm that there is an 'Unreleased' section and that the relevant entry is in that section + if ! grep -nq -e '^## Unreleased' "${changelog_path}" || \ + ! [[ $unreleased_section = *${pr_link_pattern}* ]]; then + echo "Please make sure your CHANGELOG entry is in the \`## Unreleased\` section" + echo + echo "${optional_check_notice}" + exit 1 + fi diff --git a/.github/workflows/cherry-pick-wp-release.yml b/.github/workflows/cherry-pick-wp-release.yml new file mode 100644 index 00000000000000..14bee71c90c909 --- /dev/null +++ b/.github/workflows/cherry-pick-wp-release.yml @@ -0,0 +1,184 @@ +name: Auto Cherry-Pick + +on: + push: + branches: + - trunk + # We also want to attempt cherry-picking when a PR is labeled after the PR + # is merged. + pull_request: + types: [labeled] + branches: + - trunk + +# Ensure that new jobs wait for the previous job to finish. +concurrency: + group: ${{ github.workflow }} + cancel-in-progress: false + +jobs: + cherry-pick: + runs-on: ubuntu-latest + # When in the context of a PR, ensure the PR is merged. + if: github.event.pull_request == null || github.event.pull_request.merged == true + steps: + - name: Determine if label should trigger cherry-pick + id: label-check + uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 + with: + script: | + const commit_sha = context.payload.pull_request ? context.payload.pull_request.merge_commit_sha : context.sha; + console.log(`Commit SHA: ${commit_sha}`); + core.exportVariable('commit_sha', commit_sha); + const prs = await github.rest.repos.listPullRequestsAssociatedWithCommit({ + owner: context.repo.owner, + repo: context.repo.repo, + commit_sha, + }); + if (prs.data.length === 0) { + console.log(`No PR found for commit ${context.sha}.`); + return; + } + const pr_number = prs.data[0].number; + console.log(`PR: ${pr_number}`); + core.exportVariable('pr_number', pr_number); + + const pr = await github.rest.pulls.get({ + owner: context.repo.owner, + repo: context.repo.repo, + pull_number: pr_number, + }); + const labels = pr.data.labels.map(label => label.name); + console.log(`Labels: ${labels}`); + const regex = /^Backport to WP ([0-9]+\.[0-9]+) Beta\/RC$/; + let matched = false; + for (const label of labels) { + const match = label.match(regex); + if (match) { + const version = match[1]; + console.log(`Matched label: ${label}`); + console.log(`Extracted version: ${version}`); + core.exportVariable('cherry_pick', 'true'); + core.exportVariable('version', version); + matched = true; + break; + } + } + if (!matched) { + core.exportVariable('cherry_pick', 'false'); + } + + - name: Checkout repository + if: env.cherry_pick == 'true' + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + token: ${{ secrets.GUTENBERG_TOKEN }} + fetch-depth: 0 + + - name: Set up Git + if: env.cherry_pick == 'true' + run: | + git config --global user.name "Gutenberg Repository Automation" + git config --global user.email "gutenberg@wordpress.org" + + - name: Cherry-pick the commit + id: cherry-pick + if: env.cherry_pick == 'true' + run: | + TARGET_BRANCH="wp/${{ env.version }}" + COMMIT_SHA="${{ env.commit_sha }}" + echo "Target branch: $TARGET_BRANCH" + echo "Commit SHA: $COMMIT_SHA" + git checkout $TARGET_BRANCH + git cherry-pick $COMMIT_SHA || echo "cherry-pick-failed" > result + if [ -f result ] && grep -q "cherry-pick-failed" result; then + echo "conflict=true" >> $GITHUB_ENV + git cherry-pick --abort + else + CHERRY_PICK_SHA=$(git rev-parse HEAD) + echo "conflict=false" >> $GITHUB_ENV + echo "cherry_pick_sha=$CHERRY_PICK_SHA" >> $GITHUB_ENV + git push origin $TARGET_BRANCH + fi + + - name: Remove cherry-pick label + if: env.cherry_pick == 'true' && env.conflict == 'false' + uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 + with: + script: | + const prNumber = process.env.pr_number; + const version = process.env.version; + console.log(`prNumber: ${prNumber}`); + console.log(`version: ${version}`); + const oldLabel = `Backport to WP ${version} Beta/RC`; + const newLabel = `Backported to WP Core`; + await github.rest.issues.removeLabel({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: prNumber, + name: oldLabel + }); + await github.rest.issues.addLabels({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: prNumber, + labels: [newLabel] + }); + + - name: Comment on the PR + if: env.cherry_pick == 'true' && env.conflict == 'false' + uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 + with: + script: | + const prNumber = process.env.pr_number; + const cherryPickSha = process.env.cherry_pick_sha; + const targetBranch = `wp/${process.env.version}`; + console.log(`prNumber: ${prNumber}`); + console.log(`cherryPickSha: ${cherryPickSha}`); + console.log(`targetBranch: ${targetBranch}`); + await github.rest.issues.createComment({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: prNumber, + body: `I just cherry-picked this PR to the ${targetBranch} branch to get it included in the next release: ${cherryPickSha}` + }); + + - name: Comment on the PR about conflict + if: env.cherry_pick == 'true' && env.conflict == 'true' + uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 + with: + script: | + const prNumber = process.env.pr_number; + const commitSha = process.env.commit_sha; + const targetBranch = `wp/${process.env.version}`; + console.log(`prNumber: ${prNumber}`); + console.log(`targetBranch: ${targetBranch}`); + await github.rest.issues.createComment({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: prNumber, + body: `There was a conflict while trying to cherry-pick the commit to the ${targetBranch} branch. Please resolve the conflict manually and create a PR to the ${targetBranch} branch. + + PRs to ${targetBranch} are similar to PRs to trunk, but you should base your PR on the ${targetBranch} branch instead of trunk. + + \`\`\` + # Checkout the ${targetBranch} branch instead of trunk. + git checkout ${targetBranch} + # Create a new branch for your PR. + git checkout -b my-branch + # Cherry-pick the commit. + git cherry-pick ${commitSha} + # Check which files have conflicts. + git status + # Resolve the conflict... + # Add the resolved files to the staging area. + git status + git add . + git cherry-pick --continue + # Push the branch to the repository + git push origin my-branch + # Create a PR and set the base to the ${targetBranch} branch. + # See https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-base-branch-of-a-pull-request. + \`\`\` + ` + }); diff --git a/.github/workflows/create-block.yml b/.github/workflows/create-block.yml index 9b98d3d9d41165..1cb40466abe1ef 100644 --- a/.github/workflows/create-block.yml +++ b/.github/workflows/create-block.yml @@ -14,26 +14,25 @@ concurrency: jobs: checks: - name: Checks + name: Checks w/Node.js ${{ matrix.node }} on ${{ matrix.os }} runs-on: ${{ matrix.os }} if: ${{ github.repository == 'WordPress/gutenberg' || github.event_name == 'pull_request' }} strategy: fail-fast: false matrix: - node: [14] - os: [macos-latest, ubuntu-latest, windows-latest] + node: ['20', '22'] + os: ['macos-latest', 'ubuntu-latest', 'windows-latest'] steps: - - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 + - name: Setup Node.js and install dependencies + uses: ./.github/setup-node with: node-version: ${{ matrix.node }} - cache: npm - - name: npm install, build, format and lint + - name: Create block shell: bash - run: | - npm ci - bash ./bin/test-create-block.sh + run: bash ./bin/test-create-block.sh diff --git a/.github/workflows/end2end-test-playwright.yml b/.github/workflows/end2end-test-playwright.yml deleted file mode 100644 index e0aabb17afa019..00000000000000 --- a/.github/workflows/end2end-test-playwright.yml +++ /dev/null @@ -1,66 +0,0 @@ -name: End-to-End Tests Playwright - -on: - pull_request: - push: - branches: - - trunk - - 'release/**' - - 'wp/**' - -# Cancels all previous workflow runs for pull requests that have not completed. -concurrency: - # The concurrency group contains the workflow name and the branch name for pull requests - # or the commit hash for any other events. - group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }} - cancel-in-progress: true - -jobs: - e2e: - name: E2E Tests - runs-on: ubuntu-latest - if: ${{ github.repository == 'WordPress/gutenberg' || github.event_name == 'pull_request' }} - strategy: - fail-fast: false - - steps: - - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 - - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 - with: - node-version-file: '.nvmrc' - cache: npm - - - name: Npm install and build - run: | - npm ci - npm run build - - - name: Install Playwright dependencies - run: | - npx playwright install chromium firefox webkit --with-deps - - - name: Install WordPress and start the server - run: | - npm run wp-env start - - - name: Run the tests - run: | - xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run test:e2e:playwright - - - name: Archive debug artifacts (screenshots, traces) - uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1 - if: always() - with: - name: failures-artifacts - path: artifacts/test-results - if-no-files-found: ignore - - - name: Archive flaky tests report - uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1 - if: always() - with: - name: flaky-tests-report-playwright - path: flaky-tests - if-no-files-found: ignore diff --git a/.github/workflows/end2end-test.yml b/.github/workflows/end2end-test.yml index 172d3b090eaf0b..ea85a8949573f3 100644 --- a/.github/workflows/end2end-test.yml +++ b/.github/workflows/end2end-test.yml @@ -16,50 +16,114 @@ concurrency: cancel-in-progress: true jobs: - admin: - name: Admin - ${{ matrix.part }} + e2e-playwright: + name: Playwright - ${{ matrix.part }} runs-on: ubuntu-latest if: ${{ github.repository == 'WordPress/gutenberg' || github.event_name == 'pull_request' }} strategy: fail-fast: false matrix: - part: [1, 2, 3, 4] + part: [1, 2, 3, 4, 5, 6, 7, 8] + totalParts: [8] steps: - - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 - - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: - node-version-file: '.nvmrc' - cache: npm + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} + + - name: Setup Node.js and install dependencies + uses: ./.github/setup-node + + - name: Npm build + run: npm run build - - name: Npm install and build + - name: Install Playwright dependencies run: | - npm ci - npm run build + npx playwright install chromium firefox webkit --with-deps - - name: Install WordPress + - name: Install WordPress and start the server run: | npm run wp-env start - - name: Running the tests + - name: Run the tests + env: + PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1 run: | - $( npm bin )/wp-scripts test-e2e --config=./packages/e2e-tests/jest.config.js --listTests > ~/.jest-e2e-tests - $( npm bin )/wp-scripts test-e2e --config=./packages/e2e-tests/jest.config.js --cacheDirectory="$HOME/.jest-cache" --runTestsByPath $( awk 'NR % 4 == ${{ matrix.part }} - 1' < ~/.jest-e2e-tests ) + xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run test:e2e -- --shard=${{ matrix.part }}/${{ matrix.totalParts }} - - name: Archive debug artifacts (screenshots, HTML snapshots) - uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1 - if: always() + - name: Archive debug artifacts (screenshots, traces) + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 + if: ${{ !cancelled() }} with: - name: failures-artifacts - path: artifacts + name: failures-artifacts--${{ matrix.part }} + path: artifacts/test-results if-no-files-found: ignore - name: Archive flaky tests report - uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1 - if: always() + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 + if: ${{ !cancelled() }} with: - name: flaky-tests-report-${{ matrix.part }} + name: flaky-tests-report--${{ matrix.part }} path: flaky-tests if-no-files-found: ignore + + merge-artifacts: + name: Merge Artifacts + if: ${{ !cancelled() }} + needs: [e2e-playwright] + runs-on: ubuntu-latest + outputs: + has-flaky-test-report: ${{ !!steps.merge-flaky-tests-reports.outputs.artifact-id }} + steps: + - name: Merge failures artifacts + uses: actions/upload-artifact/merge@v4 + # Don't fail the job if there aren't any artifacts to merge. + continue-on-error: true + with: + name: failures-artifacts + # Retain the merged artifacts in case of a rerun. + pattern: failures-artifacts* + delete-merged: true + + - name: Merge flaky tests reports + id: merge-flaky-tests-reports + uses: actions/upload-artifact/merge@v4 + continue-on-error: true + with: + name: flaky-tests-report + pattern: flaky-tests-report* + delete-merged: true + + report-to-issues: + name: Report to GitHub + needs: [merge-artifacts] + if: ${{ needs.merge-artifacts.outputs.has-flaky-test-report == 'true' }} + runs-on: ubuntu-latest + steps: + # Checkout defaults to using the branch which triggered the event, which + # isn't necessarily `trunk` (e.g. in the case of a merge). + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + ref: trunk + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} + + - uses: actions/download-artifact@v4.1.8 + # Don't fail the job if there isn't any flaky tests report. + continue-on-error: true + with: + name: flaky-tests-report + path: flaky-tests + + - name: Setup Node.js and install dependencies + uses: ./.github/setup-node + + - name: Npm build + # TODO: We don't have to build the entire project, just the action itself. + run: npm run build:packages + + - name: Report flaky tests + uses: ./packages/report-flaky-tests + with: + repo-token: '${{ secrets.GITHUB_TOKEN }}' + label: '[Type] Flaky Test' + artifact-path: flaky-tests diff --git a/.github/workflows/enforce-pr-labels.yml b/.github/workflows/enforce-pr-labels.yml new file mode 100644 index 00000000000000..7493459a6ff35c --- /dev/null +++ b/.github/workflows/enforce-pr-labels.yml @@ -0,0 +1,18 @@ +name: Enforce labels on Pull Request +on: + pull_request_target: + types: [labeled, unlabeled, ready_for_review, review_requested] +jobs: + type-related-labels: + runs-on: ubuntu-latest + permissions: + pull-requests: write + steps: + - uses: mheap/github-action-required-labels@v5 + with: + mode: exactly + count: 1 + labels: '[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' + add_comment: true + message: "**Warning: Type of PR label mismatch**\n\n To merge this PR, it requires {{ errorString }} {{ count }} label indicating the type of PR. Other labels are optional and not being checked here. \n- **Type-related labels to choose from**: {{ provided }}.\n- **Labels found**: {{ applied }}.\n\nRead more about [Type labels in Gutenberg](https://github.com/WordPress/gutenberg/labels?q=type). 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." + exit_type: failure diff --git a/.github/workflows/flaky-tests.yml b/.github/workflows/flaky-tests.yml deleted file mode 100644 index 6f457f6b2292c5..00000000000000 --- a/.github/workflows/flaky-tests.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: Report Flaky Tests - -on: - workflow_run: - workflows: ['End-to-End Tests', 'End-to-End Tests Playwright'] - types: - - completed - -jobs: - report-to-issues: - name: Report to GitHub issues - runs-on: ubuntu-latest - if: ${{ github.event.workflow_run.conclusion == 'success' }} - steps: - # Checkout defaults to using the branch which triggered the event, which - # isn't necessarily `trunk` (e.g. in the case of a merge). - - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 - with: - ref: trunk - - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 - with: - node-version-file: '.nvmrc' - cache: npm - - - name: Npm install and build - # TODO: We don't have to build the entire project, just the action itself. - run: | - npm ci - npm run build:packages - - - name: Report flaky tests - uses: ./packages/report-flaky-tests - with: - repo-token: '${{ secrets.GITHUB_TOKEN }}' - label: '[Type] Flaky Test' - artifact-name-prefix: flaky-tests-report diff --git a/.github/workflows/gradle-wrapper-validation.yml b/.github/workflows/gradle-wrapper-validation.yml new file mode 100644 index 00000000000000..2bb5676ae9ed66 --- /dev/null +++ b/.github/workflows/gradle-wrapper-validation.yml @@ -0,0 +1,14 @@ +name: 'Validate Gradle Wrapper' +on: [push, pull_request] + +jobs: + validation: + name: 'Validation' + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} + - name: Validate checksums + uses: gradle/actions/wrapper-validation@cc4fc85e6b35bafd578d5ffbc76a5518407e1af0 # v4.2.1 diff --git a/.github/workflows/performance.yml b/.github/workflows/performance.yml index 675642df3c26c9..4a5b576b424b53 100644 --- a/.github/workflows/performance.yml +++ b/.github/workflows/performance.yml @@ -6,6 +6,15 @@ on: types: [published] push: branches: [trunk] + workflow_dispatch: + inputs: + branches: + description: 'branches or commits to compare (comma separated)' + required: true + wpversion: + description: 'The base WP version to use for the tests (latest or 6.0, 6.1...)' + required: false + default: 'latest' # Cancels all previous workflow runs for pull requests that have not completed. concurrency: @@ -16,26 +25,31 @@ concurrency: jobs: performance: + timeout-minutes: 60 name: Run performance tests runs-on: ubuntu-latest if: ${{ github.repository == 'WordPress/gutenberg' }} + env: + WP_ARTIFACTS_PATH: ${{ github.workspace }}/artifacts steps: - - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 - - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: - node-version-file: '.nvmrc' - cache: npm + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} + + - name: Setup Node.js and install dependencies + uses: ./.github/setup-node - - name: Npm install + - name: Install NVM run: | - npm ci + curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash + export NVM_DIR="$HOME/.nvm" + [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" + nvm -v - - name: Compare performance with trunk + - name: Compare performance with base branch if: github.event_name == 'pull_request' - run: ./bin/plugin/cli.js perf $GITHUB_SHA trunk --tests-branch $GITHUB_SHA + run: ./bin/plugin/cli.js perf $GITHUB_SHA ${{ github.base_ref }} --tests-branch $GITHUB_SHA - name: Compare performance with current WordPress Core and previous Gutenberg versions if: github.event_name == 'release' @@ -50,31 +64,49 @@ jobs: WP_VERSION=$(awk -F ': ' '/^Tested up to/{print $2}' readme.txt) IFS=. read -ra WP_VERSION_ARRAY <<< "$WP_VERSION" WP_MAJOR="${WP_VERSION_ARRAY[0]}.${WP_VERSION_ARRAY[1]}" - ./bin/plugin/cli.js perf "wp/$WP_MAJOR" "$PREVIOUS_RELEASE_BRANCH" "$CURRENT_RELEASE_BRANCH" --wp-version "$WP_MAJOR" + ./bin/plugin/cli.js perf "wp/$WP_MAJOR" "$PREVIOUS_RELEASE_BRANCH" "$CURRENT_RELEASE_BRANCH" --tests-branch $GITHUB_SHA --wp-version "$WP_MAJOR" - name: Compare performance with base branch if: github.event_name == 'push' # The base hash used here need to be a commit that is compatible with the current WP version - # The current one is debd225d007f4e441ceec80fbd6fa96653f94737 and it needs to be updated every WP major release. + # The current one is c7722262e65a3f4d0f1a2d1ad29eccb2069509e4 and it needs to be updated every WP major release. # It is used as a base comparison point to avoid fluctuation in the performance metrics. run: | WP_VERSION=$(awk -F ': ' '/^Tested up to/{print $2}' readme.txt) IFS=. read -ra WP_VERSION_ARRAY <<< "$WP_VERSION" WP_MAJOR="${WP_VERSION_ARRAY[0]}.${WP_VERSION_ARRAY[1]}" - ./bin/plugin/cli.js perf $GITHUB_SHA debd225d007f4e441ceec80fbd6fa96653f94737 --tests-branch $GITHUB_SHA --wp-version "$WP_MAJOR" + ./bin/plugin/cli.js perf $GITHUB_SHA c7722262e65a3f4d0f1a2d1ad29eccb2069509e4 --tests-branch $GITHUB_SHA --wp-version "$WP_MAJOR" - - uses: actions/github-script@d556feaca394842dc55e4734bf3bb9f685482fa0 # v6.3.3 - if: github.event_name == 'push' - id: commit-timestamp + - name: Compare performance with custom branches + if: github.event_name == 'workflow_dispatch' + env: + BRANCHES: ${{ github.event.inputs.branches }} + WP_VERSION: ${{ github.event.inputs.wpversion }} + run: | + ./bin/plugin/cli.js perf $(echo $BRANCHES | tr ',' ' ') --tests-branch $GITHUB_SHA --wp-version "$WP_VERSION" + + - name: Add workflow summary + run: cat ${{ env.WP_ARTIFACTS_PATH }}/summary.md >> $GITHUB_STEP_SUMMARY + + - name: Archive performance results + if: success() + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 with: - github-token: ${{secrets.GITHUB_TOKEN}} - script: | - const commit_details = await github.rest.git.getCommit({owner: context.repo.owner, repo: context.repo.repo, commit_sha: context.sha}); - return parseInt((new Date( commit_details.data.author.date ).getTime() / 1000).toFixed(0)) + name: performance-results + path: ${{ env.WP_ARTIFACTS_PATH }}/*.performance-results*.json - name: Publish performance results if: github.event_name == 'push' env: - COMMITTED_AT: ${{ steps.commit-timestamp.outputs.result }} CODEHEALTH_PROJECT_TOKEN: ${{ secrets.CODEHEALTH_PROJECT_TOKEN }} - run: ./bin/log-perormance-results.js $CODEHEALTH_PROJECT_TOKEN trunk $GITHUB_SHA debd225d007f4e441ceec80fbd6fa96653f94737 $COMMITTED_AT + run: | + COMMITTED_AT=$(git show -s $GITHUB_SHA --format="%cI") + ./bin/log-performance-results.js $CODEHEALTH_PROJECT_TOKEN trunk $GITHUB_SHA c7722262e65a3f4d0f1a2d1ad29eccb2069509e4 $COMMITTED_AT + + - name: Archive debug artifacts (screenshots, HTML snapshots) + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 + if: failure() + with: + name: failures-artifacts + path: ${{ env.WP_ARTIFACTS_PATH }} + if-no-files-found: ignore diff --git a/.github/workflows/props-bot.yml b/.github/workflows/props-bot.yml new file mode 100644 index 00000000000000..b2332aabb816c7 --- /dev/null +++ b/.github/workflows/props-bot.yml @@ -0,0 +1,88 @@ +name: Props Bot + +on: + # This event runs anytime a PR is (re)opened, updated, marked ready for review, or labeled. + # GitHub does not allow filtering the `labeled` event by a specific label. + # However, the logic below will short-circuit the workflow when the `props-bot` label is not the one being added. + # Note: The pull_request_target event is used instead of pull_request because this workflow needs permission to comment + # on the pull request. Because this event grants extra permissions to `GITHUB_TOKEN`, any code changes within the PR + # should be considered untrusted. See https://securitylab.github.com/research/github-actions-preventing-pwn-requests/. + pull_request_target: + types: + - opened + - synchronize + - reopened + - labeled + - ready_for_review + # This event runs anytime a comment is added or deleted. + # You cannot filter this event for PR comments only. + # However, the logic below does short-circuit the workflow for issues. + issue_comment: + types: + - created + # This event will run everytime a new PR review is initially submitted. + pull_request_review: + types: + - submitted + # This event runs anytime a PR review comment is created or deleted. + pull_request_review_comment: + types: + - created + +# Cancels all previous workflow runs for pull requests that have not completed. +concurrency: + # The concurrency group contains the workflow name and the branch name for pull requests + # or the commit hash for any other events. + group: ${{ github.workflow }}-${{ contains( fromJSON( '["pull_request_target", "pull_request_review", "pull_request_review_comment"]' ), github.event_name ) && github.head_ref || github.sha }} + cancel-in-progress: true + +# Disable permissions for all available scopes by default. +# Any needed permissions should be configured at the job level. +permissions: {} + +jobs: + # Compiles a list of props for a pull request. + # + # Performs the following steps: + # - Collects a list of contributor props and leaves a comment. + # - Removes the props-bot label, if necessary. + props-bot: + name: Generate a list of props + runs-on: ubuntu-latest + permissions: + # The action needs permission `write` permission for PRs in order to add a comment. + pull-requests: write + contents: read + timeout-minutes: 20 + # The job will run when pull requests are open, ready for review and: + # + # - A comment is added to the pull request. + # - A review is created or commented on. + # - The pull request is opened, synchronized, marked ready for review, or reopened. + # - The `props-bot` label is added to the pull request. + if: | + ( + github.event_name == 'issue_comment' && github.event.issue.pull_request || + contains( fromJSON( '["pull_request_review", "pull_request_review_comment"]' ), github.event_name ) || + github.event_name == 'pull_request_target' && github.event.action != 'labeled' || + 'props-bot' == github.event.label.name + ) && + ( ! github.event.pull_request.draft && github.event.pull_request.state == 'open' || ! github.event.issue.draft && github.event.issue.state == 'open' ) + + steps: + - name: Gather a list of contributors + uses: WordPress/props-bot-action@trunk + + - name: Remove the props-bot label + uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 + if: ${{ github.event.action == 'labeled' && 'props-bot' == github.event.label.name }} + with: + retries: 2 + retry-exempt-status-codes: 418 + script: | + github.rest.issues.removeLabel({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: '${{ github.event.number }}', + name: 'props-bot' + }); diff --git a/.github/workflows/publish-npm-packages.yml b/.github/workflows/publish-npm-packages.yml index 5a8249e1d1be9c..11cff85f4717a7 100644 --- a/.github/workflows/publish-npm-packages.yml +++ b/.github/workflows/publish-npm-packages.yml @@ -30,18 +30,34 @@ jobs: environment: WordPress packages steps: - name: Checkout (for CLI) - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + if: ${{ github.event.inputs.release_type != 'wp' }} + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: - path: main + path: cli ref: trunk + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - name: Checkout (for publishing) - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + if: ${{ github.event.inputs.release_type != 'wp' }} + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: path: publish # Later, we switch this branch in the script that publishes packages. ref: trunk token: ${{ secrets.GUTENBERG_TOKEN }} + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} + + - name: Checkout (for publishing WP major version) + if: ${{ github.event.inputs.release_type == 'wp' && github.event.inputs.wp_version }} + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + path: publish + ref: wp/${{ github.event.inputs.wp_version }} + # We need to ensure that Lerna can read the commit created during the previous npm publishing. + # Lerna assumes that all packages need publishing if it can't access the necessary information. + fetch-depth: 999 + token: ${{ secrets.GUTENBERG_TOKEN }} + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - name: Configure git user name and email (for publishing) run: | @@ -49,16 +65,26 @@ jobs: git config user.name "Gutenberg Repository Automation" git config user.email gutenberg@wordpress.org - - name: Setup Node (for CLI) - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 + - name: Setup Node.js + if: ${{ github.event.inputs.release_type != 'wp' }} + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version-file: 'main/.nvmrc' + node-version-file: 'cli/.nvmrc' registry-url: 'https://registry.npmjs.org' + check-latest: true + + - name: Setup Node.js (for WP major version) + if: ${{ github.event.inputs.release_type == 'wp' && github.event.inputs.wp_version }} + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 + with: + node-version-file: 'publish/.nvmrc' + registry-url: 'https://registry.npmjs.org' + check-latest: true - name: Publish development packages to npm ("next" dist-tag) if: ${{ github.event.inputs.release_type == 'development' }} run: | - cd main + cd cli npm ci ./bin/plugin/cli.js npm-next --ci --repository-path ../publish env: @@ -67,17 +93,17 @@ jobs: - name: Publish packages to npm with bug fixes ("latest" dist-tag) if: ${{ github.event.inputs.release_type == 'bugfix' }} run: | - cd main + cd cli npm ci ./bin/plugin/cli.js npm-bugfix --ci --repository-path ../publish env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} - - name: Publish packages to npm for WP major ("wp/${{ github.event.inputs.wp_version || 'X.Y' }}" dist-tag) + - name: Publish packages to npm for WP major version ("wp/${{ github.event.inputs.wp_version || 'X.Y' }}" dist-tag) if: ${{ github.event.inputs.release_type == 'wp' && github.event.inputs.wp_version }} run: | - cd main + cd publish npm ci - ./bin/plugin/cli.js npm-wp --wp-version=${{ github.event.inputs.wp_version }} --ci --repository-path ../publish + npx lerna publish patch --dist-tag wp-${{ github.event.inputs.wp_version }} --no-private --yes --no-verify-access env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/.github/workflows/pull-request-automation.yml b/.github/workflows/pull-request-automation.yml index e6e4f1bdfb84ec..e1a3defc641aa3 100644 --- a/.github/workflows/pull-request-automation.yml +++ b/.github/workflows/pull-request-automation.yml @@ -8,34 +8,17 @@ jobs: pull-request-automation: runs-on: ubuntu-latest if: ${{ github.repository == 'WordPress/gutenberg' }} - strategy: - matrix: - node: ['14'] steps: # Checkout defaults to using the branch which triggered the event, which # isn't necessarily `trunk` (e.g. in the case of a merge). - - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: ref: trunk + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 - with: - node-version: ${{ matrix.node }} - - - name: Cache NPM packages - uses: actions/cache@9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7 # v3.0.11 - with: - # npm cache files are stored in `~/.npm` on Linux/macOS - path: ~/.npm - key: ${{ runner.os }}-node-${{ matrix.node }}-npm-pr-automation-cache-${{ hashFiles('**/package-lock.json') }} - - # Changing into the action's directory and running `npm install` is much - # faster than a full project-wide `npm ci`. - - name: Install NPM dependencies - run: npm install - working-directory: packages/project-management-automation + - name: Setup Node.js and install dependencies + uses: ./.github/setup-node - uses: ./packages/project-management-automation with: diff --git a/.github/workflows/rnmobile-android-runner.yml b/.github/workflows/rnmobile-android-runner.yml index 093c2a99ad4a07..f8ff0441a95b7b 100644 --- a/.github/workflows/rnmobile-android-runner.yml +++ b/.github/workflows/rnmobile-android-runner.yml @@ -18,53 +18,62 @@ jobs: if: ${{ github.repository == 'WordPress/gutenberg' || github.event_name == 'pull_request' }} strategy: matrix: - native-test-name: [gutenberg-editor-initial-html] + native-test-name: [gutenberg-editor-rendering] api-level: [29] steps: - name: checkout - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - name: Use desired version of Java - uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0 + uses: actions/setup-java@8df1039502a15bceb9433410b1a100fbe190c53b # v4.5.0 with: - distribution: 'temurin' - java-version: '11' + distribution: 'corretto' + java-version: '17' + + - name: Setup Node.js and install dependencies + uses: ./.github/setup-node - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 + - name: Restore tests setup cache + uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.1.2 with: - node-version-file: '.nvmrc' - cache: npm + path: | + ~/.appium + key: ${{ runner.os }}-tests-setup-${{ hashFiles('package-lock.json') }} - - run: npm ci + - name: Prepare tests setup + run: npm run native test:e2e:setup - name: Gradle cache - uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3 - - - name: AVD cache - uses: actions/cache@9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7 # v3.0.11 - id: avd-cache - with: - path: | - ~/.android/avd/* - ~/.android/adb* - key: avd-${{ matrix.api-level }} + uses: gradle/actions/setup-gradle@cc4fc85e6b35bafd578d5ffbc76a5518407e1af0 # v4.2.1 - - name: Create AVD and generate snapshot for caching - if: steps.avd-cache.outputs.cache-hit != 'true' - uses: reactivecircus/android-emulator-runner@50986b1464923454c95e261820bc626f38490ec0 # v2.27.0 - with: - api-level: ${{ matrix.api-level }} - force-avd-creation: false - emulator-options: -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none - disable-animations: false - arch: x86_64 - profile: Nexus 6 - script: echo "Generated AVD snapshot for caching." + # AVD cache disabled as it caused emulator termination to hang indefinitely. + # https://github.com/ReactiveCircus/android-emulator-runner/issues/385 + # - name: AVD cache + # uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.1.2 + # id: avd-cache + # with: + # path: | + # ~/.android/avd/* + # ~/.android/adb* + # key: avd-${{ matrix.api-level }} + # + # - name: Create AVD and generate snapshot for caching + # if: steps.avd-cache.outputs.cache-hit != 'true' + # uses: reactivecircus/android-emulator-runner@62dbb605bba737720e10b196cb4220d374026a6d # v2.33.0 + # with: + # api-level: ${{ matrix.api-level }} + # force-avd-creation: false + # emulator-options: -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none + # disable-animations: false + # arch: x86_64 + # profile: Nexus 6 + # script: echo "Generated AVD snapshot for caching." - name: Run tests - uses: reactivecircus/android-emulator-runner@50986b1464923454c95e261820bc626f38490ec0 # v2.27.0 + uses: reactivecircus/android-emulator-runner@62dbb605bba737720e10b196cb4220d374026a6d # v2.33.0 with: api-level: ${{ matrix.api-level }} force-avd-creation: false @@ -74,13 +83,13 @@ jobs: profile: Nexus 6 script: npm run native test:e2e:android:local ${{ matrix.native-test-name }} - - uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1 + - uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 if: always() with: name: android-screen-recordings path: packages/react-native-editor/android-screen-recordings - - uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1 + - uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 if: always() with: name: appium-logs diff --git a/.github/workflows/rnmobile-ios-runner.yml b/.github/workflows/rnmobile-ios-runner.yml index 36dc3a5dc30c9e..d28ee65c719e43 100644 --- a/.github/workflows/rnmobile-ios-runner.yml +++ b/.github/workflows/rnmobile-ios-runner.yml @@ -14,30 +14,48 @@ concurrency: jobs: test: - runs-on: macos-11 + runs-on: macos-12 if: ${{ github.repository == 'WordPress/gutenberg' || github.event_name == 'pull_request' }} strategy: matrix: - xcode: ['13.2.1'] - device: ['iPhone 13'] - native-test-name: [gutenberg-editor-initial-html] + xcode: ['14.2'] + device: ['iPhone 14'] + native-test-name: [gutenberg-editor-rendering] steps: - - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 + - uses: ruby/setup-ruby@a2bbe5b1b236842c1cb7dd11e8e3b51e0a616acc # v1.202.0 with: - node-version-file: '.nvmrc' - cache: npm + # `.ruby-version` file location + working-directory: packages/react-native-editor/ios + + - name: Switch Xcode version to ${{ matrix.xcode }} + run: sudo xcode-select --switch /Applications/Xcode_${{ matrix.xcode }}.app - - run: npm ci + - name: Launch simulator + run: (open -a Simulator && xcrun simctl boot '${{ matrix.device }}') & + + - name: Setup Node.js and install dependencies + uses: ./.github/setup-node + + - name: Restore tests setup cache + uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.1.2 + with: + path: | + ~/.appium + key: ${{ runner.os }}-tests-setup-${{ hashFiles('package-lock.json') }} + + - name: Prepare tests setup + run: npm run native test:e2e:setup - name: Prepare build cache key run: find package-lock.json packages/react-native-editor/ios packages/react-native-aztec/ios packages/react-native-bridge/ios -type f -print0 | sort -z | xargs -0 shasum | tee ios-checksums.txt - name: Restore build cache - uses: actions/cache@9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7 # v3.0.11 + uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.1.2 with: path: | packages/react-native-editor/ios/build/GutenbergDemo/Build/Products/Release-iphonesimulator/GutenbergDemo.app @@ -45,7 +63,7 @@ jobs: key: ${{ runner.os }}-ios-build-${{ matrix.xcode }}-${{ matrix.device }}-${{ hashFiles('ios-checksums.txt') }} - name: Restore pods cache - uses: actions/cache@9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7 # v3.0.11 + uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.1.2 with: path: | packages/react-native-editor/ios/Pods @@ -57,18 +75,12 @@ jobs: - name: Bundle iOS run: npm run native test:e2e:bundle:ios - - name: Switch Xcode version to ${{ matrix.xcode }} - run: sudo xcode-select --switch /Applications/Xcode_${{ matrix.xcode }}.app - - name: Build (if needed) run: test -e packages/react-native-editor/ios/build/GutenbergDemo/Build/Products/Release-iphonesimulator/GutenbergDemo.app/GutenbergDemo || npm run native test:e2e:build-app:ios - name: Build Web Driver Agent (if needed) run: test -d packages/react-native-editor/ios/build/WDA || npm run native test:e2e:build-wda - - name: Force update Launch Database to prevent issues when opening the Simulator app - run: /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -f /Applications/Xcode_${{ matrix.xcode }}.app/Contents/Developer/Applications/Simulator.app - - name: Run iOS Device Tests run: TEST_RN_PLATFORM=ios npm run native device-tests:local ${{ matrix.native-test-name }} @@ -77,13 +89,13 @@ jobs: rm packages/react-native-editor/ios/build/GutenbergDemo/Build/Products/Release-iphonesimulator/GutenbergDemo.app/main.jsbundle rm -rf packages/react-native-editor/ios/build/GutenbergDemo/Build/Products/Release-iphonesimulator/GutenbergDemo.app/assets - - uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1 + - uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 if: always() with: name: ios-screen-recordings path: packages/react-native-editor/ios-screen-recordings - - uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1 + - uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 if: always() with: name: appium-logs diff --git a/.github/workflows/stale-issue-gardening.yml b/.github/workflows/stale-issue-gardening.yml index bcf72182262ba1..c73fe7a19b24b3 100644 --- a/.github/workflows/stale-issue-gardening.yml +++ b/.github/workflows/stale-issue-gardening.yml @@ -27,22 +27,16 @@ jobs: remove-stale-when-updated: true stale-issue-label: '[Status] Stale' - name: 'Flaky test issues without activity' - message: 'This issue has gone 30 days without any activity.' - days-before-stale: 30 + message: 'This issue has gone 15 days without any activity.' + days-before-stale: 15 days-before-close: 1 only-labels: '[Type] Flaky Test' remove-stale-when-updated: true stale-issue-label: '[Status] Stale' - - name: 'Issues without recent updates that need confirmation' - message: "Hi,\nThis issue has gone 180 days without any activity. This means it is time for a check-in to make sure it is still relevant. If you are still experiencing this issue with the latest versions, you can help the project by responding to confirm the problem and by providing any updated reproduction steps.\nThanks for helping out." - days-before-stale: 180 - days-before-close: -1 - remove-stale-when-updated: false - stale-issue-label: 'Needs Testing' steps: - name: Update issues - uses: actions/stale@5ebf00ea0e4c1561e9b43a292ed34424fb1d4578 # v6.0.1 + uses: actions/stale@28ca1036281a5e5922ead5184a1bbf96e5fc984e # v9.0.0 with: repo-token: ${{ secrets.GITHUB_TOKEN }} stale-issue-message: ${{ matrix.message }} diff --git a/.github/workflows/static-checks.yml b/.github/workflows/static-checks.yml index 4abc1f1a354d8e..baf97e8d390e91 100644 --- a/.github/workflows/static-checks.yml +++ b/.github/workflows/static-checks.yml @@ -22,12 +22,15 @@ jobs: if: ${{ github.repository == 'WordPress/gutenberg' || github.event_name == 'pull_request' }} steps: - - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 + - name: Use desired version of Node.js + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version-file: '.nvmrc' + check-latest: true cache: npm - name: Npm install diff --git a/.github/workflows/storybook-pages.yml b/.github/workflows/storybook-pages.yml index e0ce7283b28bad..4af4934cf0325b 100644 --- a/.github/workflows/storybook-pages.yml +++ b/.github/workflows/storybook-pages.yml @@ -12,24 +12,19 @@ jobs: steps: - name: Checkout - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: ref: trunk + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 - with: - node-version-file: '.nvmrc' - cache: npm - - - name: Install Dependencies - run: npm ci + - name: Setup Node.js and install dependencies + uses: ./.github/setup-node - name: Build Storybook run: npm run storybook:build - name: Deploy - uses: peaceiris/actions-gh-pages@de7ea6f8efb354206b205ef54722213d99067935 # v3.9.0 + uses: peaceiris/actions-gh-pages@4f9cc6602d3f66b9c108549d475ec49e8ef4d45e # v4.0.0 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./storybook/build diff --git a/.github/workflows/sync-backport-changelog.yml b/.github/workflows/sync-backport-changelog.yml new file mode 100644 index 00000000000000..e530ca667de3d7 --- /dev/null +++ b/.github/workflows/sync-backport-changelog.yml @@ -0,0 +1,91 @@ +name: Sync Core Backport Issue + +on: + push: + branches: + - trunk + issues: + types: [labeled] + +jobs: + sync-backport-changelog: + name: Sync Core Backport Issue + runs-on: ubuntu-latest + if: > + github.event_name == 'push' || + ( + github.event_name == 'issues' && + github.event.action == 'labeled' && + github.event.label.name == '🤖 Sync Backport Changelog' + ) + steps: + - name: Checkout + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + fetch-depth: 2 # Fetch the last two commits to compare changes + - name: Check for changes in backport-changelog + if: github.event_name == 'push' + run: | + if git diff --quiet HEAD^ HEAD -- backport-changelog; then + echo "skip_sync=true" >> "$GITHUB_ENV" + fi + - name: Sync Issue + if: ${{ ! env.skip_sync }} + uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 + with: + script: | + const labelName = '🤖 Sync Backport Changelog'; + const issues = await github.paginate(github.rest.issues.listForRepo, { + owner: context.repo.owner, + repo: context.repo.repo, + labels: [labelName], + state: 'open', + per_page: 1, + }); + + if (issues.length === 0) { + console.log(`No issues found with the "${labelName}" label.`); + return; + } + + const [latestIssue] = issues; + const versionMatch = latestIssue.title.match(/(\d+\.\d+)/); + if (!versionMatch) { + console.log('Could not find a version number in the latest issue title.'); + return; + } + + const version = versionMatch[1]; + console.log(`Latest version: ${version}`); + + const { execSync } = require('child_process'); + const processedChangelog = execSync(`awk '/./ {print ($0 ~ /^[-*]/ ? " " : "- ") $0}' backport-changelog/${version}/*.md`).toString().trim(); + + const startDelimiter = ''; + const endDelimiter = ''; + const autoGeneratedContent = `${startDelimiter}\n${processedChangelog}\n${endDelimiter}`; + + const existingBody = latestIssue.body ?? ''; + + let newBody; + + const regex = new RegExp(`${startDelimiter}[\\s\\S]*${endDelimiter}`); + if (regex.test(existingBody)) { + // If delimiters exist, replace the content between them + newBody = existingBody.replace(regex, autoGeneratedContent); + } else { + // If delimiters don't exist, append the new content at the end + newBody = `${existingBody}\n\n${autoGeneratedContent}`; + } + + if (newBody.trim() !== existingBody.trim()) { + await github.rest.issues.update({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: latestIssue.number, + body: newBody + }); + console.log('Issue description updated successfully.'); + } else { + console.log('Issue description is already up to date.'); + } diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index c1fd9850191da7..46aa109c23e658 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -9,6 +9,8 @@ on: - trunk - 'release/**' - 'wp/**' + # Allow manually triggering the workflow. + workflow_dispatch: # Cancels all previous workflow runs for pull requests that have not completed. concurrency: @@ -19,71 +21,325 @@ concurrency: jobs: unit-js: - name: JavaScript + name: JavaScript (Node.js ${{ matrix.node }}) ${{ matrix.shard }} runs-on: ubuntu-latest if: ${{ github.repository == 'WordPress/gutenberg' || github.event_name == 'pull_request' }} + strategy: + fail-fast: false + matrix: + node: ['20', '22'] + shard: ['1/4', '2/4', '3/4', '4/4'] + + steps: + - name: Checkout repository + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} + + - name: Setup Node.js and install dependencies + uses: ./.github/setup-node + with: + node-version: ${{ matrix.node }} + + - name: Determine the number of CPU cores + uses: SimenB/github-actions-cpu-cores@97ba232459a8e02ff6121db9362b09661c875ab8 # v2.0.0 + id: cpu-cores + - name: Run build scripts + # It's not necessary to run the full build, since Jest can interpret + # source files with `babel-jest`. Some packages have their own custom + # build tasks, however. These must be run. + run: npx lerna run build + + - name: Running the tests + run: | + npm run test:unit -- \ + --ci \ + --maxWorkers="${{ steps.cpu-cores.outputs.count }}" \ + --shard="${{ matrix.shard }}" \ + --cacheDirectory="$HOME/.jest-cache" + + unit-js-date: + name: JavaScript Date Tests (Node.js ${{ matrix.node }}) + runs-on: ubuntu-latest + if: ${{ github.repository == 'WordPress/gutenberg' || github.event_name == 'pull_request' }} strategy: fail-fast: false matrix: - node: ['14'] + node: ['20', '22'] steps: - - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + - name: Checkout repository + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 + - name: Setup Node.js and install dependencies + uses: ./.github/setup-node with: node-version: ${{ matrix.node }} - cache: npm - - name: Npm install and build + - name: Determine the number of CPU cores + uses: SimenB/github-actions-cpu-cores@97ba232459a8e02ff6121db9362b09661c875ab8 # v2.0.0 + id: cpu-cores + + - name: Run build scripts # It's not necessary to run the full build, since Jest can interpret # source files with `babel-jest`. Some packages have their own custom # build tasks, however. These must be run. + run: npx lerna run build + + - name: Run the date tests + run: npm run test:unit:date -- --ci --maxWorkers=${{ steps.cpu-cores.outputs.count }} --cacheDirectory="$HOME/.jest-cache" + + compute-previous-wordpress-version: + name: Compute previous WordPress version + runs-on: ubuntu-latest + outputs: + previous-wordpress-version: ${{ steps.get-previous-wordpress-version.outputs.previous-wordpress-version }} + + steps: + - name: Get previous WordPress version + id: get-previous-wordpress-version run: | - npm ci - npx lerna run build + curl \ + -H "Accept: application/json" \ + -o versions.json \ + "http://api.wordpress.org/core/stable-check/1.0/" + LATEST_WP_VERSION=$(jq --raw-output 'with_entries(select(.value=="latest"))|keys[]' versions.json) + IFS='.' read LATEST_WP_MAJOR LATEST_WP_MINOR LATEST_WP_PATCH <<< "${LATEST_WP_VERSION}" + if [[ ${LATEST_WP_MINOR} == "0" ]]; then + PREVIOUS_WP_SERIES="$((LATEST_WP_MAJOR - 1)).9" + else + PREVIOUS_WP_SERIES="${LATEST_WP_MAJOR}.$((LATEST_WP_MINOR - 1))" + fi + PREVIOUS_WP_VERSION=$(jq --raw-output --arg series "${PREVIOUS_WP_SERIES}" 'with_entries(select(.key|startswith($series)))|keys[-1]' versions.json) + echo "previous-wordpress-version=${PREVIOUS_WP_VERSION}" >> $GITHUB_OUTPUT + rm versions.json - - name: Running the tests - run: npm run test:unit -- --ci --maxWorkers=2 --cacheDirectory="$HOME/.jest-cache" + build-assets: + name: Build JavaScript assets for PHP unit tests + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - - name: Running the date tests - run: npm run test:unit:date -- --ci --maxWorkers=2 --cacheDirectory="$HOME/.jest-cache" + - name: Setup Node.js and install dependencies + uses: ./.github/setup-node - unit-php: - name: PHP + - name: Run build scripts + run: npm run build + + - name: Upload built JavaScript assets + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 + with: + name: build-assets + path: | + ./build/ + ./build-module/ + + test-php: + name: PHP ${{ matrix.php }}${{ matrix.multisite && ' multisite' || '' }}${{ matrix.wordpress != '' && format( ' (WP {0}) ', matrix.wordpress ) || '' }} on ubuntu-latest + needs: [compute-previous-wordpress-version, build-assets] runs-on: ubuntu-latest + timeout-minutes: 20 if: ${{ github.repository == 'WordPress/gutenberg' || github.event_name == 'pull_request' }} + strategy: + fail-fast: true + matrix: + php: + - '7.2' + - '7.3' + - '7.4' + - '8.0' + - '8.1' + - '8.2' + - '8.3' + multisite: [false, true] + wordpress: [''] # Latest WordPress version. + include: + # Test with the previous WP version. + - php: '7.2' + wordpress: 'previous major version' + - php: '7.4' + wordpress: 'previous major version' + - php: '8.3' + wordpress: 'previous major version' + + env: + WP_ENV_PHP_VERSION: ${{ matrix.php }} + WP_ENV_CORE: ${{ matrix.wordpress == '' && 'WordPress/WordPress' || format( 'https://wordpress.org/wordpress-{0}.zip', needs.compute-previous-wordpress-version.outputs.previous-wordpress-version ) }} steps: - - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + - name: Checkout repository + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} + + - name: Setup Node.js and install dependencies + uses: ./.github/setup-node - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 + ## + # This allows Composer dependencies to be installed using a single step. + # + # Since the tests are currently run within the Docker containers where the PHP version varies, + # the same PHP version needs to be configured for the action runner machine so that the correct + # dependency versions are installed and cached. + ## + - name: Set up PHP + uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2.31.1 with: - node-version-file: '.nvmrc' - cache: npm + php-version: '${{ matrix.php }}' + ini-file: development + coverage: none - - name: Npm install and build + # Ensure that Composer installs the correct versions of packages. + - name: Override PHP version in composer.json + run: composer config platform.php ${{ matrix.php }} + + # Since Composer dependencies are installed using `composer update` and no lock file is in version control, + # passing a custom cache suffix ensures that the cache is flushed at least once per week. + - name: Install Composer dependencies + uses: ramsey/composer-install@57532f8be5bda426838819c5ee9afb8af389d51a # v3.0.0 + with: + custom-cache-suffix: $(/bin/date -u --date='last Mon' "+%F") + + - name: Download built JavaScript assets + uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 + with: + name: build-assets + + - name: Docker debug information run: | - npm ci - npm run build + docker -v - - name: Install WordPress + - name: General debug information run: | - npm run wp-env start + npm --version + node --version + curl --version + git --version + locale -a - - name: Running lint check - run: npm run lint:php + - name: Start Docker environment + run: npm run wp-env start + + - name: Log running Docker containers + run: docker ps -a + + - name: Docker container debug information + run: | + npm run wp-env run tests-mysql mysql -- --version + npm run wp-env run tests-wordpress php -- --version + npm run wp-env run tests-wordpress php -m + npm run wp-env run tests-wordpress php -i + npm run wp-env run tests-wordpress /var/www/html/wp-content/plugins/gutenberg/vendor/bin/phpunit -- --version + npm run wp-env run tests-wordpress locale -a + npm run wp-env run tests-cli wp core version - name: Running single site unit tests - run: npm run test:unit:php - if: ${{ success() || failure() }} + if: ${{ ! matrix.multisite }} + run: | + set -o pipefail + npm run test:unit:php | tee phpunit.log - name: Running multisite unit tests - run: npm run test:unit:php:multisite - if: ${{ success() || failure() }} + if: ${{ matrix.multisite }} + run: | + set -o pipefail + npm run test:unit:php:multisite | tee phpunit.log + + # Verifies that PHPUnit actually runs in the first place. We want visibility + # into issues which can cause it to fail silently, so we check the output + # to verify that at least 500 tests have passed. This is an arbitrary + # number, but makes sure a drastic change doesn't happen without us noticing. + - name: Check number of passed tests + run: | + # Note: relies on PHPUnit execution to fail on test failure. + # Extract the number of executed tests from the log file. + if ! num_tests=$(grep -Eo 'OK \([0-9]+ tests' phpunit.log) ; then + if ! num_tests=$(grep -Eo 'Tests: [0-9]+, Assertions:' phpunit.log) ; then + echo "PHPUnit failed or did not run. Check the PHPUnit output in the previous step to debug." && exit 1 + fi + fi + # Extract just the number of tests from the string. + num_tests=$(echo "$num_tests" | grep -Eo '[0-9]+') + if [ $num_tests -lt 500 ] ; then + echo "Only $num_tests tests passed, which is much fewer than expected." && exit 1 + fi + echo "$num_tests tests passed." + + phpcs: + name: PHP coding standards + runs-on: ubuntu-latest + timeout-minutes: 20 + if: ${{ github.repository == 'WordPress/gutenberg' || github.event_name == 'pull_request' }} + + steps: + - name: Checkout repository + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} + + - name: Set up PHP + uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2.31.1 + with: + php-version: '7.4' + coverage: none + tools: cs2pr + + # This date is used to ensure that the PHPCS cache is cleared at least once every week. + # http://man7.org/linux/man-pages/man1/date.1.html + - name: "Get last Monday's date" + id: get-date + run: echo "date=$(/bin/date -u --date='last Mon' "+%F")" >> $GITHUB_OUTPUT + + - name: Cache PHPCS scan cache + uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.1.2 + with: + path: .cache/phpcs.json + key: ${{ runner.os }}-date-${{ steps.get-date.outputs.date }}-phpcs-cache-${{ hashFiles('**/composer.json', 'phpcs.xml.dist') }} + + # Since Composer dependencies are installed using `composer update` and no lock file is in version control, + # passing a custom cache suffix ensures that the cache is flushed at least once per week. + - name: Install Composer dependencies + uses: ramsey/composer-install@57532f8be5bda426838819c5ee9afb8af389d51a # v3.0.0 + with: + custom-cache-suffix: ${{ steps.get-date.outputs.date }} + + - name: Make Composer packages available globally + run: echo "${PWD}/vendor/bin" >> $GITHUB_PATH + + - name: Run PHPCS on all Gutenberg files + id: phpcs-gutenberg + run: phpcs --report-full --report-checkstyle=./.cache/phpcs-report.xml + + - name: Show PHPCS results in PR + if: ${{ always() && steps.phpcs-gutenberg.outcome == 'failure' }} + run: cs2pr ./.cache/phpcs-report.xml + + - name: Ensure version-controlled files are not modified during the tests + run: git diff --exit-code + + # This job is deprecated but be present for compatibility reasons. + unit-php: + name: PHP + runs-on: ubuntu-latest + needs: [test-php, phpcs] + if: ${{ always() }} + steps: + - name: Fail the job if the PHPUnit tests fail + if: ${{ needs.test-php.result != 'success' }} + run: exit 1 + + - name: "Fail the job if the code doesn't conform to the coding standards" + if: ${{ needs.phpcs.result != 'success' }} + run: exit 1 + + - name: Mark the job as passed if all the checks pass + if: ${{ needs.test-php.result == 'success' && needs.phpcs.result == 'success' }} + run: exit 0 mobile-unit-js: name: Mobile @@ -91,21 +347,23 @@ jobs: if: ${{ github.repository == 'WordPress/gutenberg' || github.event_name == 'pull_request' }} steps: - - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 - - - name: Use desired version of NodeJS - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # v3.5.1 + - name: Checkout repository + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: - node-version-file: '.nvmrc' - cache: npm + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} + + - name: Determine the number of CPU cores + uses: SimenB/github-actions-cpu-cores@97ba232459a8e02ff6121db9362b09661c875ab8 # v2.0.0 + id: cpu-cores - - name: Npm install and build + - name: Setup Node.js and install dependencies + uses: ./.github/setup-node + + - name: Run build scripts # It's not necessary to run the full build, since Jest can interpret # source files with `babel-jest`. Some packages have their own custom # build tasks, however. These must be run. - run: | - npm ci - npx lerna run build + run: npx lerna run build - name: Running the tests - run: npm run native test -- --ci --maxWorkers=2 --cacheDirectory="$HOME/.jest-cache" + run: npm run test:native -- --ci --maxWorkers=${{ steps.cpu-cores.outputs.count }} --cacheDirectory="$HOME/.jest-cache" diff --git a/.github/workflows/upload-release-to-plugin-repo.yml b/.github/workflows/upload-release-to-plugin-repo.yml index a09a27be328cc3..e866964e69b2d1 100644 --- a/.github/workflows/upload-release-to-plugin-repo.yml +++ b/.github/workflows/upload-release-to-plugin-repo.yml @@ -5,10 +5,66 @@ on: types: [published] jobs: + compute-should-update-trunk: + name: Decide if trunk or tag + runs-on: ubuntu-latest + # Skip this job if the release is a release candidate. This will in turn skip + # the upload jobs, which are only relevant for non-RC releases. + # We first check if the release is a prerelease, and then if the ref contains + # the string "rc". The latter is fallback in case the deployer accidentally + # unchecks the "This is a pre-release" checkbox in the release UI. + if: | + !github.event.release.prerelease && !contains(github.ref, 'rc') + + outputs: + should_update_trunk: ${{ steps.compute_should_update_trunk.outputs.should_update_trunk }} + + steps: + - name: Fetch latest version in the WP core repo + id: compute_latest_version_in_core_repo + run: | + latest_version_in_core_repo=$(curl -s 'https://api.wordpress.org/plugins/info/1.2/?action=plugin_information&request\[slug\]=gutenberg' | jq -r '.version') + echo "Latest Core Repo version: $latest_version_in_core_repo" + echo "version=$latest_version_in_core_repo" >> $GITHUB_OUTPUT + + - name: Decide if it is a trunk or tag update + id: compute_should_update_trunk + env: + GITHUB_REF: ${{ github.ref }} + run: | + latestPublishedVersion=$(echo "$GITHUB_REF" | sed -E 's/refs\/tags\/(v?)([0-9.]+)/\2/') + latestVersionInCoreRepo="${{ steps.compute_latest_version_in_core_repo.outputs.version }}" + + # Determines if the first version string is greater than the second version string. + # + # Params: + # $1 - The first version string to compare, which may have an optional leading "v". + # $2 - The second version string to compare, which may have an optional leading "v". + # + # Return values: + # 0 - The first version string is greater than the second version string. + # 1 - The first version string is less than or equal to the second version string. + is_first_version_greater_than_second() { + v1=${1#v} + v2=${2#v} + dpkg --compare-versions "$v1" gt "$v2" + return $? + } + + # Only update trunk *if* the published release's version in GitHub is GREATER + # than the version currently published in the WP plugins repo. If not, then it + # will upload it as a new tag. + shouldUpdateTrunk=false + if is_first_version_greater_than_second "$latestPublishedVersion" "$latestVersionInCoreRepo"; then + shouldUpdateTrunk=true + fi + + echo "Should update trunk: $shouldUpdateTrunk" + echo "should_update_trunk=$shouldUpdateTrunk" >> $GITHUB_OUTPUT + get-release-branch: name: Get release branch name runs-on: ubuntu-latest - if: github.event.release.assets[0] outputs: release_branch: ${{ steps.get_release_branch.outputs.release_branch }} @@ -25,7 +81,8 @@ jobs: update-changelog: name: Update Changelog on ${{ matrix.branch }} branch runs-on: ubuntu-latest - if: github.event.release.assets[0] + if: | + github.event.release.assets[0] needs: get-release-branch env: TAG: ${{ github.event.release.tag_name }} @@ -39,10 +96,11 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: ref: ${{ matrix.branch }} token: ${{ secrets.GUTENBERG_TOKEN }} + show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} - name: Update the Changelog to include the release notes run: | @@ -89,17 +147,18 @@ jobs: fi - name: Upload Changelog artifact - uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1 + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 with: name: changelog ${{ matrix.label }} path: ./changelog.txt upload: - name: Upload Gutenberg Plugin + name: Publish as trunk (and tag) runs-on: ubuntu-latest environment: wp.org plugin - needs: update-changelog - if: ${{ !github.event.release.prerelease && github.event.release.assets[0] }} + needs: [compute-should-update-trunk, update-changelog] + if: | + needs.compute-should-update-trunk.outputs.should_update_trunk == 'true' && github.event.release.assets[0] env: PLUGIN_REPO_URL: 'https://plugins.svn.wordpress.org/gutenberg' STABLE_VERSION_REGEX: '[0-9]\+\.[0-9]\+\.[0-9]\+\s*' @@ -109,11 +168,7 @@ jobs: steps: - name: Check out Gutenberg trunk from WP.org plugin repo - run: svn checkout "$PLUGIN_REPO_URL/trunk" - - - name: Get previous stable version - id: get_previous_stable_version - run: echo "stable_version=$(awk -F ':\ ' '$1 == "Stable tag" {print $2}' ./trunk/readme.txt)" >> $GITHUB_OUTPUT + run: svn checkout "$PLUGIN_REPO_URL/trunk" --username "$SVN_USERNAME" --password "$SVN_PASSWORD" - name: Delete everything working-directory: ./trunk @@ -130,11 +185,11 @@ jobs: - name: Replace the stable tag placeholder with the existing stable tag on the SVN repository env: STABLE_TAG_PLACEHOLDER: 'Stable tag: V\.V\.V' - STABLE_TAG: 'Stable tag: ${{ steps.get_previous_stable_version.outputs.stable_version }}' - run: sed -i "s/${STABLE_TAG_PLACEHOLDER}/${STABLE_TAG}/g" ./trunk/readme.txt + run: | + sed -i "s/$STABLE_TAG_PLACEHOLDER/Stable tag: $VERSION/g" ./trunk/readme.txt - name: Download Changelog Artifact - uses: actions/download-artifact@9782bd6a9848b53b110e712e20e42d89988822b7 # v3.0.1 + uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 with: name: changelog trunk path: trunk @@ -145,7 +200,8 @@ jobs: svn st | grep '^?' | awk '{print $2}' | xargs -r svn add svn st | grep '^!' | awk '{print $2}' | xargs -r svn rm svn commit -m "Committing version $VERSION" \ - --no-auth-cache --non-interactive --username "$SVN_USERNAME" --password "$SVN_PASSWORD" + --no-auth-cache --non-interactive --username "$SVN_USERNAME" --password "$SVN_PASSWORD" \ + --config-option=servers:global:http-timeout=300 - name: Create the SVN tag working-directory: ./trunk @@ -159,3 +215,45 @@ jobs: sed -i "s/Stable tag: ${STABLE_VERSION_REGEX}/Stable tag: ${VERSION}/g" ./readme.txt svn commit -m "Releasing version $VERSION" \ --no-auth-cache --non-interactive --username "$SVN_USERNAME" --password "$SVN_PASSWORD" + + upload-tag: + name: Publish as tag + runs-on: ubuntu-latest + environment: wp.org plugin + needs: [compute-should-update-trunk, update-changelog] + if: | + needs.compute-should-update-trunk.outputs.should_update_trunk == 'false' && github.event.release.assets[0] + env: + PLUGIN_REPO_URL: 'https://plugins.svn.wordpress.org/gutenberg' + STABLE_VERSION_REGEX: '[0-9]\+\.[0-9]\+\.[0-9]\+\s*' + SVN_USERNAME: ${{ secrets.svn_username }} + SVN_PASSWORD: ${{ secrets.svn_password }} + VERSION: ${{ github.event.release.name }} + + steps: + - name: Download and unzip Gutenberg plugin asset into tags folder + env: + PLUGIN_URL: ${{ github.event.release.assets[0].browser_download_url }} + run: | + # do the magic here + curl -L -o gutenberg.zip $PLUGIN_URL + unzip gutenberg.zip -d "$VERSION" + rm gutenberg.zip + + - name: Replace the stable tag placeholder with the existing stable tag on the SVN repository + env: + STABLE_TAG_PLACEHOLDER: 'Stable tag: V\.V\.V' + run: | + sed -i "s/$STABLE_TAG_PLACEHOLDER/Stable tag: $VERSION/g" "$VERSION/readme.txt" + + - name: Download Changelog Artifact + uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 + with: + name: changelog trunk + path: ${{ github.event.release.name }} + + - name: Add the new version directory and commit changes to the SVN repository + run: | + svn import "$VERSION" "$PLUGIN_REPO_URL/tags/$VERSION" -m "Committing version $VERSION" \ + --no-auth-cache --non-interactive --username "$SVN_USERNAME" --password "$SVN_PASSWORD" \ + --config-option=servers:global:http-timeout=300 diff --git a/.gitignore b/.gitignore index aebfcd623ad2f0..1d75f9f429d869 100644 --- a/.gitignore +++ b/.gitignore @@ -3,20 +3,31 @@ build build-module build-style build-types +build-wp node_modules gutenberg.zip coverage -*-performance-results.json .phpunit.result.cache +.reassure + # Directories/files that may appear in your environment *.log yarn.lock +results /artifacts +/test/e2e/artifacts /perf-envs /composer.lock +# The /.cache folder is needed for phpcs to cache results between runs, while other .cache folders must be ignored +# It is not possible to re-include a file if a parent directory of that file is excluded +# So, both /.cache and /.cache./.gitkeep must be re-included .cache +!/.cache/ +/.cache/** +!/.cache/.gitkeep + .eslintcache *.tsbuildinfo @@ -25,13 +36,19 @@ yarn.lock Thumbs.db # Report generated from jest-junit -test/native/junit.xml +junit.xml # Local overrides .wp-env.override.json +playwright.config.override.ts phpcs.xml phpunit.xml phpunit-watcher.yml .tool-versions test/storybook-playwright/test-results test/storybook-playwright/specs/__snapshots__ +test/storybook-playwright/specs/*-snapshots/** +test/gutenberg-test-themes/twentytwentyone +test/gutenberg-test-themes/twentytwentythree +test/gutenberg-test-themes/twentytwentyfour +packages/react-native-editor/src/setup-local.js diff --git a/.npmpackagejsonlintrc.json b/.npmpackagejsonlintrc.json index 5c240bf5c3bf40..43c2e4552edbc8 100644 --- a/.npmpackagejsonlintrc.json +++ b/.npmpackagejsonlintrc.json @@ -29,6 +29,14 @@ "require-repository-directory": "off", "prefer-no-devDependencies": "off" } + }, + { + "patterns": [ "./platform-docs/package.json" ], + "rules": { + "require-publishConfig": "off", + "require-repository-directory": "off", + "prefer-no-devDependencies": "off" + } } ] } diff --git a/.npmrc b/.npmrc index aafab1669bf724..84662ee5b78b78 100644 --- a/.npmrc +++ b/.npmrc @@ -1,2 +1,5 @@ save-exact = true engine-strict = true +legacy-peer-deps = true +prefer-dedupe = true +lockfile-version = 3 diff --git a/.nvmrc b/.nvmrc index 8351c19397f4fc..209e3ef4b6247c 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -14 +20 diff --git a/.prettierignore b/.prettierignore index 0b73d70681dbb0..d50079e4ef71ef 100644 --- a/.prettierignore +++ b/.prettierignore @@ -3,7 +3,7 @@ build build-module build-types packages/block-serialization-spec-parser/parser.js -packages/e2e-tests/plugins +packages/edit-site/lib packages/react-native-editor/bundle packages/url/src/test/fixtures vendor diff --git a/.prettierrc.js b/.prettierrc.js index 51b8aeb41505a6..0a95f2da679606 100644 --- a/.prettierrc.js +++ b/.prettierrc.js @@ -1,3 +1,11 @@ // Import the default config file and expose it in the project root. // Useful for editor integrations. -module.exports = require( '@wordpress/prettier-config' ); +module.exports = { + ...require( '@wordpress/prettier-config' ), + overrides: [ + { + files: [ 'changelog.txt' ], + options: { parser: 'markdown' }, + }, + ], +}; diff --git a/.stylelintrc.json b/.stylelintrc.json index c7a2d1db18a460..557376e02c4062 100644 --- a/.stylelintrc.json +++ b/.stylelintrc.json @@ -1,18 +1,40 @@ { - "extends": "@wordpress/stylelint-config/scss", + "extends": "@wordpress/stylelint-config/scss-stylistic", "rules": { "at-rule-empty-line-before": null, "at-rule-no-unknown": null, "comment-empty-line-before": null, + "declaration-property-value-allowed-list": [ + { + "flex-direction": "/^(?!(row|column)-reverse).*$/" + }, + { + "message": "Avoid the flex-direction reverse values. For accessibility reasons, visual, reading, and DOM order must match. Only use the reverse values when they do not affect reading order, meaning, and interaction." + } + ], + "declaration-property-value-disallowed-list": [ + { + "/.*/": [ "/--wp-components-color-/" ] + }, + { + "message": "--wp-components-color-* variables are not ready to be used outside of the components package." + } + ], "font-weight-notation": null, - "max-line-length": null, + "@stylistic/max-line-length": null, "no-descending-specificity": null, + "property-disallowed-list": [ + [ "order" ], + { + "message": "Avoid the order property. For accessibility reasons, visual, reading, and DOM order must match. Only use the order property when it does not affect reading order, meaning, and interaction." + } + ], "rule-empty-line-before": null, "selector-class-pattern": null, "value-keyword-case": null, "scss/operator-no-unspaced": null, "scss/selector-no-redundant-nesting-selector": null, - "scss/at-import-partial-extension": null, + "scss/load-partial-extension": null, "scss/no-global-function-names": null, "scss/comment-no-empty": null, "scss/at-extend-no-missing-placeholder": null, @@ -21,5 +43,6 @@ "scss/at-else-empty-line-before": null, "scss/at-if-closing-brace-space-after": null, "no-invalid-position-at-import-rule": null - } + }, + "reportDescriptionlessDisables": true } diff --git a/.wp-env.json b/.wp-env.json index aa8dfaf3c0c4ab..05ea05b2809f9c 100644 --- a/.wp-env.json +++ b/.wp-env.json @@ -1,4 +1,5 @@ { + "$schema": "./schemas/json/wp-env.json", "core": "WordPress/WordPress", "plugins": [ "." ], "themes": [ "./test/emptytheme" ], @@ -8,7 +9,10 @@ "wp-content/plugins/gutenberg": ".", "wp-content/mu-plugins": "./packages/e2e-tests/mu-plugins", "wp-content/plugins/gutenberg-test-plugins": "./packages/e2e-tests/plugins", - "wp-content/themes/gutenberg-test-themes": "./test/gutenberg-test-themes" + "wp-content/themes/gutenberg-test-themes": "./test/gutenberg-test-themes", + "wp-content/themes/gutenberg-test-themes/twentytwentyone": "https://downloads.wordpress.org/theme/twentytwentyone.2.1.zip", + "wp-content/themes/gutenberg-test-themes/twentytwentythree": "https://downloads.wordpress.org/theme/twentytwentythree.1.3.zip", + "wp-content/themes/gutenberg-test-themes/twentytwentyfour": "https://downloads.wordpress.org/theme/twentytwentyfour.1.0.zip" } } } diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md deleted file mode 100644 index f9afa872a60842..00000000000000 --- a/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,11 +0,0 @@ -This project comes under the WordPress [Etiquette](https://wordpress.org/about/etiquette/): - -In the WordPress open source project, we realize that our biggest asset is the community that we foster. The project, as a whole, follows these basic philosophical principles from The Cathedral and The Bazaar. - -- Contributions to the WordPress open source project are for the benefit of the WordPress community as a whole, not specific businesses or individuals. All actions taken as a contributor should be made with the best interests of the community in mind. -- Participation in the WordPress open source project is open to all who wish to join, regardless of ability, skill, financial status, or any other criteria. -- The WordPress open source project is a volunteer-run community. Even in cases where contributors are sponsored by companies, that time is donated for the benefit of the entire open source community. -- Any member of the community can donate their time and contribute to the project in any form including design, code, documentation, community building, etc. For more information, go to make.wordpress.org. -- The WordPress open source community cares about diversity. We strive to maintain a welcoming environment where everyone can feel included, by keeping communication free of discrimination, incitement to violence, promotion of hate, and unwelcoming behavior. - -The team involved will block any user who causes any breach in this. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index cd137ea37201c9..8eb4b77dbfcca9 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -16,7 +16,7 @@ To learn all about contributing to the Gutenberg project, see the [Contributor G ## Guidelines -- As with all WordPress projects, we want to ensure a welcoming environment for everyone. With that in mind, all contributors are expected to follow our [Code of Conduct](/CODE_OF_CONDUCT.md). +- As with all WordPress projects, we want to ensure a welcoming environment for everyone. With that in mind, all contributors are expected to follow our [Code of Conduct](https://make.wordpress.org/handbook/community-code-of-conduct/). - Contributors should review the [overall process and best practices for pull requests](https://github.com/WordPress/gutenberg/blob/trunk/docs/contributors/repository-management.md#pull-requests), adhering to WordPress' [JavaScript coding standards](https://developer.wordpress.org/coding-standards/wordpress-coding-standards/javascript/) and [accessibility coding standards](https://developer.wordpress.org/coding-standards/wordpress-coding-standards/accessibility/). diff --git a/LICENSE.md b/LICENSE.md index 89ae0ff923d468..983294723c4806 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -1,6 +1,6 @@ ## Gutenberg - Copyright 2016-2022 by the contributors + Copyright 2016-2024 by the contributors **License for Contributions (on and after April 15, 2021)** diff --git a/README.md b/README.md index 126368cb207745..87db481b5b6b4f 100644 --- a/README.md +++ b/README.md @@ -7,19 +7,21 @@ [![React Native E2E Tests (iOS)]()](https://github.com/WordPress/gutenberg/actions?query=workflow%3A%22React+Native+E2E+Tests+%28iOS%29%22+branch%3Atrunk) [![React Native E2E Tests (Android)]()](https://github.com/WordPress/gutenberg/actions?query=workflow%3A%22React+Native+E2E+Tests+%28Android%29%22+branch%3Atrunk) +Storybook Badge + [![lerna](https://img.shields.io/badge/maintained%20with-lerna-cc00ff.svg)](https://lerna.js.org) ![Screenshot of the Gutenberg Editor, editing a post in WordPress](https://user-images.githubusercontent.com/1204802/100067796-fc3e8700-2e36-11eb-993b-6b80b4310b87.png) Welcome to the development hub for the WordPress Gutenberg project! -"Gutenberg" is a codename for a whole new paradigm in WordPress site building and publishing, that aims to revolutionize the entire publishing experience as much as Gutenberg did the printed word. Right now, the project is in the second phase of a four-phase process that will touch every piece of WordPress -- Editing, **Customization** (which includes Full Site Editing, Block Patterns, Block Directory and Block based themes), Collaboration, and Multilingual -- and is focused on a new editing experience, the block editor. +"Gutenberg" is a codename for a whole new paradigm in WordPress site building and publishing, that aims to revolutionize the entire publishing experience as much as Gutenberg did the printed word. Right now, the project is in the second phase of a four-phase process that will touch every piece of WordPress -- Editing, Customization, **Collaboration** (which includes [Real-time collaboration](https://make.wordpress.org/core/2023/07/03/real-time-collaboration/), [Asynchronous collaboration](https://make.wordpress.org/core/2023/07/04/workflows/), [Publishing flows](https://make.wordpress.org/core/2023/07/04/workflows/), [Post revisions interface](https://make.wordpress.org/core/2023/07/05/revisions/), [Admin design](https://make.wordpress.org/core/2023/07/12/admin-design/), [Library](https://make.wordpress.org/core/2023/07/10/block-library/)), and Multilingual -- and is focused on a new editing experience, the block editor. The block editor introduces a modular approach to pages and posts: each piece of content in the editor, from a paragraph to an image gallery to a headline, is its own block. And just like physical blocks, WordPress blocks can be added, arranged, and rearranged, allowing WordPress users to create media-rich pages in a visually intuitive way -- and without work-arounds like shortcodes or custom HTML. -The block editor first became available in December 2018, and we're still hard at work refining the experience, creating more and better blocks, and laying the groundwork for the next three phases of work. The Gutenberg plugin gives you the latest version of the block editor so you can join us in testing bleeding-edge features, start playing with blocks, and maybe get inspired to build your own. +The block editor first became available in December 2018, and we're still hard at work refining the experience, creating more and better blocks, and laying the groundwork for the next three phases of work. The Gutenberg plugin gives you the latest version of the block editor, so you can join us in testing bleeding-edge features, start playing with blocks, and maybe get inspired to build your own. -Check out the [Ways to keep up with Gutenberg & Full Site Editing (FSE)](https://make.wordpress.org/core/2020/05/20/ways-to-keep-up-with-full-site-editing-fse/) +Check out the [Keeping up with Gutenberg Index](https://make.wordpress.org/core/handbook/references/keeping-up-with-gutenberg-index/) ## Getting Started @@ -29,34 +31,32 @@ Get hands on: check out the [block editor live demo](https://wordpress.org/guten - **Download:** To use the latest release of the Gutenberg plugin on your WordPress site: install from the plugins page in wp-admin, or [download from the WordPress.org plugins repository](https://wordpress.org/plugins/gutenberg/). -- **User Documentation:** See the [WordPress Editor documentation](https://wordpress.org/support/article/wordpress-editor/) for detailed docs on using the editor as an author creating posts and pages. +- **User Documentation:** See the [WordPress Editor documentation](https://wordpress.org/documentation/article/wordpress-block-editor/) for detailed docs on using the editor as an author creating posts and pages. -- **User Support:** If you have run into an issue, you should check the [Support Forums first](https://wordpress.org/support/forums/). The forums are a great place to get help. If you have a bug to report, please [submit it to the Gutenberg repository](https://github.com/wordpress/gutenberg/issues). Please search prior to creating a new bug to confirm its not a duplicate. +- **User Support:** If you have run into an issue, you should check the [Support Forums first](https://wordpress.org/support/forums/). The forums are a great place to get help. If you have a bug to report, please [submit it to the Gutenberg repository](https://github.com/wordpress/gutenberg/issues). Please search prior to creating a new bug to confirm it's not a duplicate. ### Developing for Gutenberg Extending and customizing is at the heart of the WordPress platform, this is no different for the Gutenberg project. The editor and future products can be extended by third-party developers using plugins. -Review the [Create a Block tutorial](/docs/getting-started/create-block/README.md) for the fastest way to get started extending the block editor. See the [Developer Documentation](https://developer.wordpress.org/block-editor/#develop-for-the-block-editor) for extensive tutorials, documentation, and API references. +Review the [Quick Start Guide](https://developer.wordpress.org/block-editor/getting-started/quick-start-guide/) for the fastest way to get started extending the block editor. See the [Block Editor Handbook](https://developer.wordpress.org/block-editor/) for extensive tutorials, documentation, and API references. Also, check the [WordPress Developer Blog](https://developer.wordpress.org/blog/) for great articles about block development, among other topics. ### Contribute to Gutenberg -Gutenberg is an open-source project and welcomes all contributors from code to design, and from documentation to triage. The project is built by many contributors and volunteers and we'd love your help building it. +Gutenberg is an open-source project and welcomes all contributors from code to design, and from documentation to triage. The project is built by many contributors and volunteers, and we'd love your help building it. -See the [Contributors Handbook](https://developer.wordpress.org/block-editor/contributors/) for all the details on how you can contribute. +See the [Contributors Handbook](https://developer.wordpress.org/block-editor/contributors/) for all the details on how you can contribute. To get up and running quickly with **code contribution** see [Getting Started With Code Contribution](/docs/contributors/code/getting-started-with-code-contribution.md). Also check out the other resources available on the [Code Contributions](/docs/contributors/code/README.md) page. In whichever way you wish to contribute please be sure to read the [Contributing Guidelines](https://github.com/WordPress/gutenberg/blob/HEAD/CONTRIBUTING.md) first. -As with all WordPress projects, we want to ensure a welcoming environment for everyone. With that in mind, all contributors are expected to follow our [Code of Conduct](https://github.com/WordPress/gutenberg/blob/HEAD/CODE_OF_CONDUCT.md). +As with all WordPress projects, we want to ensure a welcoming environment for everyone. With that in mind, all contributors are expected to follow our [Code of Conduct](https://make.wordpress.org/handbook/community-code-of-conduct/). ## Get Involved You can join us in the `#core-editor` channel in Slack, see the [WordPress Slack page](https://make.wordpress.org/chat/) for signup information; it is free to join. -**Weekly meetings** The Editor Team meets weekly on Wednesdays at 14:00 UTC in Slack. If you can not join the meeting, [agenda](https://make.wordpress.org/core/tag/core-editor-agenda/) and [notes](https://make.wordpress.org/core/tag/core-editor-summary/) are posted to the [Make WordPress Blog](https://make.wordpress.org/core/). - ## License WordPress is free software, and is released under the terms of the GNU General Public License version 2 or (at your option) any later version. See [LICENSE.md](LICENSE.md) for complete license. diff --git a/backport-changelog/6.6/6279.md b/backport-changelog/6.6/6279.md new file mode 100644 index 00000000000000..f372c33d339b8a --- /dev/null +++ b/backport-changelog/6.6/6279.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6279 + +* https://github.com/WordPress/gutenberg/pull/60063 diff --git a/backport-changelog/6.6/6522.md b/backport-changelog/6.6/6522.md new file mode 100644 index 00000000000000..172464cf664de9 --- /dev/null +++ b/backport-changelog/6.6/6522.md @@ -0,0 +1,5 @@ +https://github.com/WordPress/wordpress-develop/pull/6522 + +* https://github.com/WordPress/gutenberg/pull/60106 +* https://github.com/WordPress/gutenberg/pull/60228 +* https://github.com/WordPress/gutenberg/pull/61638 diff --git a/backport-changelog/6.6/6559.md b/backport-changelog/6.6/6559.md new file mode 100644 index 00000000000000..176a2e04f02574 --- /dev/null +++ b/backport-changelog/6.6/6559.md @@ -0,0 +1,6 @@ +https://github.com/WordPress/wordpress-develop/pull/6559 + +* https://github.com/WordPress/gutenberg/pull/60349 +* https://github.com/WordPress/gutenberg/pull/60464 +* https://github.com/WordPress/gutenberg/pull/60491 +* https://github.com/WordPress/gutenberg/pull/61757 diff --git a/backport-changelog/6.6/6567.md b/backport-changelog/6.6/6567.md new file mode 100644 index 00000000000000..8f200bed3b5c09 --- /dev/null +++ b/backport-changelog/6.6/6567.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/6567 + +* https://github.com/WordPress/gutenberg/pull/47271 +* https://github.com/WordPress/gutenberg/pull/61774 diff --git a/backport-changelog/6.6/6590.md b/backport-changelog/6.6/6590.md new file mode 100644 index 00000000000000..47ef89e0db40cb --- /dev/null +++ b/backport-changelog/6.6/6590.md @@ -0,0 +1,5 @@ +https://github.com/WordPress/wordpress-develop/pull/6590 + +* https://github.com/WordPress/gutenberg/pull/59531 +* https://github.com/WordPress/gutenberg/pull/61182 +* https://github.com/WordPress/gutenberg/pull/61717 diff --git a/backport-changelog/6.6/6605.md b/backport-changelog/6.6/6605.md new file mode 100644 index 00000000000000..c45a37d77e660b --- /dev/null +++ b/backport-changelog/6.6/6605.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6605 + +* https://github.com/WordPress/gutenberg/pull/61851 diff --git a/backport-changelog/6.6/6616.md b/backport-changelog/6.6/6616.md new file mode 100644 index 00000000000000..bb35d6c74493cf --- /dev/null +++ b/backport-changelog/6.6/6616.md @@ -0,0 +1,7 @@ +https://github.com/WordPress/wordpress-develop/pull/6616 + +* https://github.com/WordPress/gutenberg/pull/58409 +* https://github.com/WordPress/gutenberg/pull/61328 +* https://github.com/WordPress/gutenberg/pull/61842 +* https://github.com/WordPress/gutenberg/pull/62199 +* https://github.com/WordPress/gutenberg/pull/62252 diff --git a/backport-changelog/6.6/6656.md b/backport-changelog/6.6/6656.md new file mode 100644 index 00000000000000..f0bf8900335f49 --- /dev/null +++ b/backport-changelog/6.6/6656.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6656 + +* https://github.com/WordPress/gutenberg/pull/60715 \ No newline at end of file diff --git a/backport-changelog/6.6/6662.md b/backport-changelog/6.6/6662.md new file mode 100644 index 00000000000000..5b25fc99304919 --- /dev/null +++ b/backport-changelog/6.6/6662.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/6662 + +* https://github.com/WordPress/gutenberg/pull/57908 +* https://github.com/WordPress/gutenberg/pull/62125 diff --git a/backport-changelog/6.6/6694.md b/backport-changelog/6.6/6694.md new file mode 100644 index 00000000000000..a9eb5a7f37ef5b --- /dev/null +++ b/backport-changelog/6.6/6694.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6694 + +* https://github.com/WordPress/gutenberg/pull/60694 diff --git a/backport-changelog/6.6/6731.md b/backport-changelog/6.6/6731.md new file mode 100644 index 00000000000000..b8671873251659 --- /dev/null +++ b/backport-changelog/6.6/6731.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6731 + +* https://github.com/WordPress/gutenberg/pull/62299 diff --git a/backport-changelog/6.6/6737.md b/backport-changelog/6.6/6737.md new file mode 100644 index 00000000000000..84e2234ca4e79a --- /dev/null +++ b/backport-changelog/6.6/6737.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6737 + +* https://github.com/WordPress/gutenberg/pull/62305 diff --git a/backport-changelog/6.6/6744.md b/backport-changelog/6.6/6744.md new file mode 100644 index 00000000000000..032f5420cb7184 --- /dev/null +++ b/backport-changelog/6.6/6744.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6744 + +* https://github.com/WordPress/gutenberg/pull/62355 \ No newline at end of file diff --git a/backport-changelog/6.6/6756.md b/backport-changelog/6.6/6756.md new file mode 100644 index 00000000000000..688b258c095faa --- /dev/null +++ b/backport-changelog/6.6/6756.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/6756 + +* https://github.com/WordPress/gutenberg/pull/62461 +* https://github.com/WordPress/gutenberg/pull/62495 diff --git a/backport-changelog/6.6/6785.md b/backport-changelog/6.6/6785.md new file mode 100644 index 00000000000000..ad26227bf12565 --- /dev/null +++ b/backport-changelog/6.6/6785.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6785 + +* https://github.com/WordPress/gutenberg/pull/62459 diff --git a/backport-changelog/6.6/6797.md b/backport-changelog/6.6/6797.md new file mode 100644 index 00000000000000..630b677655ddce --- /dev/null +++ b/backport-changelog/6.6/6797.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6797 + +* https://github.com/WordPress/gutenberg/pull/62526 \ No newline at end of file diff --git a/backport-changelog/6.6/6824.md b/backport-changelog/6.6/6824.md new file mode 100644 index 00000000000000..7dc6e090f01498 --- /dev/null +++ b/backport-changelog/6.6/6824.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6824 + +* https://github.com/WordPress/gutenberg/pull/62550 diff --git a/backport-changelog/6.6/6825.md b/backport-changelog/6.6/6825.md new file mode 100644 index 00000000000000..73e5f46600d892 --- /dev/null +++ b/backport-changelog/6.6/6825.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6825 + +* https://github.com/WordPress/gutenberg/pull/62552 diff --git a/backport-changelog/6.6/6827.md b/backport-changelog/6.6/6827.md new file mode 100644 index 00000000000000..bfe177c4cac0e5 --- /dev/null +++ b/backport-changelog/6.6/6827.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6827 + +* https://github.com/WordPress/gutenberg/pull/62465 diff --git a/backport-changelog/6.6/6837.md b/backport-changelog/6.6/6837.md new file mode 100644 index 00000000000000..2fffba68b53a10 --- /dev/null +++ b/backport-changelog/6.6/6837.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/6837 + +* https://github.com/WordPress/gutenberg/pull/62529 +* https://github.com/WordPress/gutenberg/pull/62610 diff --git a/backport-changelog/6.6/6841.md b/backport-changelog/6.6/6841.md new file mode 100644 index 00000000000000..36e715c48f52e0 --- /dev/null +++ b/backport-changelog/6.6/6841.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6841 + +* https://github.com/WordPress/gutenberg/pull/62598 diff --git a/backport-changelog/6.6/6844.md b/backport-changelog/6.6/6844.md new file mode 100644 index 00000000000000..f735d96b9a051c --- /dev/null +++ b/backport-changelog/6.6/6844.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6844 + +* https://github.com/WordPress/gutenberg/pull/62640 diff --git a/backport-changelog/6.6/6854.md b/backport-changelog/6.6/6854.md new file mode 100644 index 00000000000000..78003f24ca9e41 --- /dev/null +++ b/backport-changelog/6.6/6854.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6854 + +* https://github.com/WordPress/gutenberg/pull/62670 \ No newline at end of file diff --git a/backport-changelog/6.6/6864.md b/backport-changelog/6.6/6864.md new file mode 100644 index 00000000000000..10bf9cce4d6576 --- /dev/null +++ b/backport-changelog/6.6/6864.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/6864 + +* https://github.com/WordPress/gutenberg/pull/62488 +* https://github.com/WordPress/gutenberg/pull/62696 \ No newline at end of file diff --git a/backport-changelog/6.6/6873.md b/backport-changelog/6.6/6873.md new file mode 100644 index 00000000000000..745966d0dc0407 --- /dev/null +++ b/backport-changelog/6.6/6873.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6873 + +* https://github.com/WordPress/gutenberg/pull/62712 diff --git a/backport-changelog/6.6/6959.md b/backport-changelog/6.6/6959.md new file mode 100644 index 00000000000000..3232414bc22b11 --- /dev/null +++ b/backport-changelog/6.6/6959.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/6959 + +* https://github.com/WordPress/gutenberg/pull/63071 + diff --git a/backport-changelog/6.6/6987.md b/backport-changelog/6.6/6987.md new file mode 100644 index 00000000000000..c3bf36f8f9933d --- /dev/null +++ b/backport-changelog/6.6/6987.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6987 + +* https://github.com/WordPress/gutenberg/pull/63207 \ No newline at end of file diff --git a/backport-changelog/6.6/6989.md b/backport-changelog/6.6/6989.md new file mode 100644 index 00000000000000..3d236938ff74a5 --- /dev/null +++ b/backport-changelog/6.6/6989.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6989 + +* https://github.com/WordPress/gutenberg/pull/63172 diff --git a/backport-changelog/6.6/7012.md b/backport-changelog/6.6/7012.md new file mode 100644 index 00000000000000..265f3dad981e44 --- /dev/null +++ b/backport-changelog/6.6/7012.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7012 + +* https://github.com/WordPress/gutenberg/pull/63403 diff --git a/backport-changelog/6.6/7036.md b/backport-changelog/6.6/7036.md new file mode 100644 index 00000000000000..afc4d16bf011b7 --- /dev/null +++ b/backport-changelog/6.6/7036.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7036 + +* https://github.com/WordPress/gutenberg/pull/63436 diff --git a/backport-changelog/6.6/7061.md b/backport-changelog/6.6/7061.md new file mode 100644 index 00000000000000..307e6575cf38d8 --- /dev/null +++ b/backport-changelog/6.6/7061.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7061 + +* https://github.com/WordPress/gutenberg/pull/63726 diff --git a/backport-changelog/6.6/7088.md b/backport-changelog/6.6/7088.md new file mode 100644 index 00000000000000..46bd1147464846 --- /dev/null +++ b/backport-changelog/6.6/7088.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/7088 + +* https://github.com/WordPress/gutenberg/pull/63918 + diff --git a/backport-changelog/6.6/7097.md b/backport-changelog/6.6/7097.md new file mode 100644 index 00000000000000..e674d5ea76ba6f --- /dev/null +++ b/backport-changelog/6.6/7097.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7097 + +* https://github.com/WordPress/gutenberg/pull/63980 diff --git a/backport-changelog/6.6/7145.md b/backport-changelog/6.6/7145.md new file mode 100644 index 00000000000000..386f765cb22fa8 --- /dev/null +++ b/backport-changelog/6.6/7145.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7145 + +* https://github.com/WordPress/gutenberg/pull/64076 diff --git a/backport-changelog/6.7/6668.md b/backport-changelog/6.7/6668.md new file mode 100644 index 00000000000000..7653dd8d8294ee --- /dev/null +++ b/backport-changelog/6.7/6668.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6668 + +* https://github.com/WordPress/gutenberg/pull/62092 diff --git a/backport-changelog/6.7/6750.md b/backport-changelog/6.7/6750.md new file mode 100644 index 00000000000000..257ebe3a5aa698 --- /dev/null +++ b/backport-changelog/6.7/6750.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6750 + +* https://github.com/WordPress/gutenberg/pull/62357 \ No newline at end of file diff --git a/backport-changelog/6.7/6836.md b/backport-changelog/6.7/6836.md new file mode 100644 index 00000000000000..feaa0f909f1f6f --- /dev/null +++ b/backport-changelog/6.7/6836.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6836 + +* https://github.com/WordPress/gutenberg/pull/60100 diff --git a/backport-changelog/6.7/6991.md b/backport-changelog/6.7/6991.md new file mode 100644 index 00000000000000..4d5f1f85ec7686 --- /dev/null +++ b/backport-changelog/6.7/6991.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/6991 + +* https://github.com/WordPress/gutenberg/pull/61382 diff --git a/backport-changelog/6.7/7020.md b/backport-changelog/6.7/7020.md new file mode 100644 index 00000000000000..8eacb220d340e5 --- /dev/null +++ b/backport-changelog/6.7/7020.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7020 + +* https://github.com/WordPress/gutenberg/pull/63470 diff --git a/backport-changelog/6.7/7125.md b/backport-changelog/6.7/7125.md new file mode 100644 index 00000000000000..341e0415cc61a2 --- /dev/null +++ b/backport-changelog/6.7/7125.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/7125 + +* https://github.com/WordPress/gutenberg/pull/61577 +* https://github.com/WordPress/gutenberg/pull/64610 diff --git a/backport-changelog/6.7/7137.md b/backport-changelog/6.7/7137.md new file mode 100644 index 00000000000000..00771b8bc6c21d --- /dev/null +++ b/backport-changelog/6.7/7137.md @@ -0,0 +1,5 @@ +https://github.com/WordPress/wordpress-develop/pull/7137 + +* https://github.com/WordPress/gutenberg/pull/64128 +* https://github.com/WordPress/gutenberg/pull/64192 +* https://github.com/WordPress/gutenberg/pull/64328 diff --git a/backport-changelog/6.7/7139.md b/backport-changelog/6.7/7139.md new file mode 100644 index 00000000000000..b5b0090fbaa563 --- /dev/null +++ b/backport-changelog/6.7/7139.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/7139 + +* https://github.com/WordPress/gutenberg/pull/64504 +* https://github.com/WordPress/gutenberg/pull/65280 diff --git a/backport-changelog/6.7/7179.md b/backport-changelog/6.7/7179.md new file mode 100644 index 00000000000000..d777eace2cb05e --- /dev/null +++ b/backport-changelog/6.7/7179.md @@ -0,0 +1,5 @@ +https://github.com/WordPress/wordpress-develop/pull/7179 + +* https://github.com/WordPress/gutenberg/pull/64401 +* https://github.com/WordPress/gutenberg/pull/64459 +* https://github.com/WordPress/gutenberg/pull/64477 diff --git a/backport-changelog/6.7/7200.md b/backport-changelog/6.7/7200.md new file mode 100644 index 00000000000000..520b3d6054cc18 --- /dev/null +++ b/backport-changelog/6.7/7200.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7200 + +* https://github.com/WordPress/gutenberg/pull/64511 diff --git a/backport-changelog/6.7/7247.md b/backport-changelog/6.7/7247.md new file mode 100644 index 00000000000000..d0b1de25872344 --- /dev/null +++ b/backport-changelog/6.7/7247.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7247 + +* https://github.com/WordPress/gutenberg/pull/64790 diff --git a/backport-changelog/6.7/7258.md b/backport-changelog/6.7/7258.md new file mode 100644 index 00000000000000..6714b13b70b8d2 --- /dev/null +++ b/backport-changelog/6.7/7258.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7258 + +* https://github.com/WordPress/gutenberg/pull/64570 \ No newline at end of file diff --git a/backport-changelog/6.7/7270.md b/backport-changelog/6.7/7270.md new file mode 100644 index 00000000000000..358b0d7c9a9674 --- /dev/null +++ b/backport-changelog/6.7/7270.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7270 + +* https://github.com/WordPress/gutenberg/pull/64890 diff --git a/backport-changelog/6.7/7298.md b/backport-changelog/6.7/7298.md new file mode 100644 index 00000000000000..4c01ef5d4f46e6 --- /dev/null +++ b/backport-changelog/6.7/7298.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7298 + +* https://github.com/WordPress/gutenberg/pull/65099 \ No newline at end of file diff --git a/backport-changelog/6.7/7314.md b/backport-changelog/6.7/7314.md new file mode 100644 index 00000000000000..7d75cdff0f9075 --- /dev/null +++ b/backport-changelog/6.7/7314.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7314 + +* https://github.com/WordPress/gutenberg/pull/64167 diff --git a/backport-changelog/6.7/7336.md b/backport-changelog/6.7/7336.md new file mode 100644 index 00000000000000..7cb2e26d7eeb95 --- /dev/null +++ b/backport-changelog/6.7/7336.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7336 + +* https://github.com/WordPress/gutenberg/pull/65071 diff --git a/backport-changelog/6.7/7360.md b/backport-changelog/6.7/7360.md new file mode 100644 index 00000000000000..b2fb8efd624b93 --- /dev/null +++ b/backport-changelog/6.7/7360.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7360 + +* https://github.com/WordPress/gutenberg/pull/65460 diff --git a/backport-changelog/6.7/7543.md b/backport-changelog/6.7/7543.md new file mode 100644 index 00000000000000..7dcb74354ac813 --- /dev/null +++ b/backport-changelog/6.7/7543.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7543 + +* https://github.com/WordPress/gutenberg/pull/65958 diff --git a/backport-changelog/6.7/7552.md b/backport-changelog/6.7/7552.md new file mode 100644 index 00000000000000..d304162b3cae67 --- /dev/null +++ b/backport-changelog/6.7/7552.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7552 + +* https://github.com/WordPress/gutenberg/pull/66058 diff --git a/backport-changelog/6.7/7561.md b/backport-changelog/6.7/7561.md new file mode 100644 index 00000000000000..43fcffa41c02a5 --- /dev/null +++ b/backport-changelog/6.7/7561.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7561 + +* https://github.com/WordPress/gutenberg/pull/66084 diff --git a/backport-changelog/6.7/7661.md b/backport-changelog/6.7/7661.md new file mode 100644 index 00000000000000..711d03595162ca --- /dev/null +++ b/backport-changelog/6.7/7661.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/7661 + +* https://github.com/WordPress/gutenberg/pull/66468 +* https://github.com/WordPress/gutenberg/pull/66543 diff --git a/backport-changelog/6.7/7676.md b/backport-changelog/6.7/7676.md new file mode 100644 index 00000000000000..19d9dc59048457 --- /dev/null +++ b/backport-changelog/6.7/7676.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7676 + +* https://github.com/WordPress/gutenberg/pull/66359 diff --git a/backport-changelog/6.8/6910.md b/backport-changelog/6.8/6910.md new file mode 100644 index 00000000000000..24b59bce87ee60 --- /dev/null +++ b/backport-changelog/6.8/6910.md @@ -0,0 +1,7 @@ +https://github.com/WordPress/wordpress-develop/pull/6910 + +* https://github.com/WordPress/gutenberg/pull/59483 +* https://github.com/WordPress/gutenberg/pull/60652 +* https://github.com/WordPress/gutenberg/pull/62777 +* https://github.com/WordPress/gutenberg/pull/63108 +* https://github.com/WordPress/gutenberg/pull/63464 \ No newline at end of file diff --git a/backport-changelog/6.8/7069.md b/backport-changelog/6.8/7069.md new file mode 100644 index 00000000000000..3e734637ddbb2f --- /dev/null +++ b/backport-changelog/6.8/7069.md @@ -0,0 +1,6 @@ +https://github.com/WordPress/wordpress-develop/pull/7069 + +* https://github.com/WordPress/gutenberg/pull/63401 +* https://github.com/WordPress/gutenberg/pull/66918 +* https://github.com/WordPress/gutenberg/pull/67018 +* https://github.com/WordPress/gutenberg/pull/67552 diff --git a/backport-changelog/6.8/7129.md b/backport-changelog/6.8/7129.md new file mode 100644 index 00000000000000..90c9168cdc6f8a --- /dev/null +++ b/backport-changelog/6.8/7129.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7129 + +* https://github.com/WordPress/gutenberg/pull/62304 diff --git a/backport-changelog/6.8/7265.md b/backport-changelog/6.8/7265.md new file mode 100644 index 00000000000000..44ba36053aa0d9 --- /dev/null +++ b/backport-changelog/6.8/7265.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/7265 + +* https://github.com/WordPress/gutenberg/pull/66850 +* https://github.com/WordPress/gutenberg/pull/66947 diff --git a/backport-changelog/6.8/7488.md b/backport-changelog/6.8/7488.md new file mode 100644 index 00000000000000..a588bef0e01796 --- /dev/null +++ b/backport-changelog/6.8/7488.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7488 + +* https://github.com/WordPress/gutenberg/pull/60622 \ No newline at end of file diff --git a/backport-changelog/6.8/7498.md b/backport-changelog/6.8/7498.md new file mode 100644 index 00000000000000..6c903246166b64 --- /dev/null +++ b/backport-changelog/6.8/7498.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7498 + +* https://github.com/WordPress/gutenberg/pull/60622 \ No newline at end of file diff --git a/backport-changelog/6.8/7575.md b/backport-changelog/6.8/7575.md new file mode 100644 index 00000000000000..f1c6a84da1368e --- /dev/null +++ b/backport-changelog/6.8/7575.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7575 + +* https://github.com/WordPress/gutenberg/pull/66154 diff --git a/backport-changelog/6.8/7604.md b/backport-changelog/6.8/7604.md new file mode 100644 index 00000000000000..0ab47698103409 --- /dev/null +++ b/backport-changelog/6.8/7604.md @@ -0,0 +1,5 @@ +https://github.com/WordPress/wordpress-develop/pull/7604 + +* https://github.com/WordPress/gutenberg/pull/66285 +* https://github.com/WordPress/gutenberg/pull/66302 +* https://github.com/WordPress/gutenberg/pull/66306 diff --git a/backport-changelog/6.8/7643.md b/backport-changelog/6.8/7643.md new file mode 100644 index 00000000000000..f83aa411f9fff3 --- /dev/null +++ b/backport-changelog/6.8/7643.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/7643 + +* https://github.com/WordPress/gutenberg/pull/66432 +* https://github.com/WordPress/gutenberg/pull/66556 diff --git a/backport-changelog/6.8/7681.md b/backport-changelog/6.8/7681.md new file mode 100644 index 00000000000000..b8cffc70c68561 --- /dev/null +++ b/backport-changelog/6.8/7681.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7681 + +* https://github.com/WordPress/gutenberg/pull/66541 diff --git a/backport-changelog/6.8/7687.md b/backport-changelog/6.8/7687.md new file mode 100644 index 00000000000000..0b5af190964df1 --- /dev/null +++ b/backport-changelog/6.8/7687.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/7687 + +* https://github.com/WordPress/gutenberg/pull/66488 +* https://github.com/WordPress/gutenberg/pull/67497 diff --git a/backport-changelog/6.8/7695.md b/backport-changelog/6.8/7695.md new file mode 100644 index 00000000000000..08b780e2afb0d7 --- /dev/null +++ b/backport-changelog/6.8/7695.md @@ -0,0 +1,7 @@ +https://github.com/WordPress/wordpress-develop/pull/7695 + +* https://github.com/WordPress/gutenberg/pull/66631 +* https://github.com/WordPress/gutenberg/pull/67465 +* https://github.com/WordPress/gutenberg/pull/66579 +* https://github.com/WordPress/gutenberg/pull/66654 +* https://github.com/WordPress/gutenberg/pull/67518 diff --git a/backport-changelog/6.8/7697.md b/backport-changelog/6.8/7697.md new file mode 100644 index 00000000000000..e53fbf4bdb8ae5 --- /dev/null +++ b/backport-changelog/6.8/7697.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7697 + +* https://github.com/WordPress/gutenberg/pull/66656 diff --git a/backport-changelog/6.8/7698.md b/backport-changelog/6.8/7698.md new file mode 100644 index 00000000000000..3ded160e7ec449 --- /dev/null +++ b/backport-changelog/6.8/7698.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7698 + +* https://github.com/WordPress/gutenberg/pull/66662 diff --git a/backport-changelog/6.8/7759.md b/backport-changelog/6.8/7759.md new file mode 100644 index 00000000000000..a0ad85b06e6b05 --- /dev/null +++ b/backport-changelog/6.8/7759.md @@ -0,0 +1,4 @@ +https://github.com/WordPress/wordpress-develop/pull/7759 + +* https://github.com/WordPress/gutenberg/pull/66896 + diff --git a/backport-changelog/6.8/7784.md b/backport-changelog/6.8/7784.md new file mode 100644 index 00000000000000..b18dca88112a71 --- /dev/null +++ b/backport-changelog/6.8/7784.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7784 + +* https://github.com/WordPress/gutenberg/pull/66948 diff --git a/backport-changelog/6.8/7825.md b/backport-changelog/6.8/7825.md new file mode 100644 index 00000000000000..42d09c86b7f3ba --- /dev/null +++ b/backport-changelog/6.8/7825.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7825 + +* https://github.com/WordPress/gutenberg/pull/67061 diff --git a/backport-changelog/6.8/7848.md b/backport-changelog/6.8/7848.md new file mode 100644 index 00000000000000..84600eb4847cdb --- /dev/null +++ b/backport-changelog/6.8/7848.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7848 + +* https://github.com/WordPress/gutenberg/pull/67154 diff --git a/backport-changelog/6.8/7895.md b/backport-changelog/6.8/7895.md new file mode 100644 index 00000000000000..4750ab545ada3b --- /dev/null +++ b/backport-changelog/6.8/7895.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7895 + +* https://github.com/WordPress/gutenberg/pull/66459 diff --git a/backport-changelog/6.8/7903.md b/backport-changelog/6.8/7903.md new file mode 100644 index 00000000000000..cb20d8d2dd2b1b --- /dev/null +++ b/backport-changelog/6.8/7903.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7903 + +* https://github.com/WordPress/gutenberg/pull/67199 diff --git a/backport-changelog/6.8/7909.md b/backport-changelog/6.8/7909.md new file mode 100644 index 00000000000000..32a441ef296a2d --- /dev/null +++ b/backport-changelog/6.8/7909.md @@ -0,0 +1,3 @@ +https://github.com/WordPress/wordpress-develop/pull/7909 + +* https://github.com/WordPress/gutenberg/pull/67330 diff --git a/backport-changelog/readme.md b/backport-changelog/readme.md new file mode 100644 index 00000000000000..8066cc6a6fca24 --- /dev/null +++ b/backport-changelog/readme.md @@ -0,0 +1,63 @@ +# Core Backport Changelog + +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. + +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. + +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: + +```md +https://github.com/WordPress/wordpress-develop/pull/1234 + +* 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/). diff --git a/bin/api-docs/gen-block-lib-list.js b/bin/api-docs/gen-block-lib-list.js index 60b0a99b096ab8..0c79def1989992 100644 --- a/bin/api-docs/gen-block-lib-list.js +++ b/bin/api-docs/gen-block-lib-list.js @@ -148,23 +148,58 @@ function getSourceFromFile( filename ) { */ function readBlockJSON( filename ) { const blockjson = require( filename ); - + const { + name, + category, + supports, + attributes, + parent, + ancestor, + __experimental, + allowedBlocks, + } = blockjson; const sourcefile = getSourceFromFile( filename ); - const supportsList = - blockjson.supports !== undefined - ? processObjWithInnerKeys( augmentSupports( blockjson.supports ) ) - : []; - const attributes = getTruthyKeys( blockjson.attributes ); + const blockInfoList = [ `- **Name:** ${ name }` ]; + + if ( __experimental ) { + blockInfoList.push( `- **Experimental:** ${ __experimental }` ); + } + if ( category?.length > 0 ) { + blockInfoList.push( `- **Category:** ${ category }` ); + } + if ( parent?.length > 0 ) { + blockInfoList.push( `- **Parent:** ${ parent.join( ', ' ) }` ); + } + if ( ancestor?.length > 0 ) { + blockInfoList.push( `- **Ancestor:** ${ ancestor.join( ', ' ) }` ); + } + if ( allowedBlocks?.length > 0 ) { + blockInfoList.push( + `- **Allowed Blocks:** ${ allowedBlocks.join( ', ' ) }` + ); + } + if ( supports ) { + blockInfoList.push( + `- **Supports:** ${ processObjWithInnerKeys( + augmentSupports( supports ) + ) + .sort() + .join( ', ' ) }` + ); + } + const truthyAttributes = getTruthyKeys( attributes ); + if ( truthyAttributes.length ) { + blockInfoList.push( + `- **Attributes:** ${ truthyAttributes.sort().join( ', ' ) }` + ); + } return ` ## ${ blockjson.title } ${ blockjson.description } ([Source](${ sourcefile })) -- **Name:** ${ blockjson.name } -- **Category:** ${ blockjson.category } -- **Supports:** ${ supportsList.sort().join( ', ' ) } -- **Attributes:** ${ attributes.sort().join( ', ' ) } +${ blockInfoList.join( '\n' ) } `; } diff --git a/bin/api-docs/gen-components-docs/get-subcomponent-descriptions.mjs b/bin/api-docs/gen-components-docs/get-subcomponent-descriptions.mjs new file mode 100644 index 00000000000000..4bb82652f1737a --- /dev/null +++ b/bin/api-docs/gen-components-docs/get-subcomponent-descriptions.mjs @@ -0,0 +1,46 @@ +/** + * External dependencies + */ +import fs from 'node:fs/promises'; +import babel from '@babel/core'; +import { parse as commentParser } from 'comment-parser'; + +/** + * Try to get subcomponent descriptions from the main component Object.assign() call. + */ +export async function getDescriptionsForSubcomponents( + filePath, + mainComponentName +) { + const fileContent = await fs.readFile( filePath, 'utf8' ); + const parsedFile = babel.parse( fileContent, { + filename: filePath, + } ); + const mainComponent = parsedFile.program.body + .filter( ( node ) => node.type === 'ExportNamedDeclaration' ) + .flatMap( ( node ) => node.declaration?.declarations ) + .find( ( node ) => node?.id.name === mainComponentName ); + + if ( + ! ( + // If the main component export has `Object.assign( ... )` + ( + mainComponent?.init?.type === 'CallExpression' && + mainComponent?.init?.callee?.object?.name === 'Object' && + mainComponent?.init?.callee?.property?.name === 'assign' + ) + ) + ) { + return; + } + + const properties = mainComponent?.init?.arguments[ 1 ]?.properties.map( + ( node ) => [ + node.key.name, + commentParser( `/*${ node.leadingComments?.[ 0 ].value }*/`, { + spacing: 'preserve', + } )?.[ 0 ]?.description, + ] + ); + return Object.fromEntries( properties ); +} diff --git a/bin/api-docs/gen-components-docs/index.mjs b/bin/api-docs/gen-components-docs/index.mjs new file mode 100644 index 00000000000000..c7109dc4982c36 --- /dev/null +++ b/bin/api-docs/gen-components-docs/index.mjs @@ -0,0 +1,134 @@ +/** + * External dependencies + */ +import docgen from 'react-docgen-typescript'; +import glob from 'glob'; +import fs from 'node:fs/promises'; +import path from 'path'; + +/** + * Internal dependencies + */ +import { generateMarkdownDocs } from './markdown/index.mjs'; +import { getDescriptionsForSubcomponents } from './get-subcomponent-descriptions.mjs'; + +const MANIFEST_GLOB = 'packages/components/src/**/docs-manifest.json'; + +// For consistency, options should generally match the options used in Storybook. +const OPTIONS = { + shouldExtractLiteralValuesFromEnum: true, + shouldRemoveUndefinedFromOptional: true, + propFilter: ( prop ) => + prop.parent ? ! /node_modules/.test( prop.parent.fileName ) : true, + savePropValueAsString: true, +}; + +function getTypeDocsForComponent( { + manifestPath, + componentFilePath, + displayName, +} ) { + const resolvedPath = path.resolve( + path.dirname( manifestPath ), + componentFilePath + ); + + const typeDocs = docgen.parse( resolvedPath, OPTIONS ); + + if ( typeDocs.length === 0 ) { + throw new Error( + `react-docgen-typescript could not generate any type docs from ${ resolvedPath }` + ); + } + + const matchingTypeDoc = typeDocs.find( + ( obj ) => obj.displayName === displayName + ); + + if ( typeof matchingTypeDoc === 'undefined' ) { + const unmatchedTypeDocs = typeDocs + .map( ( obj ) => `\`${ obj.displayName }\`` ) + .join( ', ' ); + + throw new Error( + `react-docgen-typescript could not find type docs for ${ displayName } in ${ resolvedPath }. (Found ${ unmatchedTypeDocs })` + ); + } + + return matchingTypeDoc; +} + +async function parseManifest( manifestPath ) { + try { + return JSON.parse( await fs.readFile( manifestPath, 'utf8' ) ); + } catch ( e ) { + throw new Error( + `Error parsing docs manifest at ${ manifestPath }: ${ e.message }` + ); + } +} + +const manifests = glob.sync( MANIFEST_GLOB ); + +await Promise.all( + manifests.map( async ( manifestPath ) => { + const manifest = await parseManifest( manifestPath ); + + const typeDocs = getTypeDocsForComponent( { + manifestPath, + componentFilePath: manifest.filePath, + displayName: manifest.displayName, + } ); + + let subcomponentDescriptions; + + const subcomponentTypeDocs = await Promise.all( + manifest.subcomponents?.map( async ( subcomponent ) => { + const docs = getTypeDocsForComponent( { + manifestPath, + componentFilePath: subcomponent.filePath, + displayName: subcomponent.displayName, + } ); + + if ( subcomponent.preferredDisplayName ) { + docs.displayName = subcomponent.preferredDisplayName; + } + + if ( ! subcomponent.description ) { + subcomponentDescriptions ??= + getDescriptionsForSubcomponents( + path.resolve( + path.dirname( manifestPath ), + manifest.filePath + ), + manifest.displayName + ); + + docs.description = ( await subcomponentDescriptions )?.[ + subcomponent.displayName + ]; + } + + return docs; + } ) ?? [] + ); + + const docs = generateMarkdownDocs( { + typeDocs, + subcomponentTypeDocs, + } ); + const outputFile = path.resolve( + path.dirname( manifestPath ), + './README.md' + ); + + try { + console.log( `Writing docs to ${ outputFile }` ); + return fs.writeFile( outputFile, docs ); + } catch ( e ) { + throw new Error( + `Error writing docs to ${ outputFile }: ${ e.message }` + ); + } + } ) +); diff --git a/bin/api-docs/gen-components-docs/markdown/index.mjs b/bin/api-docs/gen-components-docs/markdown/index.mjs new file mode 100644 index 00000000000000..126fdf0057b6e5 --- /dev/null +++ b/bin/api-docs/gen-components-docs/markdown/index.mjs @@ -0,0 +1,40 @@ +/** + * External dependencies + */ +import json2md from 'json2md'; + +/** + * Internal dependencies + */ +import { generateMarkdownPropsJson } from './props.mjs'; + +export function generateMarkdownDocs( { typeDocs, subcomponentTypeDocs } ) { + const mainDocsJson = [ + { h1: typeDocs.displayName }, + '', + { + p: `

See the WordPress Storybook for more detailed, interactive documentation.

`, + }, + typeDocs.description, + ...generateMarkdownPropsJson( typeDocs.props ), + ]; + + const subcomponentDocsJson = subcomponentTypeDocs?.length + ? [ + { h2: 'Subcomponents' }, + ...subcomponentTypeDocs.flatMap( ( subcomponentTypeDoc ) => [ + { + h3: subcomponentTypeDoc.displayName, + }, + subcomponentTypeDoc.description, + ...generateMarkdownPropsJson( subcomponentTypeDoc.props, { + headingLevel: 4, + } ), + ] ), + ] + : []; + + return json2md( + [ ...mainDocsJson, ...subcomponentDocsJson ].filter( Boolean ) + ); +} diff --git a/bin/api-docs/gen-components-docs/markdown/props.mjs b/bin/api-docs/gen-components-docs/markdown/props.mjs new file mode 100644 index 00000000000000..9d019c4240f008 --- /dev/null +++ b/bin/api-docs/gen-components-docs/markdown/props.mjs @@ -0,0 +1,51 @@ +function renderPropType( type ) { + const MAX_ENUM_VALUES = 10; + + switch ( type.name ) { + case 'enum': { + const string = type.value + .slice( 0, MAX_ENUM_VALUES ) + .map( ( { value } ) => value ) + .join( ' | ' ); + + if ( type.value.length > MAX_ENUM_VALUES ) { + return `${ string } | ...`; + } + return string; + } + default: + return type.name; + } +} + +export function generateMarkdownPropsJson( props, { headingLevel = 2 } = {} ) { + const sortedKeys = Object.keys( props ).sort( ( [ a ], [ b ] ) => + a.localeCompare( b ) + ); + + const propsJson = sortedKeys + .flatMap( ( key ) => { + const prop = props[ key ]; + + if ( prop.description?.includes( '@ignore' ) ) { + return null; + } + + return [ + { [ `h${ headingLevel + 1 }` ]: `\`${ key }\`` }, + prop.description, + { + ul: [ + `Type: \`${ renderPropType( prop.type ) }\``, + `Required: ${ prop.required ? 'Yes' : 'No' }`, + prop.defaultValue && + `Default: \`${ prop.defaultValue.value }\``, + ].filter( Boolean ), + }, + ]; + } ) + .filter( Boolean ); + + return [ { [ `h${ headingLevel }` ]: 'Props' }, ...propsJson ]; +} + diff --git a/bin/api-docs/gen-theme-reference.js b/bin/api-docs/gen-theme-reference.js deleted file mode 100644 index d051261963daf4..00000000000000 --- a/bin/api-docs/gen-theme-reference.js +++ /dev/null @@ -1,198 +0,0 @@ -/** - * Generates theme.json documentation using theme.json schema. - * Reads from : schemas/json/theme.json - * Publishes to: docs/reference-guides/theme-json-reference/theme-json-living.md - */ - -/** - * External dependencies - */ -const path = require( 'path' ); -const fs = require( 'fs' ); -/** - * Path to root project directory. - * - * @type {string} - */ -const ROOT_DIR = path.resolve( __dirname, '../..' ); - -/** - * Path to theme json schema file. - * - * @type {string} - */ -const THEME_JSON_SCHEMA_FILE = path.resolve( - ROOT_DIR, - path.join( 'schemas', 'json', 'theme.json' ) -); - -/** - * Path to docs file. - * - * @type {string} - */ -const THEME_JSON_REF_DOC = path.resolve( - ROOT_DIR, - 'docs/reference-guides/theme-json-reference/theme-json-living.md' -); - -/** - * Start token for matching string in doc file. - * - * @type {string} - */ -const START_TOKEN = ''; - -/** - * Start token for matching string in doc file. - * - * @type {string} - */ -const END_TOKEN = ''; - -/** - * Regular expression using tokens for matching in doc file. - * Note: `.` does not match new lines, so [^] is used. - * - * @type {RegExp} - */ -const TOKEN_PATTERN = new RegExp( START_TOKEN + '[^]*' + END_TOKEN ); - -const themejson = require( THEME_JSON_SCHEMA_FILE ); - -/** - * Convert object keys to an array. - * Gracefully handles non-object values. - * - * @param {*} maybeObject - * @return {Array} Object keys - */ -const keys = ( maybeObject ) => { - if ( typeof maybeObject !== 'object' ) { - return []; - } - return Object.keys( maybeObject ); -}; - -/** - * Convert settings properties to markup. - * - * @param {Object} struct - * @return {string} markup - */ -const getSettingsPropertiesMarkup = ( struct ) => { - if ( ! ( 'properties' in struct ) ) { - return ''; - } - const props = struct.properties; - const ks = keys( props ); - if ( ks.length < 1 ) { - return ''; - } - - let markup = '| Property | Type | Default | Props |\n'; - markup += '| --- | --- | --- |--- |\n'; - ks.forEach( ( key ) => { - const def = 'default' in props[ key ] ? props[ key ].default : ''; - const ps = - props[ key ].type === 'array' - ? keys( props[ key ].items.properties ).sort().join( ', ' ) - : ''; - markup += `| ${ key } | ${ props[ key ].type } | ${ def } | ${ ps } |\n`; - } ); - - return markup; -}; - -/** - * Convert style properties to markup. - * - * @param {Object} struct - * @return {string} markup - */ -const getStylePropertiesMarkup = ( struct ) => { - if ( ! ( 'properties' in struct ) ) { - return ''; - } - const props = struct.properties; - const ks = keys( props ); - if ( ks.length < 1 ) { - return ''; - } - - let markup = '| Property | Type | Props |\n'; - markup += '| --- | --- |--- |\n'; - ks.forEach( ( key ) => { - const ps = - props[ key ].type === 'object' - ? keys( props[ key ].properties ).sort().join( ', ' ) - : ''; - markup += `| ${ key } | ${ props[ key ].type } | ${ ps } |\n`; - } ); - - return markup; -}; - -/** - * Parses a section for description and properties and - * returns a marked up version. - * - * @param {string} title - * @param {Object} data - * @param {string} type settings|style - * @return {string} markup - */ -const getSectionMarkup = ( title, data, type ) => { - const markupFn = - type === 'settings' - ? getSettingsPropertiesMarkup - : getStylePropertiesMarkup; - - return ` -### ${ title } - -${ data.description } - -${ markupFn( data ) } ---- -`; -}; - -let autogen = ''; - -// Settings -const settings = Object.entries( themejson.definitions ) - .filter( ( [ settingsKey ] ) => - /^settingsProperties(?!Complete)\w+$/.test( settingsKey ) - ) - .reduce( - ( settingsObj, [ , { properties } ] ) => - Object.assign( settingsObj, properties ), - {} - ); -const settingSections = keys( settings ); -autogen += '## Settings' + '\n\n'; -settingSections.forEach( ( section ) => { - autogen += getSectionMarkup( section, settings[ section ], 'settings' ); -} ); - -// Styles -const styles = themejson.definitions.stylesProperties.properties; -const styleSections = keys( styles ); -autogen += '## Styles' + '\n\n'; -styleSections.forEach( ( section ) => { - autogen += getSectionMarkup( section, styles[ section ], 'styles' ); -} ); - -// Read existing file to wrap auto generated content. -let docsContent = fs.readFileSync( THEME_JSON_REF_DOC, { - encoding: 'utf8', - flag: 'r', -} ); - -// Replace auto generated part with new generated docs. -autogen = START_TOKEN + '\n' + autogen + '\n' + END_TOKEN; -docsContent = docsContent.replace( TOKEN_PATTERN, autogen ); - -// Write back out. -fs.writeFileSync( THEME_JSON_REF_DOC, docsContent, { encoding: 'utf8' } ); diff --git a/bin/api-docs/gen-theme-reference.mjs b/bin/api-docs/gen-theme-reference.mjs new file mode 100644 index 00000000000000..f50d194c17ee79 --- /dev/null +++ b/bin/api-docs/gen-theme-reference.mjs @@ -0,0 +1,295 @@ +/** + * Generates theme.json documentation using theme.json schema. + * Reads from : schemas/json/theme.json + * Publishes to: docs/reference-guides/theme-json-reference/theme-json-living.md + */ + +/** + * External dependencies + */ +import fs from 'node:fs/promises'; +import $RefParser from '@apidevtools/json-schema-ref-parser'; +import { fileURLToPath } from 'node:url'; + +/** + * @typedef {import('@apidevtools/json-schema-ref-parser').JSONSchema} JSONSchema + */ + +/** + * Path to theme json schema file. + * + * @type {URL} + */ +const THEME_JSON_SCHEMA_PATH = fileURLToPath( + new URL( '../../schemas/json/theme.json', import.meta.url ) +); + +/** + * Path to docs file. + * + * @type {URL} + */ +const REFERENCE_DOC_PATH = fileURLToPath( + new URL( + '../../docs/reference-guides/theme-json-reference/theme-json-living.md', + import.meta.url + ) +); + +/** + * Start token for matching string in doc file. + * + * @type {string} + */ +const START_TOKEN = ''; + +/** + * Start token for matching string in doc file. + * + * @type {string} + */ +const END_TOKEN = ''; + +/** + * @typedef {(schema: JSONSchema) => boolean} PredicateFunction + */ + +/** + * @typedef {(schema: JSONSchema) => string} SerializerFunction + */ + +/** + * Create a serializer function for a type. Supports merging one level of anyOf and oneOf subschemas. + * + * @see {@link https://json-schema.org/understanding-json-schema/reference/combining.html} + * + * @param {PredicateFunction} predicate Type predicate function to match a type. + * @param {SerializerFunction} serializer Serializer function to format a type. + * @return {SerializerFunction} Serializer function for the give type. + */ +function createSerializer( predicate, serializer ) { + return ( schema ) => { + const schemas = predicate( schema ) + ? [ schema ] + : schema.anyOf || schema.oneOf || []; + const formatted = schemas.filter( predicate ).map( serializer ); + return [ ...new Set( formatted ) ].join( ', ' ); + }; +} + +/** + * Serialize primitive types. + * + * @type {SerializerFunction} + */ +const serializePrimitiveTypes = createSerializer( + ( schema ) => + schema.type && ! [ 'object', 'array' ].includes( schema.type ), + ( schema ) => `\`${ schema.type }\`` +); + +/** + * Serialize object types. + * + * @type {SerializerFunction} + */ +const serializeObjectTypes = createSerializer( + ( schema ) => schema.properties, + ( schema ) => `\`{ ${ Object.keys( schema.properties ).join( ', ' ) } }\`` +); + +/** + * Serialize object array types. + * + * @type {SerializerFunction} + */ +const serializeObjectArrayTypes = createSerializer( + ( schema ) => schema.items && schema.items.properties, + ( schema ) => + `\`[ { ${ Object.keys( schema.items.properties ).join( ', ' ) } } ]\`` +); + +/** + * Serialize primitive array types. + * + * @type {SerializerFunction} + */ +const serializePrimitiveArrayTypes = createSerializer( + ( schema ) => + schema.items && + schema.items.type && + ! [ 'object', 'array' ].includes( schema.items.type ), + ( schema ) => `\`[ ${ schema.items.type } ]\`` +); + +/** + * Generate types from schema. + * + * @param {JSONSchema} schema JSON schema + * @return {string} serialized types + */ +function generateTypes( schema ) { + return [ + serializePrimitiveTypes( schema ), + serializeObjectTypes( schema ), + serializePrimitiveArrayTypes( schema ), + serializeObjectArrayTypes( schema ), + ] + .filter( Boolean ) + .join( ', ' ); +} + +/** + * Generate documentation from theme.json schema. + * + * @param {JSONSchema} themeJson theme.json JSON schema + * @return {string} generated documentation + */ +function generateDocs( themeJson ) { + /** Markdown content. */ + let md = ''; + + /* --------------- * + * Settings * + * --------------- */ + md += '## settings\n\n'; + md += `${ themeJson.properties.settings.description }\n\n`; + const settings = [ + // Top-level only properties. + ...Object.entries( themeJson.properties.settings.allOf[ 1 ].properties ) + .filter( ( [ property ] ) => property !== 'blocks' ) + .map( ( [ property, subschema ] ) => [ + property, + { + ...subschema, + description: `${ subschema.description }\n\n**Note:** Top-level only property. Not available in blocks.`, + }, + ] ), + // Top-level and blocks properties. + ...themeJson.properties.settings.allOf[ 0 ].allOf.flatMap( + ( subschema ) => Object.entries( subschema.properties ) + ), + ]; + for ( const [ section, schema ] of settings ) { + md += `### ${ section }\n\n`; + md += `${ schema.description }\n\n`; + if ( schema.properties ) { + md += '| Property | Description | Type | Default |\n'; + md += '| -------- | ----------- | ---- | ------- |\n'; + const properties = Object.entries( schema.properties ); + for ( const [ property, subschema ] of properties ) { + const description = + subschema.description?.split( '\n', 1 )[ 0 ] ?? ''; + const types = generateTypes( subschema ); + const defaultValue = + 'default' in subschema + ? `\`${ JSON.stringify( subschema.default ) }\`` + : ''; + md += `| ${ property } | ${ description } | ${ types } | ${ defaultValue } |\n`; + } + md += '\n'; + } + md += `---\n\n`; + } + + /* --------------- * + * Styles * + * --------------- */ + md += '## styles\n\n'; + md += `${ themeJson.properties.styles.description }\n\n`; + const styles = Object.entries( + themeJson.properties.styles.allOf[ 0 ].properties + ); + for ( const [ section, schema ] of styles ) { + md += `### ${ section }\n\n`; + md += `${ schema.description }\n\n`; + if ( schema.properties ) { + md += '| Property | Description | Type |\n'; + md += '| -------- | ----------- | ---- |\n'; + const properties = Object.entries( schema.properties ); + for ( const [ property, subschema ] of properties ) { + // Assuming that the first line of a description is a summary. + const description = + subschema.description?.split( '\n', 1 )[ 0 ] ?? ''; + const types = generateTypes( subschema ); + md += `| ${ property } | ${ description } | ${ types } |\n`; + } + md += '\n'; + } + md += `---\n\n`; + } + + /* --------------- * + * customTemplates * + * --------------- */ + md += '## customTemplates\n\n'; + md += `${ themeJson.properties.customTemplates.description }\n\n`; + md += '| Property | Description | Type |\n'; + md += '| -------- | ----------- | ---- |\n'; + const customTemplatesProperties = Object.entries( + themeJson.properties.customTemplates.items.properties + ); + for ( const [ property, subschema ] of customTemplatesProperties ) { + const { description } = subschema; + const types = generateTypes( subschema ); + md += `| ${ property } | ${ description } | ${ types } |\n`; + } + md += '\n'; + + /* --------------- * + * templateParts * + * --------------- */ + md += '## templateParts\n\n'; + md += `${ themeJson.properties.templateParts.description }\n\n`; + md += '| Property | Description | Type |\n'; + md += '| -------- | ----------- | ---- |\n'; + const templatePartsProperties = Object.entries( + themeJson.properties.templateParts.items.properties + ); + for ( const [ property, subschema ] of templatePartsProperties ) { + const { description } = subschema; + const types = generateTypes( subschema ); + md += `| ${ property } | ${ description } | ${ types } |\n`; + } + md += '\n'; + + /* --------------- * + * patterns * + * --------------- */ + md += '## patterns\n\n'; + md += themeJson.properties.patterns.description + '\n\n'; + md += `Type: ${ generateTypes( themeJson.properties.patterns ) }.\n`; + + return md; +} + +/** + * Main function. + */ +async function main() { + const themeJson = await $RefParser.dereference( THEME_JSON_SCHEMA_PATH, { + parse: { binary: false, text: false, yaml: false }, + resolve: { external: false }, + } ); + + const themeJsonReference = await fs.readFile( REFERENCE_DOC_PATH, { + encoding: 'utf8', + flag: 'r', + } ); + + const generatedDocs = generateDocs( themeJson ); + const updatedThemeJsonReference = themeJsonReference.replace( + // `.` does not match new lines, but `[^]` will. + new RegExp( `${ START_TOKEN }[^]*${ END_TOKEN }` ), + `${ START_TOKEN }\n${ generatedDocs }\n${ END_TOKEN }` + ); + + await fs.writeFile( REFERENCE_DOC_PATH, updatedThemeJsonReference, { + encoding: 'utf8', + } ); +} + +main().catch( ( error ) => { + console.error( error ); + process.exit( 1 ); +} ); diff --git a/bin/build-plugin-zip.sh b/bin/build-plugin-zip.sh index 4ba931c4a4aeb6..c823ca6a8017f1 100755 --- a/bin/build-plugin-zip.sh +++ b/bin/build-plugin-zip.sh @@ -78,26 +78,16 @@ npm run build php bin/generate-gutenberg-php.php > gutenberg.tmp.php mv gutenberg.tmp.php gutenberg.php -build_files=$( - ls build/*/*.{js,js.map,css,asset.php} \ - build/block-library/blocks/*.php \ - build/block-library/blocks/*/block.json \ - build/block-library/blocks/*/*.{js,js.map,css,asset.php} \ - build/edit-widgets/blocks/*/block.json \ - build/widgets/blocks/*.php \ - build/widgets/blocks/*/block.json \ - build/style-engine/*.php \ -) - - # Generate the plugin zip file. status "Creating archive... 🎁" -zip -r gutenberg.zip \ +zip --recurse-paths --no-dir-entries \ + gutenberg.zip \ gutenberg.php \ lib \ packages/block-serialization-default-parser/*.php \ post-content.php \ - $build_files \ + build \ + build-module \ readme.txt \ changelog.txt \ README.md diff --git a/bin/check-latest-npm.js b/bin/check-latest-npm.js deleted file mode 100644 index 8b9f86e95dd567..00000000000000 --- a/bin/check-latest-npm.js +++ /dev/null @@ -1,134 +0,0 @@ -#!/usr/bin/env node - -/** - * External dependencies - */ -const { green, red, yellow } = require( 'chalk' ); -const { get } = require( 'https' ); -const { spawn } = require( 'child_process' ); -const semver = require( 'semver' ); - -/** - * Internal dependencies - */ -const { - engines: { npm: npmRange }, - // Ignore reason: `package.json` exists outside `bin` `rootDir`. - // @ts-ignore -} = require( '../package.json' ); - -/** - * Returns a promise resolving with the version number of the latest available - * version of npm. - * - * @return {Promise} Promise resolving with latest npm version. - */ -async function getLatestNPMVersion() { - return new Promise( ( resolve, reject ) => { - get( - 'https://registry.npmjs.org/npm', - { - headers: { - // By passing a specialized `Accept` header, the registry - // will return an abbreviated form of the package data which - // includes enough detail to determine the latest version. - // - // See: https://github.com/npm/registry/blob/HEAD/docs/responses/package-metadata.md - Accept: 'application/vnd.npm.install-v1+json', - }, - }, - async ( response ) => { - if ( response.statusCode !== 200 ) { - return reject( - new Error( 'Package data for npm not found' ) - ); - } - - let body = ''; - for await ( const chunk of response ) { - body += chunk.toString(); - } - - let data; - try { - data = JSON.parse( body ); - } catch { - return reject( - new Error( - 'Package data for npm returned invalid response body' - ) - ); - } - - const versions = Object.values( data[ 'dist-tags' ] ); - - resolve( semver.maxSatisfying( versions, npmRange ) ); - } - ).on( 'error', ( error ) => { - if ( - /** @type {NodeJS.ErrnoException} */ ( error ).code === - 'ENOTFOUND' - ) { - error = - new Error( `Could not contact the npm registry to determine latest version. - -This could be due to an intermittent outage of the service, or because you are not connected to the internet. - -Because it is important that \`package-lock.json\` files only be committed while running the latest version of npm, this commit has been blocked. - -If you are certain of your changes and desire to commit anyways, you should either connect to the internet or bypass commit verification using ${ yellow( - 'git commit --no-verify' - ) } .` ); - } - - reject( error ); - } ); - } ); -} - -/** - * Returns a promise resolving with the version number of the local installed - * version of npm. - * - * @return {Promise} Promise resolving with local installed npm version. - */ -async function getLocalNPMVersion() { - return new Promise( async ( resolve ) => { - // 'npm' doesn't work correctly on Windows. - // https://github.com/WordPress/gutenberg/issues/22484 - const command = process.platform === 'win32' ? 'npm.cmd' : 'npm'; - const childProcess = spawn( command, [ '-v' ] ); - - let output = ''; - for await ( const chunk of childProcess.stdout ) { - output += chunk.toString(); - } - - resolve( output.trim() ); - } ); -} - -Promise.all( [ getLatestNPMVersion(), getLocalNPMVersion() ] ) - .then( ( [ latest, local ] ) => { - if ( latest !== local ) { - throw new Error( - `The local npm version does not match the expected latest version. Expected ${ green( - latest - ) }, found ${ red( local ) }. - -It is required that you have the expected latest version of npm installed in order to commit a change to the package-lock.json file. - -Run ${ yellow( - `npm install --global npm@${ latest }` - ) } to install the expected latest version of npm. Before retrying your commit, run ${ yellow( - 'npm install' - ) } once more to ensure the package-lock.json contents are correct. If there are any changes to the file, they should be included in your commit.` - ); - } - } ) - .catch( ( error ) => { - console.error( - 'Latest npm check failed!\n\n' + error.toString() + '\n' - ); - process.exitCode = 1; - } ); diff --git a/bin/check-licenses.mjs b/bin/check-licenses.mjs new file mode 100755 index 00000000000000..458590e696a9fd --- /dev/null +++ b/bin/check-licenses.mjs @@ -0,0 +1,69 @@ +#!/usr/bin/env node + +/** + * External dependencies + */ +import { spawnSync } from 'node:child_process'; + +/** + * Internal dependencies + */ +import { checkDepsInTree } from '../packages/scripts/utils/license.js'; + +const ignored = [ '@ampproject/remapping' ]; + +/* + * `wp-scripts check-licenses` uses prod and dev dependencies of the package to scan for dependencies. With npm workspaces, workspace packages (the @wordpress/* packages) are not listed in the main package json and this approach does not work. + * + * Instead, work from an npm query that uses some custom information in package.json files to declare packages that are shipped with WordPress (and must be GPLv2 compatible) or other files that may use more permissive licenses. + */ + +/** + * @typedef PackageInfo + * @property {string} name Package name. + */ + +/** @type {ReadonlyArray} */ +const workspacePackages = JSON.parse( + spawnSync( + 'npm', + [ + 'query', + '.workspace:attr([wpScript]), .workspace:attr([wpScriptModuleExports])', + ], + /* + * Set the max buffer to ~157MB, since the output size for + * prod is ~21 MB and dev is ~110 MB + */ + { maxBuffer: 1024 * 1024 * 150 } + ).stdout +); + +const packageNames = workspacePackages.map( ( { name } ) => name ); + +const dependenciesToProcess = JSON.parse( + spawnSync( + 'npm', + [ + 'ls', + '--json', + '--long', + '--all', + '--lockfile-only', + '--omit=dev', + ...packageNames.map( + ( packageName ) => `--workspace=${ packageName }` + ), + ], + /* + * Set the max buffer to ~157MB, since the output size for + * prod is ~21 MB and dev is ~110 MB + */ + { maxBuffer: 1024 * 1024 * 150 } + ).stdout +).dependencies; + +checkDepsInTree( dependenciesToProcess, { + ignored, + gpl2: true, +} ); diff --git a/bin/cherry-pick.mjs b/bin/cherry-pick.mjs index 44bf05d2304029..b8661e696d7bd3 100644 --- a/bin/cherry-pick.mjs +++ b/bin/cherry-pick.mjs @@ -6,11 +6,13 @@ import readline from 'readline'; import { spawnSync } from 'node:child_process'; -const LABEL = process.argv[ 2 ] || 'Backport to WP Minor Release'; +const REPO = 'WordPress/gutenberg'; +const LABEL = process.argv[ 2 ] || 'Backport to WP Beta/RC'; +const BACKPORT_COMPLETED_LABEL = 'Backported to WP Core'; const BRANCH = getCurrentBranch(); const GITHUB_CLI_AVAILABLE = spawnSync( 'gh', [ 'auth', 'status' ] ) - ?.stderr?.toString() - .includes( '✓ Logged in to github.com as' ); + ?.stdout?.toString() + .includes( '✓ Logged in to github.com' ); const AUTO_PROPAGATE_RESULTS_TO_GITHUB = GITHUB_CLI_AVAILABLE; @@ -112,14 +114,28 @@ function cli( command, args, pipe = false ) { */ async function fetchPRs() { const { items } = await GitHubFetch( - `/search/issues?q=is:pr state:closed sort:updated label:"${ LABEL }" repo:WordPress/gutenberg` + `/search/issues?per_page=100&q=is:pr state:closed sort:updated label:"${ LABEL }" repo:${ REPO }` + ); + const PRs = items + // eslint-disable-next-line camelcase + .map( ( { id, number, title, pull_request } ) => ( { + id, + number, + title, + // eslint-disable-next-line camelcase + pull_request, + } ) ) + // eslint-disable-next-line camelcase + .filter( ( { pull_request } ) => !! pull_request?.merged_at ) + .sort( + ( a, b ) => + new Date( a?.pull_request?.merged_at ) - + new Date( b?.pull_request?.merged_at ) + ); + + console.log( + 'Found the following PRs to cherry-pick (sorted by closed date in ascending order): ' ); - const PRs = items.map( ( { id, number, title } ) => ( { - id, - number, - title, - } ) ); - console.log( 'Found the following PRs to cherry-pick: ' ); PRs.forEach( ( { number, title } ) => console.log( indent( `#${ number } – ${ title }` ) ) ); @@ -128,7 +144,7 @@ async function fetchPRs() { const PRsWithMergeCommit = []; for ( const PR of PRs ) { const { merge_commit_sha: mergeCommitHash } = await GitHubFetch( - '/repos/WordPress/Gutenberg/pulls/' + PR.number + `/repos/${ REPO }/pulls/` + PR.number ); PRsWithMergeCommit.push( { ...PR, @@ -155,14 +171,25 @@ async function fetchPRs() { * @return {Promise} Parsed response JSON. */ async function GitHubFetch( path ) { + const token = getGitHubAuthToken(); const response = await fetch( 'https://api.github.com' + path, { headers: { Accept: 'application/vnd.github.v3+json', + Authorization: `Bearer ${ token }`, }, } ); return await response.json(); } +/** + * Retrieves the GitHub authentication token using `gh auth token`. + * + * @return {string} The GitHub authentication token. + */ +function getGitHubAuthToken() { + return cli( 'gh', [ 'auth', 'token' ] ); +} + /** * Attempts to cherry-pick given PRs using `git` CLI command. * @@ -323,6 +350,11 @@ function reportSummaryNextSteps( successes, failures ) { nextSteps.push( 'Push this branch' ); nextSteps.push( 'Go to each of the cherry-picked Pull Requests' ); nextSteps.push( `Remove the ${ LABEL } label` ); + + if ( LABEL === 'Backport to WP Beta/RC' ) { + nextSteps.push( `Add the "${ BACKPORT_COMPLETED_LABEL }" label` ); + } + nextSteps.push( 'Request a backport to wordpress-develop if required' ); nextSteps.push( 'Comment, say that PR just got cherry-picked' ); } @@ -349,9 +381,22 @@ function reportSummaryNextSteps( successes, failures ) { function GHcommentAndRemoveLabel( pr ) { const { number, cherryPickHash } = pr; const comment = prComment( cherryPickHash ); + const repo = [ '--repo', REPO ]; try { - cli( 'gh', [ 'pr', 'comment', number, '--body', comment ] ); - cli( 'gh', [ 'pr', 'edit', number, '--remove-label', LABEL ] ); + cli( 'gh', [ 'pr', 'comment', number, ...repo, '--body', comment ] ); + cli( 'gh', [ 'pr', 'edit', number, ...repo, '--remove-label', LABEL ] ); + + if ( LABEL === 'Backport to WP Beta/RC' ) { + cli( 'gh', [ + 'pr', + 'edit', + number, + ...repo, + '--add-label', + BACKPORT_COMPLETED_LABEL, + ] ); + } + console.log( `✅ ${ number }: ${ comment }` ); } catch ( e ) { console.log( `❌ ${ number }. ${ comment } ` ); @@ -402,7 +447,7 @@ function reportFailure( { number, title, error, mergeCommitHash } ) { * @return {string} PR URL. */ function prUrl( number ) { - return `https://github.com/WordPress/gutenberg/pull/${ number } `; + return `https://github.com/${ REPO }/pull/${ number } `; } /** @@ -435,7 +480,7 @@ function getCurrentBranch() { */ async function reportGhUnavailable() { console.log( - 'Github CLI is not setup. This script will not be able to automatically' + 'GitHub CLI is not setup. This script will not be able to automatically' ); console.log( 'comment on the processed PRs and remove the backport label from them.' diff --git a/bin/docker-compose.override.yml.template b/bin/docker-compose.override.yml.template deleted file mode 100644 index 465211fe7a4a63..00000000000000 --- a/bin/docker-compose.override.yml.template +++ /dev/null @@ -1,17 +0,0 @@ -services: - wordpress-develop: - volumes: - - %PLUGIN_MOUNT_DIR%:/var/www/${LOCAL_DIR-src}/wp-content/plugins/%PLUGIN_INSTALL_DIR% - - %PLUGIN_MOUNT_DIR%/packages/e2e-tests/plugins:/var/www/${LOCAL_DIR-src}/wp-content/plugins/gutenberg-test-plugins - - %PLUGIN_MOUNT_DIR%/packages/e2e-tests/mu-plugins:/var/www/${LOCAL_DIR-src}/wp-content/mu-plugins - php: - volumes: - - %PLUGIN_MOUNT_DIR%:/var/www/${LOCAL_DIR-src}/wp-content/plugins/%PLUGIN_INSTALL_DIR% - - %PLUGIN_MOUNT_DIR%/packages/e2e-tests/plugins:/var/www/${LOCAL_DIR-src}/wp-content/plugins/gutenberg-test-plugins - - %PLUGIN_MOUNT_DIR%/packages/e2e-tests/mu-plugins:/var/www/${LOCAL_DIR-src}/wp-content/mu-plugins - cli: - volumes: - - %PLUGIN_MOUNT_DIR%:/var/www/${LOCAL_DIR-src}/wp-content/plugins/%PLUGIN_INSTALL_DIR% - phpunit: - volumes: - - %PLUGIN_MOUNT_DIR%:/var/www/${LOCAL_DIR-src}/wp-content/plugins/%PLUGIN_INSTALL_DIR% diff --git a/bin/generate-php-sync-issue.mjs b/bin/generate-php-sync-issue.mjs new file mode 100644 index 00000000000000..bd627aeb65107c --- /dev/null +++ b/bin/generate-php-sync-issue.mjs @@ -0,0 +1,467 @@ +/** + * External dependencies + */ + +import Octokit from '@octokit/rest'; +import fs from 'fs'; + +import { fileURLToPath } from 'url'; +import nodePath, { dirname } from 'path'; + +function getArg( argName ) { + const arg = process.argv.find( ( _arg ) => + _arg.startsWith( `--${ argName }=` ) + ); + return arg ? arg.split( '=' )[ 1 ] : null; +} + +const OWNER = 'wordpress'; +const REPO = 'gutenberg'; +const MAX_MONTHS_TO_QUERY = 4; + +// The following paths will be ignored when generating the issue content. +const IGNORED_PATHS = [ + 'init.php', // plugin specific code. + 'lib/load.php', // plugin specific code. + 'lib/experiments-page.php', // experiments are plugin specific. + 'packages/e2e-tests/plugins', // PHP files related to e2e tests only. + 'packages/block-library', // packages are synced to WP Core via npm packages. +]; + +// PRs containing the following labels will be ignored when generating the issue content. +const LABELS_TO_IGNORE = [ + 'Backport from WordPress Core', // PRs made "upstream" in Core that were synced back into Gutenberg. + 'Backported to WP Core', // PRs that were synced into Core during a previous release. +]; + +const MAX_NESTING_LEVEL = 3; + +const __filename = fileURLToPath( import.meta.url ); +const __dirname = dirname( __filename ); + +const authToken = getArg( 'token' ); +const stableWPRelease = getArg( 'wpstable' ); + +async function main() { + if ( ! authToken ) { + console.error( + 'Error. The --token argument is required. See: https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-fine-grained-personal-access-token' + ); + process.exit( 1 ); + } + + if ( ! stableWPRelease ) { + console.error( + 'Error. The --wpstable argument is required. It should be the current stable WordPress release (e.g. 6.4).' + ); + process.exit( 1 ); + } + + const sinceArg = getArg( 'since' ); + let since; + + if ( sinceArg ) { + if ( validateDate( sinceArg ) ) { + since = sinceArg; + } else { + console.error( + `Error: The --since argument cannot be more than ${ MAX_MONTHS_TO_QUERY } months from the current date.` + ); + process.exit( 1 ); + } + } else { + console.error( + `Error. The --since argument is required (e.g. YYYY-MM-DD). This should be the date of the final Gutenberg release that was included in the last stable WP Core release (see https://developer.wordpress.org/block-editor/contributors/versions-in-wordpress/).` + ); + process.exit( 1 ); + } + + console.log( 'Welcome to the PHP Sync Issue Generator!' ); + + console.log( '--------------------------------' ); + console.log( '• Running script...' ); + + // These should be paths where we expect to find PHP files that + // will require syncing to WordPress Core. This list should be + // extremely selective. + const paths = [ '/lib', '/phpunit' ]; + + console.log( `• Fetching all commits made to ${ REPO } since: ${ since }` ); + let commits = await fetchAllCommitsFromPaths( since, paths ); + + // Remove identical commits based on sha + commits = commits.reduce( ( acc, current ) => { + const x = acc.find( ( item ) => item.sha === current.sha ); + if ( ! x ) { + return acc.concat( [ current ] ); + } + return acc; + }, [] ); + + // Fetch the full commit data for each of the commits. + // This is because the /commits endpoint does not include the + // information about the `files` modified in the commit. + console.log( + `• Fetching full commit data for ${ commits.length } commits` + ); + const commitsWithCommitData = await Promise.all( + commits.map( async ( commit ) => { + const commitData = await fetchCommit( commit.sha ); + + const fullPRData = await getPullRequestDataForCommit( commit.sha ); + + // Our Issue links to the PRs associated with the commits so we must + // provide this data. We could also get the PR data from the commit data, + // using getPullRequestDataForCommit, but that requires yet another + // network request. Therefore we optimise for trying to build + // the PR URL from the commit data we have available. + commitData.pullRequest = { + url: fullPRData?.html_url || buildPRURL( commit ), + creator: + fullPRData?.user?.login || + commit?.author?.login || + 'unknown', + labels: fullPRData?.labels || [], + }; + + // if the PR labels contain any of the labels to ignore, skip this commit + // by returning null. + if ( + commitData.pullRequest.labels.some( ( label ) => + LABELS_TO_IGNORE.includes( label.name ) + ) + ) { + return null; + } + + return commitData; + } ) + ); + + const processResult = pipe( + processCommits, + reduceNesting, + dedupePRsPerLevel, + removeEmptyLevels, + sortLevels + ); + + console.log( `• Processing ${ commitsWithCommitData.length } commits` ); + const result = processResult( commitsWithCommitData ); + + console.log( `• Generating Issue content` ); + const content = generateIssueContent( result ); + + // Write the Markdown content to a file + fs.writeFileSync( nodePath.join( __dirname, 'issueContent.md' ), content ); +} + +/** + * Checks if the first date is after the second date. + * + * @param {string} date1 - The first date. + * @param {string} date2 - The second date. + * @return {boolean} - Returns true if the first date is after the second date, false otherwise. + */ +function isAfter( date1, date2 ) { + return new Date( date1 ) > new Date( date2 ); +} + +function validateDate( sinceArg ) { + const sinceDate = new Date( sinceArg ); + const maxPreviousDate = new Date(); + maxPreviousDate.setMonth( + maxPreviousDate.getMonth() - MAX_MONTHS_TO_QUERY + ); + + return sinceDate >= maxPreviousDate; +} + +async function octokitPaginate( method, params ) { + return octokitRequest( method, params, { paginate: true } ); +} + +async function octokitRequest( method = '', params = {}, settings = {} ) { + const octokit = new Octokit( { auth: authToken } ); + params.owner = OWNER; + params.repo = REPO; + + const requestType = settings?.paginate ? 'paginate' : 'request'; + + try { + const result = await octokit[ requestType ]( method, params ); + + if ( requestType === 'paginate' ) { + return result; + } + return result.data; + } catch ( error ) { + console.error( + `Error making request to ${ method }: ${ error.message }` + ); + process.exit( 1 ); + } +} + +async function fetchAllCommitsFromPaths( since, paths ) { + let commits = []; + + for ( const path of paths ) { + const pathCommits = await fetchAllCommits( since, path ); + commits = [ ...commits, ...pathCommits ]; + } + + return commits; +} + +function buildPRURL( commit ) { + const prIdMatch = commit.commit.message.match( /\(#(\d+)\)/ ); + const prId = prIdMatch ? prIdMatch[ 1 ] : null; + return prId + ? `https://github.com/WordPress/gutenberg/pull/${ prId }` + : `[Commit](${ commit.html_url })`; +} + +function sortLevels( data ) { + function processLevel( levelData ) { + const processedData = {}; + + // Separate directories and files + const directories = {}; + const files = {}; + + for ( const [ key, value ] of Object.entries( levelData ) ) { + if ( key.endsWith( '.php' ) ) { + files[ key ] = Array.isArray( value ) + ? value + : processLevel( value ); + } else { + directories[ key ] = Array.isArray( value ) + ? value + : processLevel( value ); + } + } + + // Combine directories and files + Object.assign( processedData, directories, files ); + + return processedData; + } + + return processLevel( data ); +} + +function removeEmptyLevels( data ) { + function processLevel( levelData ) { + const processedData = {}; + + for ( const [ key, value ] of Object.entries( levelData ) ) { + if ( Array.isArray( value ) ) { + if ( value.length > 0 ) { + processedData[ key ] = value; + } + } else { + const processedLevel = processLevel( value ); + if ( Object.keys( processedLevel ).length > 0 ) { + processedData[ key ] = processedLevel; + } + } + } + + return processedData; + } + + return processLevel( data ); +} + +function dedupePRsPerLevel( data ) { + function processLevel( levelData ) { + const processedData = {}; + const prSet = new Set(); + + for ( const [ key, value ] of Object.entries( levelData ) ) { + if ( Array.isArray( value ) ) { + processedData[ key ] = value.filter( ( commit ) => { + if ( ! prSet.has( commit.pullRequest.url ) ) { + prSet.add( commit.pullRequest.url ); + return true; + } + return false; + } ); + } else { + processedData[ key ] = processLevel( value ); + } + } + + return processedData; + } + + return processLevel( data ); +} + +function reduceNesting( data ) { + function processLevel( levelData, level = 1 ) { + const processedData = {}; + + for ( const [ key, value ] of Object.entries( levelData ) ) { + if ( Array.isArray( value ) ) { + processedData[ key ] = value; + } else if ( level < MAX_NESTING_LEVEL ) { + processedData[ key ] = processLevel( value, level + 1 ); + } else { + processedData[ key ] = flattenData( value ); + } + } + + return processedData; + } + + function flattenData( nestedData ) { + let flatData = []; + + for ( const value of Object.values( nestedData ) ) { + if ( Array.isArray( value ) ) { + flatData = [ ...flatData, ...value ]; + } else { + flatData = [ ...flatData, ...flattenData( value ) ]; + } + } + + return flatData; + } + + return processLevel( data ); +} + +function processCommits( commits ) { + const result = {}; + + // This dir sholud be ignored, since whatever is in there is already in core. + // It exists to provide compatibility for older releases, because we have to + // support the current and the previous WP versions. + // See: https://github.com/WordPress/gutenberg/pull/57890#pullrequestreview-1828994247. + const prevReleaseCompatDirToIgnore = `lib/compat/wordpress-${ stableWPRelease }`; + + commits.forEach( ( commit ) => { + // Skip commits without an associated pull request + if ( ! commit?.pullRequest ) { + return; + } + commit.files.forEach( ( file ) => { + // Skip files that are not PHP files. + if ( ! file.filename.endsWith( '.php' ) ) { + return; + } + + if ( + [ ...IGNORED_PATHS, prevReleaseCompatDirToIgnore ].some( + ( path ) => + file.filename.startsWith( path ) || + file.filename === path + ) + ) { + // Skip files within specific packages. + return; + } + + const parts = file.filename.split( '/' ); + + let current = result; + + // If the file is under 'phpunit', always add it to the 'phpunit' key + // as it's helpful to have a full list of commits that modify tests. + if ( parts.includes( 'phpunit' ) ) { + current.phpunit = current.phpunit || []; + current.phpunit = [ ...current.phpunit, commit ]; + } + + for ( let i = 0; i < parts.length; i++ ) { + const part = parts[ i ]; + + if ( i === parts.length - 1 ) { + current[ part ] = current[ part ] || []; + current[ part ] = [ ...current[ part ], commit ]; + } else { + current[ part ] = current[ part ] || {}; + current = current[ part ]; + } + } + } ); + } ); + + return result; +} + +function formatPRLine( { pullRequest: pr } ) { + return `- [ ] ${ pr.url } - @${ pr.creator } | Trac ticket | Core backport PR \n`; +} + +function formatHeading( level, key ) { + const emoji = key.endsWith( '.php' ) ? '📄' : '📁'; + return `${ '#'.repeat( level ) } ${ emoji } ${ key }\n\n`; +} + +function generateIssueContent( result, level = 1 ) { + let issueContent = ''; + let isFirstSection = true; + + for ( const [ key, value ] of Object.entries( result ) ) { + // Add horizontal rule divider between sections, but not before the first section + if ( level <= 2 && ! isFirstSection ) { + issueContent += '\n---\n'; + } + + issueContent += formatHeading( level, key ); + + if ( Array.isArray( value ) ) { + value.forEach( ( commit ) => { + issueContent += formatPRLine( commit ); + } ); + } else { + issueContent += generateIssueContent( value, level + 1 ); + } + + isFirstSection = false; + } + + return issueContent; +} + +async function fetchAllCommits( since, path ) { + return octokitPaginate( 'GET /repos/{owner}/{repo}/commits', { + since, + per_page: 30, + path, + } ); +} + +async function fetchCommit( sha ) { + return octokitRequest( 'GET /repos/{owner}/{repo}/commits/{sha}', { + sha, + } ); +} + +// eslint-disable-next-line no-unused-vars +async function getPullRequestDataForCommit( commitSha ) { + const pullRequests = await octokitRequest( + 'GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls', + { + commit_sha: commitSha, + } + ); + + // If a related Pull Request is found, return its URL and creator + if ( pullRequests.length > 0 ) { + const pullRequest = pullRequests[ 0 ]; + return pullRequest; + } + + return null; +} + +const pipe = + ( ...fns ) => + ( x ) => + fns.reduce( ( v, f ) => f( v ), x ); + +main(); diff --git a/bin/generate-public-grammar.js b/bin/generate-public-grammar.js deleted file mode 100755 index d66577adbc4d02..00000000000000 --- a/bin/generate-public-grammar.js +++ /dev/null @@ -1,121 +0,0 @@ -#!/usr/bin/env node - -/** - * Internal dependencies - */ -const parser = require( '../node_modules/pegjs/lib/parser.js' ); - -/** - * External dependencies - */ -const fs = require( 'fs' ); -const path = require( 'path' ); -const grammarSource = fs.readFileSync( - './packages/block-serialization-spec-parser/grammar.pegjs', - 'utf8' -); -const grammar = parser.parse( grammarSource ); - -function escape( text ) { - return text - .replace( /\t/g, '\\t' ) - .replace( /\r/g, '\\r' ) - .replace( /\n/g, '\\n' ) - .replace( /\&/g, '&' ) - .replace( /= 0 - ); -} - -function flattenUnary( expression ) { - const shouldWrap = isGroup( expression ); - const inner = flatten( expression ); - return shouldWrap ? '(' + inner + ')' : inner; -} - -function flatten( expression ) { - switch ( expression.type ) { - // Terminal - case 'any': - return '.'; - case 'rule_ref': - return expression.name; - case 'literal': - return '"' + escape( expression.value ) + '"'; - case 'class': - return ( - '[' + - ( expression.inverted ? '^' : '' ) + - expression.parts - .map( ( part ) => - escape( - Array.isArray( part ) ? part.join( '-' ) : part - ) - ) - .join( '' ) + - ']' + - ( expression.ignoreCase ? 'i' : '' ) - ); - - // Unary - case 'zero_or_more': - return flattenUnary( expression.expression ) + '*'; - case 'one_or_more': - return flattenUnary( expression.expression ) + '+'; - case 'optional': - return flattenUnary( expression.expression ) + '?'; - case 'simple_not': - return '!' + flattenUnary( expression.expression ); - - // Other groups - case 'sequence': - return expression.elements.map( flatten ).join( ' ' ); - case 'choice': - const sep = expression.isRuleTop ? '\n / ' : ' / '; - return expression.alternatives.map( flatten ).join( sep ); - case 'group': - return '(' + flatten( expression.expression ) + ')'; - case 'text': - // Avoid double parentheses - const inner = flatten( expression.expression ); - const shouldWrap = inner.indexOf( '(' ) !== 0; - return shouldWrap ? '$(' + inner + ')' : '$' + inner; - case 'action': - case 'labeled': - case 'named': - return flatten( expression.expression ); - - // Top-level formatting - case 'grammar': - return `
${ expression.rules.map( flatten ).join( '' ) }
`; - case 'rule': - expression.expression.isRuleTop = true; - const displayName = - expression.expression.type === 'named' - ? expression.expression.name - : ''; - return ( - `
${ displayName }
` + - `
${ expression.name }
= ` + - `${ flatten( expression.expression ) }
` - ); - - default: - throw new Error( JSON.stringify( expression ) ); - } -} - -fs.writeFileSync( - path.join( __dirname, '..', 'docs', 'contributors', 'grammar.md' ), - ` -# Block Grammar - -${ flatten( grammar ) } -` -); diff --git a/bin/list-experimental-api-matches.sh b/bin/list-experimental-api-matches.sh new file mode 100755 index 00000000000000..d9399e63e5cf64 --- /dev/null +++ b/bin/list-experimental-api-matches.sh @@ -0,0 +1,65 @@ +#!/bin/sh + +# Generate a Markdown-formatted list of experimental APIs found across our +# packages and lib, providing GitHub search links for each match. +# +# Experimental APIs must be regularly audited, particularly in the context of +# major WordPress releases. This script allows release leads to generate a list +# to share in release issues. +# +# @see example audit issue for WordPress 6.2: +# https://github.com/WordPress/gutenberg/issues/47196 + +# Exit if any command fails. +set -e + +# Change to the root directory. +cd "$(dirname "$0")" +cd .. + +# POSIX: prefer standard grep over rg. Git is assumed present (ls-files), but +# could be replaced with find. +grep_experimental_apis() { + git ls-files packages/* lib \ + | grep -E '\.(js|ts|jsx|tsx|php)$' \ + | grep -v __tests__ \ + | xargs grep -Eo '__experimental\w+' +} + +# For each line as `:`, rewrite as ` `. +namespace() { + awk -F: ' + { print module($1), $2 } + function module(path) { + split(path, parts, "/") + if (parts[1] == "lib") return "lib" + return parts[1] "/" parts[2] + }' +} + +# Like uniq, but applied across packages: if `__experimentalFoo` appears in +# packages A and B, only keep the occurrence under A. +compact() { + sort | uniq | awk '{ + if (known_api[$2]) next + known_api[$2] = 1 + print + }' +} + +# Output a heading for each package and a link for each experimental API. +format() { + awk '{ + if (prev_dir != $1) { + if (NR > 1) print "" + printf "## `%s`\n", $1 + prev_dir = $1 + } + printf "[`%s`](/WordPress/gutenberg/search?q=%s)\n", $2, $2 + }' +} + +grep_experimental_apis \ + | namespace \ + | compact \ + | format diff --git a/bin/log-performance-results.js b/bin/log-performance-results.js new file mode 100755 index 00000000000000..da22253546eb61 --- /dev/null +++ b/bin/log-performance-results.js @@ -0,0 +1,101 @@ +#!/usr/bin/env node + +/** + * External dependencies + */ +const fs = require( 'fs' ); +const path = require( 'path' ); +const https = require( 'https' ); +const [ token, branch, hash, baseHash, timestamp ] = process.argv.slice( 2 ); + +const resultsFiles = [ + { + file: 'post-editor.performance-results.json', + metricsPrefix: '', + }, + { + file: 'site-editor.performance-results.json', + metricsPrefix: 'site-editor-', + }, + { + file: 'front-end-block-theme.performance-results.json', + metricsPrefix: 'block-theme-', + }, + { + file: 'front-end-classic-theme.performance-results.json', + metricsPrefix: 'classic-theme-', + }, +]; + +const performanceResults = resultsFiles.map( ( { file } ) => + JSON.parse( + fs.readFileSync( + path.join( process.env.WP_ARTIFACTS_PATH, file ), + 'utf8' + ) + ) +); + +const data = new TextEncoder().encode( + JSON.stringify( { + branch, + hash, + baseHash, + timestamp, + metrics: resultsFiles.reduce( ( result, { metricsPrefix }, index ) => { + return { + ...result, + ...Object.fromEntries( + Object.entries( + performanceResults[ index ][ hash ] ?? {} + ).map( ( [ key, value ] ) => [ + metricsPrefix + key, + typeof value === 'object' ? value.q50 : value, + ] ) + ), + }; + }, {} ), + baseMetrics: resultsFiles.reduce( + ( result, { metricsPrefix }, index ) => { + return { + ...result, + ...Object.fromEntries( + Object.entries( + performanceResults[ index ][ baseHash ] ?? {} + ).map( ( [ key, value ] ) => [ + metricsPrefix + key, + typeof value === 'object' ? value.q50 : value, + ] ) + ), + }; + }, + {} + ), + } ) +); + +const options = { + hostname: 'codehealth.vercel.app', + port: 443, + path: '/api/log?token=' + token, + method: 'POST', + headers: { + 'Content-Type': 'application/json', + 'Content-Length': data.length, + }, +}; + +const req = https.request( options, ( res ) => { + console.log( `statusCode: ${ res.statusCode }` ); + + res.on( 'data', ( d ) => { + process.stdout.write( d ); + } ); +} ); + +req.on( 'error', ( error ) => { + console.error( error ); +} ); + +req.write( data ); +req.end(); diff --git a/bin/log-perormance-results.js b/bin/log-perormance-results.js deleted file mode 100755 index 0405b69791bdd0..00000000000000 --- a/bin/log-perormance-results.js +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/env node - -/** - * External dependencies - */ -const fs = require( 'fs' ); -const path = require( 'path' ); -const https = require( 'https' ); -const [ token, branch, hash, baseHash, timestamp ] = process.argv.slice( 2 ); - -const performanceResults = JSON.parse( - fs.readFileSync( - path.join( __dirname, '../post-editor-performance-results.json' ), - 'utf8' - ) -); - -const data = new TextEncoder().encode( - JSON.stringify( { - branch, - hash, - baseHash, - timestamp: parseInt( timestamp, 10 ), - metrics: performanceResults[ hash ], - baseMetrics: performanceResults[ baseHash ], - } ) -); - -const options = { - hostname: 'codehealth.vercel.app', - port: 443, - path: '/api/log?token=' + token, - method: 'POST', - headers: { - 'Content-Type': 'application/json', - 'Content-Length': data.length, - }, -}; - -const req = https.request( options, ( res ) => { - console.log( `statusCode: ${ res.statusCode }` ); - - res.on( 'data', ( d ) => { - process.stdout.write( d ); - } ); -} ); - -req.on( 'error', ( error ) => { - console.error( error ); -} ); - -req.write( data ); -req.end(); diff --git a/bin/packages/build-worker.js b/bin/packages/build-worker.js index e82091ff843749..06e30efc6c6dc9 100644 --- a/bin/packages/build-worker.js +++ b/bin/packages/build-worker.js @@ -13,6 +13,8 @@ const postcss = require( 'postcss' ); */ const getBabelConfig = require( './get-babel-config' ); +const isDev = process.env.NODE_ENV === 'development'; + /** * Path to packages directory. * @@ -27,10 +29,12 @@ const PACKAGES_DIR = path * * @type {Object} */ -const JS_ENVIRONMENTS = { - main: 'build', - module: 'build-module', -}; +const JS_ENVIRONMENTS = isDev + ? { module: 'build-module' } + : { + main: 'build', + module: 'build-module', + }; /** * Promisified fs.readFile. @@ -103,9 +107,13 @@ async function buildCSS( file ) { 'animations', 'z-index', ] - // Editor styles should be excluded from the default CSS vars output. + // Editor and component styles should be excluded from the default CSS vars output. .concat( - file.includes( 'common.scss' ) || ! file.includes( 'block-library' ) + file.includes( 'common.scss' ) || + ! ( + file.includes( 'block-library' ) || + file.includes( 'components' ) + ) ? [ 'default-custom-properties' ] : [] ) @@ -118,9 +126,10 @@ async function buildCSS( file ) { data: ''.concat( '@use "sass:math";', importLists, contents ), } ); - const result = await postcss( - require( '@wordpress/postcss-plugins-preset' ) - ).process( builtSass.css, { + const result = await postcss( [ + require( 'postcss-local-keyframes' ), + ...require( '@wordpress/postcss-plugins-preset' ), + ] ).process( builtSass.css, { from: 'src/app.css', to: 'dest/app.css', } ); diff --git a/bin/packages/build.js b/bin/packages/build.js index f4597d4f1425fa..61914bab5700a7 100755 --- a/bin/packages/build.js +++ b/bin/packages/build.js @@ -1,3 +1,5 @@ +#!/usr/bin/env node + /** * External dependencies */ diff --git a/bin/packages/check-build-type-declaration-files.js b/bin/packages/check-build-type-declaration-files.js new file mode 100644 index 00000000000000..ffc68c83b8da8e --- /dev/null +++ b/bin/packages/check-build-type-declaration-files.js @@ -0,0 +1,124 @@ +/** + * This script verifies the published index.d.ts file for every package which both + * builds types and also sets checkJs to false in its tsconfig.json. (This scenario + * can cause unchecked errors in JS files to be included in the compiled types.) + * + * We do so by running `tsc --noEmit` on the $package/build-types/index.d.ts file. + * This also verifies everything index.d.ts references, so it checks the entire + * public api of the type declarations for that package. + * + * @see https://github.com/WordPress/gutenberg/pull/49650 for more discussion. + */ + +/** + * External dependencies + */ +const fs = require( 'fs' ).promises; +const path = require( 'path' ); +const { exec } = require( 'child_process' ); +const chalk = require( 'chalk' ); + +/** + * Returns whether a package needs its compiled types to be double-checked. This + * needs to happen when both of these are true: + * 1. The package compiles types. (It has a tsconfig file.) + * 2. The tsconfig sets checkJs to false. + * + * NOTE: In the future, if we run into issues parsing JSON, we should migrate to + * a proper json5 parser, such as the json5 npm package. The current regex just + * handles comments, which at the time is the only thing we use from JSON5. + * + * @param {string} packagePath Path to the package. + * @return {boolean} whether or not the package checksJs. + */ +async function packageNeedsExtraCheck( packagePath ) { + const configPath = path.join( packagePath, 'tsconfig.json' ); + + try { + const tsconfigRaw = await fs.readFile( configPath, 'utf-8' ); + // Removes comments from the JSON5 string to convert it to plain JSON. + const jsonString = tsconfigRaw.replace( /\s+\/\/.*$/gm, '' ); + const config = JSON.parse( jsonString ); + + // If checkJs both exists and is false, then we need the extra check. + return config.compilerOptions?.checkJs === false; + } catch ( e ) { + if ( e.code !== 'ENOENT' ) { + throw e; + } + + // No tsconfig means no checkJs + return false; + } +} + +// Returns the path to the build-types declaration file for a package if it exists. +// Throws an error and exits the script otherwise. +async function getDecFile( packagePath ) { + const decFile = path.join( packagePath, 'build-types', 'index.d.ts' ); + try { + await fs.access( decFile ); + return decFile; + } catch ( err ) { + console.error( + `Cannot access this declaration file. You may need to run tsc again: ${ decFile }` + ); + process.exit( 1 ); + } +} + +async function typecheckDeclarations( file ) { + return new Promise( ( resolve, reject ) => { + exec( + `npx tsc --target esnext --moduleResolution node --noEmit --skipLibCheck "${ file }"`, + ( error, stdout, stderr ) => { + if ( error ) { + reject( { file, error, stderr, stdout } ); + } else { + resolve( { file, stdout } ); + } + } + ); + } ); +} + +async function checkUnverifiedDeclarationFiles() { + const packageDir = path.resolve( 'packages' ); + const packageDirs = ( + await fs.readdir( packageDir, { withFileTypes: true } ) + ) + .filter( ( dirent ) => dirent.isDirectory() ) + .map( ( dirent ) => path.join( packageDir, dirent.name ) ); + + // Finds the compiled type declarations for each package which both checks + // types and has checkJs disabled. + const declarations = ( + await Promise.all( + packageDirs.map( async ( pkg ) => + ( await packageNeedsExtraCheck( pkg ) ) + ? getDecFile( pkg ) + : null + ) + ) + ).filter( Boolean ); + + const tscResults = await Promise.allSettled( + declarations.map( typecheckDeclarations ) + ); + + tscResults.forEach( ( { status, reason } ) => { + if ( status !== 'fulfilled' ) { + console.error( + chalk.red( + `Incorrect published types for ${ reason.file }:\n` + ), + reason.stdout + ); + } + } ); + + if ( tscResults.some( ( { status } ) => status !== 'fulfilled' ) ) { + process.exit( 1 ); + } +} +checkUnverifiedDeclarationFiles(); diff --git a/bin/packages/get-babel-config.js b/bin/packages/get-babel-config.js index 91fe4b07d325e6..9427549cafaba6 100644 --- a/bin/packages/get-babel-config.js +++ b/bin/packages/get-babel-config.js @@ -11,6 +11,8 @@ module.exports = ( environment = '', file ) => { name: `WP_BUILD_${ environment.toUpperCase() }`, }, }; + // Add `/* wp:polyfill */` magic comment where needed. + callerOpts.caller.addPolyfillComments = true; switch ( environment ) { case 'main': // To be merged as a presetEnv option. diff --git a/bin/packages/get-packages.js b/bin/packages/get-packages.js index 695eee03c440e2..42ba08afed6f68 100644 --- a/bin/packages/get-packages.js +++ b/bin/packages/get-packages.js @@ -3,7 +3,6 @@ */ const fs = require( 'fs' ); const path = require( 'path' ); -const { isEmpty } = require( 'lodash' ); /** * Absolute path to packages directory. @@ -43,7 +42,7 @@ function hasModuleField( file ) { return false; } - return ! isEmpty( pkg.module ); + return !! pkg.module; } /** diff --git a/bin/packages/lint-staged-typecheck.js b/bin/packages/lint-staged-typecheck.js index 30c513ec983c5e..8e656755134f18 100644 --- a/bin/packages/lint-staged-typecheck.js +++ b/bin/packages/lint-staged-typecheck.js @@ -1,7 +1,6 @@ /** * External dependencies */ -const _ = require( 'lodash' ); const path = require( 'path' ); const fs = require( 'fs' ); const execa = require( 'execa' ); @@ -18,18 +17,22 @@ const tscPath = path.join( repoRoot, 'node_modules', '.bin', 'tsc' ); const changedFiles = process.argv.slice( 2 ); // Transform changed files to package directories containing tsconfig.json. -const changedPackages = _.uniq( - changedFiles.map( ( fullPath ) => { - const relativePath = path.relative( repoRoot, fullPath ); - return path.join( ...relativePath.split( path.sep ).slice( 0, 2 ) ); - } ) -).filter( ( packageRoot ) => +const changedPackages = [ + ...new Set( + changedFiles.map( ( fullPath ) => { + const relativePath = path.relative( repoRoot, fullPath ); + return path.join( ...relativePath.split( path.sep ).slice( 0, 2 ) ); + } ) + ), +].filter( ( packageRoot ) => fs.existsSync( path.join( packageRoot, 'tsconfig.json' ) ) ); -try { - execa.sync( tscPath, [ '--build', ...changedPackages ] ); -} catch ( err ) { - console.error( err.stdout ); - process.exitCode = 1; +if ( changedPackages.length > 0 ) { + try { + execa.sync( tscPath, [ '--build', ...changedPackages ] ); + } catch ( err ) { + console.error( err.stdout ); + process.exitCode = 1; + } } diff --git a/bin/plugin/commands/changelog.js b/bin/plugin/commands/changelog.js index e6fb8c7054b16e..eac0f7b268d5bf 100644 --- a/bin/plugin/commands/changelog.js +++ b/bin/plugin/commands/changelog.js @@ -1,7 +1,6 @@ /** * External dependencies */ -const { groupBy } = require( 'lodash' ); const Octokit = require( '@octokit/rest' ); const { sprintf } = require( 'sprintf-js' ); const semver = require( 'semver' ); @@ -62,8 +61,7 @@ const UNKNOWN_FEATURE_FALLBACK_NAME = 'Uncategorized'; * @type {Record} */ const LABEL_TYPE_MAPPING = { - '[Feature] Navigation Screen': 'Experiments', - '[Package] Dependency Extraction Webpack Plugin': 'Tools', + '[Type] Developer Documentation': 'Documentation', '[Package] Jest Puppeteer aXe': 'Tools', '[Package] E2E Tests': 'Tools', '[Package] E2E Test Utils': 'Tools', @@ -74,17 +72,19 @@ const LABEL_TYPE_MAPPING = { '[Type] Project Management': 'Tools', '[Package] Scripts': 'Tools', '[Type] Build Tooling': 'Tools', - 'Automated Testing': 'Tools', + '[Type] Automated Testing': 'Tools', + '[Package] Dependency Extraction Webpack Plugin': 'Tools', + '[Type] Code Quality': 'Code Quality', + '[Focus] Accessibility (a11y)': 'Accessibility', + '[Type] Performance': 'Performance', + '[Type] Security': 'Security', + '[Feature] Navigation Screen': 'Experiments', '[Type] Experimental': 'Experiments', '[Type] Bug': 'Bug Fixes', '[Type] Regression': 'Bug Fixes', - '[Type] Feature': 'Features', '[Type] Enhancement': 'Enhancements', '[Type] New API': 'New APIs', - '[Type] Performance': 'Performance', - '[Type] Developer Documentation': 'Documentation', - '[Type] Code Quality': 'Code Quality', - '[Type] Security': 'Security', + '[Type] Feature': 'Features', }; /** @@ -108,32 +108,30 @@ const LABEL_FEATURE_MAPPING = { '[Feature] Patterns': 'Patterns', '[Feature] Blocks': 'Block Library', '[Feature] Inserter': 'Block Editor', + '[Feature] Interactivity API': 'Interactivity API', '[Feature] Drag and Drop': 'Block Editor', '[Feature] Block Multi Selection': 'Block Editor', '[Feature] Link Editing': 'Block Editor', '[Feature] Raw Handling': 'Block Editor', '[Package] Edit Post': 'Post Editor', '[Package] Icons': 'Icons', - '[Package] Block Editor': 'Block Editor', + '[Package] Block editor': 'Block Editor', '[Package] Block library': 'Block Library', '[Package] Editor': 'Post Editor', + '[Package] Edit Site': 'Site Editor', '[Package] Edit Widgets': 'Widgets Editor', '[Package] Widgets Customizer': 'Widgets Editor', '[Package] Components': 'Components', '[Package] Block Library': 'Block Library', '[Package] Rich text': 'Block Editor', '[Package] Data': 'Data Layer', + '[Package] Commands': 'Commands', '[Block] Legacy Widget': 'Widgets Editor', 'REST API Interaction': 'REST API', 'New Block': 'Block Library', - 'Accessibility (a11y)': 'Accessibility', - '[a11y] Color Contrast': 'Accessibility', - '[a11y] Keyboard & Focus': 'Accessibility', - '[a11y] Labelling': 'Accessibility', - '[a11y] Zooming': 'Accessibility', '[Package] E2E Tests': 'Testing', '[Package] E2E Test Utils': 'Testing', - 'Automated Testing': 'Testing', + '[Type] Automated Testing': 'Testing', 'CSS Styling': 'CSS & Styling', 'developer-docs': 'Documentation', '[Type] Developer Documentation': 'Documentation', @@ -154,6 +152,7 @@ const GROUP_TITLE_ORDER = [ 'Enhancements', 'New APIs', 'Bug Fixes', + `Accessibility`, 'Performance', 'Experiments', 'Documentation', @@ -224,9 +223,18 @@ function getTypesByLabels( labels ) { ...new Set( labels .filter( ( label ) => - Object.keys( LABEL_TYPE_MAPPING ).includes( label ) + Object.keys( LABEL_TYPE_MAPPING ) + .map( ( currentLabel ) => currentLabel.toLowerCase() ) + .includes( label.toLowerCase() ) ) - .map( ( label ) => LABEL_TYPE_MAPPING[ label ] ) + .map( ( label ) => { + const lowerCaseLabel = + Object.keys( LABEL_TYPE_MAPPING ).find( + ( key ) => key.toLowerCase() === label.toLowerCase() + ) || label; + + return LABEL_TYPE_MAPPING[ lowerCaseLabel ]; + } ) ), ]; } @@ -240,11 +248,24 @@ function getTypesByLabels( labels ) { * @return {string[]} Feature candidates. */ function mapLabelsToFeatures( labels ) { - return labels - .filter( ( label ) => - Object.keys( LABEL_FEATURE_MAPPING ).includes( label ) - ) - .map( ( label ) => LABEL_FEATURE_MAPPING[ label ] ); + return [ + ...new Set( + labels + .filter( ( label ) => + Object.keys( LABEL_FEATURE_MAPPING ) + .map( ( currentLabel ) => currentLabel.toLowerCase() ) + .includes( label.toLowerCase() ) + ) + .map( ( label ) => { + const lowerCaseLabel = + Object.keys( LABEL_FEATURE_MAPPING ).find( + ( key ) => key.toLowerCase() === label.toLowerCase() + ) || label; + + return LABEL_FEATURE_MAPPING[ lowerCaseLabel ]; + } ) + ), + ]; } /** @@ -304,12 +325,6 @@ function getIssueType( issue ) { ...getTypesByTitle( issue.title ), ]; - // Force all tasks identified as Documentation tasks - // to appear under the main "Documentation" section. - if ( candidates.includes( 'Documentation' ) ) { - return 'Documentation'; - } - return candidates.length ? candidates.sort( sortType )[ 0 ] : 'Various'; } @@ -378,7 +393,7 @@ function getIssueFeature( issue ) { */ function sortType( a, b ) { const [ aIndex, bIndex ] = [ a, b ].map( ( title ) => { - return Object.keys( LABEL_TYPE_MAPPING ).indexOf( title ); + return Object.values( LABEL_TYPE_MAPPING ).indexOf( title ); } ); return aIndex - bIndex; @@ -479,6 +494,21 @@ const createOmitByLabel = ( labels ) => ( text, issue ) => ? undefined : text; +/** + * Higher-order function which returns a normalization function to omit by issue + * label starting with any of the given prefixes + * + * @param {string[]} prefixes Label prefixes from which to determine if given entry + * should be omitted. + * + * @return {WPChangelogNormalization} Normalization function. + */ +const createOmitByLabelPrefix = ( prefixes ) => ( text, issue ) => + issue.labels.some( ( label ) => + prefixes.some( ( prefix ) => label.name.startsWith( prefix ) ) + ) + ? undefined + : text; /** * Given an issue title and issue, returns the title with redundant grouping * type details removed. The prefix is redundant since it would already be clear @@ -523,7 +553,7 @@ function removeFeaturePrefix( text ) { * @type {Array} */ const TITLE_NORMALIZATIONS = [ - createOmitByLabel( [ 'Mobile App Android/iOS' ] ), + createOmitByLabelPrefix( [ 'Mobile App' ] ), createOmitByTitlePrefix( [ '[rnmobile]', '[mobile]', 'Mobile Release' ] ), removeRedundantTypePrefix, reword, @@ -576,11 +606,11 @@ function getEntry( issue ) { /** * Builds a formatted string of the Issue/PR title with a link - * to the Github URL for that item. + * to the GitHub URL for that item. * * @param {string} title the title of the Issue/PR. * @param {number} number the ID/number of the Issue/PR. - * @param {string} url the URL of the Github Issue/PR. + * @param {string} url the URL of the GitHub Issue/PR. * @return {string} the formatted item */ function getFormattedItemDescription( title, number, url ) { @@ -711,9 +741,19 @@ async function fetchAllPullRequests( octokit, settings ) { function getChangelog( pullRequests ) { let changelog = '## Changelog\n\n'; - const groupedPullRequests = groupBy( - skipCreatedByBots( pullRequests ), - getIssueType + const groupedPullRequests = skipCreatedByBots( pullRequests ).reduce( + ( + /** @type {Record} */ acc, + pr + ) => { + const issueType = getIssueType( pr ); + if ( ! acc[ issueType ] ) { + acc[ issueType ] = []; + } + acc[ issueType ].push( pr ); + return acc; + }, + {} ); const sortedGroups = Object.keys( groupedPullRequests ).sort( sortGroup ); @@ -732,7 +772,20 @@ function getChangelog( pullRequests ) { changelog += '### ' + group + '\n\n'; // Group PRs within this section into "Features". - const featureGroups = groupBy( groupPullRequests, getIssueFeature ); + const featureGroups = groupPullRequests.reduce( + ( + /** @type {Record} */ acc, + pr + ) => { + const issueFeature = getIssueFeature( pr ); + if ( ! acc[ issueFeature ] ) { + acc[ issueFeature ] = []; + } + acc[ issueFeature ].push( pr ); + return acc; + }, + {} + ); const featuredGroupNames = sortFeatureGroups( featureGroups ); @@ -803,7 +856,7 @@ function sortFeatureGroups( featureGroups ) { } /** - * Returns a list of PRs created by first time contributors based on the Github + * Returns a list of PRs created by first time contributors based on the GitHub * label associated with the PR. Also filters out any "bots". * * @param {IssuesListForRepoResponseItem[]} pullRequests List of pull requests. @@ -903,10 +956,14 @@ function getContributorProps( pullRequests ) { getContributorPropsMarkdownList, ] )( pullRequests ); + if ( ! contributorsList ) { + return ''; + } + return ( - '## First time contributors' + + '## First-time contributors' + '\n\n' + - 'The following PRs were merged by first time contributors:' + + 'The following PRs were merged by first-time contributors:' + '\n\n' + contributorsList ); @@ -1023,6 +1080,7 @@ async function getReleaseChangelog( options ) { capitalizeAfterColonSeparatedPrefix, createOmitByTitlePrefix, createOmitByLabel, + createOmitByLabelPrefix, addTrailingPeriod, getNormalizedTitle, getReleaseChangelog, @@ -1037,4 +1095,5 @@ async function getReleaseChangelog( options ) { getChangelog, getUniqueByUsername, skipCreatedByBots, + mapLabelsToFeatures, }; diff --git a/bin/plugin/commands/common.js b/bin/plugin/commands/common.js index 59abfa93447ef3..067e50bb6440a2 100644 --- a/bin/plugin/commands/common.js +++ b/bin/plugin/commands/common.js @@ -46,7 +46,7 @@ function calculateVersionBumpFromChangelog( let changesDetected = false; let versionBump = null; for ( const line of lines ) { - const lineNormalized = line.toLowerCase().trimLeft(); + const lineNormalized = line.toLowerCase().trimStart(); // Detect unpublished changes first. if ( lineNormalized.startsWith( '## unreleased' ) ) { changesDetected = true; diff --git a/bin/plugin/commands/packages.js b/bin/plugin/commands/packages.js index c085201a235001..d70baf4f91bfa7 100644 --- a/bin/plugin/commands/packages.js +++ b/bin/plugin/commands/packages.js @@ -25,6 +25,7 @@ const { findPluginReleaseBranchName, } = require( './common' ); const { join } = require( 'path' ); +const pluginConfig = require( '../config' ); /** * Release type names. @@ -82,24 +83,14 @@ async function checkoutNpmReleaseBranch( { /* * Create the release branch. * - * Note that we are grabbing an arbitrary depth of commits - * during the fetch. When `lerna` attempts to determine if - * a package needs an update, it looks at `git` history, - * and if we have pruned that history it will pre-emptively - * publish when it doesn't need to. - * - * We could set a different arbitrary depth if this isn't - * long enough or if it's excessive. We could also try and - * find a way to more specifically fetch what we expect to - * change. For example, if we knew we'll be performing - * updates every two weeks, we might be conservative and - * use `--shallow-since=4.weeks.ago`. - * - * At the time of writing, a depth of 100 pulls in all - * `trunk` commits from within the past week. + * Note that we are grabbing an arbitrary depth of commits (999) during the fetch. + * When Lerna attempts to determine if a package needs an update, it looks at + * `git` history to find the commit created during the previous npm publishing. + * Lerna assumes that all packages need publishing if it can't access + * the necessary information. */ await SimpleGit( gitWorkingDirectoryPath ) - .fetch( npmReleaseBranch, [ '--depth=100' ] ) + .fetch( 'origin', npmReleaseBranch, [ '--depth=999' ] ) .checkout( npmReleaseBranch ); log( '>> The local npm release branch ' + @@ -144,11 +135,12 @@ async function runNpmReleaseBranchSyncStep( pluginReleaseBranch, config ) { /* * Replace content from remote branch. * - * @TODO: What is our goal here? Could `git reset --hard origin/${pluginReleaseBranch}` work? + * @todo What is our goal here? Could `git reset --hard origin/${pluginReleaseBranch}` work? * Why are we manually removing and then adding files back in? */ await repo .raw( 'rm', '-r', '.' ) + .fetch( 'origin', pluginReleaseBranch, [ '--depth=1' ] ) .raw( 'checkout', `origin/${ pluginReleaseBranch }`, '--', '.' ); const { commit: commitHash } = await repo.commit( @@ -196,10 +188,9 @@ async function updatePackages( config ) { ); const changelogFilesPublicPackages = changelogFiles.filter( ( changelogPath ) => { - const pkg = require( path.join( - path.dirname( changelogPath ), - 'package.json' - ) ); + const pkg = require( + path.join( path.dirname( changelogPath ), 'package.json' ) + ); return pkg.private !== true; } ); @@ -411,13 +402,27 @@ async function publishPackagesToNpm( { ); } else if ( [ 'bugfix', 'wp' ].includes( releaseType ) ) { log( '>> Publishing modified packages to npm.' ); - await command( - `npx lerna publish ${ minimumVersionBump } --dist-tag ${ distTag } --no-private ${ yesFlag } ${ noVerifyAccessFlag }`, - { - cwd: gitWorkingDirectoryPath, - stdio: 'inherit', - } - ); + try { + await command( + `npx lerna publish ${ minimumVersionBump } --dist-tag ${ distTag } --no-private ${ yesFlag } ${ noVerifyAccessFlag }`, + { + cwd: gitWorkingDirectoryPath, + stdio: 'inherit', + } + ); + } catch { + log( + '>> Trying to finish failed publishing of modified npm packages.' + ); + await SimpleGit( gitWorkingDirectoryPath ).reset( 'hard' ); + await command( + `npx lerna publish from-package --dist-tag ${ distTag } ${ yesFlag } ${ noVerifyAccessFlag }`, + { + cwd: gitWorkingDirectoryPath, + stdio: 'inherit', + } + ); + } } else { log( '>> Bumping version of public packages changed since the last release.' @@ -431,13 +436,27 @@ async function publishPackagesToNpm( { ); log( '>> Publishing modified packages to npm.' ); - await command( - `npx lerna publish from-package ${ yesFlag } ${ noVerifyAccessFlag }`, - { - cwd: gitWorkingDirectoryPath, - stdio: 'inherit', - } - ); + try { + await command( + `npx lerna publish from-package ${ yesFlag } ${ noVerifyAccessFlag }`, + { + cwd: gitWorkingDirectoryPath, + stdio: 'inherit', + } + ); + } catch { + log( + '>> Trying to finish failed publishing of modified npm packages.' + ); + await SimpleGit( gitWorkingDirectoryPath ).reset( 'hard' ); + await command( + `npx lerna publish from-package ${ yesFlag } ${ noVerifyAccessFlag }`, + { + cwd: gitWorkingDirectoryPath, + stdio: 'inherit', + } + ); + } } const afterCommitHash = await SimpleGit( gitWorkingDirectoryPath ).revparse( @@ -530,7 +549,11 @@ async function runPackagesRelease( config, customMessages ) { config.abortMessage, async () => { log( '>> Cloning the Git repository' ); - await SimpleGit( gitPath ).clone( config.gitRepositoryURL ); + await SimpleGit().clone( + pluginConfig.gitRepositoryURL, + gitPath, + [ '--depth=1', '--no-single-branch' ] + ); log( ` >> successfully clone into: ${ gitPath }` ); } ); diff --git a/bin/plugin/commands/performance.js b/bin/plugin/commands/performance.js index 31a537f373731d..a945319a5491b1 100644 --- a/bin/plugin/commands/performance.js +++ b/bin/plugin/commands/performance.js @@ -1,9 +1,9 @@ /** * External dependencies */ +const os = require( 'os' ); const fs = require( 'fs' ); const path = require( 'path' ); -const { mapValues, kebabCase } = require( 'lodash' ); const SimpleGit = require( 'simple-git' ); /** @@ -14,10 +14,15 @@ const { runShellScript, readJSONFile, askForConfirmation, - getRandomTemporaryPath, + getFilesFromDir, } = require( '../lib/utils' ); const config = require( '../config' ); +const ARTIFACTS_PATH = + process.env.WP_ARTIFACTS_PATH || path.join( process.cwd(), 'artifacts' ); +const RAW_RESULTS_FILE_SUFFIX = '.performance-results.raw.json'; +const RESULTS_FILE_SUFFIX = '.performance-results.json'; + /** * @typedef WPPerformanceCommandOptions * @@ -28,145 +33,196 @@ const config = require( '../config' ); */ /** - * @typedef WPRawPerformanceResults + * A logging helper for printing steps and their substeps. * - * @property {number[]} serverResponse Represents the time the server takes to respond. - * @property {number[]} firstPaint Represents the time when the user agent first rendered after navigation. - * @property {number[]} domContentLoaded Represents the time immediately after the document's DOMContentLoaded event completes. - * @property {number[]} loaded Represents the time when the load event of the current document is completed. - * @property {number[]} firstContentfulPaint Represents the time when the browser first renders any text or media. - * @property {number[]} firstBlock Represents the time when Puppeteer first sees a block selector in the DOM. - * @property {number[]} type Average type time. - * @property {number[]} focus Average block selection time. - * @property {number[]} inserterOpen Average time to open global inserter. - * @property {number[]} inserterSearch Average time to search the inserter. - * @property {number[]} inserterHover Average time to move mouse between two block item in the inserter. - * @property {number[]} listViewOpen Average time to open listView + * @param {number} indent Value to indent the log. + * @param {any} msg Message to log. + * @param {...any} args Rest of the arguments to pass to console.log. */ +function logAtIndent( indent, msg, ...args ) { + const prefix = indent === 0 ? '▶ ' : '> '; + const newline = indent === 0 ? '\n' : ''; + return log( newline + ' '.repeat( indent ) + prefix + msg, ...args ); +} /** - * @typedef WPPerformanceResults + * Sanitizes branch name to be used in a path or a filename. + * + * @param {string} branch * - * @property {number=} serverResponse Represents the time the server takes to respond. - * @property {number=} firstPaint Represents the time when the user agent first rendered after navigation. - * @property {number=} domContentLoaded Represents the time immediately after the document's DOMContentLoaded event completes. - * @property {number=} loaded Represents the time when the load event of the current document is completed. - * @property {number=} firstContentfulPaint Represents the time when the browser first renders any text or media. - * @property {number=} firstBlock Represents the time when Puppeteer first sees a block selector in the DOM. - * @property {number=} type Average type time. - * @property {number=} minType Minimum type time. - * @property {number=} maxType Maximum type time. - * @property {number=} focus Average block selection time. - * @property {number=} minFocus Min block selection time. - * @property {number=} maxFocus Max block selection time. - * @property {number=} inserterOpen Average time to open global inserter. - * @property {number=} minInserterOpen Min time to open global inserter. - * @property {number=} maxInserterOpen Max time to open global inserter. - * @property {number=} inserterSearch Average time to open global inserter. - * @property {number=} minInserterSearch Min time to open global inserter. - * @property {number=} maxInserterSearch Max time to open global inserter. - * @property {number=} inserterHover Average time to move mouse between two block item in the inserter. - * @property {number=} minInserterHover Min time to move mouse between two block item in the inserter. - * @property {number=} maxInserterHover Max time to move mouse between two block item in the inserter. - * @property {number=} listViewOpen Average time to open list view. - * @property {number=} minListViewOpen Min time to open list view. - * @property {number=} maxListViewOpen Max time to open list view. + * @return {string} Sanitized branch name. */ +function sanitizeBranchName( branch ) { + return branch.replace( /[^a-zA-Z0-9-]/g, '-' ); +} /** - * Computes the average number from an array numbers. - * - * @param {number[]} array - * - * @return {number} Average. + * @param {number} number */ -function average( array ) { - return array.reduce( ( a, b ) => a + b, 0 ) / array.length; +function fixed( number ) { + return Math.round( number * 100 ) / 100; } /** - * Computes the median number from an array numbers. - * * @param {number[]} array - * - * @return {number} Median. */ -function median( array ) { - const mid = Math.floor( array.length / 2 ), - numbers = [ ...array ].sort( ( a, b ) => a - b ); - return array.length % 2 !== 0 - ? numbers[ mid ] - : ( numbers[ mid - 1 ] + numbers[ mid ] ) / 2; +function quartiles( array ) { + const numbers = array.slice().sort( ( a, b ) => a - b ); + + /** + * @param {number} offset + * @param {number} length + */ + function med( offset, length ) { + if ( length % 2 === 0 ) { + // even length, average of two middle numbers + return ( + ( numbers[ offset + length / 2 - 1 ] + + numbers[ offset + length / 2 ] ) / + 2 + ); + } + + // odd length, exact middle point + return numbers[ offset + ( length - 1 ) / 2 ]; + } + + const q50 = med( 0, numbers.length ); + + let q25, q75; + if ( numbers.length % 2 === 0 ) { + // medians of two exact halves + const mid = numbers.length / 2; + q25 = med( 0, mid ); + q75 = med( mid, mid ); + } else { + // quartiles are average of medians of the smaller and bigger slice + const midl = ( numbers.length - 1 ) / 2; + const midh = ( numbers.length + 1 ) / 2; + q25 = ( med( 0, midl ) + med( 0, midh ) ) / 2; + q75 = ( med( midl, midh ) + med( midh, midl ) ) / 2; + } + return { q25, q50, q75 }; } /** - * Rounds and format a time passed in milliseconds. - * - * @param {number} number - * - * @return {number} Formatted time. + * @param {number[]|undefined} values */ -function formatTime( number ) { - const factor = Math.pow( 10, 2 ); - return Math.round( number * factor ) / factor; +function stats( values ) { + if ( ! values || values.length === 0 ) { + return undefined; + } + const { q25, q50, q75 } = quartiles( values ); + const cnt = values.length; + return { + q25: fixed( q25 ), + q50: fixed( q50 ), + q75: fixed( q75 ), + cnt, + }; } /** - * Curate the raw performance results. - * - * @param {WPRawPerformanceResults} results + * Nicely formats a given value. * - * @return {WPPerformanceResults} Curated Performance results. + * @param {string} metric Metric. + * @param {number} value */ -function curateResults( results ) { - return { - serverResponse: average( results.serverResponse ), - firstPaint: average( results.firstPaint ), - domContentLoaded: average( results.domContentLoaded ), - loaded: average( results.loaded ), - firstContentfulPaint: average( results.firstContentfulPaint ), - firstBlock: average( results.firstBlock ), - type: average( results.type ), - minType: Math.min( ...results.type ), - maxType: Math.max( ...results.type ), - focus: average( results.focus ), - minFocus: Math.min( ...results.focus ), - maxFocus: Math.max( ...results.focus ), - inserterOpen: average( results.inserterOpen ), - minInserterOpen: Math.min( ...results.inserterOpen ), - maxInserterOpen: Math.max( ...results.inserterOpen ), - inserterSearch: average( results.inserterSearch ), - minInserterSearch: Math.min( ...results.inserterSearch ), - maxInserterSearch: Math.max( ...results.inserterSearch ), - inserterHover: average( results.inserterHover ), - minInserterHover: Math.min( ...results.inserterHover ), - maxInserterHover: Math.max( ...results.inserterHover ), - listViewOpen: average( results.listViewOpen ), - minListViewOpen: Math.min( ...results.listViewOpen ), - maxListViewOpen: Math.max( ...results.listViewOpen ), - }; +function formatValue( metric, value ) { + if ( 'wpMemoryUsage' === metric ) { + return `${ ( value / Math.pow( 10, 6 ) ).toFixed( 2 ) } MB`; + } + + if ( 'wpDbQueries' === metric ) { + return value.toString(); + } + + return `${ value } ms`; +} + +/** + * @param {string} m + * @param {Record} s + */ +function printStats( m, s ) { + const pp = fixed( ( 100 * ( s.q75 - s.q50 ) ) / s.q50 ); + const mp = fixed( ( 100 * ( s.q50 - s.q25 ) ) / s.q50 ); + return `${ formatValue( m, s.q50 ) } +${ pp }% -${ mp }%`; } /** * Runs the performance tests on the current branch. * - * @param {string} testSuite Name of the tests set. - * @param {string} performanceTestDirectory Path to the performance tests' clone. - * - * @return {Promise} Performance results for the branch. + * @param {string} testSuite Name of the tests set. + * @param {string} testRunnerDir Path to the performance tests' clone. + * @param {string} runKey Unique identifier for the test run. */ -async function runTestSuite( testSuite, performanceTestDirectory ) { +async function runTestSuite( testSuite, testRunnerDir, runKey ) { await runShellScript( - `npm run test:performance -- packages/e2e-tests/specs/performance/${ testSuite }.test.js`, - performanceTestDirectory - ); - const rawResults = await readJSONFile( - path.join( - performanceTestDirectory, - `packages/e2e-tests/specs/performance/${ testSuite }.test.results.json` - ) + `npm run test:performance -- ${ testSuite }`, + testRunnerDir, + { + ...process.env, + PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: '1', + WP_ARTIFACTS_PATH: ARTIFACTS_PATH, + RESULTS_ID: runKey, + } ); - return curateResults( rawResults ); +} + +/** + * Formats an array of objects as a Markdown table. + * + * For example, this array: + * + * [ + * { + * foo: 123, + * bar: 456, + * baz: 'Yes', + * }, + * { + * foo: 777, + * bar: 999, + * baz: 'No', + * } + * ] + * + * Will result in the following table: + * + * | foo | bar | baz | + * |-----|-----|-----| + * | 123 | 456 | Yes | + * | 777 | 999 | No | + * + * @param {Array} rows Table rows. + * @return {string} Markdown table content. + */ +function formatAsMarkdownTable( rows ) { + let result = ''; + + if ( ! rows.length ) { + return result; + } + + const headers = Object.keys( rows[ 0 ] ); + for ( const header of headers ) { + result += `| ${ header } `; + } + result += '|\n'; + for ( let i = 0; i < headers.length; i++ ) { + result += '| ------ '; + } + result += '|\n'; + + for ( const row of rows ) { + for ( const value of Object.values( row ) ) { + result += `| ${ value } `; + } + result += '|\n'; + } + + return result; } /** @@ -184,20 +240,23 @@ async function runPerformanceTests( branches, options ) { branches = [ 'trunk' ]; } + log( formats.title( '\n💃 Performance Tests 🕺' ) ); log( - formats.title( '\n💃 Performance Tests 🕺\n' ), - '\nWelcome! This tool runs the performance tests on multiple branches and displays a comparison table.\n' + - 'In order to run the tests, the tool is going to load a WordPress environment on ports 8888 and 8889.\n' + - 'Make sure these ports are not used before continuing.\n' + '\nWelcome! This tool runs the performance tests on multiple branches and displays a comparison table.' ); if ( ! runningInCI ) { + log( + formats.warning( + '\nIn order to run the tests, the tool is going to load a WordPress environment on ports 8888 and 8889.' + + '\nMake sure these ports are not used before continuing.\n' + ) + ); + await askForConfirmation( 'Ready to go? ' ); } - // 1- Preparing the tests directory. - log( '\n>> Preparing the tests directories' ); - log( ' >> Cloning the repository' ); + logAtIndent( 0, 'Setting up' ); /** * @type {string[]} git refs against which to run tests; @@ -207,276 +266,370 @@ async function runPerformanceTests( branches, options ) { throw new Error( `Need at least two git refs to run` ); } - const baseDirectory = getRandomTemporaryPath(); - fs.mkdirSync( baseDirectory, { recursive: true } ); + const baseDir = path.join( os.tmpdir(), 'wp-performance-tests' ); + + if ( fs.existsSync( baseDir ) ) { + logAtIndent( 1, 'Removing existing files' ); + fs.rmSync( baseDir, { recursive: true } ); + } + + logAtIndent( 1, 'Creating base directory:', formats.success( baseDir ) ); + fs.mkdirSync( baseDir ); + + logAtIndent( 1, 'Setting up repository' ); + const sourceDir = path.join( baseDir, 'source' ); + + logAtIndent( 2, 'Creating directory:', formats.success( sourceDir ) ); + fs.mkdirSync( sourceDir ); // @ts-ignore - const git = SimpleGit( baseDirectory ); - await git + const sourceGit = SimpleGit( sourceDir ); + logAtIndent( + 2, + 'Initializing:', + formats.success( config.gitRepositoryURL ) + ); + await sourceGit .raw( 'init' ) .raw( 'remote', 'add', 'origin', config.gitRepositoryURL ); - for ( const branch of branches ) { - await git.raw( 'fetch', '--depth=1', 'origin', branch ); + for ( const [ i, branch ] of branches.entries() ) { + logAtIndent( + 2, + `Fetching environment branch (${ i + 1 } of ${ branches.length }):`, + formats.success( branch ) + ); + await sourceGit.raw( 'fetch', '--depth=1', 'origin', branch ); + } + + const testRunnerBranch = options.testsBranch || branches[ 0 ]; + if ( options.testsBranch && ! branches.includes( options.testsBranch ) ) { + logAtIndent( + 2, + 'Fetching test runner branch:', + formats.success( options.testsBranch ) + ); + // @ts-ignore + await sourceGit.raw( + 'fetch', + '--depth=1', + 'origin', + options.testsBranch + ); + } else { + logAtIndent( + 2, + 'Using test runner branch:', + formats.success( testRunnerBranch ) + ); } - await git.raw( 'checkout', branches[ 0 ] ); + logAtIndent( 1, 'Setting up test runner' ); - const rootDirectory = getRandomTemporaryPath(); - const performanceTestDirectory = rootDirectory + '/tests'; - await runShellScript( 'mkdir -p ' + rootDirectory ); - await runShellScript( - 'cp -R ' + baseDirectory + ' ' + performanceTestDirectory - ); + const testRunnerDir = path.join( baseDir + '/tests' ); - if ( !! options.testsBranch ) { - const branchName = formats.success( options.testsBranch ); - log( ` >> Fetching the test-runner branch: ${ branchName }` ); + logAtIndent( 2, 'Copying source to:', formats.success( testRunnerDir ) ); + await runShellScript( `cp -R ${ sourceDir } ${ testRunnerDir }` ); - // @ts-ignore - await SimpleGit( performanceTestDirectory ) - .raw( 'fetch', '--depth=1', 'origin', options.testsBranch ) - .raw( 'checkout', options.testsBranch ); - } + logAtIndent( + 2, + 'Checking out branch:', + formats.success( testRunnerBranch ) + ); + // @ts-ignore + await SimpleGit( testRunnerDir ).raw( 'checkout', testRunnerBranch ); - log( ' >> Installing dependencies and building packages' ); + logAtIndent( 2, 'Installing dependencies and building' ); await runShellScript( - 'npm ci && node ./bin/packages/build.js', - performanceTestDirectory + `bash -c "source $HOME/.nvm/nvm.sh && nvm install && npm ci && npx playwright install chromium --with-deps && npm run build:packages"`, + testRunnerDir ); - log( ' >> Creating the environment folders' ); - await runShellScript( 'mkdir -p ' + rootDirectory + '/envs' ); - // 2- Preparing the environment directories per branch. - log( '\n>> Preparing an environment directory per branch' ); - const branchDirectories = {}; + logAtIndent( 1, 'Setting up test environments' ); + + const envsDir = path.join( baseDir, 'environments' ); + logAtIndent( 2, 'Creating parent directory:', formats.success( envsDir ) ); + fs.mkdirSync( envsDir ); + + let wpZipUrl = null; + if ( options.wpVersion ) { + // In order to match the topology of ZIP files at wp.org, remap .0 + // patch versions to major versions: + // + // 5.7 -> 5.7 (unchanged) + // 5.7.0 -> 5.7 (changed) + // 5.7.2 -> 5.7.2 (unchanged) + const zipVersion = options.wpVersion.replace( /^(\d+\.\d+).0/, '$1' ); + wpZipUrl = `https://wordpress.org/wordpress-${ zipVersion }.zip`; + } + + const branchDirs = {}; for ( const branch of branches ) { - log( ` >> Branch: ${ branch }` ); - const environmentDirectory = - rootDirectory + '/envs/' + kebabCase( branch ); + logAtIndent( 2, 'Branch:', formats.success( branch ) ); + const sanitizedBranchName = sanitizeBranchName( branch ); + const envDir = path.join( envsDir, sanitizedBranchName ); + + logAtIndent( 3, 'Creating directory:', formats.success( envDir ) ); + fs.mkdirSync( envDir ); // @ts-ignore - branchDirectories[ branch ] = environmentDirectory; - const buildPath = `${ environmentDirectory }/plugin`; - await runShellScript( 'mkdir ' + environmentDirectory ); - await runShellScript( `cp -R ${ baseDirectory } ${ buildPath }` ); + branchDirs[ branch ] = envDir; + const buildDir = path.join( envDir, 'plugin' ); - const fancyBranch = formats.success( branch ); + logAtIndent( 3, 'Copying source to:', formats.success( buildDir ) ); + await runShellScript( `cp -R ${ sourceDir } ${ buildDir }` ); - if ( branch === options.testsBranch ) { - log( - ` >> Re-using the testing branch for ${ fancyBranch }` - ); - await runShellScript( - `cp -R ${ performanceTestDirectory } ${ buildPath }` - ); - } else { - log( ` >> Fetching the ${ fancyBranch } branch` ); - // @ts-ignore - await SimpleGit( buildPath ).reset( 'hard' ).checkout( branch ); - - log( ` >> Building the ${ fancyBranch } branch` ); - await runShellScript( - 'npm ci && npm run prebuild:packages && node ./bin/packages/build.js && npx wp-scripts build', - buildPath - ); - } + logAtIndent( 3, 'Checking out:', formats.success( branch ) ); + // @ts-ignore + await SimpleGit( buildDir ).raw( 'checkout', branch ); + logAtIndent( 3, 'Installing dependencies and building' ); await runShellScript( - 'cp ' + - path.resolve( - performanceTestDirectory, - 'bin/plugin/utils/.wp-env.performance.json' - ) + - ' ' + - environmentDirectory + - '/.wp-env.json' + `bash -c "source $HOME/.nvm/nvm.sh && nvm install && npm ci && npm run build"`, + buildDir ); - if ( options.wpVersion ) { - // In order to match the topology of ZIP files at wp.org, remap .0 - // patch versions to major versions: - // - // 5.7 -> 5.7 (unchanged) - // 5.7.0 -> 5.7 (changed) - // 5.7.2 -> 5.7.2 (unchanged) - const zipVersion = options.wpVersion.replace( - /^(\d+\.\d+).0/, - '$1' - ); - const zipUrl = `https://wordpress.org/wordpress-${ zipVersion }.zip`; - log( ` Using WordPress version ${ zipVersion }` ); - - // Patch the environment's .wp-env.json config to use the specified WP - // version: - // - // { - // "core": "https://wordpress.org/wordpress-$VERSION.zip", - // ... - // } - const confPath = `${ environmentDirectory }/.wp-env.json`; - const conf = { ...readJSONFile( confPath ), core: zipUrl }; - await fs.writeFileSync( - confPath, - JSON.stringify( conf, null, 2 ), - 'utf8' - ); - } - } + const wpEnvConfigPath = path.join( envDir, '.wp-env.json' ); - // 3- Printing the used folders. - log( - '\n>> Perf Tests Directory : ' + - formats.success( performanceTestDirectory ) - ); - for ( const branch of branches ) { - // @ts-ignore - const envPath = formats.success( branchDirectories[ branch ] ); - log( `>> Environment Directory (${ branch }) : ${ envPath }` ); + logAtIndent( + 3, + 'Saving wp-env config to:', + formats.success( wpEnvConfigPath ) + ); + + fs.writeFileSync( + wpEnvConfigPath, + JSON.stringify( + { + config: { + WP_DEBUG: false, + SCRIPT_DEBUG: false, + }, + core: wpZipUrl || 'WordPress/WordPress', + plugins: [ buildDir ], + themes: [ path.join( testRunnerDir, 'test/emptytheme' ) ], + env: { + tests: { + mappings: { + 'wp-content/mu-plugins': path.join( + testRunnerDir, + 'packages/e2e-tests/mu-plugins' + ), + 'wp-content/plugins/gutenberg-test-plugins': + path.join( + testRunnerDir, + 'packages/e2e-tests/plugins' + ), + 'wp-content/themes/gutenberg-test-themes': + path.join( + testRunnerDir, + 'test/gutenberg-test-themes' + ), + 'wp-content/themes/gutenberg-test-themes/twentytwentyone': + 'https://downloads.wordpress.org/theme/twentytwentyone.1.7.zip', + 'wp-content/themes/gutenberg-test-themes/twentytwentythree': + 'https://downloads.wordpress.org/theme/twentytwentythree.1.0.zip', + }, + }, + }, + }, + null, + 2 + ), + 'utf8' + ); } - // 4- Running the tests. - log( '\n>> Running the tests' ); + logAtIndent( 0, 'Looking for test files' ); - const testSuites = [ 'post-editor', 'site-editor' ]; + const testSuites = getFilesFromDir( + path.join( testRunnerDir, 'test/performance/specs' ) + ).map( ( file ) => { + logAtIndent( 1, 'Found:', formats.success( file ) ); + return path.basename( file, '.spec.js' ); + } ); + + logAtIndent( 0, 'Running tests' ); + + if ( wpZipUrl ) { + logAtIndent( + 1, + 'Using:', + formats.success( `WordPress v${ options.wpVersion }` ) + ); + } else { + logAtIndent( 1, 'Using:', formats.success( 'WordPress trunk' ) ); + } + + const wpEnvPath = path.join( testRunnerDir, 'node_modules/.bin/wp-env' ); - /** @type {Record>} */ - const results = {}; for ( const testSuite of testSuites ) { - results[ testSuite ] = {}; - /** @type {Array>} */ - const rawResults = []; - // Alternate three times between branches. - for ( let i = 0; i < TEST_ROUNDS; i++ ) { - rawResults[ i ] = {}; + for ( let i = 1; i <= TEST_ROUNDS; i++ ) { + logAtIndent( + 1, + // prettier-ignore + `Suite: ${ formats.success( testSuite ) } (round ${ i } of ${ TEST_ROUNDS })` + ); + for ( const branch of branches ) { + logAtIndent( 2, 'Branch:', formats.success( branch ) ); + + const sanitizedBranchName = sanitizeBranchName( branch ); + const runKey = `${ testSuite }_${ sanitizedBranchName }_round-${ i }`; // @ts-ignore - const environmentDirectory = branchDirectories[ branch ]; - log( ` >> Branch: ${ branch }, Suite: ${ testSuite }` ); - log( ' >> Starting the environment.' ); - await runShellScript( - '../../tests/node_modules/.bin/wp-env start', - environmentDirectory - ); - log( ' >> Running the test.' ); - rawResults[ i ][ branch ] = await runTestSuite( - testSuite, - performanceTestDirectory - ); - log( ' >> Stopping the environment' ); - await runShellScript( - '../../tests/node_modules/.bin/wp-env stop', - environmentDirectory - ); - } - } + const envDir = branchDirs[ branch ]; - // Computing medians. - for ( const branch of branches ) { - const medians = mapValues( - { - serverResponse: rawResults.map( - ( r ) => r[ branch ].serverResponse - ), - firstPaint: rawResults.map( - ( r ) => r[ branch ].firstPaint - ), - domContentLoaded: rawResults.map( - ( r ) => r[ branch ].domContentLoaded - ), - loaded: rawResults.map( ( r ) => r[ branch ].loaded ), - firstContentfulPaint: rawResults.map( - ( r ) => r[ branch ].firstContentfulPaint - ), - firstBlock: rawResults.map( - ( r ) => r[ branch ].firstBlock - ), - type: rawResults.map( ( r ) => r[ branch ].type ), - minType: rawResults.map( ( r ) => r[ branch ].minType ), - maxType: rawResults.map( ( r ) => r[ branch ].maxType ), - focus: rawResults.map( ( r ) => r[ branch ].focus ), - minFocus: rawResults.map( ( r ) => r[ branch ].minFocus ), - maxFocus: rawResults.map( ( r ) => r[ branch ].maxFocus ), - inserterOpen: rawResults.map( - ( r ) => r[ branch ].inserterOpen - ), - minInserterOpen: rawResults.map( - ( r ) => r[ branch ].minInserterOpen - ), - maxInserterOpen: rawResults.map( - ( r ) => r[ branch ].maxInserterOpen - ), - inserterSearch: rawResults.map( - ( r ) => r[ branch ].inserterSearch - ), - minInserterSearch: rawResults.map( - ( r ) => r[ branch ].minInserterSearch - ), - maxInserterSearch: rawResults.map( - ( r ) => r[ branch ].maxInserterSearch - ), - inserterHover: rawResults.map( - ( r ) => r[ branch ].inserterHover - ), - minInserterHover: rawResults.map( - ( r ) => r[ branch ].minInserterHover - ), - maxInserterHover: rawResults.map( - ( r ) => r[ branch ].maxInserterHover - ), - listViewOpen: rawResults.map( - ( r ) => r[ branch ].listViewOpen - ), - minListViewOpen: rawResults.map( - ( r ) => r[ branch ].minListViewOpen - ), - maxListViewOpen: rawResults.map( - ( r ) => r[ branch ].maxListViewOpen - ), - }, - median - ); + logAtIndent( 3, 'Starting environment' ); + await runShellScript( `${ wpEnvPath } start`, envDir ); + + logAtIndent( 3, 'Running tests' ); + await runTestSuite( testSuite, testRunnerDir, runKey ); - // Format results as times. - results[ testSuite ][ branch ] = mapValues( medians, formatTime ); + logAtIndent( 3, 'Stopping environment' ); + await runShellScript( `${ wpEnvPath } stop`, envDir ); + } } } - // 5- Formatting the results. - log( '\n>> 🎉 Results.\n' ); + logAtIndent( 0, 'Calculating results' ); - log( - '\nPlease note that client side metrics EXCLUDE the server response time.\n' + const resultFiles = getFilesFromDir( ARTIFACTS_PATH ).filter( ( file ) => + file.endsWith( RAW_RESULTS_FILE_SUFFIX ) ); + /** @type {Record>>>} */ + const results = {}; + // Calculate medians from all rounds. for ( const testSuite of testSuites ) { - log( `\n>> ${ testSuite }\n` ); + logAtIndent( 1, 'Test suite:', formats.success( testSuite ) ); - /** @type {Record>} */ - const invertedResult = {}; - Object.entries( results[ testSuite ] ).reduce( - ( acc, [ key, val ] ) => { - for ( const entry of Object.keys( val ) ) { - // @ts-ignore - if ( ! acc[ entry ] && isFinite( val[ entry ] ) ) - acc[ entry ] = {}; - // @ts-ignore - if ( isFinite( val[ entry ] ) ) { - // @ts-ignore - acc[ entry ][ key ] = val[ entry ] + ' ms'; - } + results[ testSuite ] = {}; + for ( const branch of branches ) { + const sanitizedBranchName = sanitizeBranchName( branch ); + const resultsRounds = resultFiles + .filter( ( file ) => + file.includes( + `${ testSuite }_${ sanitizedBranchName }_round-` + ) + ) + .map( ( file ) => { + logAtIndent( 2, 'Reading from:', formats.success( file ) ); + return readJSONFile( file ); + } ); + + const metrics = Object.keys( resultsRounds[ 0 ] ?? {} ); + results[ testSuite ][ branch ] = {}; + + for ( const metric of metrics ) { + const values = resultsRounds.flatMap( + ( round ) => round[ metric ] ?? [] + ); + + const value = stats( values ); + if ( value !== undefined ) { + results[ testSuite ][ branch ][ metric ] = value; } - return acc; - }, - invertedResult + } + } + + const calculatedResultsPath = path.join( + ARTIFACTS_PATH, + testSuite + RESULTS_FILE_SUFFIX ); - console.table( invertedResult ); - const resultsFilename = testSuite + '-performance-results.json'; + logAtIndent( + 2, + 'Saving curated results to:', + formats.success( calculatedResultsPath ) + ); fs.writeFileSync( - path.resolve( __dirname, '../../../', resultsFilename ), + calculatedResultsPath, JSON.stringify( results[ testSuite ], null, 2 ) ); } + + logAtIndent( 0, 'Printing results' ); + log( + formats.warning( + '\nPlease note that client side metrics EXCLUDE the server response time.' + ) + ); + + let summaryMarkdown = `## Performance Test Results\n\n`; + + summaryMarkdown += `Please note that client side metrics **exclude** the server response time.\n\n`; + + for ( const testSuite of testSuites ) { + logAtIndent( 0, formats.success( testSuite ) ); + + // Invert the results so we can display them in a table. + /** @type {Record>>} */ + const invertedResult = {}; + for ( const [ branch, metrics ] of Object.entries( + results[ testSuite ] + ) ) { + for ( const [ metric, value ] of Object.entries( metrics ) ) { + invertedResult[ metric ] = invertedResult[ metric ] || {}; + invertedResult[ metric ][ branch ] = value; + } + } + + /** @type {Record>} */ + const printedResult = {}; + for ( const [ metric, branch ] of Object.entries( invertedResult ) ) { + printedResult[ metric ] = {}; + for ( const [ branchName, data ] of Object.entries( branch ) ) { + printedResult[ metric ][ branchName ] = printStats( + metric, + data + ); + } + + if ( branches.length === 2 ) { + const [ branch1, branch2 ] = branches; + const value1 = branch[ branch1 ].q50; + const value2 = branch[ branch2 ].q50; + const percentageChange = fixed( + ( ( value1 - value2 ) / value2 ) * 100 + ); + printedResult[ metric ][ + '% Change' + ] = `${ percentageChange }%`; + } + } + + // Print the results. + console.table( printedResult ); + + // Use yet another structure to generate a Markdown table. + + const rows = []; + + for ( const [ metric, resultBranches ] of Object.entries( + printedResult + ) ) { + /** + * @type {Record< string, string >} + */ + const row = { + Metric: metric, + }; + + for ( const [ branch, value ] of Object.entries( + resultBranches + ) ) { + row[ branch ] = value; + } + rows.push( row ); + } + + summaryMarkdown += `**${ testSuite }**\n\n`; + summaryMarkdown += `${ formatAsMarkdownTable( rows ) }\n`; + } + + fs.writeFileSync( + path.join( ARTIFACTS_PATH, 'summary.md' ), + summaryMarkdown + ); } module.exports = { diff --git a/bin/plugin/commands/test/__snapshots__/changelog.js.snap b/bin/plugin/commands/test/__snapshots__/changelog.js.snap index ccdbb8e712cd1a..dc33f052a0b9d8 100644 --- a/bin/plugin/commands/test/__snapshots__/changelog.js.snap +++ b/bin/plugin/commands/test/__snapshots__/changelog.js.snap @@ -3,208 +3,271 @@ exports[`getChangelog verify that the changelog is properly formatted 1`] = ` "## Changelog -### Enhancements +### Features + +#### Block Editor +- Adds 'nofollow' setting to Button block. ([54110](https://github.com/WordPress/gutenberg/pull/54110)) -- Scripts: Use cssnano to minimize CSS files with build. ([33750](https://github.com/WordPress/gutenberg/pull/33750)) -- Scripts: Webpack configuration update to minimize CSS. ([33676](https://github.com/WordPress/gutenberg/pull/33676)) +#### Site Editor +- Add 'Show template' toggle when editing pages. ([52674](https://github.com/WordPress/gutenberg/pull/52674)) + + +### Enhancements #### Components -- Add new ColorPicker. ([33714](https://github.com/WordPress/gutenberg/pull/33714)) -- Promote \`ItemGroup\`. ([33701](https://github.com/WordPress/gutenberg/pull/33701)) -- Update snackbar to use framer motion instead of react spring. ([33717](https://github.com/WordPress/gutenberg/pull/33717)) -- Use updated range styles. ([33824](https://github.com/WordPress/gutenberg/pull/33824)) +- Adding label/description to \`BlockEditor/DuotoneControl\`. ([54473](https://github.com/WordPress/gutenberg/pull/54473)) +- Deprecating \`isPressed\` in \`Button\` component. ([54740](https://github.com/WordPress/gutenberg/pull/54740)) +- InputControl-based components: Add opt-in prop for next 40px default size. ([53819](https://github.com/WordPress/gutenberg/pull/53819)) +- Modal: Add \`contentWidth\` prop to support a selection of preset modal sizes. ([54471](https://github.com/WordPress/gutenberg/pull/54471)) +- Remove unused components from \`ui/\`. ([54573](https://github.com/WordPress/gutenberg/pull/54573)) +- Update compact search control metrics. ([54663](https://github.com/WordPress/gutenberg/pull/54663)) +- Wrapped \`TextareaControl\` in a \`forwardRef\` call. ([54975](https://github.com/WordPress/gutenberg/pull/54975)) #### Block Library -- [Post Featured Image]: Add basic dimension controls. ([31634](https://github.com/WordPress/gutenberg/pull/31634)) +- Add a brief description to the Footnotes block. ([54613](https://github.com/WordPress/gutenberg/pull/54613)) +- Footnotes: Use core’s meta revisioning if available. ([52988](https://github.com/WordPress/gutenberg/pull/52988)) +- Login/out: Add spacing support. ([45147](https://github.com/WordPress/gutenberg/pull/45147)) +- Query view.js: Code quality. ([54982](https://github.com/WordPress/gutenberg/pull/54982)) +- Set custom color when applying initial background image. ([54054](https://github.com/WordPress/gutenberg/pull/54054)) +- Use \`wp_get_inline_script_tag()\` in \`build_dropdown_script_block_core_categories()\`. ([54637](https://github.com/WordPress/gutenberg/pull/54637)) -#### Site Editor -- Add error boundary. ([33921](https://github.com/WordPress/gutenberg/pull/33921)) +#### Block Editor +- Default suggested links to pages. ([54622](https://github.com/WordPress/gutenberg/pull/54622)) +- Remove base URL from link control search results. ([54553](https://github.com/WordPress/gutenberg/pull/54553)) +- Simplify \`BlockHTMLConvertButton\`. ([54972](https://github.com/WordPress/gutenberg/pull/54972)) +- Update strings in blocks 'RenameModal' component. ([54887](https://github.com/WordPress/gutenberg/pull/54887)) -#### Widgets Editor -- Add error boundaries to widget screens. ([33771](https://github.com/WordPress/gutenberg/pull/33771)) +#### Post Editor +- Edit Post: Use hooks instead of HoCs in 'PostStatus' components. ([54951](https://github.com/WordPress/gutenberg/pull/54951)) +- Editor: Use hooks instead of HoCs in 'PostSticky' components. ([54949](https://github.com/WordPress/gutenberg/pull/54949)) +- Editor: Use hooks instead of HoCs in 'PostSwitchToDraftButton'. ([54695](https://github.com/WordPress/gutenberg/pull/54695)) +- Show confirmation dialog when moving a post to the trash. ([50219](https://github.com/WordPress/gutenberg/pull/50219)) #### Patterns -- Block patterns: Add translation context on titles. ([33734](https://github.com/WordPress/gutenberg/pull/33734)) +- Remove category description in inserter panel. ([54894](https://github.com/WordPress/gutenberg/pull/54894)) -#### Document Settings -- Disable spellcheck and autocomplete in permalink slug field. ([33708](https://github.com/WordPress/gutenberg/pull/33708)) +#### Typography +- Font Library: Refactor endpoint permissions. ([54829](https://github.com/WordPress/gutenberg/pull/54829)) -#### Template Editor -- Template Mode: Add busy state to template creation modal. ([33076](https://github.com/WordPress/gutenberg/pull/33076)) - -#### Global Styles -- Dimensions Panel: Add new ToolsPanel component and update spacing supports. ([32392](https://github.com/WordPress/gutenberg/pull/32392)) +#### Site Editor +- Add template replace flow to template inspector. ([54609](https://github.com/WordPress/gutenberg/pull/54609)) ### Bug Fixes -- Correct \`function_exists()\` check typo introduced in #33331. ([33513](https://github.com/WordPress/gutenberg/pull/33513)) -- ESLint Plugin: Include .jsx extenstion when linting import statements. ([33746](https://github.com/WordPress/gutenberg/pull/33746)) -- Fix block appender position in classic themes. ([33895](https://github.com/WordPress/gutenberg/pull/33895)) -- Fix misspelling of \\"queries\\" in filter documentation. ([33799](https://github.com/WordPress/gutenberg/pull/33799)) -- Fix positioning discrepancy with draggable chip. ([33893](https://github.com/WordPress/gutenberg/pull/33893)) +- Fix the ShortcutProvider usage. ([54851](https://github.com/WordPress/gutenberg/pull/54851)) +- Fix warning when a template calls a template area twice. ([54861](https://github.com/WordPress/gutenberg/pull/54861)) +- Revert "Fix warning when a template calls a template area twice". ([54926](https://github.com/WordPress/gutenberg/pull/54926)) #### Block Library -- Fix justification for button block when selected. ([33739](https://github.com/WordPress/gutenberg/pull/33739)) -- Fix navigation block appender invalid html. ([33964](https://github.com/WordPress/gutenberg/pull/33964)) -- Fix navigation margin collapsing. ([33021](https://github.com/WordPress/gutenberg/pull/33021)) -- Image Block: Fix issue with canInsertCover not being set to false for empty arrays. ([33863](https://github.com/WordPress/gutenberg/pull/33863)) -- [Query Pagination Numbers]: Fix first page's link. ([33629](https://github.com/WordPress/gutenberg/pull/33629)) +- All Nav block items to break long titles. ([54866](https://github.com/WordPress/gutenberg/pull/54866)) +- Fallback to Twitter provider when embedding X URLs. ([54876](https://github.com/WordPress/gutenberg/pull/54876)) +- Fix Deleted Navigation Menu warning string. ([55033](https://github.com/WordPress/gutenberg/pull/55033)) +- Fix Search Block not updating in Nav block. ([54823](https://github.com/WordPress/gutenberg/pull/54823)) +- Fix left and right aligmnent in children of Post Template. ([54997](https://github.com/WordPress/gutenberg/pull/54997)) +- Fix output of Navigation block classnames in the editor. ([54992](https://github.com/WordPress/gutenberg/pull/54992)) +- Fix overwriting of published post meta when previewing footnote changes. ([54339](https://github.com/WordPress/gutenberg/pull/54339)) +- Image: Ensure Expand on Click toggle is shown if block-level lightbox setting exists. ([54878](https://github.com/WordPress/gutenberg/pull/54878)) +- Image: Fix layout shift when lightbox is opened and closed. ([53026](https://github.com/WordPress/gutenberg/pull/53026)) +- Media & Text: Fix React warning. ([55038](https://github.com/WordPress/gutenberg/pull/55038)) +- Search block: Allow space for input field only when form expanded. ([54846](https://github.com/WordPress/gutenberg/pull/54846)) +- Search block: Update alignment and icon button width. ([54773](https://github.com/WordPress/gutenberg/pull/54773)) +- Update pattern import menu item. ([54782](https://github.com/WordPress/gutenberg/pull/54782)) + +#### Site Editor +- Avoid same key warnings in template parts area listings. ([54863](https://github.com/WordPress/gutenberg/pull/54863)) +- Avoid stale navigation block values when parsing entity record. ([54996](https://github.com/WordPress/gutenberg/pull/54996)) +- Don't display the navigation section in template parts details when a menu is missing. ([54993](https://github.com/WordPress/gutenberg/pull/54993)) +- Fix ToolSelector popover variant. ([54840](https://github.com/WordPress/gutenberg/pull/54840)) +- Reset 'Show template' toggle when leaving edit mode. ([54679](https://github.com/WordPress/gutenberg/pull/54679)) +- [Site Editor]: Update copy of using the default template in a page. ([54728](https://github.com/WordPress/gutenberg/pull/54728)) +- remove \`overflow: Hidden\` from the entity title in the site editor sidebar. ([54769](https://github.com/WordPress/gutenberg/pull/54769)) #### Components -- Fix RTL on custom gradient picker. ([33831](https://github.com/WordPress/gutenberg/pull/33831)) -- FontSizePicker: Use number values when the initial value is a number. ([33679](https://github.com/WordPress/gutenberg/pull/33679)) -- FormTokenField: Avoid error when maxLength value is hit. ([33623](https://github.com/WordPress/gutenberg/pull/33623)) -- \`useBreakpointIndex\`: Attach \`resize\` event listener to \`window\` instead of \`document\`. ([33902](https://github.com/WordPress/gutenberg/pull/33902)) +- FormTokenField: Add \`box-sizing\` reset style and reset default padding. ([54734](https://github.com/WordPress/gutenberg/pull/54734)) +- Popover: Fix the styles for components that use emotion within popovers. ([54912](https://github.com/WordPress/gutenberg/pull/54912)) +- Remove hover style for secondary Button when aria-disabled is set. ([54978](https://github.com/WordPress/gutenberg/pull/54978)) +- Reverting addition of \`aria-selected\` style hook in \`Button\`. ([54931](https://github.com/WordPress/gutenberg/pull/54931)) +- \`SlotFill\`: Pass \`Component\` instance to unregisterSlot. ([54765](https://github.com/WordPress/gutenberg/pull/54765)) #### Block Editor -- Force link text to wrap in the Link UI when encountering extra long link text. ([33753](https://github.com/WordPress/gutenberg/pull/33753)) -- Improve display of LinkURL menu and fix spacing. ([33652](https://github.com/WordPress/gutenberg/pull/33652)) -- Only show rich preview for image and description if data is available. ([33660](https://github.com/WordPress/gutenberg/pull/33660)) -- URL Details: Avoid PHP notice when parsing protocol-relative icon URLs. ([33779](https://github.com/WordPress/gutenberg/pull/33779)) +- Avoid double-wrapping selectors when transforming the styles. ([54981](https://github.com/WordPress/gutenberg/pull/54981)) +- [Inserter]: Fix reset of registered media categories. ([55012](https://github.com/WordPress/gutenberg/pull/55012)) + +#### Typography +- Font Library: Changed the OTF mime type expected value to be what PHP returns. ([54886](https://github.com/WordPress/gutenberg/pull/54886)) +- Font Library: Move font uploads to a new tab. ([54655](https://github.com/WordPress/gutenberg/pull/54655)) #### Global Styles -- Avoid rendering duplicate elements stylesheet. ([33680](https://github.com/WordPress/gutenberg/pull/33680)) -- Fix Global Styles transient key clash. ([33844](https://github.com/WordPress/gutenberg/pull/33844)) -- Site editor: Fix presets for blocks with multiple selectors. ([33951](https://github.com/WordPress/gutenberg/pull/33951)) +- Block custom CSS: Fix incorrect CSS when multiple root selectors. ([53602](https://github.com/WordPress/gutenberg/pull/53602)) +- Image: Ensure \`false\` values are preserved in memory when defined in \`theme.json\`. ([54639](https://github.com/WordPress/gutenberg/pull/54639)) -#### CSS & Styling -- Fix navigation block placeholder preview markup. ([33963](https://github.com/WordPress/gutenberg/pull/33963)) +#### List View +- Fix performance issue when selecting all blocks. ([54900](https://github.com/WordPress/gutenberg/pull/54900)) -#### Navigation Screen -- Fix regressed menu selection dropdown placeholder value for Nav Editor menu locations UI. ([33748](https://github.com/WordPress/gutenberg/pull/33748)) -- Navigation Editor: Avoid React warning when creating a new menu. ([33843](https://github.com/WordPress/gutenberg/pull/33843)) +#### Colors +- Format Library: Try to fix highlight popover jumping. ([54736](https://github.com/WordPress/gutenberg/pull/54736)) -#### Site Editor -- Fix the site editor breaking in firefox. ([33896](https://github.com/WordPress/gutenberg/pull/33896)) +#### Interactivity API +- Image: Fix duotone not being applied to lightbox image. ([54670](https://github.com/WordPress/gutenberg/pull/54670)) -#### Post Editor -- Editor: Safer isPreviewingPost check. ([33840](https://github.com/WordPress/gutenberg/pull/33840)) -#### Meta Boxes -- Fix Safari 13 metaboxes from overlapping the content. ([33817](https://github.com/WordPress/gutenberg/pull/33817)) +### Accessibility -#### Build Tooling -- Readable JS assets Plugin: Fix webpack 5 support. ([33785](https://github.com/WordPress/gutenberg/pull/33785)) +#### Components +- Follow ariakit best practices. ([54696](https://github.com/WordPress/gutenberg/pull/54696)) +- HTML block: Fix accessibility issues on back-end. ([54408](https://github.com/WordPress/gutenberg/pull/54408)) +- Update ariakit to 0.3.3. ([54818](https://github.com/WordPress/gutenberg/pull/54818)) +- \`Modal\`: Accessibly hide/show outer modal when nested. ([54743](https://github.com/WordPress/gutenberg/pull/54743)) -#### Accessibility -- Fix some JAWS bugs. ([33627](https://github.com/WordPress/gutenberg/pull/33627)) +#### Block Library +- Footnotes: Add aria-label to return links. ([54843](https://github.com/WordPress/gutenberg/pull/54843)) +- Table of contents block accessibility improvements. ([54322](https://github.com/WordPress/gutenberg/pull/54322)) -#### Template Editor -- Template: Only show post template actions to users with correct capabilities. ([33392](https://github.com/WordPress/gutenberg/pull/33392)) +#### Patterns +- Use list role instead of listbox in patterns list. ([54884](https://github.com/WordPress/gutenberg/pull/54884)) +#### Post Editor +- Editor: Always render the 'Switch to Draft' button to avoid focus loss. ([54722](https://github.com/WordPress/gutenberg/pull/54722)) -### Performance +#### Block Editor +- Block Switcher: Use a different label for multi-selection. ([54692](https://github.com/WordPress/gutenberg/pull/54692)) -- Avoid double parsing the content when loading the editor. ([33727](https://github.com/WordPress/gutenberg/pull/33727)) -#### Block Library -- Do not add to the block-library CSS bundle the colors that come from \`theme.json\`. ([33924](https://github.com/WordPress/gutenberg/pull/33924)) -- Improve the rendering/update performance of the image block. ([33974](https://github.com/WordPress/gutenberg/pull/33974)) +### Performance + +- Tests: Support the Site Editor's legacy spinner. ([54784](https://github.com/WordPress/gutenberg/pull/54784)) +- Use instanceOf over property_exists. ([54835](https://github.com/WordPress/gutenberg/pull/54835)) #### Block Editor -- Lazy render block types in the inserter. ([33749](https://github.com/WordPress/gutenberg/pull/33749)) -- Lazy render the inserter search results. ([33868](https://github.com/WordPress/gutenberg/pull/33868)) +- Subscribe only to block editor store in \`useBlockSync\`. ([55041](https://github.com/WordPress/gutenberg/pull/55041)) -#### Parsing -- Improve the performance of the parser by removing the automatic custom classnames handling. ([33903](https://github.com/WordPress/gutenberg/pull/33903)) -#### Template Editor -- Template Mode: Remove 'per_page' argument from the template data selector. ([33742](https://github.com/WordPress/gutenberg/pull/33742)) +### Experiments -#### Post Editor -- Refactor the HierarchicalTermSelector so that it does not cause unnecessary loading of terms. ([33418](https://github.com/WordPress/gutenberg/pull/33418)) +#### Site Editor +- al]: First version of pages list in site editor. ([54966](https://github.com/WordPress/gutenberg/pull/54966)) + +#### Block Editor +- Expose \`getDuotoneFilter()\` as private API. ([54905](https://github.com/WordPress/gutenberg/pull/54905)) ### Documentation -- Add documentation to disable remote calls for block patterns. ([33930](https://github.com/WordPress/gutenberg/pull/33930)) -- Add missing comma. ([33764](https://github.com/WordPress/gutenberg/pull/33764)) -- Add spaces in add_theme_support documentation code. ([33796](https://github.com/WordPress/gutenberg/pull/33796)) -- Correct spelling and grammar in documentation. ([33860](https://github.com/WordPress/gutenberg/pull/33860)) -- Docs: Add more details about block attributes. ([33880](https://github.com/WordPress/gutenberg/pull/33880)) -- Example for rest_endpoints filter in PHP. ([33738](https://github.com/WordPress/gutenberg/pull/33738)) -- Fix gutenberg_resolve_template() return documentation. ([33800](https://github.com/WordPress/gutenberg/pull/33800)) -- Update documentation to reflect new automated process for feature grouping. ([33573](https://github.com/WordPress/gutenberg/pull/33573)) -- [docs] fix: \`supports.color.gradients\` is plural. ([33781](https://github.com/WordPress/gutenberg/pull/33781)) -- fix: Broken link in documentation to block support mechanism. ([33780](https://github.com/WordPress/gutenberg/pull/33780)) -- link fix: Block editor Sidebar Tutorial. ([33308](https://github.com/WordPress/gutenberg/pull/33308)) +- Add a documentation page about the block editor settings. ([54870](https://github.com/WordPress/gutenberg/pull/54870)) +- Add a page about the format library to the platform documentation site. ([55037](https://github.com/WordPress/gutenberg/pull/55037)) +- Docs: Add a callout to the \`wp-now\` documentation to mention it's still experimental. ([55044](https://github.com/WordPress/gutenberg/pull/55044)) +- Docs: Remove outdated info. ([54707](https://github.com/WordPress/gutenberg/pull/54707)) +- Docs: Remove the Full Site Editing doc. ([54516](https://github.com/WordPress/gutenberg/pull/54516)) +- Docs: Rename Block Hooks handbook page to Block Filters. ([54862](https://github.com/WordPress/gutenberg/pull/54862)) +- Document the current state of the Real-Time collaboration experiment. ([54932](https://github.com/WordPress/gutenberg/pull/54932)) +- Fix a broken MD link in callout. ([54772](https://github.com/WordPress/gutenberg/pull/54772)) +- Platform Docs: Add a documentation page explaining how to use the block library. ([54967](https://github.com/WordPress/gutenberg/pull/54967)) +- Update the documentation of the block editor and replace @wordpress/element with react. ([54908](https://github.com/WordPress/gutenberg/pull/54908)) +- Update versions in WP for 6.4. ([54890](https://github.com/WordPress/gutenberg/pull/54890)) ### Code Quality -- Scripts: Fix typo in format change message. ([33945](https://github.com/WordPress/gutenberg/pull/33945)) +- Add a unit test for the "ValidBlockLibraryFunctionNameSniff" sniff. ([53928](https://github.com/WordPress/gutenberg/pull/53928)) +- Move dependencies to the right place. ([54597](https://github.com/WordPress/gutenberg/pull/54597)) +- Move mime-type collection generation to a function that can be tested…. ([54844](https://github.com/WordPress/gutenberg/pull/54844)) +- Post Title block should use esc_url(). ([53981](https://github.com/WordPress/gutenberg/pull/53981)) +- Rich text: Use getPasteEventData. ([55048](https://github.com/WordPress/gutenberg/pull/55048)) +- Writing flow: Absorb clipboard handler. ([55006](https://github.com/WordPress/gutenberg/pull/55006)) + +#### Block Library +- Footnotes: Avoid regexes in entity provider. ([54505](https://github.com/WordPress/gutenberg/pull/54505)) +- Image Block: Fix browser console error when clicking "Expand on Click". ([54938](https://github.com/WordPress/gutenberg/pull/54938)) +- Removed unwanted space from the string. ([54654](https://github.com/WordPress/gutenberg/pull/54654)) +- Update CODEOWNERS for \`core/image\` block. ([54793](https://github.com/WordPress/gutenberg/pull/54793)) + +#### Patterns +- Add a new spec for for adding an unsynced pattern. ([54892](https://github.com/WordPress/gutenberg/pull/54892)) +- Add end-to-end tests for filtering and searching patterns. ([54906](https://github.com/WordPress/gutenberg/pull/54906)) +- Add new end-to-end test for creating a pattern. ([54855](https://github.com/WordPress/gutenberg/pull/54855)) +- Include pattern category in main end-to-end critical path test. ([54923](https://github.com/WordPress/gutenberg/pull/54923)) #### Components -- Components utils: \`rtl()\` return type, \`rtl.watch()\` utility. ([33882](https://github.com/WordPress/gutenberg/pull/33882)) -- InputControl to TypeScript. ([33696](https://github.com/WordPress/gutenberg/pull/33696)) -- Use the \`__unsafe_useEmotionCache\` in the \`useCx\` hook. ([33982](https://github.com/WordPress/gutenberg/pull/33982)) +- Consolidate utils to remove \`ui/\`. ([54922](https://github.com/WordPress/gutenberg/pull/54922)) +- Move \`ContextSystemProvider\` out of \`/ui\`. ([54847](https://github.com/WordPress/gutenberg/pull/54847)) +- SlotFill: Migrate to Typescript. ([51350](https://github.com/WordPress/gutenberg/pull/51350)) +- Tidying \`CircularOptionPicker.Option\`. ([54903](https://github.com/WordPress/gutenberg/pull/54903)) -#### Block Library -- Featured Image: Use getMedia shorthand. ([33943](https://github.com/WordPress/gutenberg/pull/33943)) -- Site Logo: Use getMedia shorthand. ([33992](https://github.com/WordPress/gutenberg/pull/33992)) +#### Typography +- Font Library: Syntax refactor repace strpos with str_contains. ([54832](https://github.com/WordPress/gutenberg/pull/54832)) +- Font Library: Use snake_case instead of camelCase on fontFamilies endpoint param. ([54977](https://github.com/WordPress/gutenberg/pull/54977)) -#### Global Styles -- No longer read from \`experimental-theme.json\`. ([33904](https://github.com/WordPress/gutenberg/pull/33904)) -- Remove the experimental prefix and rename \`theme.json\` files. ([33925](https://github.com/WordPress/gutenberg/pull/33925)) +#### Block Editor +- Rich text: Avoid shortcode logic, adjust paste handler instead. ([55052](https://github.com/WordPress/gutenberg/pull/55052)) #### Plugin -- Fix \`jsdoc/check-line-alignment\` ESLint warnings. ([33901](https://github.com/WordPress/gutenberg/pull/33901)) +- Remove legacy logic for '__unstableResolvedAssets' setting. ([54812](https://github.com/WordPress/gutenberg/pull/54812)) -#### Post Editor -- Refactor MetaBoxesArea to to functional components using hooks. ([30542](https://github.com/WordPress/gutenberg/pull/30542)) +#### Data Layer +- createResolversCacheMiddleware: Remove dependency on core/data store. ([54733](https://github.com/WordPress/gutenberg/pull/54733)) + +#### Site Editor +- Use constants rather than hard coded template strings (round 3). ([54705](https://github.com/WordPress/gutenberg/pull/54705)) ### Tools -- GitHub Templates: Fix spacing in bug report template. ([33761](https://github.com/WordPress/gutenberg/pull/33761)) -- GitHub Templates: Format bug report template. ([33786](https://github.com/WordPress/gutenberg/pull/33786)) -- Update bug issue template to use forms. ([33713](https://github.com/WordPress/gutenberg/pull/33713)) +- Label enforcer workflow: Make accessibility a focus instead of a type. ([54941](https://github.com/WordPress/gutenberg/pull/54941)) +- Scripts: Update webpack and related dependencies to the latest version. ([54657](https://github.com/WordPress/gutenberg/pull/54657)) +- Update changelog automation and test fixtures to match the last a11y label renaming. ([54974](https://github.com/WordPress/gutenberg/pull/54974)) #### Testing -- Add search performance measure and make other measures more stable. ([33848](https://github.com/WordPress/gutenberg/pull/33848)) -- E2E: Block Hierarchy Navigation wait for the column to be highlighted. ([33721](https://github.com/WordPress/gutenberg/pull/33721)) +- Don’t use TypeScript files in scripts package. ([54856](https://github.com/WordPress/gutenberg/pull/54856)) +- ESLint: Update eslint-plugin-testing-library to v6. ([54910](https://github.com/WordPress/gutenberg/pull/54910)) +- Fix end-to-end test: ”WP Editor Meta Boxes > Should save the changes”. ([51884](https://github.com/WordPress/gutenberg/pull/51884)) +- Font Library: Avoid deprected error in test. ([54802](https://github.com/WordPress/gutenberg/pull/54802)) +- Make \`editor.getBlocks\` to return only testing-related properties. ([54901](https://github.com/WordPress/gutenberg/pull/54901)) +- Migrate 'Global styles sidebar' test to Playwright. ([55045](https://github.com/WordPress/gutenberg/pull/55045)) +- Migrate 'iframed block editor settings styles' tests to Playwright. ([55014](https://github.com/WordPress/gutenberg/pull/55014)) +- Migrate 'iframed inline styles' tests to Playwright. ([55009](https://github.com/WordPress/gutenberg/pull/55009)) +- Migrate 'iframed masonry block' tests to Playwright. ([55016](https://github.com/WordPress/gutenberg/pull/55016)) +- Migrate 'iframed multiple block stylesheets' tests to Playwright. ([55003](https://github.com/WordPress/gutenberg/pull/55003)) +- Migrate keyboard-navigable-blocks end-to-end tests from puppeteer to playwright. ([54944](https://github.com/WordPress/gutenberg/pull/54944)) +- Scripts: Properly use CommonJS for default Playwright configuration. ([54988](https://github.com/WordPress/gutenberg/pull/54988)) +- Try fixing the flaky 'Toolbar roving tabindex' end-to-end test. ([54785](https://github.com/WordPress/gutenberg/pull/54785)) +- end-to-end Tests: Revert temporary fixes. ([54865](https://github.com/WordPress/gutenberg/pull/54865)) +- end-to-end Utils: Allow overriding username/password. ([53267](https://github.com/WordPress/gutenberg/pull/53267)) #### Build Tooling -- Scripts: Update webpack to v5 (try 2). ([33818](https://github.com/WordPress/gutenberg/pull/33818)) +- Add some @types packages as proper dependencies. ([50231](https://github.com/WordPress/gutenberg/pull/50231)) +- Update the default JSX pragma to React instead of @wordpress/element. ([54494](https://github.com/WordPress/gutenberg/pull/54494)) +- Upgrade wp-prettier to v3.0.3 (final). ([54775](https://github.com/WordPress/gutenberg/pull/54775)) -### Various +### Security -- Core Data: Deprecate \`getAuthors\` in favor of \`getUsers\`. ([33725](https://github.com/WordPress/gutenberg/pull/33725)) -- RNMobile: Add integration test guide. ([33833](https://github.com/WordPress/gutenberg/pull/33833)) -- RNMobile: Try unifying the unit test command on mobile. ([33657](https://github.com/WordPress/gutenberg/pull/33657)) -- Tune appender margin. ([33866](https://github.com/WordPress/gutenberg/pull/33866)) +#### Data Layer +- Replace turbo-combine-reducers with combineReducers from Redux. ([54606](https://github.com/WordPress/gutenberg/pull/54606)) -#### Block Library -- Enable ability to remove a link from the Nav Link block in the Nav Block. ([33777](https://github.com/WordPress/gutenberg/pull/33777)) -- Search Block: Removed components class from icon button and polished css. ([33961](https://github.com/WordPress/gutenberg/pull/33961)) -- [Button Block]: Add padding block support. ([31774](https://github.com/WordPress/gutenberg/pull/31774)) -#### Full Site Editing -- Site Editor: Implement a settings object filter. ([33737](https://github.com/WordPress/gutenberg/pull/33737)) -- Template Part placeholder - Add title step to creation flow. ([33703](https://github.com/WordPress/gutenberg/pull/33703)) -- Template part selection popover - minor style updates for visiblity. ([33733](https://github.com/WordPress/gutenberg/pull/33733)) +### Various + +- (chore) Revert the 16.7 RC2 release in order to release it again due to wrong changelog. ([54744](https://github.com/WordPress/gutenberg/pull/54744)) -#### Widgets Editor -- Try to fix flaky customizer inspector test 2nd try. ([33965](https://github.com/WordPress/gutenberg/pull/33965)) -- Try to fix flaky customizer inspector test. ([33890](https://github.com/WordPress/gutenberg/pull/33890)) +#### Design Tools +- Background image block support: Add tests, adjust injection logic slightly. ([54489](https://github.com/WordPress/gutenberg/pull/54489)) +- Background support: Backport fix for undefined array key. ([54850](https://github.com/WordPress/gutenberg/pull/54850)) -#### Block Editor -- Closing the block inserter decrements block type impressions. ([33906](https://github.com/WordPress/gutenberg/pull/33906)) -- Enable rich previews for internal links. ([33086](https://github.com/WordPress/gutenberg/pull/33086)) +#### Typography +- Revert "Font Library: Avoid rendering font library ui outisde gutenberg plugin". ([54947](https://github.com/WordPress/gutenberg/pull/54947)) -#### Icons -- Try new icons for reusable blocks and template parts. ([34002](https://github.com/WordPress/gutenberg/pull/34002)) +#### Commands +- Make the reset styles command consistent. ([54841](https://github.com/WordPress/gutenberg/pull/54841)) -#### Components -- Polish the focus style for the segmented control. ([33842](https://github.com/WordPress/gutenberg/pull/33842)) +#### Patterns +- Use "Not synced" in place of "Standard" nomenclature for patterns. ([54839](https://github.com/WordPress/gutenberg/pull/54839)) -#### REST API -- Improve likelihood of getting rich link previews by modifying UA string for URL Details REST API endpoint. ([33747](https://github.com/WordPress/gutenberg/pull/33747)) +#### Block Editor +- Simplify BlockPatternsSyncFilter with clearer labels and additional context. ([54838](https://github.com/WordPress/gutenberg/pull/54838)) -#### CSS & Styling -- Try: Reduce specificity of reset & classic styles. ([32659](https://github.com/WordPress/gutenberg/pull/32659)) +#### Site Editor +- Use consistent capitalization for template parts in Site Editor constants. ([54709](https://github.com/WordPress/gutenberg/pull/54709)) " @@ -217,17 +280,14 @@ exports[`getContributorList verify that the contributors list is properly format The following contributors merged PRs in this release: -@aaronrobertshaw @Addison-Stavlo @alexstine @amir2mi @annezazu @antonis @ceyhun @christianztamayo @chrisvanpatten @ciampo @dcalhoun @desrosj @fluiddot @geriux @getdave @glendaviesnz @guarani @gwwar @gziolo @hypest @jasmussen @jeremyfelt @jeyip @jhnstn @johngodley @kapilpaul @kevin940726 @MaggieCabrera @Mamaduka @mkaz @mrleemon @mtias @nosolosw @ntsekouras @rbrishabh @RhnSharma @ryelle @sarayourfriend @scruffian @SiobhyB @stacimc @StevenDufresne @talldan @torounit @walbo @youknowriad" +@aaronrobertshaw @adamsilverstein @alexstine @andrewhayward @andrewserong @annezazu @anton-vlasenko @artemiomorales @aurooba @bangank36 @brookewp @c4rl0sbr4v0 @carolinan @chad1008 @ciampo @dcalhoun @derekblank @draganescu @ellatrix @fluiddot @fullofcaffeine @geriux @getdave @glendaviesnz @gziolo @jameskoster @jeryj @jsnajdr @juhi123 @kevin940726 @leemyongpakvn @madhusudhand @MaggieCabrera @Mamaduka @matiasbenedetto @michalczaplinski @mirka @mtias @mujuonly @ndiego @noahtallen @noisysocks @ntsekouras @oandregal @ockham @pbking @priethor @ramonjd @richtabor @scruffian @SiobhyB @spacedmonkey @stokesman @swissspidy @t-hamano @tellthemachines @tellyworth @them-es @torounit @tyxla @westonruter @WunderBart @youknowriad" `; exports[`getContributorProps verify that the contributors props are properly formatted 1`] = ` -"## First time contributors +"## First-time contributors -The following PRs were merged by first time contributors: +The following PRs were merged by first-time contributors: -- @alexstine: Fix some JAWS bugs. ([33627](https://github.com/WordPress/gutenberg/pull/33627)) -- @amir2mi: Example for rest_endpoints filter in PHP. ([33738](https://github.com/WordPress/gutenberg/pull/33738)) -- @christianztamayo: Scripts: Webpack configuration update to minimize CSS. ([33676](https://github.com/WordPress/gutenberg/pull/33676)) -- @kapilpaul: Add spaces in add_theme_support documentation code. ([33796](https://github.com/WordPress/gutenberg/pull/33796)) +- @leemyongpakvn: Fix a broken MD link in callout. ([54772](https://github.com/WordPress/gutenberg/pull/54772)) " `; diff --git a/bin/plugin/commands/test/changelog.js b/bin/plugin/commands/test/changelog.js index e9e1872c38c997..9c9d423d18d1cb 100644 --- a/bin/plugin/commands/test/changelog.js +++ b/bin/plugin/commands/test/changelog.js @@ -19,12 +19,13 @@ import { getChangelog, getContributorProps, getContributorsList, + mapLabelsToFeatures, } from '../changelog'; import _pullRequests from './fixtures/pull-requests.json'; import botPullRequestFixture from './fixtures/bot-pull-requests.json'; /** - * pull-requests.json is a static snapshot of real data from the Github API. + * pull-requests.json is a static snapshot of real data from the GitHub API. * We merge this with dummy fixture data for a "bot" pull request so as to * ensure future updates to the pull-requests.json doesn't reduce test coverage * of filtering out of bot PRs. @@ -51,7 +52,7 @@ describe( 'getNormalizedTitle', () => { undefined, { ...DEFAULT_ISSUE, - labels: [ { name: 'Mobile App Android/iOS' } ], + labels: [ { name: 'Mobile App - i.e. Android or iOS' } ], }, ], [ @@ -188,6 +189,17 @@ describe( 'getIssueType', () => { expect( result ).toBe( 'Enhancements' ); } ); + + it( 'prioritizes meta categories', () => { + const result = getIssueType( { + labels: [ + { name: '[Type] Bug' }, + { name: '[Type] Build Tooling' }, + ], + } ); + + expect( result ).toBe( 'Tools' ); + } ); } ); describe( 'getIssueFeature', () => { @@ -301,18 +313,35 @@ describe( 'sortGroup', () => { } ); describe( 'getTypesByLabels', () => { - it( 'returns all normalized type candidates by type prefix', () => { + it( 'returns all normalized type candidates by type prefix. it is case insensitive', () => { const result = getTypesByLabels( [ '[Type] Regression', '[Type] Bug', '[Package] Blocks', - '[Type] Performance', + '[Type] performance', ] ); expect( result ).toEqual( [ 'Bug Fixes', 'Performance' ] ); } ); } ); +describe( 'mapLabelsToFeatures', () => { + it( 'returns all normalized feature candidates by feature prefix. it is case insensitive', () => { + const result = mapLabelsToFeatures( [ + '[Package] Commands', + '[Package] Block Library', + '[Feature] Link Editing', + '[Feature] block Multi Selection', + ] ); + + expect( result ).toEqual( [ + 'Commands', + 'Block Library', + 'Block Editor', + ] ); + } ); +} ); + describe( 'getTypesByTitle', () => { it.each( [ [ 'Fix Typography panel rendering from style hooks' ], @@ -462,7 +491,7 @@ describe( 'getFormattedItemDescription', () => { describe( 'getChangelog', () => { test( 'verify that the changelog is properly formatted', () => { // The fixture with the list of pull requests was generated by running the following command: - // npm run other:changelog -- --milestone="Gutenberg 11.3" + // npm run other:changelog -- --milestone="Gutenberg 16.8" // The response from the `fetchAllPullRequests` call in the `getChangelog` method was stored in the JSON file. expect( getChangelog( pullRequests ) ).toMatchSnapshot(); } ); @@ -474,6 +503,11 @@ describe( 'getContributorProps', () => { // npm run other:changelog -- --milestone="Gutenberg 11.3" expect( getContributorProps( pullRequests ) ).toMatchSnapshot(); } ); + test( 'do not include first time contributors section if there are not any', () => { + expect( + getContributorProps( pullRequests.slice( 0, 4 ) ) + ).toMatchInlineSnapshot( `""` ); + } ); } ); describe( 'getContributorList', () => { diff --git a/bin/plugin/commands/test/fixtures/pull-requests.json b/bin/plugin/commands/test/fixtures/pull-requests.json index bb9a66a6e8e948..c0ad0d7969399e 100644 --- a/bin/plugin/commands/test/fixtures/pull-requests.json +++ b/bin/plugin/commands/test/fixtures/pull-requests.json @@ -1,116 +1,76 @@ [ { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/34002", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55052", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/34002/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/34002/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/34002/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/34002", - "id": 966290882, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA4NTQ3NjEw", - "number": 34002, - "title": "Try new icons for reusable blocks and template parts.", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55052/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55052/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55052/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55052", + "id": 1926590588, + "node_id": "PR_kwDOBNHdeM5b68B5", + "number": 55052, + "title": "Rich text: avoid shortcode logic, adjust paste handler instead", "user": { - "login": "jasmussen", - "id": 1204802, - "node_id": "MDQ6VXNlcjEyMDQ4MDI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1204802?v=4", + "login": "ellatrix", + "id": 4710635, + "node_id": "MDQ6VXNlcjQ3MTA2MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/4710635?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/jasmussen", - "html_url": "https://github.com/jasmussen", - "followers_url": "https://api.github.com/users/jasmussen/followers", - "following_url": "https://api.github.com/users/jasmussen/following{/other_user}", - "gists_url": "https://api.github.com/users/jasmussen/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jasmussen/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jasmussen/subscriptions", - "organizations_url": "https://api.github.com/users/jasmussen/orgs", - "repos_url": "https://api.github.com/users/jasmussen/repos", - "events_url": "https://api.github.com/users/jasmussen/events{/privacy}", - "received_events_url": "https://api.github.com/users/jasmussen/received_events", + "url": "https://api.github.com/users/ellatrix", + "html_url": "https://github.com/ellatrix", + "followers_url": "https://api.github.com/users/ellatrix/followers", + "following_url": "https://api.github.com/users/ellatrix/following{/other_user}", + "gists_url": "https://api.github.com/users/ellatrix/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ellatrix/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ellatrix/subscriptions", + "organizations_url": "https://api.github.com/users/ellatrix/orgs", + "repos_url": "https://api.github.com/users/ellatrix/repos", + "events_url": "https://api.github.com/users/ellatrix/events{/privacy}", + "received_events_url": "https://api.github.com/users/ellatrix/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 783337752, - "node_id": "MDU6TGFiZWw3ODMzMzc3NTI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Reusable%20Blocks", - "name": "[Feature] Reusable Blocks", + "id": 598548627, + "node_id": "MDU6TGFiZWw1OTg1NDg2Mjc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Rich%20Text", + "name": "[Feature] Rich Text", "color": "fbca04", "default": false, - "description": "" + "description": "Related to the Rich Text component that allows developers to render a contenteditable" }, { - "id": 1988226925, - "node_id": "MDU6TGFiZWwxOTg4MjI2OTI1", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Icons", - "name": "[Package] Icons", - "color": "ed2572", + "id": 671400480, + "node_id": "MDU6TGFiZWw2NzE0MDA0ODA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Raw%20Handling", + "name": "[Feature] Raw Handling", + "color": "fbca04", "default": false, - "description": "/packages/icons" + "description": "Related to the ability to convert content to blocks, paste handling, etc" }, { - "id": 2373088071, - "node_id": "MDU6TGFiZWwyMzczMDg4MDcx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Template-Part", - "name": "[Block] Template-Part", - "color": "6767e5", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "" + "description": "Issues or PRs that relate to code quality" } ], "state": "closed", "locked": false, - "assignee": { - "login": "jasmussen", - "id": 1204802, - "node_id": "MDQ6VXNlcjEyMDQ4MDI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1204802?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/jasmussen", - "html_url": "https://github.com/jasmussen", - "followers_url": "https://api.github.com/users/jasmussen/followers", - "following_url": "https://api.github.com/users/jasmussen/following{/other_user}", - "gists_url": "https://api.github.com/users/jasmussen/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jasmussen/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jasmussen/subscriptions", - "organizations_url": "https://api.github.com/users/jasmussen/orgs", - "repos_url": "https://api.github.com/users/jasmussen/repos", - "events_url": "https://api.github.com/users/jasmussen/events{/privacy}", - "received_events_url": "https://api.github.com/users/jasmussen/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "jasmussen", - "id": 1204802, - "node_id": "MDQ6VXNlcjEyMDQ4MDI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1204802?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/jasmussen", - "html_url": "https://github.com/jasmussen", - "followers_url": "https://api.github.com/users/jasmussen/followers", - "following_url": "https://api.github.com/users/jasmussen/following{/other_user}", - "gists_url": "https://api.github.com/users/jasmussen/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jasmussen/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jasmussen/subscriptions", - "organizations_url": "https://api.github.com/users/jasmussen/orgs", - "repos_url": "https://api.github.com/users/jasmussen/repos", - "events_url": "https://api.github.com/users/jasmussen/events{/privacy}", - "received_events_url": "https://api.github.com/users/jasmussen/received_events", - "type": "User", - "site_admin": false - } - ], + "assignee": null, + "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -133,68 +93,84 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 5, - "created_at": "2021-08-11T09:06:57Z", - "updated_at": "2021-08-12T07:30:40Z", - "closed_at": "2021-08-11T11:26:22Z", - "author_association": "CONTRIBUTOR", + "comments": 4, + "created_at": "2023-10-04T16:30:23Z", + "updated_at": "2023-10-04T18:35:43Z", + "closed_at": "2023-10-04T18:35:18Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/34002", - "html_url": "https://github.com/WordPress/gutenberg/pull/34002", - "diff_url": "https://github.com/WordPress/gutenberg/pull/34002.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/34002.patch" - }, - "body": "## Description\r\n\r\nStarts work on #33897 by adding new generic icons for template parts and reusable blocks.\r\n\r\nFor now, the PR adds the two new icons, and applies them to template parts and partially, reusable blocks:\r\n\r\n\"Screenshot\r\n\r\nAs shown above, there's still some logic in the Reusable Block system that falls back to the `defaultBlock` icon, as shown above:\r\n\r\n- In the List View\r\n- In the Inspector description\r\n\r\nAdditionally, the `defaultBlock` is used for select mode:\r\n\r\n\"Screenshot\r\n\r\nIf you're familiar with the reusable blocks codebase, I'd appreciate your help in applying the new icon in those remaining place. \r\n\r\n## How has this been tested?\r\n\r\nTemplate Parts and Reusable blocks, when used in the canvas, list view, and inspector, should leverage the new icons.\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55052", + "html_url": "https://github.com/WordPress/gutenberg/pull/55052", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55052.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55052.patch", + "merged_at": "2023-10-04T18:35:18Z" + }, + "body": "\r\n\r\n## What?\r\n\r\nWe can avoid rich text having to check for shortcodes by building the check into the paste handler. We already parse shortcodes, we should just do so a bit earlier.\r\n\r\nThis PR actually also fixes an issue with paste from Slack: previously paragraph wouldn't get fixed for inline paste. Now the Slack paragraph fixer runs for inline mode as well.\r\n\r\n## Why?\r\n\r\n\r\nTo simplify paste handling and rich text and prepare it to be moved to writing flow.\r\n\r\n## How?\r\n\r\n\r\n## Testing Instructions\r\n\r\nE2e tests should pass.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55052/reactions", + "total_count": 1, + "+1": 1, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55052/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/34000", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55048", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/34000/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/34000/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/34000/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/34000", - "id": 966213667, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA4NDc2NzQy", - "number": 34000, - "title": "[Mobile] - Global styles - Add color to the block styles filter list", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55048/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55048/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55048/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55048", + "id": 1926536069, + "node_id": "PR_kwDOBNHdeM5b6wO1", + "number": 55048, + "title": "Rich text: use getPasteEventData", "user": { - "login": "geriux", - "id": 4885740, - "node_id": "MDQ6VXNlcjQ4ODU3NDA=", - "avatar_url": "https://avatars.githubusercontent.com/u/4885740?v=4", + "login": "ellatrix", + "id": 4710635, + "node_id": "MDQ6VXNlcjQ3MTA2MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/4710635?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/geriux", - "html_url": "https://github.com/geriux", - "followers_url": "https://api.github.com/users/geriux/followers", - "following_url": "https://api.github.com/users/geriux/following{/other_user}", - "gists_url": "https://api.github.com/users/geriux/gists{/gist_id}", - "starred_url": "https://api.github.com/users/geriux/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/geriux/subscriptions", - "organizations_url": "https://api.github.com/users/geriux/orgs", - "repos_url": "https://api.github.com/users/geriux/repos", - "events_url": "https://api.github.com/users/geriux/events{/privacy}", - "received_events_url": "https://api.github.com/users/geriux/received_events", + "url": "https://api.github.com/users/ellatrix", + "html_url": "https://github.com/ellatrix", + "followers_url": "https://api.github.com/users/ellatrix/followers", + "following_url": "https://api.github.com/users/ellatrix/following{/other_user}", + "gists_url": "https://api.github.com/users/ellatrix/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ellatrix/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ellatrix/subscriptions", + "organizations_url": "https://api.github.com/users/ellatrix/orgs", + "repos_url": "https://api.github.com/users/ellatrix/repos", + "events_url": "https://api.github.com/users/ellatrix/events{/privacy}", + "received_events_url": "https://api.github.com/users/ellatrix/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 982506020, - "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", - "name": "Mobile App - i.e. Android or iOS", - "color": "a3ef7a", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + "description": "Issues or PRs that relate to code quality" } ], "state": "closed", @@ -202,13 +178,13 @@ "assignee": null, "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -231,39 +207,55 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-08-11T08:20:47Z", - "updated_at": "2021-08-11T14:18:41Z", - "closed_at": "2021-08-11T14:18:15Z", + "comments": 3, + "created_at": "2023-10-04T15:57:10Z", + "updated_at": "2023-10-04T17:32:23Z", + "closed_at": "2023-10-04T17:31:45Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/34000", - "html_url": "https://github.com/WordPress/gutenberg/pull/34000", - "diff_url": "https://github.com/WordPress/gutenberg/pull/34000.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/34000.patch" - }, - "body": "`Gutenberg Mobile PR` -> https://github.com/wordpress-mobile/gutenberg-mobile/pull/3822\r\n\r\n## Description\r\nWe [recently added](https://github.com/WordPress/gutenberg/pull/33782) some filtering to prevent passing block style attributes that mobile doesn't support yet, by doing this the `color` styles were being filtered out. This PR adds `color` to the style attributes we support.\r\n\r\n## How has this been tested?\r\n- Open the app\r\n- Add a block that supports text color customization, like `Paragraph`\r\n- Open the settings of the block\r\n- Tap on `Text color`\r\n- Go to the end of the list and select `CUSTOM`\r\n- Change the color\r\n- **Expect** to see the text color changing in the block\r\n\r\n## Screenshots \r\nBefore|After\r\n-|-\r\n | \r\n\r\n## Types of changes\r\nBug fix\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55048", + "html_url": "https://github.com/WordPress/gutenberg/pull/55048", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55048.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55048.patch", + "merged_at": "2023-10-04T17:31:45Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nThe code is reusable through `getPasteEventData`, we can use it in RichText. Additionally we can improve `getPasteEventData` to strip the meta tag and the garbage from Word.\r\n\r\n## Why?\r\n\r\nNeed to introduce more paste event handlers in #54543, so this makes it easier.\r\n\r\n## How?\r\n\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55048/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55048/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33992", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55045", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33992/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33992/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33992/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33992", - "id": 965954789, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA4MjM0OTc3", - "number": 33992, - "title": "Site Logo: Use getMedia shorthand", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55045/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55045/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55045/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55045", + "id": 1926291618, + "node_id": "PR_kwDOBNHdeM5b56hN", + "number": 55045, + "title": "Migrate 'Global styles sidebar' test to Playwright", "user": { "login": "Mamaduka", "id": 240569, @@ -286,22 +278,13 @@ }, "labels": [ { - "id": 930001208, - "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", - "name": "[Type] Code Quality", - "color": "e5e04b", - "default": false, - "description": "Gotta shave those yaks." - }, - { - "id": 2347193850, - "node_id": "MDU6TGFiZWwyMzQ3MTkzODUw", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Site%20Logo", - "name": "[Block] Site Logo", - "color": "6767e5", + "id": 615503111, + "node_id": "MDU6TGFiZWw2MTU1MDMxMTE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Automated%20Testing", + "name": "[Type] Automated Testing", + "color": "111111", "default": false, - "description": "" + "description": "Testing infrastructure changes impacting the execution of end-to-end (E2E) and/or unit tests." } ], "state": "closed", @@ -349,13 +332,13 @@ } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -378,140 +361,138 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-08-11T05:29:30Z", - "updated_at": "2021-08-11T07:35:13Z", - "closed_at": "2021-08-11T07:34:49Z", + "comments": 3, + "created_at": "2023-10-04T14:01:37Z", + "updated_at": "2023-10-04T17:40:30Z", + "closed_at": "2023-10-04T17:40:05Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33992", - "html_url": "https://github.com/WordPress/gutenberg/pull/33992", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33992.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33992.patch" - }, - "body": "## Description\r\nPR replaces `getEntityRecord` with `getMedia` shorthand for simplicity.\r\n\r\nSimilar PR: #33943.\r\n\r\n## How has this been tested?\r\nThis is a non-breaking change. Tested that the \"Site Logo\" block works as expected.\r\n\r\n## Types of changes\r\nCode Quality\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55045", + "html_url": "https://github.com/WordPress/gutenberg/pull/55045", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55045.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55045.patch", + "merged_at": "2023-10-04T17:40:05Z" + }, + "body": "## What?\r\nPart of #38851.\r\n\r\nPR migrates 'Global styles sidebar' tests to Playwright.\r\n\r\n## Testing Instructions\r\n```\r\nnpm run test:e2e:playwright -- test/e2e/specs/site-editor/global-styles-sidebar.spec.js\r\n```\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55045/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55045/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33982", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55044", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33982/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33982/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33982/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33982", - "id": 965187245, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA3NTI4ODcz", - "number": 33982, - "title": "Components: use the `__unsafe_useEmotionCache` in the `useCx` hook", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55044/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55044/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55044/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55044", + "id": 1926216773, + "node_id": "PR_kwDOBNHdeM5b5qEF", + "number": 55044, + "title": "Docs: Add a callout to the `wp-now` documentation to mention it's still experimental", "user": { - "login": "ciampo", - "id": 1083581, - "node_id": "MDQ6VXNlcjEwODM1ODE=", - "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "login": "priethor", + "id": 27339341, + "node_id": "MDQ6VXNlcjI3MzM5MzQx", + "avatar_url": "https://avatars.githubusercontent.com/u/27339341?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/ciampo", - "html_url": "https://github.com/ciampo", - "followers_url": "https://api.github.com/users/ciampo/followers", - "following_url": "https://api.github.com/users/ciampo/following{/other_user}", - "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", - "organizations_url": "https://api.github.com/users/ciampo/orgs", - "repos_url": "https://api.github.com/users/ciampo/repos", - "events_url": "https://api.github.com/users/ciampo/events{/privacy}", - "received_events_url": "https://api.github.com/users/ciampo/received_events", + "url": "https://api.github.com/users/priethor", + "html_url": "https://github.com/priethor", + "followers_url": "https://api.github.com/users/priethor/followers", + "following_url": "https://api.github.com/users/priethor/following{/other_user}", + "gists_url": "https://api.github.com/users/priethor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/priethor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/priethor/subscriptions", + "organizations_url": "https://api.github.com/users/priethor/orgs", + "repos_url": "https://api.github.com/users/priethor/repos", + "events_url": "https://api.github.com/users/priethor/events{/privacy}", + "received_events_url": "https://api.github.com/users/priethor/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 930001208, - "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", - "name": "[Type] Code Quality", - "color": "e5e04b", - "default": false, - "description": "Gotta shave those yaks." - }, - { - "id": 997392122, - "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", - "name": "[Package] Components", - "color": "ed2572", - "default": false, - "description": "/packages/components" - }, - { - "id": 2555015900, - "node_id": "MDU6TGFiZWwyNTU1MDE1OTAw", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Component%20System", - "name": "[Feature] Component System", - "color": "fbca04", + "id": 567484057, + "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Developer%20Documentation", + "name": "[Type] Developer Documentation", + "color": "bfd4f2", "default": false, - "description": "The next iteration on WordPress Components." + "description": "Documentation for developers" } ], "state": "closed", "locked": false, "assignee": { - "login": "ciampo", - "id": 1083581, - "node_id": "MDQ6VXNlcjEwODM1ODE=", - "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "login": "priethor", + "id": 27339341, + "node_id": "MDQ6VXNlcjI3MzM5MzQx", + "avatar_url": "https://avatars.githubusercontent.com/u/27339341?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/ciampo", - "html_url": "https://github.com/ciampo", - "followers_url": "https://api.github.com/users/ciampo/followers", - "following_url": "https://api.github.com/users/ciampo/following{/other_user}", - "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", - "organizations_url": "https://api.github.com/users/ciampo/orgs", - "repos_url": "https://api.github.com/users/ciampo/repos", - "events_url": "https://api.github.com/users/ciampo/events{/privacy}", - "received_events_url": "https://api.github.com/users/ciampo/received_events", + "url": "https://api.github.com/users/priethor", + "html_url": "https://github.com/priethor", + "followers_url": "https://api.github.com/users/priethor/followers", + "following_url": "https://api.github.com/users/priethor/following{/other_user}", + "gists_url": "https://api.github.com/users/priethor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/priethor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/priethor/subscriptions", + "organizations_url": "https://api.github.com/users/priethor/orgs", + "repos_url": "https://api.github.com/users/priethor/repos", + "events_url": "https://api.github.com/users/priethor/events{/privacy}", + "received_events_url": "https://api.github.com/users/priethor/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "ciampo", - "id": 1083581, - "node_id": "MDQ6VXNlcjEwODM1ODE=", - "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "login": "priethor", + "id": 27339341, + "node_id": "MDQ6VXNlcjI3MzM5MzQx", + "avatar_url": "https://avatars.githubusercontent.com/u/27339341?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/ciampo", - "html_url": "https://github.com/ciampo", - "followers_url": "https://api.github.com/users/ciampo/followers", - "following_url": "https://api.github.com/users/ciampo/following{/other_user}", - "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", - "organizations_url": "https://api.github.com/users/ciampo/orgs", - "repos_url": "https://api.github.com/users/ciampo/repos", - "events_url": "https://api.github.com/users/ciampo/events{/privacy}", - "received_events_url": "https://api.github.com/users/ciampo/received_events", + "url": "https://api.github.com/users/priethor", + "html_url": "https://github.com/priethor", + "followers_url": "https://api.github.com/users/priethor/followers", + "following_url": "https://api.github.com/users/priethor/following{/other_user}", + "gists_url": "https://api.github.com/users/priethor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/priethor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/priethor/subscriptions", + "organizations_url": "https://api.github.com/users/priethor/orgs", + "repos_url": "https://api.github.com/users/priethor/repos", + "events_url": "https://api.github.com/users/priethor/events{/privacy}", + "received_events_url": "https://api.github.com/users/priethor/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -534,56 +515,72 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-08-10T17:43:01Z", - "updated_at": "2021-08-11T08:16:06Z", - "closed_at": "2021-08-11T08:15:38Z", + "comments": 2, + "created_at": "2023-10-04T13:25:12Z", + "updated_at": "2023-10-04T16:28:50Z", + "closed_at": "2023-10-04T16:28:23Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33982", - "html_url": "https://github.com/WordPress/gutenberg/pull/33982", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33982.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33982.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\n\r\nA [recent change](https://github.com/emotion-js/emotion/pull/2441) in Emotion exposed the `__unsafe_useEmotionCache()` hook.\r\n\r\nThis PR updates the package versions of `@emotion/react` and `@emotion/cache` and uses this newly exposed function in the `useCx` hook, instead of exposing the private `CacheProvider._context` variable directly.\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\n- Project builds, tests pass\r\n- Components in Storybook work as expected (in particular, the `useCx` Storybook story)\r\n\r\n## Screenshots \r\n\r\nN/A\r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\n\r\nRefactor\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- N/A I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55044", + "html_url": "https://github.com/WordPress/gutenberg/pull/55044", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55044.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55044.patch", + "merged_at": "2023-10-04T16:28:23Z" + }, + "body": "## What?\r\nUpdate the `wp-now` documentation to mention it's still experimental.\r\n\r\n## Why?\r\nSo that users understand the risks involved and use it at their own risk.\r\n\r\n## How?\r\nBy adding a callout notice!\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55044/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55044/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33974", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55041", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33974/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33974/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33974/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33974", - "id": 964956517, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA3MzMxNDYw", - "number": 33974, - "title": "Improve the rendering/update performance of the image block", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55041/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55041/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55041/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55041", + "id": 1925939588, + "node_id": "PR_kwDOBNHdeM5b4tQg", + "number": 55041, + "title": "Block Editor: Subscribe only to block editor store in `useBlockSync`", "user": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "tyxla", + "id": 8436925, + "node_id": "MDQ6VXNlcjg0MzY5MjU=", + "avatar_url": "https://avatars.githubusercontent.com/u/8436925?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/tyxla", + "html_url": "https://github.com/tyxla", + "followers_url": "https://api.github.com/users/tyxla/followers", + "following_url": "https://api.github.com/users/tyxla/following{/other_user}", + "gists_url": "https://api.github.com/users/tyxla/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tyxla/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tyxla/subscriptions", + "organizations_url": "https://api.github.com/users/tyxla/orgs", + "repos_url": "https://api.github.com/users/tyxla/repos", + "events_url": "https://api.github.com/users/tyxla/events{/privacy}", + "received_events_url": "https://api.github.com/users/tyxla/received_events", "type": "User", "site_admin": false }, @@ -595,70 +592,70 @@ "name": "[Type] Performance", "color": "f3f4fe", "default": false, - "description": "" + "description": "Related to performance efforts" }, { - "id": 1101518360, - "node_id": "MDU6TGFiZWwxMTAxNTE4MzYw", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Image", - "name": "[Block] Image", - "color": "6767e5", + "id": 1248494790, + "node_id": "MDU6TGFiZWwxMjQ4NDk0Nzkw", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Block%20editor", + "name": "[Package] Block editor", + "color": "ed2572", "default": false, - "description": "" + "description": "/packages/block-editor" } ], "state": "closed", "locked": false, "assignee": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "tyxla", + "id": 8436925, + "node_id": "MDQ6VXNlcjg0MzY5MjU=", + "avatar_url": "https://avatars.githubusercontent.com/u/8436925?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/tyxla", + "html_url": "https://github.com/tyxla", + "followers_url": "https://api.github.com/users/tyxla/followers", + "following_url": "https://api.github.com/users/tyxla/following{/other_user}", + "gists_url": "https://api.github.com/users/tyxla/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tyxla/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tyxla/subscriptions", + "organizations_url": "https://api.github.com/users/tyxla/orgs", + "repos_url": "https://api.github.com/users/tyxla/repos", + "events_url": "https://api.github.com/users/tyxla/events{/privacy}", + "received_events_url": "https://api.github.com/users/tyxla/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "tyxla", + "id": 8436925, + "node_id": "MDQ6VXNlcjg0MzY5MjU=", + "avatar_url": "https://avatars.githubusercontent.com/u/8436925?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/tyxla", + "html_url": "https://github.com/tyxla", + "followers_url": "https://api.github.com/users/tyxla/followers", + "following_url": "https://api.github.com/users/tyxla/following{/other_user}", + "gists_url": "https://api.github.com/users/tyxla/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tyxla/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tyxla/subscriptions", + "organizations_url": "https://api.github.com/users/tyxla/orgs", + "repos_url": "https://api.github.com/users/tyxla/repos", + "events_url": "https://api.github.com/users/tyxla/events{/privacy}", + "received_events_url": "https://api.github.com/users/tyxla/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -681,96 +678,161 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-08-10T12:59:50Z", - "updated_at": "2021-08-10T14:07:42Z", - "closed_at": "2021-08-10T14:07:18Z", - "author_association": "CONTRIBUTOR", + "comments": 4, + "created_at": "2023-10-04T10:50:32Z", + "updated_at": "2023-10-04T13:05:07Z", + "closed_at": "2023-10-04T13:04:33Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33974", - "html_url": "https://github.com/WordPress/gutenberg/pull/33974", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33974.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33974.patch" - }, - "body": "While navigating the performance trace when typing the editor, I noticed some wasted milliseconds in the rendering of image blocks. This PR refactors the useSelect call of the image block a bit to improve the situation.\r\n\r\nI'm not really certain whether the impact will be visible in any of our performance metrics, we'll see.", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55041", + "html_url": "https://github.com/WordPress/gutenberg/pull/55041", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55041.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55041.patch", + "merged_at": "2023-10-04T13:04:33Z" + }, + "body": "## What?\r\nThis PR updates an inner subscription inside `useBlockSync` to only subscribe to the block editor store, instead of to all stores.\r\n\r\n## Why?\r\nWhile doing another quick timeboxing session on #54819 I noticed that we're currently subscribing to all stores in `useBlockSync` when syncing back from the block editor store to the controlling entity. However, we're using only the block editor store, so there's no need to subscribe to all other stores.\r\n\r\n## How?\r\nWe're just adding the block editor as the store descriptor to subscribe to.\r\n\r\n## Testing Instructions\r\nSmoke test typing and verify all checks are green.\r\n\r\n### Testing Instructions for Keyboard\r\nNone\r\n\r\n## Screenshots or screencast \r\nNone", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55041/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55041/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33965", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55038", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33965/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33965/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33965/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33965", - "id": 964611940, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA3MDQyODk0", - "number": 33965, - "title": "Try to fix flaky customizer inspector test 2nd try", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55038/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55038/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55038/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55038", + "id": 1925807656, + "node_id": "PR_kwDOBNHdeM5b4QQY", + "number": 55038, + "title": "Media & Text: Fix React warning", "user": { - "login": "kevin940726", - "id": 7753001, - "node_id": "MDQ6VXNlcjc3NTMwMDE=", - "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/kevin940726", - "html_url": "https://github.com/kevin940726", - "followers_url": "https://api.github.com/users/kevin940726/followers", - "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", - "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", - "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", - "organizations_url": "https://api.github.com/users/kevin940726/orgs", - "repos_url": "https://api.github.com/users/kevin940726/repos", - "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", - "received_events_url": "https://api.github.com/users/kevin940726/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 2632875097, - "node_id": "MDU6TGFiZWwyNjMyODc1MDk3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Widgets%20Customizer", - "name": "[Feature] Widgets Customizer", - "color": "fbca04", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 1111898611, + "node_id": "MDU6TGFiZWwxMTExODk4NjEx", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Media%20&%20Text", + "name": "[Block] Media & Text", + "color": "6767e5", "default": false, - "description": "Ability to add and edit blocks in Customize → Widgets." + "description": "Affects the Media & Text Block" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], - "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", - "description": null, - "creator": { - "login": "github-actions[bot]", - "id": 41898282, - "node_id": "MDM6Qm90NDE4OTgyODI=", - "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/github-actions%5Bbot%5D", - "html_url": "https://github.com/apps/github-actions", - "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", - "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", - "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", - "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "assignee": { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", @@ -779,131 +841,138 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, "comments": 4, - "created_at": "2021-08-10T05:34:22Z", - "updated_at": "2021-08-10T08:10:07Z", - "closed_at": "2021-08-10T08:09:21Z", + "created_at": "2023-10-04T09:40:57Z", + "updated_at": "2023-10-05T11:16:54Z", + "closed_at": "2023-10-04T11:13:05Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33965", - "html_url": "https://github.com/WordPress/gutenberg/pull/33965", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33965.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33965.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nContinue from #33890. Second try to fix flaky e2e tests.\r\n\r\n#33890 had the right call, but the fix didn't work. This PR instead try to disable the intermediate transition to prevent the block toolbar from moving to the wrong position. Hopefully this time it'll fix it.\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\nNot yet found a reliable way to reproduce the issue, so maybe we just have to merge this and monitor it on trunk.\r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\nBug fix\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55038", + "html_url": "https://github.com/WordPress/gutenberg/pull/55038", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55038.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55038.patch", + "merged_at": "2023-10-04T11:13:05Z" + }, + "body": "## What?\r\nFixes #54963.\r\nAlternative to #54965.\r\n\r\nPR fixes the React warning when toggling the \"Crop image to fill entire column\" option for the Media & Text block.\r\n\r\n**Warning**\r\n\r\n```\r\nWarning: A component is changing an uncontrolled input to be controlled. This is likely caused by the value changing from undefined to a defined value, which should not happen.\r\n```\r\n\r\n## How?\r\nCast the `imageFill` value to a `boolean` when setting the `checked` prop. It's a `boolean `attribute with no default defined.\r\n\r\n## Testing Instructions\r\n1. Create a new post or page.\r\n2. Add a media & text block. Select or upload an image.\r\n3. Enable the option \"Crop image to fill entire column\"\r\n4. Confirm that there is no JavaScript warning about the value changing from undefined to a defined value, and that the crop setting continues to work.\r\n5. Deactivate Gutenberg, add two media and text blocks, one with the crop option enabled, one without. Activate Gutenberg again and confirm that there are no block validation errors.\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55038/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55038/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33964", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55037", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33964/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33964/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33964/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33964", - "id": 964604344, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA3MDM2NDUw", - "number": 33964, - "title": "Fix navigation block appender invalid html", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55037/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55037/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55037/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55037", + "id": 1925802684, + "node_id": "PR_kwDOBNHdeM5b4PLq", + "number": 55037, + "title": "Documentation: Add a page about the format library to the platform docs site", "user": { - "login": "talldan", - "id": 677833, - "node_id": "MDQ6VXNlcjY3NzgzMw==", - "avatar_url": "https://avatars.githubusercontent.com/u/677833?v=4", + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/talldan", - "html_url": "https://github.com/talldan", - "followers_url": "https://api.github.com/users/talldan/followers", - "following_url": "https://api.github.com/users/talldan/following{/other_user}", - "gists_url": "https://api.github.com/users/talldan/gists{/gist_id}", - "starred_url": "https://api.github.com/users/talldan/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/talldan/subscriptions", - "organizations_url": "https://api.github.com/users/talldan/orgs", - "repos_url": "https://api.github.com/users/talldan/repos", - "events_url": "https://api.github.com/users/talldan/events{/privacy}", - "received_events_url": "https://api.github.com/users/talldan/received_events", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", - "default": false, - "description": "An existing feature is broken." - }, - { - "id": 1225853227, - "node_id": "MDU6TGFiZWwxMjI1ODUzMjI3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Navigation", - "name": "[Block] Navigation", - "color": "6767e5", + "id": 567484057, + "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Developer%20Documentation", + "name": "[Type] Developer Documentation", + "color": "bfd4f2", "default": false, - "description": "" + "description": "Documentation for developers" } ], "state": "closed", "locked": false, "assignee": { - "login": "talldan", - "id": 677833, - "node_id": "MDQ6VXNlcjY3NzgzMw==", - "avatar_url": "https://avatars.githubusercontent.com/u/677833?v=4", + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/talldan", - "html_url": "https://github.com/talldan", - "followers_url": "https://api.github.com/users/talldan/followers", - "following_url": "https://api.github.com/users/talldan/following{/other_user}", - "gists_url": "https://api.github.com/users/talldan/gists{/gist_id}", - "starred_url": "https://api.github.com/users/talldan/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/talldan/subscriptions", - "organizations_url": "https://api.github.com/users/talldan/orgs", - "repos_url": "https://api.github.com/users/talldan/repos", - "events_url": "https://api.github.com/users/talldan/events{/privacy}", - "received_events_url": "https://api.github.com/users/talldan/received_events", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "talldan", - "id": 677833, - "node_id": "MDQ6VXNlcjY3NzgzMw==", - "avatar_url": "https://avatars.githubusercontent.com/u/677833?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/talldan", - "html_url": "https://github.com/talldan", - "followers_url": "https://api.github.com/users/talldan/followers", - "following_url": "https://api.github.com/users/talldan/following{/other_user}", - "gists_url": "https://api.github.com/users/talldan/gists{/gist_id}", - "starred_url": "https://api.github.com/users/talldan/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/talldan/subscriptions", - "organizations_url": "https://api.github.com/users/talldan/orgs", - "repos_url": "https://api.github.com/users/talldan/repos", - "events_url": "https://api.github.com/users/talldan/events{/privacy}", - "received_events_url": "https://api.github.com/users/talldan/received_events", + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -926,56 +995,72 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-08-10T05:15:26Z", - "updated_at": "2021-08-10T06:09:20Z", - "closed_at": "2021-08-10T06:08:55Z", + "comments": 0, + "created_at": "2023-10-04T09:38:03Z", + "updated_at": "2023-10-04T14:06:18Z", + "closed_at": "2023-10-04T14:05:47Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33964", - "html_url": "https://github.com/WordPress/gutenberg/pull/33964", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33964.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33964.patch" - }, - "body": "## Description\r\nThe navigation block's appender is currently an `li` within a `div`. This changes it to a `div` within a `div` by deleting one line of code 😄 \r\n\r\n## How has this been tested?\r\n1. Add a navigation block\r\n2. Choose 'Start empty'\r\n3. Inspect the HTML of the appender.\r\n\r\n## Types of changes\r\n\r\nBug fix (non-breaking change which fixes an issue)\r\n\r\n\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55037", + "html_url": "https://github.com/WordPress/gutenberg/pull/55037", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55037.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55037.patch", + "merged_at": "2023-10-04T14:05:47Z" + }, + "body": "Related #53874\r\n\r\n## What?\r\n\r\nThis PR add a small documentation page about the format library package and how to leverage it in third-party block editors.\r\nIt's also weird that the \"block library\" package exports a function to register the blocks while the format library auto-registers the formats as soon as you import it. It might be good to unify at some point. cc @ellatrix \r\n\r\n**Note** I have personally tested all the code examples in a third-party vite install.\r\n\r\n### Test the documentation website\r\n\r\n```\r\ncd platform-docs\r\nnpm install\r\nnpm start\r\n```", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55037/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55037/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33963", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55033", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33963/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33963/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33963/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33963", - "id": 964599701, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA3MDMyMzg4", - "number": 33963, - "title": "Fix navigation block placeholder preview markup", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55033/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55033/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55033/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55033", + "id": 1925730969, + "node_id": "PR_kwDOBNHdeM5b3_08", + "number": 55033, + "title": "Fix Deleted Navigation Menu warning string", "user": { - "login": "talldan", - "id": 677833, - "node_id": "MDQ6VXNlcjY3NzgzMw==", - "avatar_url": "https://avatars.githubusercontent.com/u/677833?v=4", + "login": "getdave", + "id": 444434, + "node_id": "MDQ6VXNlcjQ0NDQzNA==", + "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/talldan", - "html_url": "https://github.com/talldan", - "followers_url": "https://api.github.com/users/talldan/followers", - "following_url": "https://api.github.com/users/talldan/following{/other_user}", - "gists_url": "https://api.github.com/users/talldan/gists{/gist_id}", - "starred_url": "https://api.github.com/users/talldan/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/talldan/subscriptions", - "organizations_url": "https://api.github.com/users/talldan/orgs", - "repos_url": "https://api.github.com/users/talldan/repos", - "events_url": "https://api.github.com/users/talldan/events{/privacy}", - "received_events_url": "https://api.github.com/users/talldan/received_events", + "url": "https://api.github.com/users/getdave", + "html_url": "https://github.com/getdave", + "followers_url": "https://api.github.com/users/getdave/followers", + "following_url": "https://api.github.com/users/getdave/following{/other_user}", + "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", + "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", + "organizations_url": "https://api.github.com/users/getdave/orgs", + "repos_url": "https://api.github.com/users/getdave/repos", + "events_url": "https://api.github.com/users/getdave/events{/privacy}", + "received_events_url": "https://api.github.com/users/getdave/received_events", "type": "User", "site_admin": false }, @@ -987,7 +1072,7 @@ "name": "[Type] Bug", "color": "d93f0b", "default": false, - "description": "An existing feature is broken." + "description": "An existing feature does not function as intended" }, { "id": 1225853227, @@ -996,70 +1081,70 @@ "name": "[Block] Navigation", "color": "6767e5", "default": false, - "description": "" + "description": "Affects the Navigation Block" }, { - "id": 1999059055, - "node_id": "MDU6TGFiZWwxOTk5MDU5MDU1", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/CSS%20Styling", - "name": "CSS Styling", - "color": "63e2d2", + "id": 5642756854, + "node_id": "LA_kwDOBNHdeM8AAAABUFWi9g", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/l10n", + "name": "l10n", + "color": "08B8C3", "default": false, - "description": "Related to editor and front end styles, CSS-specific issues." + "description": "Localization and translations best practices" } ], "state": "closed", "locked": false, "assignee": { - "login": "talldan", - "id": 677833, - "node_id": "MDQ6VXNlcjY3NzgzMw==", - "avatar_url": "https://avatars.githubusercontent.com/u/677833?v=4", + "login": "getdave", + "id": 444434, + "node_id": "MDQ6VXNlcjQ0NDQzNA==", + "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/talldan", - "html_url": "https://github.com/talldan", - "followers_url": "https://api.github.com/users/talldan/followers", - "following_url": "https://api.github.com/users/talldan/following{/other_user}", - "gists_url": "https://api.github.com/users/talldan/gists{/gist_id}", - "starred_url": "https://api.github.com/users/talldan/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/talldan/subscriptions", - "organizations_url": "https://api.github.com/users/talldan/orgs", - "repos_url": "https://api.github.com/users/talldan/repos", - "events_url": "https://api.github.com/users/talldan/events{/privacy}", - "received_events_url": "https://api.github.com/users/talldan/received_events", + "url": "https://api.github.com/users/getdave", + "html_url": "https://github.com/getdave", + "followers_url": "https://api.github.com/users/getdave/followers", + "following_url": "https://api.github.com/users/getdave/following{/other_user}", + "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", + "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", + "organizations_url": "https://api.github.com/users/getdave/orgs", + "repos_url": "https://api.github.com/users/getdave/repos", + "events_url": "https://api.github.com/users/getdave/events{/privacy}", + "received_events_url": "https://api.github.com/users/getdave/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "talldan", - "id": 677833, - "node_id": "MDQ6VXNlcjY3NzgzMw==", - "avatar_url": "https://avatars.githubusercontent.com/u/677833?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/talldan", - "html_url": "https://github.com/talldan", - "followers_url": "https://api.github.com/users/talldan/followers", - "following_url": "https://api.github.com/users/talldan/following{/other_user}", - "gists_url": "https://api.github.com/users/talldan/gists{/gist_id}", - "starred_url": "https://api.github.com/users/talldan/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/talldan/subscriptions", - "organizations_url": "https://api.github.com/users/talldan/orgs", - "repos_url": "https://api.github.com/users/talldan/repos", - "events_url": "https://api.github.com/users/talldan/events{/privacy}", - "received_events_url": "https://api.github.com/users/talldan/received_events", + "login": "getdave", + "id": 444434, + "node_id": "MDQ6VXNlcjQ0NDQzNA==", + "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/getdave", + "html_url": "https://github.com/getdave", + "followers_url": "https://api.github.com/users/getdave/followers", + "following_url": "https://api.github.com/users/getdave/following{/other_user}", + "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", + "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", + "organizations_url": "https://api.github.com/users/getdave/orgs", + "repos_url": "https://api.github.com/users/getdave/repos", + "events_url": "https://api.github.com/users/getdave/events{/privacy}", + "received_events_url": "https://api.github.com/users/getdave/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -1082,122 +1167,138 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, "comments": 4, - "created_at": "2021-08-10T05:05:53Z", - "updated_at": "2021-08-10T06:10:45Z", - "closed_at": "2021-08-10T05:42:26Z", + "created_at": "2023-10-04T08:59:19Z", + "updated_at": "2023-10-04T11:05:32Z", + "closed_at": "2023-10-04T09:44:38Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33963", - "html_url": "https://github.com/WordPress/gutenberg/pull/33963", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33963.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33963.patch" - }, - "body": "## Description\r\nFixes two separate issues with the navigation block placeholder preview.\r\n\r\nFirst, the preview has invalid html, nesting an `svg` element in a `ul` element:\r\n\"Screenshot\r\n\r\nSecondly, when using a vertical navigation block, the invisible placeholder was taking up height, leading to this situation after selecting 'Start empty':\r\n\"Screenshot\r\n\r\n## How has this been tested?\r\n1. Add both horizontal and vertical nav block, click start empty for both, and deselect the blocks\r\n2. The preview placeholders should look the same\r\n3. Inspect the markup, the svg should now be in a list item.\r\n4. Select the vertical list block and select 'Start empty', there should be no empty space in the nav block above the appender\r\n\r\n## Types of changes\r\n\r\nBug fix (non-breaking change which fixes an issue)\r\n\r\n\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55033", + "html_url": "https://github.com/WordPress/gutenberg/pull/55033", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55033.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55033.patch", + "merged_at": "2023-10-04T09:44:38Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nFix creation of translatable string which was missing a space character.\r\n\r\nRectifies Issue discovered in https://github.com/WordPress/gutenberg/pull/54654#issuecomment-1746392718\r\n\r\n## Why?\r\n\r\n\r\nThe string needs a space to make sense.\r\n\r\n## How?\r\n\r\n\r\nUses `createInterpolateElement` to create the full string which avoids dealing with trailing whitespace and makes the entire string translatable.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n1. Add Nav block to a Post and save the post.\r\n2. Find out which Navigation Menu is assigned to the block.\r\n3. In a new tab, go to Site Editor -> Site View (sidebar) -> Navigation. Find the Navigation Menu and delete it.\r\n4. Return to wherever you added the Nav block originally.\r\n5. See the warning about deleted menu.\r\n6. Check that text now contains a space between end of sentence and the button.\r\n7. Check that clicking the button works as on `trunk`.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n\r\n\"Screenshot\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55033/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55033/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33961", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55016", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33961/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33961/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33961/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33961", - "id": 964264228, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA2NzQ4ODYx", - "number": 33961, - "title": "Search Block: Removed components class from icon button and polished css", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55016/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55016/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55016/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55016", + "id": 1924703354, + "node_id": "PR_kwDOBNHdeM5b0h9p", + "number": 55016, + "title": "Migrate 'iframed masonry block' tests to Playwright", "user": { - "login": "MaggieCabrera", - "id": 3593343, - "node_id": "MDQ6VXNlcjM1OTMzNDM=", - "avatar_url": "https://avatars.githubusercontent.com/u/3593343?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/MaggieCabrera", - "html_url": "https://github.com/MaggieCabrera", - "followers_url": "https://api.github.com/users/MaggieCabrera/followers", - "following_url": "https://api.github.com/users/MaggieCabrera/following{/other_user}", - "gists_url": "https://api.github.com/users/MaggieCabrera/gists{/gist_id}", - "starred_url": "https://api.github.com/users/MaggieCabrera/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/MaggieCabrera/subscriptions", - "organizations_url": "https://api.github.com/users/MaggieCabrera/orgs", - "repos_url": "https://api.github.com/users/MaggieCabrera/repos", - "events_url": "https://api.github.com/users/MaggieCabrera/events{/privacy}", - "received_events_url": "https://api.github.com/users/MaggieCabrera/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 1539734701, - "node_id": "MDU6TGFiZWwxNTM5NzM0NzAx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Search", - "name": "[Block] Search", - "color": "6767e5", + "id": 615503111, + "node_id": "MDU6TGFiZWw2MTU1MDMxMTE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Automated%20Testing", + "name": "[Type] Automated Testing", + "color": "111111", "default": false, - "description": "" + "description": "Testing infrastructure changes impacting the execution of end-to-end (E2E) and/or unit tests." } ], "state": "closed", "locked": false, "assignee": { - "login": "MaggieCabrera", - "id": 3593343, - "node_id": "MDQ6VXNlcjM1OTMzNDM=", - "avatar_url": "https://avatars.githubusercontent.com/u/3593343?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/MaggieCabrera", - "html_url": "https://github.com/MaggieCabrera", - "followers_url": "https://api.github.com/users/MaggieCabrera/followers", - "following_url": "https://api.github.com/users/MaggieCabrera/following{/other_user}", - "gists_url": "https://api.github.com/users/MaggieCabrera/gists{/gist_id}", - "starred_url": "https://api.github.com/users/MaggieCabrera/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/MaggieCabrera/subscriptions", - "organizations_url": "https://api.github.com/users/MaggieCabrera/orgs", - "repos_url": "https://api.github.com/users/MaggieCabrera/repos", - "events_url": "https://api.github.com/users/MaggieCabrera/events{/privacy}", - "received_events_url": "https://api.github.com/users/MaggieCabrera/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "MaggieCabrera", - "id": 3593343, - "node_id": "MDQ6VXNlcjM1OTMzNDM=", - "avatar_url": "https://avatars.githubusercontent.com/u/3593343?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/MaggieCabrera", - "html_url": "https://github.com/MaggieCabrera", - "followers_url": "https://api.github.com/users/MaggieCabrera/followers", - "following_url": "https://api.github.com/users/MaggieCabrera/following{/other_user}", - "gists_url": "https://api.github.com/users/MaggieCabrera/gists{/gist_id}", - "starred_url": "https://api.github.com/users/MaggieCabrera/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/MaggieCabrera/subscriptions", - "organizations_url": "https://api.github.com/users/MaggieCabrera/orgs", - "repos_url": "https://api.github.com/users/MaggieCabrera/repos", - "events_url": "https://api.github.com/users/MaggieCabrera/events{/privacy}", - "received_events_url": "https://api.github.com/users/MaggieCabrera/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -1220,140 +1321,138 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 4, - "created_at": "2021-08-09T18:37:32Z", - "updated_at": "2021-08-10T08:54:14Z", - "closed_at": "2021-08-10T08:53:46Z", - "author_association": "CONTRIBUTOR", + "comments": 1, + "created_at": "2023-10-03T18:31:31Z", + "updated_at": "2023-10-04T04:57:50Z", + "closed_at": "2023-10-04T04:57:21Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33961", - "html_url": "https://github.com/WordPress/gutenberg/pull/33961", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33961.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33961.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nAfter #26446 was merged there was a level of specificity in the CSS created to bring inline the editor and frontend styles that is being caused by the components classes present on the icon button. This PR refactors the button to use the regular button tag instead and removes the extra specificity from the CSS. I also went ahead and refactored the styles that were no longer needed after this change and that were causing mismatches between the editor and the frontend. \r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\nI tested on Emptytheme using the following markup:\r\n\r\n```\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n```\r\n\r\n## Screenshots \r\n\r\nThe differences in sizes between editor and frontend are caused by Emptytheme not defining font-family or font-size while the editor does (and tries to reset it with little success). I'd love to improve this so we can have the same on the frontend and the editor but I'm unsure as to what's the correct approach for this.\r\n\r\n**Before:**\r\n\r\nFrontent | Editor\r\n--- | ---\r\n\"Screenshot | \"Screenshot\r\n\r\n\r\n**After:**\r\n\r\nFrontent | Editor\r\n--- | ---\r\n\"Screenshot | \"Screenshot\r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55016", + "html_url": "https://github.com/WordPress/gutenberg/pull/55016", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55016.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55016.patch", + "merged_at": "2023-10-04T04:57:21Z" + }, + "body": "## What?\r\nPart of #38851.\r\nCloses #34773.\r\n\r\nPR migrates 'iframed masonry block' tests to Playwright and simplifies it. Now that the editor loads in iframed by default, extra steps are unnecessary.\r\n\r\n## Why?\r\nThis is a part of general migration 🐦\r\n\r\n## Testing Instructions\r\n```\r\nnpm run test:e2e:playwright -- test/e2e/specs/editor/plugins/iframed-masonry-block.spec.js\r\n```\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55016/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55016/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33951", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55014", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33951/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33951/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33951/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33951", - "id": 963902794, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA2NDQwNTIx", - "number": 33951, - "title": "Site editor: fix presets for blocks with multiple selectors", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55014/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55014/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55014/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55014", + "id": 1924644383, + "node_id": "PR_kwDOBNHdeM5b0VRt", + "number": 55014, + "title": "Migrate 'iframed block editor settings styles' tests to Playwright", "user": { - "login": "nosolosw", - "id": 583546, - "node_id": "MDQ6VXNlcjU4MzU0Ng==", - "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/nosolosw", - "html_url": "https://github.com/nosolosw", - "followers_url": "https://api.github.com/users/nosolosw/followers", - "following_url": "https://api.github.com/users/nosolosw/following{/other_user}", - "gists_url": "https://api.github.com/users/nosolosw/gists{/gist_id}", - "starred_url": "https://api.github.com/users/nosolosw/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/nosolosw/subscriptions", - "organizations_url": "https://api.github.com/users/nosolosw/orgs", - "repos_url": "https://api.github.com/users/nosolosw/repos", - "events_url": "https://api.github.com/users/nosolosw/events{/privacy}", - "received_events_url": "https://api.github.com/users/nosolosw/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", - "default": false, - "description": "An existing feature is broken." - }, - { - "id": 1800807983, - "node_id": "MDU6TGFiZWwxODAwODA3OTgz", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Global%20Styles", - "name": "Global Styles", - "color": "2100b7", - "default": false, - "description": "" - }, - { - "id": 2706102777, - "node_id": "MDU6TGFiZWwyNzA2MTAyNzc3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Site%20Editor", - "name": "[Feature] Site Editor", - "color": "fbca04", + "id": 615503111, + "node_id": "MDU6TGFiZWw2MTU1MDMxMTE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Automated%20Testing", + "name": "[Type] Automated Testing", + "color": "111111", "default": false, - "description": "" + "description": "Testing infrastructure changes impacting the execution of end-to-end (E2E) and/or unit tests." } ], "state": "closed", "locked": false, "assignee": { - "login": "nosolosw", - "id": 583546, - "node_id": "MDQ6VXNlcjU4MzU0Ng==", - "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/nosolosw", - "html_url": "https://github.com/nosolosw", - "followers_url": "https://api.github.com/users/nosolosw/followers", - "following_url": "https://api.github.com/users/nosolosw/following{/other_user}", - "gists_url": "https://api.github.com/users/nosolosw/gists{/gist_id}", - "starred_url": "https://api.github.com/users/nosolosw/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/nosolosw/subscriptions", - "organizations_url": "https://api.github.com/users/nosolosw/orgs", - "repos_url": "https://api.github.com/users/nosolosw/repos", - "events_url": "https://api.github.com/users/nosolosw/events{/privacy}", - "received_events_url": "https://api.github.com/users/nosolosw/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "nosolosw", - "id": 583546, - "node_id": "MDQ6VXNlcjU4MzU0Ng==", - "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/nosolosw", - "html_url": "https://github.com/nosolosw", - "followers_url": "https://api.github.com/users/nosolosw/followers", - "following_url": "https://api.github.com/users/nosolosw/following{/other_user}", - "gists_url": "https://api.github.com/users/nosolosw/gists{/gist_id}", - "starred_url": "https://api.github.com/users/nosolosw/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/nosolosw/subscriptions", - "organizations_url": "https://api.github.com/users/nosolosw/orgs", - "repos_url": "https://api.github.com/users/nosolosw/repos", - "events_url": "https://api.github.com/users/nosolosw/events{/privacy}", - "received_events_url": "https://api.github.com/users/nosolosw/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -1376,91 +1475,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, "comments": 1, - "created_at": "2021-08-09T11:32:27Z", - "updated_at": "2021-08-09T16:04:15Z", - "closed_at": "2021-08-09T16:03:48Z", + "created_at": "2023-10-03T17:51:36Z", + "updated_at": "2023-10-04T04:21:00Z", + "closed_at": "2023-10-04T04:20:36Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33951", - "html_url": "https://github.com/WordPress/gutenberg/pull/33951", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33951.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33951.patch" - }, - "body": "Fixes https://github.com/WordPress/gutenberg/issues/31660", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55014", + "html_url": "https://github.com/WordPress/gutenberg/pull/55014", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55014.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55014.patch", + "merged_at": "2023-10-04T04:20:36Z" + }, + "body": "## What?\r\nPart of #38851.\r\nCloses #54602.\r\nCloses #54462.\r\n\r\nPR migrates 'iframed block editor settings styles' tests to Playwright.\r\n\r\n## Why?\r\nThis is a relatively new test and should've been written with Playwright. Ref: #52767.\r\n\r\n## Testing Instructions\r\n```\r\nnpm run test:e2e:playwright -- test/e2e/specs/editor/plugins/iframed-enqueue-block-editor-settings.spec.js\r\n```\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55014/reactions", + "total_count": 1, + "+1": 1, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55014/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33945", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55012", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33945/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33945/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33945/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33945", - "id": 963666305, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA2MjM2MjEx", - "number": 33945, - "title": "Scripts: Fix typo in format change message.", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55012/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55012/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55012/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55012", + "id": 1924536618, + "node_id": "PR_kwDOBNHdeM5bz99-", + "number": 55012, + "title": "[Inserter]: Fix reset of registered media categories", "user": { - "login": "StevenDufresne", - "id": 1657336, - "node_id": "MDQ6VXNlcjE2NTczMzY=", - "avatar_url": "https://avatars.githubusercontent.com/u/1657336?v=4", + "login": "ntsekouras", + "id": 16275880, + "node_id": "MDQ6VXNlcjE2Mjc1ODgw", + "avatar_url": "https://avatars.githubusercontent.com/u/16275880?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/StevenDufresne", - "html_url": "https://github.com/StevenDufresne", - "followers_url": "https://api.github.com/users/StevenDufresne/followers", - "following_url": "https://api.github.com/users/StevenDufresne/following{/other_user}", - "gists_url": "https://api.github.com/users/StevenDufresne/gists{/gist_id}", - "starred_url": "https://api.github.com/users/StevenDufresne/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/StevenDufresne/subscriptions", - "organizations_url": "https://api.github.com/users/StevenDufresne/orgs", - "repos_url": "https://api.github.com/users/StevenDufresne/repos", - "events_url": "https://api.github.com/users/StevenDufresne/events{/privacy}", - "received_events_url": "https://api.github.com/users/StevenDufresne/received_events", + "url": "https://api.github.com/users/ntsekouras", + "html_url": "https://github.com/ntsekouras", + "followers_url": "https://api.github.com/users/ntsekouras/followers", + "following_url": "https://api.github.com/users/ntsekouras/following{/other_user}", + "gists_url": "https://api.github.com/users/ntsekouras/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ntsekouras/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ntsekouras/subscriptions", + "organizations_url": "https://api.github.com/users/ntsekouras/orgs", + "repos_url": "https://api.github.com/users/ntsekouras/repos", + "events_url": "https://api.github.com/users/ntsekouras/events{/privacy}", + "received_events_url": "https://api.github.com/users/ntsekouras/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 930001208, - "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", - "name": "[Type] Code Quality", - "color": "e5e04b", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "Gotta shave those yaks." + "description": "An existing feature does not function as intended" }, { - "id": 978007737, - "node_id": "MDU6TGFiZWw5NzgwMDc3Mzc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Scripts", - "name": "[Package] Scripts", - "color": "ed2572", + "id": 596962434, + "node_id": "MDU6TGFiZWw1OTY5NjI0MzQ=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Inserter", + "name": "[Feature] Inserter", + "color": "fbca04", "default": false, - "description": "/packages/scripts" + "description": "The main way to insert blocks using the + button in the editing interface" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "ntsekouras", + "id": 16275880, + "node_id": "MDQ6VXNlcjE2Mjc1ODgw", + "avatar_url": "https://avatars.githubusercontent.com/u/16275880?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ntsekouras", + "html_url": "https://github.com/ntsekouras", + "followers_url": "https://api.github.com/users/ntsekouras/followers", + "following_url": "https://api.github.com/users/ntsekouras/following{/other_user}", + "gists_url": "https://api.github.com/users/ntsekouras/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ntsekouras/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ntsekouras/subscriptions", + "organizations_url": "https://api.github.com/users/ntsekouras/orgs", + "repos_url": "https://api.github.com/users/ntsekouras/repos", + "events_url": "https://api.github.com/users/ntsekouras/events{/privacy}", + "received_events_url": "https://api.github.com/users/ntsekouras/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "ntsekouras", + "id": 16275880, + "node_id": "MDQ6VXNlcjE2Mjc1ODgw", + "avatar_url": "https://avatars.githubusercontent.com/u/16275880?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ntsekouras", + "html_url": "https://github.com/ntsekouras", + "followers_url": "https://api.github.com/users/ntsekouras/followers", + "following_url": "https://api.github.com/users/ntsekouras/following{/other_user}", + "gists_url": "https://api.github.com/users/ntsekouras/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ntsekouras/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ntsekouras/subscriptions", + "organizations_url": "https://api.github.com/users/ntsekouras/orgs", + "repos_url": "https://api.github.com/users/ntsekouras/repos", + "events_url": "https://api.github.com/users/ntsekouras/events{/privacy}", + "received_events_url": "https://api.github.com/users/ntsekouras/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -1483,39 +1638,55 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-08-09T05:48:44Z", - "updated_at": "2021-08-09T08:08:59Z", - "closed_at": "2021-08-09T08:08:38Z", + "comments": 3, + "created_at": "2023-10-03T16:42:22Z", + "updated_at": "2023-10-04T13:43:44Z", + "closed_at": "2023-10-04T11:31:58Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33945", - "html_url": "https://github.com/WordPress/gutenberg/pull/33945", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33945.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33945.patch" - }, - "body": "## Description\r\nFixes a small typo introduced in #30240.\r\n\r\n`continiue` -> `continue`\r\n\r\n## How has this been tested?\r\nRan locally.\r\n\r\n## Screenshots \r\nN/A\r\n\r\n## Types of changes\r\nText update.\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55012", + "html_url": "https://github.com/WordPress/gutenberg/pull/55012", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55012.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55012.patch", + "merged_at": "2023-10-04T11:31:58Z" + }, + "body": "\r\n\r\n## What?\r\nFixes: https://github.com/WordPress/gutenberg/issues/52832\r\n\r\nIn https://github.com/WordPress/gutenberg/pull/51542 a new `registerInserterMediaCategory` API to make media categories extensible was introduced. Since `inserterMediaCategories` is a block editor setting though there was an issue that if we register new categories before the initialization of the block editor store's settings or we updated another setting that triggers a settings reset(ex spotlight mode), the added categories were lost.\r\n\r\nThis PR introduces a new reducer in block editor(`registeredInserterMediaCategories`) and merges the registered ones and the settings when consuming the media categories in media tab.\r\n\r\n\r\n\r\n## Testing Instructions\r\n1. Register categories with PHP and JS\r\n2. Update a setting like `Spotlight mode`\r\n3. Observe that the categories are preserved.\r\n\r\nPHP registration code:\r\n```php\r\nadd_action( 'enqueue_block_editor_assets', function() {\r\n\twp_add_inline_script( 'wp-editor', \"\r\nwp.domReady( function() {\r\n\twp.data.dispatch( 'core/block-editor' ).registerInserterMediaCategory( {\r\n\t\tname: 'openverse-2',\r\n\t\tlabels: {\r\n\t\t\tname: 'Openverse 2',\r\n\t\t\tsearch_items: 'Search Openverse',\r\n\t\t},\r\n\t\tmediaType: 'image',\r\n\t\tasync fetch( query = {} ) {\r\n\t\t\tconst defaultArgs = {\r\n\t\t\t\tmature: false,\r\n\t\t\t\texcluded_source: 'flickr,inaturalist,wikimedia',\r\n\t\t\t\tlicense: 'pdm,cc0',\r\n\t\t\t};\r\n\t\t\tconst finalQuery = { ...query, ...defaultArgs };\r\n\t\t\tconst mapFromInserterMediaRequest = {\r\n\t\t\t\tper_page: 'page_size',\r\n\t\t\t\tsearch: 'q',\r\n\t\t\t};\r\n\t\t\tconst url = new URL( 'https://api.openverse.engineering/v1/images/' );\r\n\t\t\tObject.entries( finalQuery ).forEach( ( [ key, value ] ) => {\r\n\t\t\t\tconst queryKey = mapFromInserterMediaRequest[ key ] || key;\r\n\t\t\t\turl.searchParams.set( queryKey, value );\r\n\t\t\t} );\r\n\t\t\tconst response = await window.fetch( url, {\r\n\t\t\t\theaders: {\r\n\t\t\t\t\t'User-Agent': 'WordPress/inserter-media-fetch',\r\n\t\t\t\t},\r\n\t\t\t} );\r\n\t\t\tconst jsonResponse = await response.json();\r\n\t\t\tconst results = jsonResponse.results;\r\n\t\t\treturn results.map( ( result ) => ( {\r\n\t\t\t\t...result,\r\n\t\t\t\tsourceId: result.id,\r\n\t\t\t\tid: undefined,\r\n\t\t\t\tcaption: result.caption,\r\n\t\t\t\tpreviewUrl: result.thumbnail,\r\n\t\t\t} ) );\r\n\t\t},\r\n\t\tgetReportUrl: ( { sourceId } ) =>\r\n\t\t\t'https://wordpress.org/openverse/image/' + sourceId + '/report/',\r\n\t\tisExternalResource: true,\r\n\t} );\r\n\tconsole.log( 'Registered inserter media categories', wp.data.select( 'core/block-editor' ).getSettings().inserterMediaCategories );\r\n} );\r\n\t\" );\r\n} );\r\n```\r\n\r\nJS code to run in dev tools:\r\n```\r\nwp.data.dispatch( 'core/block-editor' ).registerInserterMediaCategory( {\r\n\tname: 'openverse from JS',\r\n\tlabels: {\r\n\t\tname: 'Openverse JS',\r\n\t\tsearch_items: 'Search Openverse',\r\n\t},\r\n\tmediaType: 'image',\r\n\tasync fetch( query = {} ) {\r\n\t\tconst defaultArgs = {\r\n\t\t\tmature: false,\r\n\t\t\texcluded_source: 'flickr,inaturalist,wikimedia',\r\n\t\t\tlicense: 'pdm,cc0',\r\n\t\t};\r\n\t\tconst finalQuery = { ...query, ...defaultArgs };\r\n\t\t// Sometimes you might need to map the supported request params according to `InserterMediaRequest`.\r\n\t\t// interface. In this example the `search` query param is named `q`.\r\n\t\tconst mapFromInserterMediaRequest = {\r\n\t\t\tper_page: 'page_size',\r\n\t\t\tsearch: 'q',\r\n\t\t};\r\n\t\tconst url = new URL( 'https://api.openverse.engineering/v1/images/' );\r\n\t\tObject.entries( finalQuery ).forEach( ( [ key, value ] ) => {\r\n\t\t\tconst queryKey = mapFromInserterMediaRequest[ key ] || key;\r\n\t\t\turl.searchParams.set( queryKey, value );\r\n\t\t} );\r\n\t\tconst response = await window.fetch( url, {\r\n\t\t\theaders: {\r\n\t\t\t\t'User-Agent': 'WordPress/inserter-media-fetch',\r\n\t\t\t},\r\n\t\t} );\r\n\t\tconst jsonResponse = await response.json();\r\n\t\tconst results = jsonResponse.results;\r\n\t\treturn results.map( ( result ) => ( {\r\n\t\t\t...result,\r\n\t\t\t// If your response result includes an `id` prop that you want to access later, it should\r\n\t\t\t// be mapped to `InserterMediaItem`'s `sourceId` prop. This can be useful if you provide\r\n\t\t\t// a report URL getter.\r\n\t\t\t// Additionally you should always clear the `id` value of your response results because\r\n\t\t\t// it is used to identify WordPress media items.\r\n\t\t\tsourceId: result.id,\r\n\t\t\tid: undefined,\r\n\t\t\tcaption: result.caption,\r\n\t\t\tpreviewUrl: result.thumbnail,\r\n\t\t} ) );\r\n\t},\r\n\tgetReportUrl: ( { sourceId } ) =>\r\n\t\t`https://wordpress.org/openverse/image/${ sourceId }/report/`,\r\n\tisExternalResource: true,\r\n} );\r\n```\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55012/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55012/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33943", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55009", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33943/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33943/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33943/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33943", - "id": 963654820, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA2MjI2Mjkw", - "number": 33943, - "title": "Featured Image: Use getMedia shorthand", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55009/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55009/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55009/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55009", + "id": 1924228083, + "node_id": "PR_kwDOBNHdeM5by7AX", + "number": 55009, + "title": "Migrate 'iframed inline styles' tests to Playwright", "user": { "login": "Mamaduka", "id": 240569, @@ -1538,31 +1709,13 @@ }, "labels": [ { - "id": 596964332, - "node_id": "MDU6TGFiZWw1OTY5NjQzMzI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/General%20Interface", - "name": "General Interface", - "color": "bfdadc", - "default": false, - "description": "Parts of the UI which don't fall neatly under other labels." - }, - { - "id": 930001208, - "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", - "name": "[Type] Code Quality", - "color": "e5e04b", - "default": false, - "description": "Gotta shave those yaks." - }, - { - "id": 2085610453, - "node_id": "MDU6TGFiZWwyMDg1NjEwNDUz", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Post%20Featured%20Image", - "name": "[Block] Post Featured Image", - "color": "6767e5", + "id": 615503111, + "node_id": "MDU6TGFiZWw2MTU1MDMxMTE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Automated%20Testing", + "name": "[Type] Automated Testing", + "color": "111111", "default": false, - "description": "" + "description": "Testing infrastructure changes impacting the execution of end-to-end (E2E) and/or unit tests." } ], "state": "closed", @@ -1610,13 +1763,13 @@ } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -1639,77 +1792,84 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-08-09T05:16:56Z", - "updated_at": "2021-08-09T08:52:36Z", - "closed_at": "2021-08-09T08:52:07Z", + "comments": 3, + "created_at": "2023-10-03T14:04:42Z", + "updated_at": "2023-10-04T09:37:05Z", + "closed_at": "2023-10-04T09:36:35Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33943", - "html_url": "https://github.com/WordPress/gutenberg/pull/33943", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33943.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33943.patch" - }, - "body": "## Description\r\nSince #33689, it's possible to pass query arguments to the code data shorthands. PR update code to use `getMedia` instead of `getEntityRecord` for simplicity, see - https://github.com/WordPress/gutenberg/pull/33567#discussion_r683975606\r\n\r\n## How has this been tested?\r\n1. Upload an image using an Administrator user account.\r\n2. Switch to a user with an Author role.\r\n3. Create a post.\r\n4. Select the uploaded image using the \"Post Featured Image\" block or \"Feature image\" panel in the sidebar.\r\n5. See that feature image is displayed.\r\n6. DevTools has no 403 requests in the Networks panel.\r\n\r\n## Types of changes\r\nCode Quality\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55009", + "html_url": "https://github.com/WordPress/gutenberg/pull/55009", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55009.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55009.patch", + "merged_at": "2023-10-04T09:36:35Z" + }, + "body": "## What?\r\nPart of #38851.\r\nCloses #35172.\r\n\r\nPR migrates 'iframed inline styles' tests to Playwright.\r\n\r\n## Why?\r\nThe test has been failing more often lately.\r\n\r\n## Testing Instructions\r\n```\r\nnpm run test:e2e:playwright -- test/e2e/specs/editor/plugins/iframed-inline-styles.spec.js\r\n```\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55009/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55009/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33930", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55006", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33930/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33930/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33930/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33930", - "id": 962762985, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA1NTA2NDAw", - "number": 33930, - "title": "Add documentation to disable remote calls for block patterns", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55006/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55006/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55006/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55006", + "id": 1924142916, + "node_id": "PR_kwDOBNHdeM5byodE", + "number": 55006, + "title": "Writing flow: absorb clipboard handler", "user": { - "login": "mkaz", - "id": 45363, - "node_id": "MDQ6VXNlcjQ1MzYz", - "avatar_url": "https://avatars.githubusercontent.com/u/45363?v=4", + "login": "ellatrix", + "id": 4710635, + "node_id": "MDQ6VXNlcjQ3MTA2MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/4710635?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/mkaz", - "html_url": "https://github.com/mkaz", - "followers_url": "https://api.github.com/users/mkaz/followers", - "following_url": "https://api.github.com/users/mkaz/following{/other_user}", - "gists_url": "https://api.github.com/users/mkaz/gists{/gist_id}", - "starred_url": "https://api.github.com/users/mkaz/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/mkaz/subscriptions", - "organizations_url": "https://api.github.com/users/mkaz/orgs", - "repos_url": "https://api.github.com/users/mkaz/repos", - "events_url": "https://api.github.com/users/mkaz/events{/privacy}", - "received_events_url": "https://api.github.com/users/mkaz/received_events", + "url": "https://api.github.com/users/ellatrix", + "html_url": "https://github.com/ellatrix", + "followers_url": "https://api.github.com/users/ellatrix/followers", + "following_url": "https://api.github.com/users/ellatrix/following{/other_user}", + "gists_url": "https://api.github.com/users/ellatrix/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ellatrix/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ellatrix/subscriptions", + "organizations_url": "https://api.github.com/users/ellatrix/orgs", + "repos_url": "https://api.github.com/users/ellatrix/repos", + "events_url": "https://api.github.com/users/ellatrix/events{/privacy}", + "received_events_url": "https://api.github.com/users/ellatrix/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 567484057, - "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Documentation", - "name": "[Type] Developer Documentation", - "color": "bfd4f2", - "default": false, - "description": "" - }, - { - "id": 2697301145, - "node_id": "MDU6TGFiZWwyNjk3MzAxMTQ1", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Pattern%20Directory", - "name": "[Feature] Pattern Directory", - "color": "FBCA04", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "The Pattern Directory, a place to find patterns" + "description": "Issues or PRs that relate to code quality" } ], "state": "closed", @@ -1717,13 +1877,13 @@ "assignee": null, "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -1746,131 +1906,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 0, - "created_at": "2021-08-06T13:58:48Z", - "updated_at": "2021-08-06T15:34:14Z", - "closed_at": "2021-08-06T15:09:46Z", + "comments": 5, + "created_at": "2023-10-03T13:21:20Z", + "updated_at": "2023-10-04T14:43:09Z", + "closed_at": "2023-10-04T14:42:43Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33930", - "html_url": "https://github.com/WordPress/gutenberg/pull/33930", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33930.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33930.patch" - }, - "body": "\n## Description\n\nAdds a new section to the editor filters documentation\nfor the filter `should_load_remote_block_patterns`\n\nFixes #32591\n\n\n## How has this been tested?\n\nConfirm documentation works as expected.\n\n1. Add filter to a plugin or theme\n2. Confirm remote block patterns are not loaded\n\n\n## Types of changes\n\nDocumentation\n\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55006", + "html_url": "https://github.com/WordPress/gutenberg/pull/55006", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55006.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55006.patch", + "merged_at": "2023-10-04T14:42:43Z" + }, + "body": "\r\n\r\n## What/why?\r\n\r\nThis hook is writing flow, with a lot of similarity with its `useInput` hook. Paste shares splitting logic with pressing Enter, there's multi selection handling etc.\r\n\r\n## How?\r\n\r\n\r\nJust a move and deprecation.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55006/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55006/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33925", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55003", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33925/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33925/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33925/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33925", - "id": 962628315, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA1Mzg5NzE3", - "number": 33925, - "title": "Remove the experimental prefix and rename `theme.json` files", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55003/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55003/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55003/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/55003", + "id": 1923918650, + "node_id": "PR_kwDOBNHdeM5bx373", + "number": 55003, + "title": "Migrate 'iframed multiple block stylesheets' tests to Playwright", "user": { - "login": "nosolosw", - "id": 583546, - "node_id": "MDQ6VXNlcjU4MzU0Ng==", - "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/nosolosw", - "html_url": "https://github.com/nosolosw", - "followers_url": "https://api.github.com/users/nosolosw/followers", - "following_url": "https://api.github.com/users/nosolosw/following{/other_user}", - "gists_url": "https://api.github.com/users/nosolosw/gists{/gist_id}", - "starred_url": "https://api.github.com/users/nosolosw/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/nosolosw/subscriptions", - "organizations_url": "https://api.github.com/users/nosolosw/orgs", - "repos_url": "https://api.github.com/users/nosolosw/repos", - "events_url": "https://api.github.com/users/nosolosw/events{/privacy}", - "received_events_url": "https://api.github.com/users/nosolosw/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 930001208, - "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", - "name": "[Type] Code Quality", - "color": "e5e04b", + "id": 615503111, + "node_id": "MDU6TGFiZWw2MTU1MDMxMTE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Automated%20Testing", + "name": "[Type] Automated Testing", + "color": "111111", "default": false, - "description": "Gotta shave those yaks." + "description": "Testing infrastructure changes impacting the execution of end-to-end (E2E) and/or unit tests." }, { - "id": 1800807983, - "node_id": "MDU6TGFiZWwxODAwODA3OTgz", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Global%20Styles", - "name": "Global Styles", - "color": "2100b7", + "id": 1699237849, + "node_id": "MDU6TGFiZWwxNjk5MjM3ODQ5", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20E2E%20Tests", + "name": "[Package] E2E Tests", + "color": "ed2572", "default": false, - "description": "" + "description": "/packages/e2e-tests" } ], "state": "closed", "locked": false, "assignee": { - "login": "nosolosw", - "id": 583546, - "node_id": "MDQ6VXNlcjU4MzU0Ng==", - "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/nosolosw", - "html_url": "https://github.com/nosolosw", - "followers_url": "https://api.github.com/users/nosolosw/followers", - "following_url": "https://api.github.com/users/nosolosw/following{/other_user}", - "gists_url": "https://api.github.com/users/nosolosw/gists{/gist_id}", - "starred_url": "https://api.github.com/users/nosolosw/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/nosolosw/subscriptions", - "organizations_url": "https://api.github.com/users/nosolosw/orgs", - "repos_url": "https://api.github.com/users/nosolosw/repos", - "events_url": "https://api.github.com/users/nosolosw/events{/privacy}", - "received_events_url": "https://api.github.com/users/nosolosw/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "nosolosw", - "id": 583546, - "node_id": "MDQ6VXNlcjU4MzU0Ng==", - "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/nosolosw", - "html_url": "https://github.com/nosolosw", - "followers_url": "https://api.github.com/users/nosolosw/followers", - "following_url": "https://api.github.com/users/nosolosw/following{/other_user}", - "gists_url": "https://api.github.com/users/nosolosw/gists{/gist_id}", - "starred_url": "https://api.github.com/users/nosolosw/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/nosolosw/subscriptions", - "organizations_url": "https://api.github.com/users/nosolosw/orgs", - "repos_url": "https://api.github.com/users/nosolosw/repos", - "events_url": "https://api.github.com/users/nosolosw/events{/privacy}", - "received_events_url": "https://api.github.com/users/nosolosw/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -1893,140 +2069,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 0, - "created_at": "2021-08-06T10:54:15Z", - "updated_at": "2021-08-06T12:31:12Z", - "closed_at": "2021-08-06T12:30:44Z", + "comments": 1, + "created_at": "2023-10-03T11:28:23Z", + "updated_at": "2023-10-04T09:42:18Z", + "closed_at": "2023-10-04T09:41:49Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33925", - "html_url": "https://github.com/WordPress/gutenberg/pull/33925", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33925.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33925.patch" - }, - "body": "This PR renames:\r\n\r\n- `experimental-default-theme.json` to `theme.json`\r\n- `experimental-i18n-theme.json` to `theme-i18n.json`\r\n\r\nso it follows WordPress core names ([see](https://github.com/WordPress/wordpress-develop/tree/master/src/wp-includes)).", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/55003", + "html_url": "https://github.com/WordPress/gutenberg/pull/55003", + "diff_url": "https://github.com/WordPress/gutenberg/pull/55003.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/55003.patch", + "merged_at": "2023-10-04T09:41:49Z" + }, + "body": "## What?\r\nPart of #38851.\r\nCloses #35394.\r\n\r\nPR migrates 'iframed multiple block stylesheets' tests to Playwright.\r\n\r\n## Why?\r\nThe test was flaky.\r\n\r\n## Testing Instructions\r\n```\r\nnpm run test:e2e:playwright -- test/e2e/specs/editor/plugins/iframed-multiple-block-stylesheets.spec.js\r\n```\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/55003/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/55003/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33924", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54997", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33924/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33924/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33924/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33924", - "id": 962620740, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA1MzgzMjAx", - "number": 33924, - "title": "Do not add to the block-library CSS bundle the colors that come from `theme.json`", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54997/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54997/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54997/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54997", + "id": 1923425443, + "node_id": "PR_kwDOBNHdeM5bwPUS", + "number": 54997, + "title": "Fix left and right aligmnent in children of Post Template", "user": { - "login": "nosolosw", - "id": 583546, - "node_id": "MDQ6VXNlcjU4MzU0Ng==", - "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", + "login": "tellthemachines", + "id": 8096000, + "node_id": "MDQ6VXNlcjgwOTYwMDA=", + "avatar_url": "https://avatars.githubusercontent.com/u/8096000?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/nosolosw", - "html_url": "https://github.com/nosolosw", - "followers_url": "https://api.github.com/users/nosolosw/followers", - "following_url": "https://api.github.com/users/nosolosw/following{/other_user}", - "gists_url": "https://api.github.com/users/nosolosw/gists{/gist_id}", - "starred_url": "https://api.github.com/users/nosolosw/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/nosolosw/subscriptions", - "organizations_url": "https://api.github.com/users/nosolosw/orgs", - "repos_url": "https://api.github.com/users/nosolosw/repos", - "events_url": "https://api.github.com/users/nosolosw/events{/privacy}", - "received_events_url": "https://api.github.com/users/nosolosw/received_events", + "url": "https://api.github.com/users/tellthemachines", + "html_url": "https://github.com/tellthemachines", + "followers_url": "https://api.github.com/users/tellthemachines/followers", + "following_url": "https://api.github.com/users/tellthemachines/following{/other_user}", + "gists_url": "https://api.github.com/users/tellthemachines/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tellthemachines/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tellthemachines/subscriptions", + "organizations_url": "https://api.github.com/users/tellthemachines/orgs", + "repos_url": "https://api.github.com/users/tellthemachines/repos", + "events_url": "https://api.github.com/users/tellthemachines/events{/privacy}", + "received_events_url": "https://api.github.com/users/tellthemachines/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 731693674, - "node_id": "MDU6TGFiZWw3MzE2OTM2NzQ=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Performance", - "name": "[Type] Performance", - "color": "f3f4fe", - "default": false, - "description": "" - }, - { - "id": 1022744205, - "node_id": "MDU6TGFiZWwxMDIyNzQ0MjA1", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Block%20library", - "name": "[Package] Block library", - "color": "ed2572", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "/packages/block-library" + "description": "An existing feature does not function as intended" }, { - "id": 2424704665, - "node_id": "MDU6TGFiZWwyNDI0NzA0NjY1", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Base%20styles", - "name": "[Package] Base styles", - "color": "ed2572", + "id": 3488072481, + "node_id": "LA_kwDOBNHdeM7P58Mh", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Post%20Template", + "name": "[Block] Post Template", + "color": "6767e5", "default": false, - "description": "/packages/base-styles" + "description": "Affects the Post Template Block" } ], "state": "closed", "locked": false, "assignee": { - "login": "nosolosw", - "id": 583546, - "node_id": "MDQ6VXNlcjU4MzU0Ng==", - "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", + "login": "tellthemachines", + "id": 8096000, + "node_id": "MDQ6VXNlcjgwOTYwMDA=", + "avatar_url": "https://avatars.githubusercontent.com/u/8096000?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/nosolosw", - "html_url": "https://github.com/nosolosw", - "followers_url": "https://api.github.com/users/nosolosw/followers", - "following_url": "https://api.github.com/users/nosolosw/following{/other_user}", - "gists_url": "https://api.github.com/users/nosolosw/gists{/gist_id}", - "starred_url": "https://api.github.com/users/nosolosw/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/nosolosw/subscriptions", - "organizations_url": "https://api.github.com/users/nosolosw/orgs", - "repos_url": "https://api.github.com/users/nosolosw/repos", - "events_url": "https://api.github.com/users/nosolosw/events{/privacy}", - "received_events_url": "https://api.github.com/users/nosolosw/received_events", + "url": "https://api.github.com/users/tellthemachines", + "html_url": "https://github.com/tellthemachines", + "followers_url": "https://api.github.com/users/tellthemachines/followers", + "following_url": "https://api.github.com/users/tellthemachines/following{/other_user}", + "gists_url": "https://api.github.com/users/tellthemachines/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tellthemachines/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tellthemachines/subscriptions", + "organizations_url": "https://api.github.com/users/tellthemachines/orgs", + "repos_url": "https://api.github.com/users/tellthemachines/repos", + "events_url": "https://api.github.com/users/tellthemachines/events{/privacy}", + "received_events_url": "https://api.github.com/users/tellthemachines/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "nosolosw", - "id": 583546, - "node_id": "MDQ6VXNlcjU4MzU0Ng==", - "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", + "login": "tellthemachines", + "id": 8096000, + "node_id": "MDQ6VXNlcjgwOTYwMDA=", + "avatar_url": "https://avatars.githubusercontent.com/u/8096000?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/nosolosw", - "html_url": "https://github.com/nosolosw", - "followers_url": "https://api.github.com/users/nosolosw/followers", - "following_url": "https://api.github.com/users/nosolosw/following{/other_user}", - "gists_url": "https://api.github.com/users/nosolosw/gists{/gist_id}", - "starred_url": "https://api.github.com/users/nosolosw/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/nosolosw/subscriptions", - "organizations_url": "https://api.github.com/users/nosolosw/orgs", - "repos_url": "https://api.github.com/users/nosolosw/repos", - "events_url": "https://api.github.com/users/nosolosw/events{/privacy}", - "received_events_url": "https://api.github.com/users/nosolosw/received_events", + "url": "https://api.github.com/users/tellthemachines", + "html_url": "https://github.com/tellthemachines", + "followers_url": "https://api.github.com/users/tellthemachines/followers", + "following_url": "https://api.github.com/users/tellthemachines/following{/other_user}", + "gists_url": "https://api.github.com/users/tellthemachines/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tellthemachines/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tellthemachines/subscriptions", + "organizations_url": "https://api.github.com/users/tellthemachines/orgs", + "repos_url": "https://api.github.com/users/tellthemachines/repos", + "events_url": "https://api.github.com/users/tellthemachines/events{/privacy}", + "received_events_url": "https://api.github.com/users/tellthemachines/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -2049,39 +2232,55 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 11, - "created_at": "2021-08-06T10:42:47Z", - "updated_at": "2021-08-12T10:17:53Z", - "closed_at": "2021-08-11T12:09:56Z", - "author_association": "MEMBER", + "comments": 3, + "created_at": "2023-10-03T06:37:51Z", + "updated_at": "2023-10-04T09:38:11Z", + "closed_at": "2023-10-04T04:17:08Z", + "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33924", - "html_url": "https://github.com/WordPress/gutenberg/pull/33924", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33924.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33924.patch" - }, - "body": "This PR reduces the amount of CSS imported by the `block-library` package, to only the ones that are not defined by `theme.json` defaults.\r\n\r\n~Alternatives I've considered: remove the mixins `background-colors`, `foreground-colors`, `gradient-colors`. The reason I discarded this approach is that I understand it may be an API others use and we don't want to keep them in the `base-styles` package. Happy to reconsider if others think differently.~ Updated: they were removed as per [this convo](https://github.com/WordPress/gutenberg/pull/33924#discussion_r685996672).\r\n\r\n## Test instructions\r\n\r\nI'm using the `emptytheme` for this testing.\r\n\r\nThe following instructions work for both the front-end and the editor:\r\n\r\n- Go and inspect the contents of the `wp-block-library-css` stylesheet.\r\n- You should find that the deprecated colors & gradients are still availablet. For example, you should find the following CSS for the `very-light-gray` color:\r\n\r\n```css\r\n:root .has-very-light-gray-background-color { background-color: #eee; }\r\n:root .has-very-light-gray-color { color: #eee; }\r\n```\r\n\r\n- The removed colors shouldn't be available. For example, in `trunk`, if you inspected the same stylesheet you should also find the CSS for the `black` color:\r\n\r\n```css\r\n:root .has-black-background-color { background-color: #000; }\r\n:root .has-black-color { color: #000; }\r\n```\r\n\r\n## Follow-ups\r\n\r\n- https://github.com/WordPress/gutenberg/issues/34006\r\n- https://github.com/WordPress/gutenberg/issues/34005\r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54997", + "html_url": "https://github.com/WordPress/gutenberg/pull/54997", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54997.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54997.patch", + "merged_at": "2023-10-04T04:17:07Z" + }, + "body": "\r\n\r\n## What?\r\n\r\nFixes #54805.\r\n\r\nLeft/right alignment doesn't work as expected for direct children of the Post Template block due to its unique markup structure. Given the problem is specific to this block, I think it makes sense to add some styles that fix it for this block only.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n1. Set your Post Template to list layout;\r\n2. Set the Featured Image width to 50% and align it right;\r\n3. Verify that Featured Images are correctly right-aligned in both editor and front end.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54997/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54997/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33921", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54996", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33921/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33921/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33921/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33921", - "id": 962596488, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA1MzYyMDY1", - "number": 33921, - "title": "Site Editor: Add error boundary", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54996/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54996/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54996/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54996", + "id": 1923411460, + "node_id": "PR_kwDOBNHdeM5bwMWe", + "number": 54996, + "title": "Site Editor: Avoid stale navigation block values when parsing entity record", "user": { "login": "Mamaduka", "id": 240569, @@ -2104,13 +2303,13 @@ }, "labels": [ { - "id": 531680825, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", - "name": "[Type] Enhancement", - "color": "3993a3", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "A suggestion for improvement." + "description": "An existing feature does not function as intended" }, { "id": 2706102777, @@ -2119,7 +2318,7 @@ "name": "[Feature] Site Editor", "color": "fbca04", "default": false, - "description": "" + "description": "Related to the overarching Site Editor (formerly \"full site editing\")" } ], "state": "closed", @@ -2167,13 +2366,13 @@ } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -2196,122 +2395,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 3, - "created_at": "2021-08-06T10:08:08Z", - "updated_at": "2021-08-09T14:44:46Z", - "closed_at": "2021-08-09T14:44:16Z", + "comments": 12, + "created_at": "2023-10-03T06:27:09Z", + "updated_at": "2023-10-04T10:06:13Z", + "closed_at": "2023-10-04T04:42:04Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33921", - "html_url": "https://github.com/WordPress/gutenberg/pull/33921", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33921.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33921.patch" - }, - "body": "## Description\r\nPR adds error boundary to the Site Editor. The fallback will render a warning message with actions to \"Attempt Recovery\" or \"Copy Error.\" It's similar to other editor error boundaries.\r\n\r\nInitially, I was planning to reuse the `ErrorBoundary` component from the editor package, but the \"Copy Post Text\" doesn't make sense in the context of site editing.\r\n\r\nI also moved the following components near the InterfaceSkeleton - `URLQueryController`, `FullscreenMode` and `UnsavedChangesWarning`.\r\n\r\nFixes #33899.\r\n\r\n## How has this been tested?\r\n1. Enable TT1 Blocks theme.\r\n2. Go to the Site Editor screen.\r\n3. Run following code in console to trigger error in the editor:\r\n\r\n```js\r\nwp.plugins.registerPlugin( 'error-boundary-test', {\r\n render() {\r\n throw new Error( 'Test' );\r\n },\r\n} );\r\n```\r\n\r\n## Screenshots \r\n![CleanShot 2021-08-06 at 13 57 48](https://user-images.githubusercontent.com/240569/128494025-5be726e8-ed4c-490f-bcc2-61e7925c4ed9.png)\r\n\r\n## Types of changes\r\nEnhancement\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54996", + "html_url": "https://github.com/WordPress/gutenberg/pull/54996", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54996.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54996.patch", + "merged_at": "2023-10-04T04:42:04Z" + }, + "body": "## What?\r\nThis is a follow-up to https://github.com/WordPress/gutenberg/pull/54993#issuecomment-1744241005. Props to @aaronrobertshaw for discovering the bug.\r\n\r\nPR updates template parts navigation menus display component to handle rendering fallback menus.\r\n\r\n## Why?\r\nThe navigation block sets fallback `ref` [during the render](https://github.com/WordPress/gutenberg/blob/2afdedf792b5a74ffaf109fcee5dbbcbbef361f4/packages/block-library/src/navigation/edit/index.js#L229-L244). Since this data isn't part of the content, it was never picked up by the `useNavigationMenuContent`.\r\n\r\n\r\n## How?\r\nAdd a new helper method, `getBlocksFromRecord`, which returns edited blocks from the record when available and fallbacks to blocks from the content. This matches the logic for edited blocks in [`useEntityBlockEditor`](https://github.com/WordPress/gutenberg/blob/205f1e3ba8104365c16b856c2ef7a983b4416581/packages/core-data/src/entity-provider.js#L171-L179).\r\n\r\n## Testing Instructions\r\n1. Using TT3 theme.\r\n2. Create all customizations from the Header template part.\r\n3. Delete all navigation menus. You can use the `wp-admin/edit.php?post_type=wp_navigation` screen.\r\n4. Open the Header template part.\r\n5. Confirm fallback navigation is displayed in sidebar details.\r\n\r\n## Screenshots or screencast \r\n\r\n![CleanShot 2023-10-03 at 10 14 42](https://github.com/WordPress/gutenberg/assets/240569/9f20c4e7-3fb4-46b4-ab52-d753ac08945a)\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54996/reactions", + "total_count": 1, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 1, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54996/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33913", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54993", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33913/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33913/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33913/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33913", - "id": 962143664, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA0OTc3NTgz", - "number": 33913, - "title": "Mobile Release v1.59.0", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54993/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54993/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54993/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54993", + "id": 1923304650, + "node_id": "PR_kwDOBNHdeM5bv1Y5", + "number": 54993, + "title": "Don't display the navigation section in template parts details when a menu is missing", "user": { - "login": "jhnstn", - "id": 744755, - "node_id": "MDQ6VXNlcjc0NDc1NQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/744755?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/jhnstn", - "html_url": "https://github.com/jhnstn", - "followers_url": "https://api.github.com/users/jhnstn/followers", - "following_url": "https://api.github.com/users/jhnstn/following{/other_user}", - "gists_url": "https://api.github.com/users/jhnstn/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jhnstn/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jhnstn/subscriptions", - "organizations_url": "https://api.github.com/users/jhnstn/orgs", - "repos_url": "https://api.github.com/users/jhnstn/repos", - "events_url": "https://api.github.com/users/jhnstn/events{/privacy}", - "received_events_url": "https://api.github.com/users/jhnstn/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 982506020, - "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", - "name": "Mobile App - i.e. Android or iOS", - "color": "a3ef7a", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + "description": "An existing feature does not function as intended" + }, + { + "id": 2706102777, + "node_id": "MDU6TGFiZWwyNzA2MTAyNzc3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Site%20Editor", + "name": "[Feature] Site Editor", + "color": "fbca04", + "default": false, + "description": "Related to the overarching Site Editor (formerly \"full site editing\")" } ], "state": "closed", "locked": false, "assignee": { - "login": "dcalhoun", - "id": 438664, - "node_id": "MDQ6VXNlcjQzODY2NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/dcalhoun", - "html_url": "https://github.com/dcalhoun", - "followers_url": "https://api.github.com/users/dcalhoun/followers", - "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", - "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", - "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", - "organizations_url": "https://api.github.com/users/dcalhoun/orgs", - "repos_url": "https://api.github.com/users/dcalhoun/repos", - "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", - "received_events_url": "https://api.github.com/users/dcalhoun/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "dcalhoun", - "id": 438664, - "node_id": "MDQ6VXNlcjQzODY2NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/dcalhoun", - "html_url": "https://github.com/dcalhoun", - "followers_url": "https://api.github.com/users/dcalhoun/followers", - "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", - "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", - "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", - "organizations_url": "https://api.github.com/users/dcalhoun/orgs", - "repos_url": "https://api.github.com/users/dcalhoun/repos", - "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", - "received_events_url": "https://api.github.com/users/dcalhoun/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -2334,131 +2558,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-08-05T19:46:50Z", - "updated_at": "2021-08-06T15:38:52Z", - "closed_at": "2021-08-06T15:14:20Z", - "author_association": "CONTRIBUTOR", + "comments": 5, + "created_at": "2023-10-03T04:50:59Z", + "updated_at": "2023-10-05T09:24:16Z", + "closed_at": "2023-10-03T05:36:42Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33913", - "html_url": "https://github.com/WordPress/gutenberg/pull/33913", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33913.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33913.patch" - }, - "body": "## Description\nRelease 1.59.0 of the react-native-editor and Gutenberg-Mobile.\n\nFor more information about this release and testing instructions, please see the related Gutenberg-Mobile PR: https://github.com/wordpress-mobile/gutenberg-mobile/pull/3805\n\n## Checklist:\n- [x] My code is tested.\n- [x] My code follows the WordPress code style. \n- [x] My code follows the accessibility standards. \n- [ ] I've tested my changes with keyboard and screen readers. \n- [x] My code has proper inline documentation. \n- [x] I've included developer documentation if appropriate. \n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). ", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54993", + "html_url": "https://github.com/WordPress/gutenberg/pull/54993", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54993.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54993.patch", + "merged_at": "2023-10-03T05:36:42Z" + }, + "body": "## What?\r\nResolves #54822.\r\n\r\nPR updates template part navigation menu components to render nothing when a menu is missing.\r\n\r\n## Why?\r\nThere's no use in rendering menus that the user can't edit.\r\n\r\n## How?\r\nThe component now checks if the `title` resolves to `undefined`. This happens when an entity is still resolving or missing.\r\n\r\n## Testing Instructions\r\n1. Open a Site Editor.\r\n2. Open a template part with a navigation block.\r\n3. Confirm navigation is displayed in sidebar details.\r\n4. Change the navigation `ref` attribute to a non-existing ID via the code editor.\r\n5. Confirm navigation is no longer displayed in sidebar details.\r\n\r\n### Testing Instructions for Keyboard\r\nSame.\r\n\r\n## Screenshots or screencast \r\n![CleanShot 2023-10-03 at 08 44 41](https://github.com/WordPress/gutenberg/assets/240569/39565c7f-e2e8-4add-832f-875e26131ff0)\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54993/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54993/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33906", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54992", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33906/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33906/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33906/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33906", - "id": 962026946, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA0ODc4MDA0", - "number": 33906, - "title": "Closing the block inserter decrements block type impressions", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54992/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54992/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54992/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54992", + "id": 1923150718, + "node_id": "PR_kwDOBNHdeM5bvT6r", + "number": 54992, + "title": "Fix output of Navigation block classnames in the editor.", "user": { - "login": "dcalhoun", - "id": 438664, - "node_id": "MDQ6VXNlcjQzODY2NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", + "login": "tellthemachines", + "id": 8096000, + "node_id": "MDQ6VXNlcjgwOTYwMDA=", + "avatar_url": "https://avatars.githubusercontent.com/u/8096000?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/dcalhoun", - "html_url": "https://github.com/dcalhoun", - "followers_url": "https://api.github.com/users/dcalhoun/followers", - "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", - "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", - "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", - "organizations_url": "https://api.github.com/users/dcalhoun/orgs", - "repos_url": "https://api.github.com/users/dcalhoun/repos", - "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", - "received_events_url": "https://api.github.com/users/dcalhoun/received_events", + "url": "https://api.github.com/users/tellthemachines", + "html_url": "https://github.com/tellthemachines", + "followers_url": "https://api.github.com/users/tellthemachines/followers", + "following_url": "https://api.github.com/users/tellthemachines/following{/other_user}", + "gists_url": "https://api.github.com/users/tellthemachines/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tellthemachines/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tellthemachines/subscriptions", + "organizations_url": "https://api.github.com/users/tellthemachines/orgs", + "repos_url": "https://api.github.com/users/tellthemachines/repos", + "events_url": "https://api.github.com/users/tellthemachines/events{/privacy}", + "received_events_url": "https://api.github.com/users/tellthemachines/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 596962434, - "node_id": "MDU6TGFiZWw1OTY5NjI0MzQ=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Inserter", - "name": "[Feature] Inserter", - "color": "fbca04", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "" + "description": "An existing feature does not function as intended" }, { - "id": 982506020, - "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", - "name": "Mobile App - i.e. Android or iOS", - "color": "a3ef7a", + "id": 1225853227, + "node_id": "MDU6TGFiZWwxMjI1ODUzMjI3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Navigation", + "name": "[Block] Navigation", + "color": "6767e5", "default": false, - "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + "description": "Affects the Navigation Block" } ], "state": "closed", "locked": false, "assignee": { - "login": "dcalhoun", - "id": 438664, - "node_id": "MDQ6VXNlcjQzODY2NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", + "login": "tellthemachines", + "id": 8096000, + "node_id": "MDQ6VXNlcjgwOTYwMDA=", + "avatar_url": "https://avatars.githubusercontent.com/u/8096000?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/dcalhoun", - "html_url": "https://github.com/dcalhoun", - "followers_url": "https://api.github.com/users/dcalhoun/followers", - "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", - "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", - "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", - "organizations_url": "https://api.github.com/users/dcalhoun/orgs", - "repos_url": "https://api.github.com/users/dcalhoun/repos", - "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", - "received_events_url": "https://api.github.com/users/dcalhoun/received_events", + "url": "https://api.github.com/users/tellthemachines", + "html_url": "https://github.com/tellthemachines", + "followers_url": "https://api.github.com/users/tellthemachines/followers", + "following_url": "https://api.github.com/users/tellthemachines/following{/other_user}", + "gists_url": "https://api.github.com/users/tellthemachines/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tellthemachines/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tellthemachines/subscriptions", + "organizations_url": "https://api.github.com/users/tellthemachines/orgs", + "repos_url": "https://api.github.com/users/tellthemachines/repos", + "events_url": "https://api.github.com/users/tellthemachines/events{/privacy}", + "received_events_url": "https://api.github.com/users/tellthemachines/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "dcalhoun", - "id": 438664, - "node_id": "MDQ6VXNlcjQzODY2NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", + "login": "tellthemachines", + "id": 8096000, + "node_id": "MDQ6VXNlcjgwOTYwMDA=", + "avatar_url": "https://avatars.githubusercontent.com/u/8096000?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/dcalhoun", - "html_url": "https://github.com/dcalhoun", - "followers_url": "https://api.github.com/users/dcalhoun/followers", - "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", - "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", - "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", - "organizations_url": "https://api.github.com/users/dcalhoun/orgs", - "repos_url": "https://api.github.com/users/dcalhoun/repos", - "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", - "received_events_url": "https://api.github.com/users/dcalhoun/received_events", + "url": "https://api.github.com/users/tellthemachines", + "html_url": "https://github.com/tellthemachines", + "followers_url": "https://api.github.com/users/tellthemachines/followers", + "following_url": "https://api.github.com/users/tellthemachines/following{/other_user}", + "gists_url": "https://api.github.com/users/tellthemachines/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tellthemachines/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tellthemachines/subscriptions", + "organizations_url": "https://api.github.com/users/tellthemachines/orgs", + "repos_url": "https://api.github.com/users/tellthemachines/repos", + "events_url": "https://api.github.com/users/tellthemachines/events{/privacy}", + "received_events_url": "https://api.github.com/users/tellthemachines/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -2481,131 +2721,107 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-08-05T17:08:51Z", - "updated_at": "2021-08-06T18:25:03Z", - "closed_at": "2021-08-06T18:24:35Z", - "author_association": "MEMBER", + "comments": 4, + "created_at": "2023-10-03T02:11:06Z", + "updated_at": "2023-10-04T09:37:30Z", + "closed_at": "2023-10-03T03:22:32Z", + "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33906", - "html_url": "https://github.com/WordPress/gutenberg/pull/33906", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33906.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33906.patch" - }, - "body": "* **Gutenberg:** Self\r\n* **Gutenberg Mobile:** https://github.com/wordpress-mobile/gutenberg-mobile/pull/3802\r\n\r\n## Description\r\nFixes #33907. Closing the block inserter will decrement the block type impression counts. This results in blocks that are marked as \"new\" to slowly lose the designation as a user utilizes the block inserter over time. \r\n\r\n## How has this been tested?\r\n1. Clone this branch. \r\n2. Apply the below diff. \r\n\t
Patch Enabling New Badge\r\n\r\n\t```diff\r\n\tdiff --git a/packages/block-editor/src/components/inserter/hooks/use-block-type-impressions.native.js b/packages/block-editor/src/components/inserter/hooks/use-block-type-impressions.native.js\r\n\tindex 2fcd6dc1c9..7bd08a2594 100644\r\n\t--- a/packages/block-editor/src/components/inserter/hooks/use-block-type-impressions.native.js\r\n\t+++ b/packages/block-editor/src/components/inserter/hooks/use-block-type-impressions.native.js\r\n\t@@ -19,7 +19,7 @@ function useBlockTypeImpressions( blockTypes ) {\r\n\t\r\n\t\t\t\treturn {\r\n\t\t\t\t\tblockTypeImpressions: impressions,\r\n\t-\t\t\t\tenableEditorOnboarding: editorOnboarding,\r\n\t+\t\t\t\tenableEditorOnboarding: true,\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\t[]\r\n\t```\r\n\r\n\t
\r\n3. Start the server and build the Demo app to an emulator/device. \r\n4. Open the block inserter, note the new \"sparkles\" badge on the Search, Embed, and Audio block buttons. \r\n5. Insert one of the aforementioned blocks. \r\n6. Open the block inserter, note the new \"sparkles\" badge should only be present on two of the aforementioned blocks _not_ inserted. \r\n7. Close the block inserter. \r\n8. Repeat steps 6-7 9 more times. \r\n9. ℹ️ **Expected:** the new \"sparkles\" badge is _no longer present_ on any block buttons. \r\n\r\n## Screenshots \r\n\"new-block-sparkles-badge\"\r\n\r\n## Types of changes\r\nNew feature\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54992", + "html_url": "https://github.com/WordPress/gutenberg/pull/54992", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54992.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54992.patch", + "merged_at": "2023-10-03T03:22:32Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nFixes #54891.\r\n\r\nThere was a discrepancy between the placement of layout classnames in the Navigation block in the editor and front end - in the editor they were being applied to the inner wrapper, and in the front end to the outer wrapper - and the block custom styles were built to work with layout classnames on the outer wrapper. It might be good to move them into the inner wrapper in both editor and front end at some point, as that might allow us to remove all the custom styles and logic handling layout for this block, but that will be a big piece of work so best leave it for after this release 😅 \r\n\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n1. Add a Navigation block to the site editor and add several blocks to it;\r\n2. Reset styles > dimensions > block gap in the block settings;\r\n3. Verify there's still a gap between the Navigation child items;\r\n4. Verify that the editor matches the front end.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54992/reactions", + "total_count": 2, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 2, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54992/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33904", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54988", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33904/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33904/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33904/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33904", - "id": 961934875, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA0ODAwNzEz", - "number": 33904, - "title": "No longer read from `experimental-theme.json`", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54988/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54988/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54988/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54988", + "id": 1922652763, + "node_id": "PR_kwDOBNHdeM5btjuU", + "number": 54988, + "title": "Scripts: Properly use CommonJS for default Playwright config", "user": { - "login": "nosolosw", - "id": 583546, - "node_id": "MDQ6VXNlcjU4MzU0Ng==", - "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", + "login": "swissspidy", + "id": 841956, + "node_id": "MDQ6VXNlcjg0MTk1Ng==", + "avatar_url": "https://avatars.githubusercontent.com/u/841956?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/nosolosw", - "html_url": "https://github.com/nosolosw", - "followers_url": "https://api.github.com/users/nosolosw/followers", - "following_url": "https://api.github.com/users/nosolosw/following{/other_user}", - "gists_url": "https://api.github.com/users/nosolosw/gists{/gist_id}", - "starred_url": "https://api.github.com/users/nosolosw/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/nosolosw/subscriptions", - "organizations_url": "https://api.github.com/users/nosolosw/orgs", - "repos_url": "https://api.github.com/users/nosolosw/repos", - "events_url": "https://api.github.com/users/nosolosw/events{/privacy}", - "received_events_url": "https://api.github.com/users/nosolosw/received_events", + "url": "https://api.github.com/users/swissspidy", + "html_url": "https://github.com/swissspidy", + "followers_url": "https://api.github.com/users/swissspidy/followers", + "following_url": "https://api.github.com/users/swissspidy/following{/other_user}", + "gists_url": "https://api.github.com/users/swissspidy/gists{/gist_id}", + "starred_url": "https://api.github.com/users/swissspidy/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/swissspidy/subscriptions", + "organizations_url": "https://api.github.com/users/swissspidy/orgs", + "repos_url": "https://api.github.com/users/swissspidy/repos", + "events_url": "https://api.github.com/users/swissspidy/events{/privacy}", + "received_events_url": "https://api.github.com/users/swissspidy/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 930001208, - "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", - "name": "[Type] Code Quality", - "color": "e5e04b", + "id": 615503111, + "node_id": "MDU6TGFiZWw2MTU1MDMxMTE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Automated%20Testing", + "name": "[Type] Automated Testing", + "color": "111111", "default": false, - "description": "Gotta shave those yaks." + "description": "Testing infrastructure changes impacting the execution of end-to-end (E2E) and/or unit tests." }, { - "id": 1800807983, - "node_id": "MDU6TGFiZWwxODAwODA3OTgz", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Global%20Styles", - "name": "Global Styles", - "color": "2100b7", + "id": 978007737, + "node_id": "MDU6TGFiZWw5NzgwMDc3Mzc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Scripts", + "name": "[Package] Scripts", + "color": "ed2572", "default": false, - "description": "" + "description": "/packages/scripts" } ], "state": "closed", "locked": false, - "assignee": { - "login": "nosolosw", - "id": 583546, - "node_id": "MDQ6VXNlcjU4MzU0Ng==", - "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/nosolosw", - "html_url": "https://github.com/nosolosw", - "followers_url": "https://api.github.com/users/nosolosw/followers", - "following_url": "https://api.github.com/users/nosolosw/following{/other_user}", - "gists_url": "https://api.github.com/users/nosolosw/gists{/gist_id}", - "starred_url": "https://api.github.com/users/nosolosw/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/nosolosw/subscriptions", - "organizations_url": "https://api.github.com/users/nosolosw/orgs", - "repos_url": "https://api.github.com/users/nosolosw/repos", - "events_url": "https://api.github.com/users/nosolosw/events{/privacy}", - "received_events_url": "https://api.github.com/users/nosolosw/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "nosolosw", - "id": 583546, - "node_id": "MDQ6VXNlcjU4MzU0Ng==", - "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/nosolosw", - "html_url": "https://github.com/nosolosw", - "followers_url": "https://api.github.com/users/nosolosw/followers", - "following_url": "https://api.github.com/users/nosolosw/following{/other_user}", - "gists_url": "https://api.github.com/users/nosolosw/gists{/gist_id}", - "starred_url": "https://api.github.com/users/nosolosw/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/nosolosw/subscriptions", - "organizations_url": "https://api.github.com/users/nosolosw/orgs", - "repos_url": "https://api.github.com/users/nosolosw/repos", - "events_url": "https://api.github.com/users/nosolosw/events{/privacy}", - "received_events_url": "https://api.github.com/users/nosolosw/received_events", - "type": "User", - "site_admin": false - } - ], + "assignee": null, + "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -2628,131 +2844,107 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-08-05T15:18:03Z", - "updated_at": "2021-08-09T10:13:39Z", - "closed_at": "2021-08-09T10:13:13Z", + "comments": 3, + "created_at": "2023-10-02T20:32:56Z", + "updated_at": "2023-10-04T09:37:50Z", + "closed_at": "2023-10-03T06:00:59Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33904", - "html_url": "https://github.com/WordPress/gutenberg/pull/33904", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33904.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33904.patch" - }, - "body": "We used `experimental-theme.json` as a name for the file that holds the settings & styles while it was experimental. When the feature was stabilized the file was renamed to `theme.json` but we also kept a fallback to the previous name in the plugin, so themes had some time to rename it. We can get rid of this fallback now that WordPress 5.8 is released and bundles `theme.json` by default.", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54988", + "html_url": "https://github.com/WordPress/gutenberg/pull/54988", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54988.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54988.patch", + "merged_at": "2023-10-03T06:00:59Z" + }, + "body": "\r\n\r\n\r\n\r\n## What?\r\n\r\n\r\nOversight from #54856. The file should be referenced with a JS extension now of course.\r\n\r\n## Why?\r\n\r\n\r\n## How?\r\n\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54988/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54988/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33903", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54982", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33903/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33903/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33903/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33903", - "id": 961929642, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA0Nzk2MTYy", - "number": 33903, - "title": "Improve the performance of the parser by removing the automatic custom classnames handling.", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54982/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54982/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54982/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54982", + "id": 1922397334, + "node_id": "PR_kwDOBNHdeM5bsr6a", + "number": 54982, + "title": "Query view.js: Code quality", "user": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "them-es", + "id": 10208534, + "node_id": "MDQ6VXNlcjEwMjA4NTM0", + "avatar_url": "https://avatars.githubusercontent.com/u/10208534?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/them-es", + "html_url": "https://github.com/them-es", + "followers_url": "https://api.github.com/users/them-es/followers", + "following_url": "https://api.github.com/users/them-es/following{/other_user}", + "gists_url": "https://api.github.com/users/them-es/gists{/gist_id}", + "starred_url": "https://api.github.com/users/them-es/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/them-es/subscriptions", + "organizations_url": "https://api.github.com/users/them-es/orgs", + "repos_url": "https://api.github.com/users/them-es/repos", + "events_url": "https://api.github.com/users/them-es/events{/privacy}", + "received_events_url": "https://api.github.com/users/them-es/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 596962405, - "node_id": "MDU6TGFiZWw1OTY5NjI0MDU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Parsing", - "name": "[Feature] Parsing", - "color": "fbca04", + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", "default": false, - "description": "" + "description": "A suggestion for improvement." }, { - "id": 731693674, - "node_id": "MDU6TGFiZWw3MzE2OTM2NzQ=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Performance", - "name": "[Type] Performance", - "color": "f3f4fe", + "id": 1022744205, + "node_id": "MDU6TGFiZWwxMDIyNzQ0MjA1", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Block%20library", + "name": "[Package] Block library", + "color": "ed2572", "default": false, - "description": "" + "description": "/packages/block-library" } ], "state": "closed", "locked": false, - "assignee": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", - "type": "User", - "site_admin": false - } - ], + "assignee": null, + "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -2775,140 +2967,156 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 3, - "created_at": "2021-08-05T15:12:34Z", - "updated_at": "2021-08-10T10:12:15Z", - "closed_at": "2021-08-10T10:11:54Z", + "comments": 0, + "created_at": "2023-10-02T18:15:52Z", + "updated_at": "2023-10-03T19:06:36Z", + "closed_at": "2023-10-03T16:58:03Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33903", - "html_url": "https://github.com/WordPress/gutenberg/pull/33903", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33903.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33903.patch" - }, - "body": "When parsing post content, I noticed that the `addParsedDifference` function used to fix the custom classnames in case of invalidation takes half of the parsing time for a long post it takes `300ms` out of `600ms` on my machine. \r\n\r\nThe solution in this PR is to move this behavior to the \"validation\" stage, meaning, only fix the custom classname attribute if the block is invalid (which in most cases is not).\r\n\r\nThe parser code base is a bit complex though, I think there's still ways we could improve the quality and the maintenability of that code,", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54982", + "html_url": "https://github.com/WordPress/gutenberg/pull/54982", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54982.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54982.patch", + "merged_at": "2023-10-03T16:58:03Z" + }, + "body": "\r\n\r\n## What?\r\nFixing a typo and improving some JS comments\r\n\r\n## Why?\r\nCode quality\r\n\r\n## Testing Instructions\r\nN/A\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54982/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54982/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33902", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54981", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33902/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33902/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33902/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33902", - "id": 961845951, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA0NzIzNDUz", - "number": 33902, - "title": "`useBreakpointIndex`: attach `resize` event listener to `window` instead of `document`", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54981/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54981/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54981/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54981", + "id": 1922353945, + "node_id": "PR_kwDOBNHdeM5bsikw", + "number": 54981, + "title": "Block Editor: Avoid double-wrapping selectors when transforming the styles", "user": { - "login": "ciampo", - "id": 1083581, - "node_id": "MDQ6VXNlcjEwODM1ODE=", - "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/ciampo", - "html_url": "https://github.com/ciampo", - "followers_url": "https://api.github.com/users/ciampo/followers", - "following_url": "https://api.github.com/users/ciampo/following{/other_user}", - "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", - "organizations_url": "https://api.github.com/users/ciampo/orgs", - "repos_url": "https://api.github.com/users/ciampo/repos", - "events_url": "https://api.github.com/users/ciampo/events{/privacy}", - "received_events_url": "https://api.github.com/users/ciampo/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", + "id": 949438185, + "node_id": "MDU6TGFiZWw5NDk0MzgxODU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Regression", + "name": "[Type] Regression", "color": "d93f0b", "default": false, - "description": "An existing feature is broken." + "description": "Related to a regression in the latest release" }, { - "id": 997392122, - "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", - "name": "[Package] Components", + "id": 1248494790, + "node_id": "MDU6TGFiZWwxMjQ4NDk0Nzkw", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Block%20editor", + "name": "[Package] Block editor", "color": "ed2572", "default": false, - "description": "/packages/components" + "description": "/packages/block-editor" }, { - "id": 2555015900, - "node_id": "MDU6TGFiZWwyNTU1MDE1OTAw", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Component%20System", - "name": "[Feature] Component System", + "id": 4589908460, + "node_id": "LA_kwDOBNHdeM8AAAABEZRx7A", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Layout", + "name": "[Feature] Layout", "color": "fbca04", "default": false, - "description": "The next iteration on WordPress Components." + "description": "Layout block support, its UI controls, and style output." } ], "state": "closed", "locked": false, "assignee": { - "login": "ciampo", - "id": 1083581, - "node_id": "MDQ6VXNlcjEwODM1ODE=", - "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/ciampo", - "html_url": "https://github.com/ciampo", - "followers_url": "https://api.github.com/users/ciampo/followers", - "following_url": "https://api.github.com/users/ciampo/following{/other_user}", - "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", - "organizations_url": "https://api.github.com/users/ciampo/orgs", - "repos_url": "https://api.github.com/users/ciampo/repos", - "events_url": "https://api.github.com/users/ciampo/events{/privacy}", - "received_events_url": "https://api.github.com/users/ciampo/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "ciampo", - "id": 1083581, - "node_id": "MDQ6VXNlcjEwODM1ODE=", - "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/ciampo", - "html_url": "https://github.com/ciampo", - "followers_url": "https://api.github.com/users/ciampo/followers", - "following_url": "https://api.github.com/users/ciampo/following{/other_user}", - "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", - "organizations_url": "https://api.github.com/users/ciampo/orgs", - "repos_url": "https://api.github.com/users/ciampo/repos", - "events_url": "https://api.github.com/users/ciampo/events{/privacy}", - "received_events_url": "https://api.github.com/users/ciampo/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -2931,131 +3139,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-08-05T13:46:44Z", - "updated_at": "2021-08-06T09:21:11Z", - "closed_at": "2021-08-06T09:20:41Z", - "author_association": "CONTRIBUTOR", + "comments": 3, + "created_at": "2023-10-02T17:45:37Z", + "updated_at": "2023-10-04T09:37:36Z", + "closed_at": "2023-10-03T03:52:11Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33902", - "html_url": "https://github.com/WordPress/gutenberg/pull/33902", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33902.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33902.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\n\r\nFix a bug in the `useBreakpointIndex` component utility hook, where the `resize` event listener was previously attached to the `document` object.\r\n\r\nThis was resulting in the event listener function never being called, since [the `resize` event only gets fired on the `window` object](https://developer.mozilla.org/en-US/docs/Web/API/Window/resize_event).\r\n\r\nThe fix is quite simple — change `document` to `window`.\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\nOne way to test this is to check the `Flex` component's Storybook example:\r\n\r\n- in [production](https://wordpress.github.io/gutenberg/?path=/story/g2-components-experimental-flex--default), notice how resizing the window doesn't cause the second row of items to switch from `row` to `column` (and viceversa)\r\n- When running Storybook on this PR branch, notice how the behaviour just described above is fixed\r\n\r\n## Screenshots \r\n\r\n**Before**\r\n\r\nhttps://user-images.githubusercontent.com/1083581/128360451-048af45b-6728-4298-8fac-19990f0f9ebd.mp4\r\n\r\n**After**\r\n\r\nhttps://user-images.githubusercontent.com/1083581/128360624-3dd7263e-ee91-44b3-83fe-c6cee342f61d.mp4\r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\n\r\nBug fix\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- N/A I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54981", + "html_url": "https://github.com/WordPress/gutenberg/pull/54981", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54981.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54981.patch", + "merged_at": "2023-10-03T03:52:10Z" + }, + "body": "## What?\r\nResolves #54943.\r\n\r\nPR updates style transformation's `wrap` helper to avoid double-wrapping the selectors.\r\n\r\nP.S. Ideally, the editor-generated styles shouldn't include [scope namespaces](https://github.com/WordPress/gutenberg/blob/trunk/packages/block-editor/src/layouts/utils.js#L11-L35).\r\n\r\n## Why?\r\nWhen the selector already has `namespace`, it is unnecessary to append it again.\r\n\r\n## How?\r\nThe method checks if the selector already starts with the namespaces and skips it.\r\n\r\n## Testing Instructions\r\nCI checks should pass.\r\n\r\n1. Open a post.\r\n2. Add the testing block. See below.\r\n3. Confirm paragraphs are rendered with space between.\r\n4. Enable custom fields.\r\n5. Confirm paragraphs are rendered as before.\r\n\r\n### Snippet\r\n\r\n### Testing Instructions for Keyboard\r\nSame\r\n\r\n## Screenshots or screencast \r\n![CleanShot 2023-10-02 at 21 38 11](https://github.com/WordPress/gutenberg/assets/240569/2759df6d-a339-41fc-ad03-da77fac16559)\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54981/reactions", + "total_count": 1, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 1, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54981/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33901", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54978", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33901/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33901/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33901/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33901", - "id": 961792869, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA0Njc4MzIx", - "number": 33901, - "title": "Plugin: Fix `jsdoc/check-line-alignment` ESLint warnings", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54978/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54978/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54978/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54978", + "id": 1922224982, + "node_id": "PR_kwDOBNHdeM5bsGuh", + "number": 54978, + "title": "Components: Remove hover style for secondary Button when aria-disabled is set", "user": { - "login": "gziolo", - "id": 699132, - "node_id": "MDQ6VXNlcjY5OTEzMg==", - "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/gziolo", - "html_url": "https://github.com/gziolo", - "followers_url": "https://api.github.com/users/gziolo/followers", - "following_url": "https://api.github.com/users/gziolo/following{/other_user}", - "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", - "organizations_url": "https://api.github.com/users/gziolo/orgs", - "repos_url": "https://api.github.com/users/gziolo/repos", - "events_url": "https://api.github.com/users/gziolo/events{/privacy}", - "received_events_url": "https://api.github.com/users/gziolo/received_events", - "type": "User", - "site_admin": false - }, - "labels": [ - { - "id": 616662898, - "node_id": "MDU6TGFiZWw2MTY2NjI4OTg=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Gutenberg%20Plugin", - "name": "Gutenberg Plugin", - "color": "578eed", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "" + "description": "An existing feature does not function as intended" }, { - "id": 930001208, - "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", - "name": "[Type] Code Quality", - "color": "e5e04b", + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", "default": false, - "description": "Gotta shave those yaks." + "description": "/packages/components" } ], "state": "closed", "locked": false, "assignee": { - "login": "gziolo", - "id": 699132, - "node_id": "MDQ6VXNlcjY5OTEzMg==", - "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/gziolo", - "html_url": "https://github.com/gziolo", - "followers_url": "https://api.github.com/users/gziolo/followers", - "following_url": "https://api.github.com/users/gziolo/following{/other_user}", - "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", - "organizations_url": "https://api.github.com/users/gziolo/orgs", - "repos_url": "https://api.github.com/users/gziolo/repos", - "events_url": "https://api.github.com/users/gziolo/events{/privacy}", - "received_events_url": "https://api.github.com/users/gziolo/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "gziolo", - "id": 699132, - "node_id": "MDQ6VXNlcjY5OTEzMg==", - "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/gziolo", - "html_url": "https://github.com/gziolo", - "followers_url": "https://api.github.com/users/gziolo/followers", - "following_url": "https://api.github.com/users/gziolo/following{/other_user}", - "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", - "organizations_url": "https://api.github.com/users/gziolo/orgs", - "repos_url": "https://api.github.com/users/gziolo/repos", - "events_url": "https://api.github.com/users/gziolo/events{/privacy}", - "received_events_url": "https://api.github.com/users/gziolo/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -3078,131 +3302,116 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-08-05T12:51:10Z", - "updated_at": "2021-08-06T05:23:04Z", - "closed_at": "2021-08-06T05:22:39Z", + "comments": 4, + "created_at": "2023-10-02T16:15:22Z", + "updated_at": "2023-10-03T07:26:40Z", + "closed_at": "2023-10-03T07:26:10Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33901", - "html_url": "https://github.com/WordPress/gutenberg/pull/33901", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33901.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33901.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\n\r\nIt's the result of running:\r\n\r\n```bash\r\nnpm run lint-js -- --fix\r\n```\r\n\r\nIt was applied to files that had reported violations for `jsdoc/check-line-alignment` rule.", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54978", + "html_url": "https://github.com/WordPress/gutenberg/pull/54978", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54978.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54978.patch", + "merged_at": "2023-10-03T07:26:09Z" + }, + "body": "## What?\r\nThis is a follow-up to https://github.com/WordPress/gutenberg/pull/54722#issuecomment-1733879065.\r\n\r\nPR removes hover styles for a secondary Button when disabled via the `aria-disabled` prop.\r\n\r\n## Why?\r\nDisabled buttons shouldn't have a hover style.\r\n\r\n## Testing Instructions\r\n1. Open a draft post.\r\n2. Hover on the disabled \"Switch to draft\" button in document settings.\r\n3. It shouldn't have a border.\r\n\r\n## Screenshots or screencast \r\n\r\nhttps://github.com/WordPress/gutenberg/assets/240569/aabae316-9bd1-42b4-b984-a7ff26db10f5", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54978/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54978/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33896", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54977", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33896/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33896/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33896/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33896", - "id": 961675115, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA0NTc2MTYx", - "number": 33896, - "title": "Fix the site editor breaking in firefox", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54977/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54977/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54977/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54977", + "id": 1922119216, + "node_id": "PR_kwDOBNHdeM5brv3S", + "number": 54977, + "title": "Font Library: use snake_case instead of camelCase on fontFamilies endpoint param", "user": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "matiasbenedetto", + "id": 1310626, + "node_id": "MDQ6VXNlcjEzMTA2MjY=", + "avatar_url": "https://avatars.githubusercontent.com/u/1310626?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/matiasbenedetto", + "html_url": "https://github.com/matiasbenedetto", + "followers_url": "https://api.github.com/users/matiasbenedetto/followers", + "following_url": "https://api.github.com/users/matiasbenedetto/following{/other_user}", + "gists_url": "https://api.github.com/users/matiasbenedetto/gists{/gist_id}", + "starred_url": "https://api.github.com/users/matiasbenedetto/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/matiasbenedetto/subscriptions", + "organizations_url": "https://api.github.com/users/matiasbenedetto/orgs", + "repos_url": "https://api.github.com/users/matiasbenedetto/repos", + "events_url": "https://api.github.com/users/matiasbenedetto/events{/privacy}", + "received_events_url": "https://api.github.com/users/matiasbenedetto/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "An existing feature is broken." + "description": "Issues or PRs that relate to code quality" }, { - "id": 2706102777, - "node_id": "MDU6TGFiZWwyNzA2MTAyNzc3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Site%20Editor", - "name": "[Feature] Site Editor", + "id": 4254348202, + "node_id": "LA_kwDOBNHdeM79lDOq", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20PHP%20backport", + "name": "Needs PHP backport", + "color": "64436E", + "default": false, + "description": "Needs PHP backport to Core" + }, + { + "id": 4366600186, + "node_id": "LA_kwDOBNHdeM8AAAABBEUH-g", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Typography", + "name": "[Feature] Typography", "color": "fbca04", "default": false, - "description": "" + "description": "Font and typography-related issues and PRs" } ], "state": "closed", "locked": false, - "assignee": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", - "type": "User", - "site_admin": false - } - ], + "assignee": null, + "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -3225,122 +3434,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 4, - "created_at": "2021-08-05T10:22:32Z", - "updated_at": "2021-08-11T22:07:55Z", - "closed_at": "2021-08-09T10:14:45Z", + "comments": 3, + "created_at": "2023-10-02T15:13:21Z", + "updated_at": "2023-10-04T09:37:23Z", + "closed_at": "2023-10-02T19:20:56Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33896", - "html_url": "https://github.com/WordPress/gutenberg/pull/33896", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33896.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33896.patch" - }, - "body": "closes #33873 \r\n\r\nI'm not entirely certain that this is a good solution but in Firefox the ref is null initially meaning that it's probably not being attached on mount.\r\n\r\nGuarding against the ref solves the issue but doesn't explain why the ref is empty in the first place.\r\n\r\n**Note:** It seems we don't have an error boundary in the site editor or if we do, it's not working well.\r\n\r\n**Testing instructions**\r\n\r\n - Open the site editor in firefox\r\n - Make sure you don't get just a crash/", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54977", + "html_url": "https://github.com/WordPress/gutenberg/pull/54977", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54977.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54977.patch", + "merged_at": "2023-10-02T19:20:56Z" + }, + "body": "## What?\r\nFont Library: use snake_case instead of camelCase on fontFamilies endpoint param\r\n\r\n## Why?\r\nEndpoint parameters should use snake_case instead of camelCase as requested in this core pr review comment:\r\nhttps://github.com/WordPress/wordpress-develop/pull/5285#discussion_r1342644332\r\n\r\n## Testing Instructions\r\n- Run unit tests\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54977/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54977/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33895", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54975", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33895/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33895/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33895/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33895", - "id": 961648612, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA0NTUzMDcy", - "number": 33895, - "title": "Fix block appender position in classic themes", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54975/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54975/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54975/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54975", + "id": 1922080040, + "node_id": "PR_kwDOBNHdeM5brnbe", + "number": 54975, + "title": "Wrapped `TextareaControl` in a `forwardRef` call", "user": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "t-hamano", + "id": 54422211, + "node_id": "MDQ6VXNlcjU0NDIyMjEx", + "avatar_url": "https://avatars.githubusercontent.com/u/54422211?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/t-hamano", + "html_url": "https://github.com/t-hamano", + "followers_url": "https://api.github.com/users/t-hamano/followers", + "following_url": "https://api.github.com/users/t-hamano/following{/other_user}", + "gists_url": "https://api.github.com/users/t-hamano/gists{/gist_id}", + "starred_url": "https://api.github.com/users/t-hamano/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/t-hamano/subscriptions", + "organizations_url": "https://api.github.com/users/t-hamano/orgs", + "repos_url": "https://api.github.com/users/t-hamano/repos", + "events_url": "https://api.github.com/users/t-hamano/events{/privacy}", + "received_events_url": "https://api.github.com/users/t-hamano/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", "default": false, - "description": "An existing feature is broken." + "description": "/packages/components" } ], "state": "closed", "locked": false, "assignee": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "t-hamano", + "id": 54422211, + "node_id": "MDQ6VXNlcjU0NDIyMjEx", + "avatar_url": "https://avatars.githubusercontent.com/u/54422211?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/t-hamano", + "html_url": "https://github.com/t-hamano", + "followers_url": "https://api.github.com/users/t-hamano/followers", + "following_url": "https://api.github.com/users/t-hamano/following{/other_user}", + "gists_url": "https://api.github.com/users/t-hamano/gists{/gist_id}", + "starred_url": "https://api.github.com/users/t-hamano/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/t-hamano/subscriptions", + "organizations_url": "https://api.github.com/users/t-hamano/orgs", + "repos_url": "https://api.github.com/users/t-hamano/repos", + "events_url": "https://api.github.com/users/t-hamano/events{/privacy}", + "received_events_url": "https://api.github.com/users/t-hamano/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "t-hamano", + "id": 54422211, + "node_id": "MDQ6VXNlcjU0NDIyMjEx", + "avatar_url": "https://avatars.githubusercontent.com/u/54422211?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/t-hamano", + "html_url": "https://github.com/t-hamano", + "followers_url": "https://api.github.com/users/t-hamano/followers", + "following_url": "https://api.github.com/users/t-hamano/following{/other_user}", + "gists_url": "https://api.github.com/users/t-hamano/gists{/gist_id}", + "starred_url": "https://api.github.com/users/t-hamano/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/t-hamano/subscriptions", + "organizations_url": "https://api.github.com/users/t-hamano/orgs", + "repos_url": "https://api.github.com/users/t-hamano/repos", + "events_url": "https://api.github.com/users/t-hamano/events{/privacy}", + "received_events_url": "https://api.github.com/users/t-hamano/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -3363,122 +3597,138 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 5, - "created_at": "2021-08-05T09:52:58Z", - "updated_at": "2021-08-06T08:31:27Z", - "closed_at": "2021-08-05T13:22:21Z", + "comments": 0, + "created_at": "2023-10-02T14:51:42Z", + "updated_at": "2023-10-03T07:28:36Z", + "closed_at": "2023-10-03T07:28:06Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33895", - "html_url": "https://github.com/WordPress/gutenberg/pull/33895", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33895.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33895.patch" - }, - "body": "In https://github.com/WordPress/gutenberg/pull/33024/files#r659586330 the `wp-block` class has been removed from the block appender. I think this was an error, that class is used to define the max-width for blocks which the appender should adhere too, otherwise it will be position on the extreme left.\r\n\r\nI'm not really sure why the class was removed there.\r\n\r\n**Testing instructions**\r\n\r\n - Use a classic theme\r\n - Insert an image block\r\n - notice that the block appender after the image block is positioned properly.", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54975", + "html_url": "https://github.com/WordPress/gutenberg/pull/54975", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54975.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54975.patch", + "merged_at": "2023-10-03T07:28:06Z" + }, + "body": "Closes: #54723\r\n\r\n## What?\r\n\r\nThis PR wraps the `TextAreaControl` component in a `forwardRef` call.\r\n\r\n## Why?\r\n\r\nMany components, not just form elements, are wrapped in `forwardRef` calls. This component is also a form element, and exposing the ref may also be useful to third-party developers.\r\n\r\n## Testing Instructions\r\n\r\nI wrote a simple code to test the `ref` prop. Update the code block's Edit component (`packages/block-library/src/code/edit.js`) with this code.\r\n\r\n```javascript\r\n/**\r\n * WordPress dependencies\r\n */\r\nimport { useBlockProps } from '@wordpress/block-editor';\r\nimport { TextareaControl } from '@wordpress/components';\r\nimport { useRef } from '@wordpress/element';\r\n\r\nexport default function CodeEdit() {\r\n\tconst ref = useRef();\r\n\tconst blockProps = useBlockProps();\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t {\r\n\t\t\t\t\tref.current.focus();\r\n\t\t\t\t\tref.current.value = 'Focued!';\r\n\t\t\t\t} }\r\n\t\t\t>\r\n\t\t\t\tFocus on textarea!\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n}\r\n```\r\n\r\n- Insert a Code block in the block editor and click the button.\r\n- The textarea should now have focus and be filled with a value.\r\n\r\n## Screenshots or screencast \r\n\r\nhttps://github.com/WordPress/gutenberg/assets/54422211/1f0acd17-ad4c-40c4-a733-c724561c6db2\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54975/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54975/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33893", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54974", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33893/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33893/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33893/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33893", - "id": 961547711, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA0NDY2ODQ3", - "number": 33893, - "title": "Fix positioning discrepancy with draggable chip.", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54974/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54974/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54974/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54974", + "id": 1922079703, + "node_id": "PR_kwDOBNHdeM5brnW0", + "number": 54974, + "title": "Update changelog automation and test fixtures to match the last a11y label renaming", "user": { - "login": "jasmussen", - "id": 1204802, - "node_id": "MDQ6VXNlcjEyMDQ4MDI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1204802?v=4", + "login": "priethor", + "id": 27339341, + "node_id": "MDQ6VXNlcjI3MzM5MzQx", + "avatar_url": "https://avatars.githubusercontent.com/u/27339341?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/jasmussen", - "html_url": "https://github.com/jasmussen", - "followers_url": "https://api.github.com/users/jasmussen/followers", - "following_url": "https://api.github.com/users/jasmussen/following{/other_user}", - "gists_url": "https://api.github.com/users/jasmussen/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jasmussen/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jasmussen/subscriptions", - "organizations_url": "https://api.github.com/users/jasmussen/orgs", - "repos_url": "https://api.github.com/users/jasmussen/repos", - "events_url": "https://api.github.com/users/jasmussen/events{/privacy}", - "received_events_url": "https://api.github.com/users/jasmussen/received_events", + "url": "https://api.github.com/users/priethor", + "html_url": "https://github.com/priethor", + "followers_url": "https://api.github.com/users/priethor/followers", + "following_url": "https://api.github.com/users/priethor/following{/other_user}", + "gists_url": "https://api.github.com/users/priethor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/priethor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/priethor/subscriptions", + "organizations_url": "https://api.github.com/users/priethor/orgs", + "repos_url": "https://api.github.com/users/priethor/repos", + "events_url": "https://api.github.com/users/priethor/events{/privacy}", + "received_events_url": "https://api.github.com/users/priethor/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 596964332, - "node_id": "MDU6TGFiZWw1OTY5NjQzMzI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/General%20Interface", - "name": "General Interface", - "color": "bfdadc", + "id": 1032028862, + "node_id": "MDU6TGFiZWwxMDMyMDI4ODYy", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Project%20Management", + "name": "[Type] Project Management", + "color": "e55ead", "default": false, - "description": "Parts of the UI which don't fall neatly under other labels." + "description": "Meta-issues related to project management of Gutenberg" } ], "state": "closed", "locked": false, "assignee": { - "login": "jasmussen", - "id": 1204802, - "node_id": "MDQ6VXNlcjEyMDQ4MDI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1204802?v=4", + "login": "priethor", + "id": 27339341, + "node_id": "MDQ6VXNlcjI3MzM5MzQx", + "avatar_url": "https://avatars.githubusercontent.com/u/27339341?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/jasmussen", - "html_url": "https://github.com/jasmussen", - "followers_url": "https://api.github.com/users/jasmussen/followers", - "following_url": "https://api.github.com/users/jasmussen/following{/other_user}", - "gists_url": "https://api.github.com/users/jasmussen/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jasmussen/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jasmussen/subscriptions", - "organizations_url": "https://api.github.com/users/jasmussen/orgs", - "repos_url": "https://api.github.com/users/jasmussen/repos", - "events_url": "https://api.github.com/users/jasmussen/events{/privacy}", - "received_events_url": "https://api.github.com/users/jasmussen/received_events", + "url": "https://api.github.com/users/priethor", + "html_url": "https://github.com/priethor", + "followers_url": "https://api.github.com/users/priethor/followers", + "following_url": "https://api.github.com/users/priethor/following{/other_user}", + "gists_url": "https://api.github.com/users/priethor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/priethor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/priethor/subscriptions", + "organizations_url": "https://api.github.com/users/priethor/orgs", + "repos_url": "https://api.github.com/users/priethor/repos", + "events_url": "https://api.github.com/users/priethor/events{/privacy}", + "received_events_url": "https://api.github.com/users/priethor/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "jasmussen", - "id": 1204802, - "node_id": "MDQ6VXNlcjEyMDQ4MDI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1204802?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/jasmussen", - "html_url": "https://github.com/jasmussen", - "followers_url": "https://api.github.com/users/jasmussen/followers", - "following_url": "https://api.github.com/users/jasmussen/following{/other_user}", - "gists_url": "https://api.github.com/users/jasmussen/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jasmussen/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jasmussen/subscriptions", - "organizations_url": "https://api.github.com/users/jasmussen/orgs", - "repos_url": "https://api.github.com/users/jasmussen/repos", - "events_url": "https://api.github.com/users/jasmussen/events{/privacy}", - "received_events_url": "https://api.github.com/users/jasmussen/received_events", + "login": "priethor", + "id": 27339341, + "node_id": "MDQ6VXNlcjI3MzM5MzQx", + "avatar_url": "https://avatars.githubusercontent.com/u/27339341?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/priethor", + "html_url": "https://github.com/priethor", + "followers_url": "https://api.github.com/users/priethor/followers", + "following_url": "https://api.github.com/users/priethor/following{/other_user}", + "gists_url": "https://api.github.com/users/priethor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/priethor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/priethor/subscriptions", + "organizations_url": "https://api.github.com/users/priethor/orgs", + "repos_url": "https://api.github.com/users/priethor/repos", + "events_url": "https://api.github.com/users/priethor/events{/privacy}", + "received_events_url": "https://api.github.com/users/priethor/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -3501,82 +3751,156 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-08-05T07:53:04Z", - "updated_at": "2021-08-06T07:18:50Z", - "closed_at": "2021-08-06T07:18:20Z", + "comments": 2, + "created_at": "2023-10-02T14:51:31Z", + "updated_at": "2023-10-02T17:45:57Z", + "closed_at": "2023-10-02T17:44:21Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33893", - "html_url": "https://github.com/WordPress/gutenberg/pull/33893", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33893.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33893.patch" - }, - "body": "## Description\r\n\r\nThe inverted block toolbar/drag handle in select mode is offset slightly compared to the block toolbar:\r\n\r\n![currently](https://user-images.githubusercontent.com/1204802/128312691-5ba9219c-828d-407b-a09a-a0df7ca350b5.gif)\r\n\r\n\"Screenshot\r\n\r\nThis PR fixes that:\r\n\r\n![after](https://user-images.githubusercontent.com/1204802/128312721-688ceff8-e734-4bda-932c-4caf5675c19f.gif)\r\n\r\nNote that now that IE11 support is no longer necessary, there is a huge opportunity to refactor the block toolbar to leverage flex and remove all the gnarly margin rules on content inside, replace them entirely with `gap` and drastically simplifying things. But it's a larger undertaking, and this is a small fix in the mean time. \r\n\r\n## How has this been tested?\r\n\r\nInsert a block, select it, then press Escape. Observe the block icon and drag handle ideally overlapping precisely in both states.\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54974", + "html_url": "https://github.com/WordPress/gutenberg/pull/54974", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54974.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54974.patch", + "merged_at": "2023-10-02T17:44:21Z" + }, + "body": "## What?\r\nUpdates the changelog automation tests to work with the latest name of the a11y label.\r\n\r\n## Why?\r\n\r\nSo that the changelog automation continues to create a top section for Accessibility-related PRs even if accessibility is treated as a focus instead of a type of task.\r\n\r\n\r\n## How?\r\nBy using the latest accessibility label name.\r\n\r\n## Testing Instructions\r\n1. Clear your jest cache with `npx jest --clearCache`\r\n2. Run the changelog automation tests with `test:unit bin/plugin/commands/test/changelog.js`\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54974/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54974/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33890", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54972", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33890/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33890/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33890/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33890", - "id": 961486553, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzA0NDE1MDI5", - "number": 33890, - "title": "Try to fix flaky customizer inspector test", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54972/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54972/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54972/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54972", + "id": 1921973971, + "node_id": "PR_kwDOBNHdeM5brQfD", + "number": 54972, + "title": "Block Editor: Simplify `BlockHTMLConvertButton` ", "user": { - "login": "kevin940726", - "id": 7753001, - "node_id": "MDQ6VXNlcjc3NTMwMDE=", - "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", + "login": "tyxla", + "id": 8436925, + "node_id": "MDQ6VXNlcjg0MzY5MjU=", + "avatar_url": "https://avatars.githubusercontent.com/u/8436925?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/kevin940726", - "html_url": "https://github.com/kevin940726", - "followers_url": "https://api.github.com/users/kevin940726/followers", - "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", - "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", - "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", - "organizations_url": "https://api.github.com/users/kevin940726/orgs", - "repos_url": "https://api.github.com/users/kevin940726/repos", - "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", - "received_events_url": "https://api.github.com/users/kevin940726/received_events", + "url": "https://api.github.com/users/tyxla", + "html_url": "https://github.com/tyxla", + "followers_url": "https://api.github.com/users/tyxla/followers", + "following_url": "https://api.github.com/users/tyxla/following{/other_user}", + "gists_url": "https://api.github.com/users/tyxla/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tyxla/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tyxla/subscriptions", + "organizations_url": "https://api.github.com/users/tyxla/orgs", + "repos_url": "https://api.github.com/users/tyxla/repos", + "events_url": "https://api.github.com/users/tyxla/events{/privacy}", + "received_events_url": "https://api.github.com/users/tyxla/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 2632875097, - "node_id": "MDU6TGFiZWwyNjMyODc1MDk3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Widgets%20Customizer", - "name": "[Feature] Widgets Customizer", - "color": "fbca04", + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 593977130, + "node_id": "MDU6TGFiZWw1OTM5NzcxMzA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Priority]%20Low", + "name": "[Priority] Low", + "color": "f9d0c4", "default": false, - "description": "Ability to add and edit blocks in Customize → Widgets." + "description": "Used to indicate that the issue at hand isn't a top priority to address and can be handled later" + }, + { + "id": 1248494790, + "node_id": "MDU6TGFiZWwxMjQ4NDk0Nzkw", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Block%20editor", + "name": "[Package] Block editor", + "color": "ed2572", + "default": false, + "description": "/packages/block-editor" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "tyxla", + "id": 8436925, + "node_id": "MDQ6VXNlcjg0MzY5MjU=", + "avatar_url": "https://avatars.githubusercontent.com/u/8436925?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/tyxla", + "html_url": "https://github.com/tyxla", + "followers_url": "https://api.github.com/users/tyxla/followers", + "following_url": "https://api.github.com/users/tyxla/following{/other_user}", + "gists_url": "https://api.github.com/users/tyxla/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tyxla/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tyxla/subscriptions", + "organizations_url": "https://api.github.com/users/tyxla/orgs", + "repos_url": "https://api.github.com/users/tyxla/repos", + "events_url": "https://api.github.com/users/tyxla/events{/privacy}", + "received_events_url": "https://api.github.com/users/tyxla/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "tyxla", + "id": 8436925, + "node_id": "MDQ6VXNlcjg0MzY5MjU=", + "avatar_url": "https://avatars.githubusercontent.com/u/8436925?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/tyxla", + "html_url": "https://github.com/tyxla", + "followers_url": "https://api.github.com/users/tyxla/followers", + "following_url": "https://api.github.com/users/tyxla/following{/other_user}", + "gists_url": "https://api.github.com/users/tyxla/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tyxla/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tyxla/subscriptions", + "organizations_url": "https://api.github.com/users/tyxla/orgs", + "repos_url": "https://api.github.com/users/tyxla/repos", + "events_url": "https://api.github.com/users/tyxla/events{/privacy}", + "received_events_url": "https://api.github.com/users/tyxla/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -3599,140 +3923,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 4, - "created_at": "2021-08-05T06:20:38Z", - "updated_at": "2021-08-10T05:34:47Z", - "closed_at": "2021-08-05T07:50:06Z", + "comments": 1, + "created_at": "2023-10-02T13:55:53Z", + "updated_at": "2023-10-02T14:59:14Z", + "closed_at": "2023-10-02T14:58:44Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33890", - "html_url": "https://github.com/WordPress/gutenberg/pull/33890", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33890.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33890.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nAlternative to #33875, part of #33275.\r\n\r\nDuring closing the inspector and going back to the editor, the transition is making the blocks positioning in an intermediate state. Since the toolbar is still opened, it could sometimes also be positioned in the wrong place according to intermediate state of the block.\r\n\r\nThis PR waits for the transition to finish (200ms). A better alternative could be:\r\n1. Disable the transitions in tests (#32024)\r\n2. Delay showing the block toolbar until the transition is finished\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\nNot yet found a reliable way to reproduce the issue, so maybe we just have to merge this and monitor it on trunk.\r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\nBug fix\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54972", + "html_url": "https://github.com/WordPress/gutenberg/pull/54972", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54972.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54972.patch", + "merged_at": "2023-10-02T14:58:44Z" + }, + "body": "## What?\r\nThis PR makes a few improvements to the `BlockHTMLConvertButton` component:\r\n\r\n## Why?\r\nA micro-optimization that makes the rendered component tree smaller, but also makes that part of the code more readable.\r\n\r\n## How?\r\nThis PR:\r\n* Removes the nested `BlockConvertButton` which is used only once anyway.\r\n* Simplifies logic that is unnecessarily split into two components and condenses it into one.\r\n* Replaces `withSelect` with `useSelect`, `withDispatch` with `useDispatch` and removes the unnecessary `compose`, making the component tree smaller and more readable.\r\n* Removes the unnecessary `small` prop that wasn't used.\r\n\r\n## Testing Instructions\r\n* Insert an HTML block with some HTML in it. \r\n* Click the block settings menu of the HTML block.\r\n* Verify the \"Convert to Blocks\" item is there and it still works well.\r\n* Verify that that item does not appear if this is not an HTML block.\r\n\r\n### Testing Instructions for Keyboard\r\nNone.\r\n\r\n## Screenshots or screencast \r\nComponent tree before:\r\n![Screenshot 2023-10-02 at 16 48 40](https://github.com/WordPress/gutenberg/assets/8436925/0d9a79ce-2a69-46d3-b7a3-92222b57812d)\r\n\r\n\r\nComponent tree after:\r\n![Screenshot 2023-10-02 at 16 49 29](https://github.com/WordPress/gutenberg/assets/8436925/20dbf151-4f85-45b7-a8cd-e536f3d726bf)\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54972/reactions", + "total_count": 1, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 1, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54972/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33882", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54967", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33882/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33882/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33882/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33882", - "id": 960645484, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAzNjQ4ODYy", - "number": 33882, - "title": "Components utils: `rtl()` return type, `rtl.watch()` utility", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54967/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54967/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54967/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54967", + "id": 1921741798, + "node_id": "PR_kwDOBNHdeM5bqeg5", + "number": 54967, + "title": "Platform Docs: Add a documentation page explaining how to use the block library", "user": { - "login": "ciampo", - "id": 1083581, - "node_id": "MDQ6VXNlcjEwODM1ODE=", - "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/ciampo", - "html_url": "https://github.com/ciampo", - "followers_url": "https://api.github.com/users/ciampo/followers", - "following_url": "https://api.github.com/users/ciampo/following{/other_user}", - "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", - "organizations_url": "https://api.github.com/users/ciampo/orgs", - "repos_url": "https://api.github.com/users/ciampo/repos", - "events_url": "https://api.github.com/users/ciampo/events{/privacy}", - "received_events_url": "https://api.github.com/users/ciampo/received_events", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 930001208, - "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", - "name": "[Type] Code Quality", - "color": "e5e04b", - "default": false, - "description": "Gotta shave those yaks." - }, - { - "id": 997392122, - "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", - "name": "[Package] Components", - "color": "ed2572", + "id": 562969841, + "node_id": "MDU6TGFiZWw1NjI5Njk4NDE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Framework", + "name": "Framework", + "color": "fbca04", "default": false, - "description": "/packages/components" + "description": "Issues related to broader framework topics, especially as it relates to javascript" }, { - "id": 2555015900, - "node_id": "MDU6TGFiZWwyNTU1MDE1OTAw", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Component%20System", - "name": "[Feature] Component System", - "color": "fbca04", + "id": 567484057, + "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Developer%20Documentation", + "name": "[Type] Developer Documentation", + "color": "bfd4f2", "default": false, - "description": "The next iteration on WordPress Components." + "description": "Documentation for developers" } ], "state": "closed", "locked": false, "assignee": { - "login": "ciampo", - "id": 1083581, - "node_id": "MDQ6VXNlcjEwODM1ODE=", - "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/ciampo", - "html_url": "https://github.com/ciampo", - "followers_url": "https://api.github.com/users/ciampo/followers", - "following_url": "https://api.github.com/users/ciampo/following{/other_user}", - "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", - "organizations_url": "https://api.github.com/users/ciampo/orgs", - "repos_url": "https://api.github.com/users/ciampo/repos", - "events_url": "https://api.github.com/users/ciampo/events{/privacy}", - "received_events_url": "https://api.github.com/users/ciampo/received_events", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "ciampo", - "id": 1083581, - "node_id": "MDQ6VXNlcjEwODM1ODE=", - "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/ciampo", - "html_url": "https://github.com/ciampo", - "followers_url": "https://api.github.com/users/ciampo/followers", - "following_url": "https://api.github.com/users/ciampo/following{/other_user}", - "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", - "organizations_url": "https://api.github.com/users/ciampo/orgs", - "repos_url": "https://api.github.com/users/ciampo/repos", - "events_url": "https://api.github.com/users/ciampo/events{/privacy}", - "received_events_url": "https://api.github.com/users/ciampo/received_events", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -3755,100 +4086,156 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, "comments": 1, - "created_at": "2021-08-04T15:39:13Z", - "updated_at": "2021-08-04T16:27:21Z", - "closed_at": "2021-08-04T16:26:56Z", + "created_at": "2023-10-02T11:34:01Z", + "updated_at": "2023-10-07T09:01:40Z", + "closed_at": "2023-10-04T08:31:25Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33882", - "html_url": "https://github.com/WordPress/gutenberg/pull/33882", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33882.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33882.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\n\r\n- Improve return type of the `rtl()` utility function\r\n- Add the `rtl.watch()` function, useful when in need of observing LTR/RTL locale changes\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\nNo runtime changes, the project builds correctly.\r\n\r\n## Screenshots \r\n\r\nN/A\r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- N/A I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- N/A I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54967", + "html_url": "https://github.com/WordPress/gutenberg/pull/54967", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54967.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54967.patch", + "merged_at": "2023-10-04T08:31:25Z" + }, + "body": "Related #53874\r\n\r\n## What?\r\n\r\nThis PR documents the block library package and how to leverage it in third-party block editors. I think it's an interesting page because it highlights some of the current shortcomings that we might want to address separately (Ties to WordPress, boilerplate).\r\n\r\n**Note** I have personally tested all the code examples in a third-party vite install.\r\n\r\n### Test the documentation website\r\n\r\n```\r\ncd platform-docs\r\nnpm install\r\nnpm start\r\n```", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54967/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54967/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33880", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54966", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33880/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33880/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33880/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33880", - "id": 960622372, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAzNjI3NTEz", - "number": 33880, - "title": "Docs: add more details about block attributes", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54966/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54966/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54966/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54966", + "id": 1921740647, + "node_id": "PR_kwDOBNHdeM5bqeQz", + "number": 54966, + "title": "[Experimental]: First version of pages list in site editor", "user": { - "login": "johngodley", - "id": 1277682, - "node_id": "MDQ6VXNlcjEyNzc2ODI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1277682?v=4", + "login": "ntsekouras", + "id": 16275880, + "node_id": "MDQ6VXNlcjE2Mjc1ODgw", + "avatar_url": "https://avatars.githubusercontent.com/u/16275880?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/johngodley", - "html_url": "https://github.com/johngodley", - "followers_url": "https://api.github.com/users/johngodley/followers", - "following_url": "https://api.github.com/users/johngodley/following{/other_user}", - "gists_url": "https://api.github.com/users/johngodley/gists{/gist_id}", - "starred_url": "https://api.github.com/users/johngodley/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/johngodley/subscriptions", - "organizations_url": "https://api.github.com/users/johngodley/orgs", - "repos_url": "https://api.github.com/users/johngodley/repos", - "events_url": "https://api.github.com/users/johngodley/events{/privacy}", - "received_events_url": "https://api.github.com/users/johngodley/received_events", + "url": "https://api.github.com/users/ntsekouras", + "html_url": "https://github.com/ntsekouras", + "followers_url": "https://api.github.com/users/ntsekouras/followers", + "following_url": "https://api.github.com/users/ntsekouras/following{/other_user}", + "gists_url": "https://api.github.com/users/ntsekouras/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ntsekouras/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ntsekouras/subscriptions", + "organizations_url": "https://api.github.com/users/ntsekouras/orgs", + "repos_url": "https://api.github.com/users/ntsekouras/repos", + "events_url": "https://api.github.com/users/ntsekouras/events{/privacy}", + "received_events_url": "https://api.github.com/users/ntsekouras/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 546156315, - "node_id": "MDU6TGFiZWw1NDYxNTYzMTU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Block%20API", - "name": "[Feature] Block API", - "color": "fbca04", + "id": 1789345375, + "node_id": "MDU6TGFiZWwxNzg5MzQ1Mzc1", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Experimental", + "name": "[Type] Experimental", + "color": "4109a0", "default": false, - "description": "" + "description": "Experimental feature or API." }, { - "id": 567484057, - "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Documentation", - "name": "[Type] Developer Documentation", - "color": "bfd4f2", + "id": 2409818939, + "node_id": "MDU6TGFiZWwyNDA5ODE4OTM5", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Edit%20Site", + "name": "[Package] Edit Site", + "color": "ed2572", "default": false, - "description": "" + "description": "/packages/edit-site" }, { - "id": 587343997, - "node_id": "MDU6TGFiZWw1ODczNDM5OTc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Status]%20In%20Progress", - "name": "[Status] In Progress", - "color": "0052cc", + "id": 6059497889, + "node_id": "LA_kwDOBNHdeM8AAAABaSyZoQ", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Data%20Views", + "name": "[Feature] Data Views", + "color": "FBCA04", "default": false, - "description": "Tracking issues with work in progress" + "description": "Work surrounding upgrading and evolving views in the site editor and beyond" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "ntsekouras", + "id": 16275880, + "node_id": "MDQ6VXNlcjE2Mjc1ODgw", + "avatar_url": "https://avatars.githubusercontent.com/u/16275880?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ntsekouras", + "html_url": "https://github.com/ntsekouras", + "followers_url": "https://api.github.com/users/ntsekouras/followers", + "following_url": "https://api.github.com/users/ntsekouras/following{/other_user}", + "gists_url": "https://api.github.com/users/ntsekouras/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ntsekouras/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ntsekouras/subscriptions", + "organizations_url": "https://api.github.com/users/ntsekouras/orgs", + "repos_url": "https://api.github.com/users/ntsekouras/repos", + "events_url": "https://api.github.com/users/ntsekouras/events{/privacy}", + "received_events_url": "https://api.github.com/users/ntsekouras/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "ntsekouras", + "id": 16275880, + "node_id": "MDQ6VXNlcjE2Mjc1ODgw", + "avatar_url": "https://avatars.githubusercontent.com/u/16275880?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ntsekouras", + "html_url": "https://github.com/ntsekouras", + "followers_url": "https://api.github.com/users/ntsekouras/followers", + "following_url": "https://api.github.com/users/ntsekouras/following{/other_user}", + "gists_url": "https://api.github.com/users/ntsekouras/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ntsekouras/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ntsekouras/subscriptions", + "organizations_url": "https://api.github.com/users/ntsekouras/orgs", + "repos_url": "https://api.github.com/users/ntsekouras/repos", + "events_url": "https://api.github.com/users/ntsekouras/events{/privacy}", + "received_events_url": "https://api.github.com/users/ntsekouras/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -3871,82 +4258,156 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 0, - "created_at": "2021-08-04T15:23:25Z", - "updated_at": "2021-08-09T09:41:58Z", - "closed_at": "2021-08-09T09:41:36Z", + "comments": 8, + "created_at": "2023-10-02T11:33:10Z", + "updated_at": "2023-10-09T00:35:39Z", + "closed_at": "2023-10-04T11:31:42Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33880", - "html_url": "https://github.com/WordPress/gutenberg/pull/33880", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33880.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33880.patch" - }, - "body": "## Description\r\nThe block attributes documentation is a bit sparse on details, and I usually end up looking at core blocks for help.\r\n\r\nThis adds a lot more detail, with examples that show the block attributes, the HTML, and the attributes parsed from it.\r\n\r\nIt also includes the `enum` attribute type.\r\n\r\nI've removed the link to the WP REST API documentation as it contains PHP details, and just seems a confusing link.\r\n\r\n## Types of changes\r\nDocumentation update only.\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54966", + "html_url": "https://github.com/WordPress/gutenberg/pull/54966", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54966.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54966.patch", + "merged_at": "2023-10-04T11:31:42Z" + }, + "body": "\r\n\r\n## What?\r\nThis is the first version of pages list in site editor with related issues: https://github.com/WordPress/gutenberg/issues/53233, https://github.com/WordPress/gutenberg/issues/50430.\r\n\r\nThe underlying APIs will evolve, but we need to get something in, to enable parallel work. This PR adds a new pages list in the site editor and to test it, you'll need to **enable the `New admin views` GB experiment**.\r\n\r\nFor now it uses [TanStack table](https://github.com/tanstack/table), but this is an internal implementation detail and could also change. Part of the code has been extracted/polished a bit from https://github.com/WordPress/gutenberg/pull/53906.\r\nwhere the approach was to create helper components that could be composed into creating different views.\r\n\r\nThis PR changes the direction and aims to use a high level component(`DataViews`) that will provide the APIs for core and extenders for all views and functionality for any entity. \r\n\r\n\r\nNothing is exported right now and no public APIs have been introduced.\r\n\r\n\r\n## Testing Instructions\r\n1. Enable the experiment\r\n2. Go to site editor and navigate to `Pages->Manage all pages` .\r\n3. Play around with the new functionality like pagination, sorting, etc..\r\n\r\n\r\nhttps://github.com/WordPress/gutenberg/assets/16275880/56f061ad-1ed2-4447-bda3-635fe7f90f98\r\n\r\n\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54966/reactions", + "total_count": 3, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 3, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54966/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33870", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54951", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33870/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33870/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33870/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33870", - "id": 960382736, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAzNDEwOTY1", - "number": 33870, - "title": "Mobile Release v1.58.2", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54951/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54951/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54951/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54951", + "id": 1920203460, + "node_id": "PR_kwDOBNHdeM5blfTl", + "number": 54951, + "title": "Edit Post: Use hooks instead of HoCs in 'PostStatus' components", "user": { - "login": "SiobhyB", - "id": 2998162, - "node_id": "MDQ6VXNlcjI5OTgxNjI=", - "avatar_url": "https://avatars.githubusercontent.com/u/2998162?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/SiobhyB", - "html_url": "https://github.com/SiobhyB", - "followers_url": "https://api.github.com/users/SiobhyB/followers", - "following_url": "https://api.github.com/users/SiobhyB/following{/other_user}", - "gists_url": "https://api.github.com/users/SiobhyB/gists{/gist_id}", - "starred_url": "https://api.github.com/users/SiobhyB/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/SiobhyB/subscriptions", - "organizations_url": "https://api.github.com/users/SiobhyB/orgs", - "repos_url": "https://api.github.com/users/SiobhyB/repos", - "events_url": "https://api.github.com/users/SiobhyB/events{/privacy}", - "received_events_url": "https://api.github.com/users/SiobhyB/received_events", - "type": "User", - "site_admin": false - }, - "labels": [ - { - "id": 982506020, - "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", - "name": "Mobile App - i.e. Android or iOS", - "color": "a3ef7a", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", "default": false, - "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + "description": "A suggestion for improvement." + }, + { + "id": 593977130, + "node_id": "MDU6TGFiZWw1OTM5NzcxMzA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Priority]%20Low", + "name": "[Priority] Low", + "color": "f9d0c4", + "default": false, + "description": "Used to indicate that the issue at hand isn't a top priority to address and can be handled later" + }, + { + "id": 1298994603, + "node_id": "MDU6TGFiZWwxMjk4OTk0NjAz", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Edit%20Post", + "name": "[Package] Edit Post", + "color": "ed2572", + "default": false, + "description": "/packages/edit-post" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -3969,131 +4430,156 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-08-04T12:39:09Z", - "updated_at": "2021-08-04T18:26:53Z", - "closed_at": "2021-08-04T18:26:27Z", - "author_association": "CONTRIBUTOR", + "comments": 2, + "created_at": "2023-09-30T10:17:16Z", + "updated_at": "2023-10-02T15:01:01Z", + "closed_at": "2023-10-02T15:00:27Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33870", - "html_url": "https://github.com/WordPress/gutenberg/pull/33870", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33870.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33870.patch" - }, - "body": "## Description\nRelease 1.58.2 of the react-native-editor and Gutenberg-Mobile.\n\nFor more information about this release and testing instructions, please see the related Gutenberg-Mobile PR: https://github.com/wordpress-mobile/gutenberg-mobile/pull/3795\n\n## Checklist:\n- [x] My code is tested.\n- [x] My code follows the WordPress code style. \n- [x] My code follows the accessibility standards. \n- [x] I've tested my changes with keyboard and screen readers. \n- [x] My code has proper inline documentation. \n- [x] I've included developer documentation if appropriate. \n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). ", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54951", + "html_url": "https://github.com/WordPress/gutenberg/pull/54951", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54951.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54951.patch", + "merged_at": "2023-10-02T15:00:27Z" + }, + "body": "## What?\r\nThis is similar to #54949.\r\n\r\nPR refactors `PostStatus` components to use `useDispatch` and `useSelect` hooks instead of the HoCs. I've also removed unused styles from the component.\r\n\r\n## Why?\r\nA micro-optimization makes the rendered component tree smaller.\r\n\r\n## How?\r\n\r\n\r\n## Testing Instructions\r\n1. Open a post or page.\r\n2. Confirm the \"Post Status\" panel renders as before.\r\n3. You can close and open the panel.\r\n4. Remove the panel programmatically using the following snippet - `wp.data.dispatch( 'core/edit-post' ).removeEditorPanel( 'post-status' );`\r\n\r\n### Testing Instructions for Keyboard\r\nSame.\r\n\r\n## Screenshots or screencast \r\n\r\n**Before**\r\n![CleanShot 2023-09-30 at 14 07 49](https://github.com/WordPress/gutenberg/assets/240569/38c8754a-e691-458a-990b-79dca2569d79)\r\n\r\n**After**\r\n![CleanShot 2023-09-30 at 14 06 35](https://github.com/WordPress/gutenberg/assets/240569/b1a12c49-edb9-4266-a2d3-952a248a81bd)\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54951/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54951/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33868", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54949", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33868/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33868/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33868/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33868", - "id": 960259006, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAzMjk3NTg2", - "number": 33868, - "title": "Lazy render the inserter search results", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54949/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54949/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54949/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54949", + "id": 1920156169, + "node_id": "PR_kwDOBNHdeM5blWDw", + "number": 54949, + "title": "Editor: Use hooks instead of HoCs in 'PostSticky' components", "user": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 596962434, - "node_id": "MDU6TGFiZWw1OTY5NjI0MzQ=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Inserter", - "name": "[Feature] Inserter", - "color": "fbca04", + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", "default": false, - "description": "" + "description": "A suggestion for improvement." }, { - "id": 731693674, - "node_id": "MDU6TGFiZWw3MzE2OTM2NzQ=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Performance", - "name": "[Type] Performance", - "color": "f3f4fe", + "id": 593977130, + "node_id": "MDU6TGFiZWw1OTM5NzcxMzA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Priority]%20Low", + "name": "[Priority] Low", + "color": "f9d0c4", + "default": false, + "description": "Used to indicate that the issue at hand isn't a top priority to address and can be handled later" + }, + { + "id": 1013395453, + "node_id": "MDU6TGFiZWwxMDEzMzk1NDUz", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Editor", + "name": "[Package] Editor", + "color": "ed2572", "default": false, - "description": "" + "description": "/packages/editor" } ], "state": "closed", "locked": false, "assignee": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -4116,72 +4602,107 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 3, - "created_at": "2021-08-04T11:03:08Z", - "updated_at": "2021-08-05T08:07:57Z", - "closed_at": "2021-08-05T07:50:44Z", - "author_association": "CONTRIBUTOR", + "comments": 2, + "created_at": "2023-09-30T07:23:51Z", + "updated_at": "2023-10-01T17:37:45Z", + "closed_at": "2023-10-01T17:37:12Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33868", - "html_url": "https://github.com/WordPress/gutenberg/pull/33868", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33868.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33868.patch" - }, - "body": "This PR tries to improve the feeling of responsiveness in the inserter when searching block types and patterns. It does this by lazy-rendering the search results. It adds a `step` config into the `useAsyncList` hook to render the block types 9 by 9.", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54949", + "html_url": "https://github.com/WordPress/gutenberg/pull/54949", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54949.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54949.patch", + "merged_at": "2023-10-01T17:37:12Z" + }, + "body": "## What?\r\nThis is similar to #53389.\r\n\r\nPR refactors `PostStickyCheck` and `PostSticky` components to use `useDispatch` and `useSelect` hooks instead of the HoCs.\r\n\r\n## Why?\r\nA micro-optimization makes the rendered component tree smaller.\r\n\r\n## Testing Instructions\r\nConfirm \r\n\r\n### Testing Instructions for Keyboard\r\nThe same \"Stick to the top of the blog\" action works as before.\r\n\r\n* Is only displayed for posts.\r\n* Can mark a post as \"sticky\".\r\n\r\n## Screenshots or screencast \r\n\r\n**Before**\r\n![CleanShot 2023-09-25 at 18 47 36](https://github.com/WordPress/gutenberg/assets/240569/bcb24f86-b7cc-4902-a46b-522cd222abd9)\r\n\r\n**After**\r\n![CleanShot 2023-09-30 at 11 20 42](https://github.com/WordPress/gutenberg/assets/240569/ef3c56bc-f958-4118-b2a3-4a2c83b73b2c)\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54949/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54949/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33866", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54947", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33866/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33866/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33866/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33866", - "id": 960025040, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAzMDg1NzA3", - "number": 33866, - "title": "Tune appender margin.", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54947/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54947/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54947/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54947", + "id": 1919965859, + "node_id": "PR_kwDOBNHdeM5bkvb0", + "number": 54947, + "title": "Revert \"Font Library: avoid rendering font library ui outisde gutenberg plugin\"", "user": { - "login": "jasmussen", - "id": 1204802, - "node_id": "MDQ6VXNlcjEyMDQ4MDI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1204802?v=4", + "login": "matiasbenedetto", + "id": 1310626, + "node_id": "MDQ6VXNlcjEzMTA2MjY=", + "avatar_url": "https://avatars.githubusercontent.com/u/1310626?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/jasmussen", - "html_url": "https://github.com/jasmussen", - "followers_url": "https://api.github.com/users/jasmussen/followers", - "following_url": "https://api.github.com/users/jasmussen/following{/other_user}", - "gists_url": "https://api.github.com/users/jasmussen/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jasmussen/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jasmussen/subscriptions", - "organizations_url": "https://api.github.com/users/jasmussen/orgs", - "repos_url": "https://api.github.com/users/jasmussen/repos", - "events_url": "https://api.github.com/users/jasmussen/events{/privacy}", - "received_events_url": "https://api.github.com/users/jasmussen/received_events", + "url": "https://api.github.com/users/matiasbenedetto", + "html_url": "https://github.com/matiasbenedetto", + "followers_url": "https://api.github.com/users/matiasbenedetto/followers", + "following_url": "https://api.github.com/users/matiasbenedetto/following{/other_user}", + "gists_url": "https://api.github.com/users/matiasbenedetto/gists{/gist_id}", + "starred_url": "https://api.github.com/users/matiasbenedetto/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/matiasbenedetto/subscriptions", + "organizations_url": "https://api.github.com/users/matiasbenedetto/orgs", + "repos_url": "https://api.github.com/users/matiasbenedetto/repos", + "events_url": "https://api.github.com/users/matiasbenedetto/events{/privacy}", + "received_events_url": "https://api.github.com/users/matiasbenedetto/received_events", "type": "User", "site_admin": false }, - "labels": [], + "labels": [ + { + "id": 531680824, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjQ=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Task", + "name": "[Type] Task", + "color": "fef2c0", + "default": false, + "description": "Issues or PRs that have been broken down into an individual action to take" + }, + { + "id": 4366600186, + "node_id": "LA_kwDOBNHdeM8AAAABBEUH-g", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Typography", + "name": "[Feature] Typography", + "color": "fbca04", + "default": false, + "description": "Font and typography-related issues and PRs" + } + ], "state": "closed", "locked": false, "assignee": null, "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -4204,131 +4725,138 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 3, - "created_at": "2021-08-04T07:57:20Z", - "updated_at": "2021-08-04T15:16:44Z", - "closed_at": "2021-08-04T15:16:18Z", + "comments": 2, + "created_at": "2023-09-29T22:13:51Z", + "updated_at": "2023-10-03T12:33:17Z", + "closed_at": "2023-10-03T08:27:09Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33866", - "html_url": "https://github.com/WordPress/gutenberg/pull/33866", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33866.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33866.patch" - }, - "body": "## Description\r\n\r\nFollowup to #33739. There was a teeeeensy side effect of the uniform 8px margin around the appender. Specifically that it in some cases made the height of blocks larger. See here how the navigation block grows 4px taller on select:\r\n\r\n![before](https://user-images.githubusercontent.com/1204802/128143618-5cfb57b0-070f-4e2e-8224-c1ebab0faa64.gif)\r\n\r\nThat's because the 24px image plus 2x8px margins comes to 40px, but in this theme the menu is 36px tall by default.\r\n\r\nThis PR mitigates that by removing the top/bottom margin:\r\n\r\n![after](https://user-images.githubusercontent.com/1204802/128143703-b6a5d8bf-0020-4529-a0e5-32f96a9d5502.gif)\r\n\r\nI say _mitigates_ because if the menu is <24px tall the appender would still make it bigger. That's a separate and bigger issue to solve (see conversation in #31886). But it still seems like a good, small improvement. The appender is still vertically centered due to the flex rules.\r\n\r\n## How has this been tested?\r\n\r\nInsert social links, buttons, navigation blocks, and verify the appender on select still looks good.\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54947", + "html_url": "https://github.com/WordPress/gutenberg/pull/54947", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54947.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54947.patch", + "merged_at": "2023-10-03T08:27:09Z" + }, + "body": "## What?\r\nReverts the conditional export of the font library UI components to make it available only in Gutenberg.\r\n\r\n## Why?\r\nTo make the font library also available on core.\r\n\r\n\r\nReverts WordPress/gutenberg#54830", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54947/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54947/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33863", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54944", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33863/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33863/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33863/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33863", - "id": 959775425, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAyODY0MTgw", - "number": 33863, - "title": "Image Block: Fix issue with canInsertCover not being set to false for empty arrays", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54944/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54944/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54944/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54944", + "id": 1919879260, + "node_id": "PR_kwDOBNHdeM5bkcZK", + "number": 54944, + "title": "Migrate keyboard-navigable-blocks e2e tests from puppeteer to playwright", "user": { - "login": "glendaviesnz", - "id": 3629020, - "node_id": "MDQ6VXNlcjM2MjkwMjA=", - "avatar_url": "https://avatars.githubusercontent.com/u/3629020?v=4", + "login": "jeryj", + "id": 967608, + "node_id": "MDQ6VXNlcjk2NzYwOA==", + "avatar_url": "https://avatars.githubusercontent.com/u/967608?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/glendaviesnz", - "html_url": "https://github.com/glendaviesnz", - "followers_url": "https://api.github.com/users/glendaviesnz/followers", - "following_url": "https://api.github.com/users/glendaviesnz/following{/other_user}", - "gists_url": "https://api.github.com/users/glendaviesnz/gists{/gist_id}", - "starred_url": "https://api.github.com/users/glendaviesnz/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/glendaviesnz/subscriptions", - "organizations_url": "https://api.github.com/users/glendaviesnz/orgs", - "repos_url": "https://api.github.com/users/glendaviesnz/repos", - "events_url": "https://api.github.com/users/glendaviesnz/events{/privacy}", - "received_events_url": "https://api.github.com/users/glendaviesnz/received_events", + "url": "https://api.github.com/users/jeryj", + "html_url": "https://github.com/jeryj", + "followers_url": "https://api.github.com/users/jeryj/followers", + "following_url": "https://api.github.com/users/jeryj/following{/other_user}", + "gists_url": "https://api.github.com/users/jeryj/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jeryj/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jeryj/subscriptions", + "organizations_url": "https://api.github.com/users/jeryj/orgs", + "repos_url": "https://api.github.com/users/jeryj/repos", + "events_url": "https://api.github.com/users/jeryj/events{/privacy}", + "received_events_url": "https://api.github.com/users/jeryj/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", - "default": false, - "description": "An existing feature is broken." - }, - { - "id": 1101518360, - "node_id": "MDU6TGFiZWwxMTAxNTE4MzYw", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Image", - "name": "[Block] Image", - "color": "6767e5", + "id": 615503111, + "node_id": "MDU6TGFiZWw2MTU1MDMxMTE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Automated%20Testing", + "name": "[Type] Automated Testing", + "color": "111111", "default": false, - "description": "" + "description": "Testing infrastructure changes impacting the execution of end-to-end (E2E) and/or unit tests." } ], "state": "closed", "locked": false, "assignee": { - "login": "glendaviesnz", - "id": 3629020, - "node_id": "MDQ6VXNlcjM2MjkwMjA=", - "avatar_url": "https://avatars.githubusercontent.com/u/3629020?v=4", + "login": "jeryj", + "id": 967608, + "node_id": "MDQ6VXNlcjk2NzYwOA==", + "avatar_url": "https://avatars.githubusercontent.com/u/967608?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/glendaviesnz", - "html_url": "https://github.com/glendaviesnz", - "followers_url": "https://api.github.com/users/glendaviesnz/followers", - "following_url": "https://api.github.com/users/glendaviesnz/following{/other_user}", - "gists_url": "https://api.github.com/users/glendaviesnz/gists{/gist_id}", - "starred_url": "https://api.github.com/users/glendaviesnz/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/glendaviesnz/subscriptions", - "organizations_url": "https://api.github.com/users/glendaviesnz/orgs", - "repos_url": "https://api.github.com/users/glendaviesnz/repos", - "events_url": "https://api.github.com/users/glendaviesnz/events{/privacy}", - "received_events_url": "https://api.github.com/users/glendaviesnz/received_events", + "url": "https://api.github.com/users/jeryj", + "html_url": "https://github.com/jeryj", + "followers_url": "https://api.github.com/users/jeryj/followers", + "following_url": "https://api.github.com/users/jeryj/following{/other_user}", + "gists_url": "https://api.github.com/users/jeryj/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jeryj/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jeryj/subscriptions", + "organizations_url": "https://api.github.com/users/jeryj/orgs", + "repos_url": "https://api.github.com/users/jeryj/repos", + "events_url": "https://api.github.com/users/jeryj/events{/privacy}", + "received_events_url": "https://api.github.com/users/jeryj/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "glendaviesnz", - "id": 3629020, - "node_id": "MDQ6VXNlcjM2MjkwMjA=", - "avatar_url": "https://avatars.githubusercontent.com/u/3629020?v=4", + "login": "jeryj", + "id": 967608, + "node_id": "MDQ6VXNlcjk2NzYwOA==", + "avatar_url": "https://avatars.githubusercontent.com/u/967608?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/glendaviesnz", - "html_url": "https://github.com/glendaviesnz", - "followers_url": "https://api.github.com/users/glendaviesnz/followers", - "following_url": "https://api.github.com/users/glendaviesnz/following{/other_user}", - "gists_url": "https://api.github.com/users/glendaviesnz/gists{/gist_id}", - "starred_url": "https://api.github.com/users/glendaviesnz/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/glendaviesnz/subscriptions", - "organizations_url": "https://api.github.com/users/glendaviesnz/orgs", - "repos_url": "https://api.github.com/users/glendaviesnz/repos", - "events_url": "https://api.github.com/users/glendaviesnz/events{/privacy}", - "received_events_url": "https://api.github.com/users/glendaviesnz/received_events", + "url": "https://api.github.com/users/jeryj", + "html_url": "https://github.com/jeryj", + "followers_url": "https://api.github.com/users/jeryj/followers", + "following_url": "https://api.github.com/users/jeryj/following{/other_user}", + "gists_url": "https://api.github.com/users/jeryj/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jeryj/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jeryj/subscriptions", + "organizations_url": "https://api.github.com/users/jeryj/orgs", + "repos_url": "https://api.github.com/users/jeryj/repos", + "events_url": "https://api.github.com/users/jeryj/events{/privacy}", + "received_events_url": "https://api.github.com/users/jeryj/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -4351,68 +4879,93 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-08-04T01:50:04Z", - "updated_at": "2021-08-04T03:08:43Z", - "closed_at": "2021-08-04T03:08:11Z", + "comments": 4, + "created_at": "2023-09-29T20:40:08Z", + "updated_at": "2023-10-02T19:35:14Z", + "closed_at": "2023-10-02T19:34:42Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33863", - "html_url": "https://github.com/WordPress/gutenberg/pull/33863", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33863.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33863.patch" - }, - "body": "## Description\r\nThe canInsertCover value in the Image block is being set to 0 instead of false when `transformations` is an empty array, which causes its subsequent use in the conditional display of the coverblock conversion toolbar item to output a 0, instead of moving in to the right most criteria\r\n\r\nFixes: #33862\r\n\r\n## Testing\r\n\r\nCheck out PR in local dev env and add an Image block and make sure the convert to cover block option displays in toolbar still as expected\r\nCheck out this PR in conjunction with the Gallery refactor PR and enable the Gallery experiment\r\nAdd a gallery and make sure that the cover block option is not in the toolbar, and no 0 is displaying\r\n\r\n\r\n## Screenshots \r\n\r\nBefore:\r\n\"Screen\r\n\r\nAfter:\r\n\"Screen\r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54944", + "html_url": "https://github.com/WordPress/gutenberg/pull/54944", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54944.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54944.patch", + "merged_at": "2023-10-02T19:34:42Z" + }, + "body": "\r\n\r\n## What?\r\nMigrating keyboard-navigable-blocks e2e tests from puppeteer to playwright\r\n\r\n## Why?\r\n\r\nPart of the larger migration effort in https://github.com/WordPress/gutenberg/issues/38851, also because I'm going to be modifying this test as part of https://github.com/WordPress/gutenberg/pull/54513 and figured I may as well migrate it before making changes.\r\n\r\n## How?\r\n\r\nFollowed the [migration guide](https://github.com/WordPress/gutenberg/blob/8e7ce7328f67935dc38e09c48004645f93e13cdb/docs/contributors/code/e2e/migration.md).\r\n\r\n## Testing Instructions\r\n`npm run test:e2e:playwright -- editor/various/keyboard-navigable-blocks.spec.js`\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54944/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54944/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33860", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54941", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33860/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33860/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33860/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33860", - "id": 959604194, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAyNzAzNDE2", - "number": 33860, - "title": "Correct spelling and grammar in documentation", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54941/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54941/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54941/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54941", + "id": 1919582866, + "node_id": "PR_kwDOBNHdeM5bjdSG", + "number": 54941, + "title": "Label enforcer workflow: make accessibility a focus instead of a type", "user": { - "login": "jeremyfelt", - "id": 286171, - "node_id": "MDQ6VXNlcjI4NjE3MQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/286171?v=4", + "login": "priethor", + "id": 27339341, + "node_id": "MDQ6VXNlcjI3MzM5MzQx", + "avatar_url": "https://avatars.githubusercontent.com/u/27339341?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/jeremyfelt", - "html_url": "https://github.com/jeremyfelt", - "followers_url": "https://api.github.com/users/jeremyfelt/followers", - "following_url": "https://api.github.com/users/jeremyfelt/following{/other_user}", - "gists_url": "https://api.github.com/users/jeremyfelt/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jeremyfelt/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jeremyfelt/subscriptions", - "organizations_url": "https://api.github.com/users/jeremyfelt/orgs", - "repos_url": "https://api.github.com/users/jeremyfelt/repos", - "events_url": "https://api.github.com/users/jeremyfelt/events{/privacy}", - "received_events_url": "https://api.github.com/users/jeremyfelt/received_events", + "url": "https://api.github.com/users/priethor", + "html_url": "https://github.com/priethor", + "followers_url": "https://api.github.com/users/priethor/followers", + "following_url": "https://api.github.com/users/priethor/following{/other_user}", + "gists_url": "https://api.github.com/users/priethor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/priethor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/priethor/subscriptions", + "organizations_url": "https://api.github.com/users/priethor/orgs", + "repos_url": "https://api.github.com/users/priethor/repos", + "events_url": "https://api.github.com/users/priethor/events{/privacy}", + "received_events_url": "https://api.github.com/users/priethor/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 567484057, - "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Documentation", - "name": "[Type] Developer Documentation", - "color": "bfd4f2", + "id": 1032028862, + "node_id": "MDU6TGFiZWwxMDMyMDI4ODYy", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Project%20Management", + "name": "[Type] Project Management", + "color": "e55ead", + "default": false, + "description": "Meta-issues related to project management of Gutenberg" + }, + { + "id": 4662565393, + "node_id": "LA_kwDOBNHdeM8AAAABFekaEQ", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/GitHub%20Actions", + "name": "GitHub Actions", + "color": "000000", "default": false, - "description": "" + "description": "Pull requests that update GitHub Actions code" } ], "state": "closed", @@ -4420,13 +4973,13 @@ "assignee": null, "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -4449,131 +5002,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, "comments": 0, - "created_at": "2021-08-03T23:03:58Z", - "updated_at": "2021-08-04T05:03:25Z", - "closed_at": "2021-08-04T05:03:03Z", - "author_association": "MEMBER", + "created_at": "2023-09-29T16:29:56Z", + "updated_at": "2023-10-02T09:53:47Z", + "closed_at": "2023-10-02T09:53:17Z", + "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33860", - "html_url": "https://github.com/WordPress/gutenberg/pull/33860", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33860.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33860.patch" - }, - "body": "## Description\r\n\r\n* \"theme\" should be \"them\" in this instance\r\n* \"supports\" should be \"support\" because of the plural \"Pages and Custom Post Types\"\r\n\r\n## Types of changes\r\nDocumentation\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54941", + "html_url": "https://github.com/WordPress/gutenberg/pull/54941", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54941.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54941.patch", + "merged_at": "2023-10-02T09:53:17Z" + }, + "body": "\r\n\r\n## What?\r\nRemoves the limitation of having the Accessibility label along with types of labels like Bug or Enhancement.\r\n\r\nAt the same time, if this change is approved, a PR will _need_ to have a type-of-task label associated with it. The reasoning behind this is multiple, as not having clear rules for labeling makes it more complicated to contribute and to report and do project management on the project.\r\n\r\n## Why?\r\nAs mentioned by @afercia [here](https://github.com/WordPress/gutenberg/discussions/52727#discussioncomment-7102557).\r\n\r\n> Regarding the accessibility label, quoting from https://github.com/WordPress/gutenberg/pull/54724#issuecomment-1733830085\r\n>\r\n>I think I already pointed out in some other discussion or issue that Accessibility is typically something that spans across different areas of a project. As such, we should be able to add the Accessibility label everywhere. WhethEr it's a Type or other, I don't have strong preferences.\r\n>\r\n>Accessibility in Core Trac used to be a component and was changed to Focus right for that reason. The re=organizazion of the Trac focuses dates early 2014. For more details and the reasoning about Accessibility as focus, see https://make.wordpress.org/core/2014/01/24/trac-focuses/\r\n\r\n## How?\r\nBy removing the label from the list of type labels.\r\n\r\nIf this PR is approved, I will follow up with renaming the label to remove the `[Type]` prefix.\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54941/reactions", + "total_count": 1, + "+1": 1, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54941/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33848", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54938", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33848/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33848/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33848/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33848", - "id": 959120665, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAyMjg0MzM0", - "number": 33848, - "title": "Add search performance measure and make other measures more stable", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54938/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54938/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54938/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54938", + "id": 1919401237, + "node_id": "PR_kwDOBNHdeM5bi2OF", + "number": 54938, + "title": "Image Block: Fix browser console error when clicking \"Expand on Click\"", "user": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "t-hamano", + "id": 54422211, + "node_id": "MDQ6VXNlcjU0NDIyMjEx", + "avatar_url": "https://avatars.githubusercontent.com/u/54422211?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/t-hamano", + "html_url": "https://github.com/t-hamano", + "followers_url": "https://api.github.com/users/t-hamano/followers", + "following_url": "https://api.github.com/users/t-hamano/following{/other_user}", + "gists_url": "https://api.github.com/users/t-hamano/gists{/gist_id}", + "starred_url": "https://api.github.com/users/t-hamano/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/t-hamano/subscriptions", + "organizations_url": "https://api.github.com/users/t-hamano/orgs", + "repos_url": "https://api.github.com/users/t-hamano/repos", + "events_url": "https://api.github.com/users/t-hamano/events{/privacy}", + "received_events_url": "https://api.github.com/users/t-hamano/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 615503111, - "node_id": "MDU6TGFiZWw2MTU1MDMxMTE=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Automated%20Testing", - "name": "Automated Testing", - "color": "111111", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "Testing infrastructure changes impacting the execution of end-to-end (E2E) and/or unit tests." + "description": "Issues or PRs that relate to code quality" }, { - "id": 731693674, - "node_id": "MDU6TGFiZWw3MzE2OTM2NzQ=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Performance", - "name": "[Type] Performance", - "color": "f3f4fe", + "id": 1101518360, + "node_id": "MDU6TGFiZWwxMTAxNTE4MzYw", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Image", + "name": "[Block] Image", + "color": "6767e5", "default": false, - "description": "" + "description": "Affects the Image Block" } ], "state": "closed", "locked": false, "assignee": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "t-hamano", + "id": 54422211, + "node_id": "MDQ6VXNlcjU0NDIyMjEx", + "avatar_url": "https://avatars.githubusercontent.com/u/54422211?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/t-hamano", + "html_url": "https://github.com/t-hamano", + "followers_url": "https://api.github.com/users/t-hamano/followers", + "following_url": "https://api.github.com/users/t-hamano/following{/other_user}", + "gists_url": "https://api.github.com/users/t-hamano/gists{/gist_id}", + "starred_url": "https://api.github.com/users/t-hamano/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/t-hamano/subscriptions", + "organizations_url": "https://api.github.com/users/t-hamano/orgs", + "repos_url": "https://api.github.com/users/t-hamano/repos", + "events_url": "https://api.github.com/users/t-hamano/events{/privacy}", + "received_events_url": "https://api.github.com/users/t-hamano/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "t-hamano", + "id": 54422211, + "node_id": "MDQ6VXNlcjU0NDIyMjEx", + "avatar_url": "https://avatars.githubusercontent.com/u/54422211?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/t-hamano", + "html_url": "https://github.com/t-hamano", + "followers_url": "https://api.github.com/users/t-hamano/followers", + "following_url": "https://api.github.com/users/t-hamano/following{/other_user}", + "gists_url": "https://api.github.com/users/t-hamano/gists{/gist_id}", + "starred_url": "https://api.github.com/users/t-hamano/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/t-hamano/subscriptions", + "organizations_url": "https://api.github.com/users/t-hamano/orgs", + "repos_url": "https://api.github.com/users/t-hamano/repos", + "events_url": "https://api.github.com/users/t-hamano/events{/privacy}", + "received_events_url": "https://api.github.com/users/t-hamano/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -4596,122 +5165,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-08-03T13:30:59Z", - "updated_at": "2021-08-06T11:54:26Z", - "closed_at": "2021-08-04T09:40:11Z", + "comments": 3, + "created_at": "2023-09-29T14:42:50Z", + "updated_at": "2023-10-05T11:16:42Z", + "closed_at": "2023-09-30T14:48:25Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33848", - "html_url": "https://github.com/WordPress/gutenberg/pull/33848", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33848.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33848.patch" - }, - "body": "I noticed lags when searching the block inserter. I'd like to try some iterations to improve that (maybe using the same technique used for the regular inserter block list: lazy rendering).\r\n\r\nBefore jumping into the performance work, I'm adding a new performance measure here to track the time it takes for the browser to respond after an inserter search.\r\n\r\nI'm also using this as an opportunity to make the other measures a bit more stable.", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54938", + "html_url": "https://github.com/WordPress/gutenberg/pull/54938", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54938.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54938.patch", + "merged_at": "2023-09-30T14:48:25Z" + }, + "body": "## What?\r\nThis PR fixes a browser console error that occurs when you click \"Expand on lick\" for the first time after inserting an image block.\r\n\r\n\r\nhttps://github.com/WordPress/gutenberg/assets/54422211/cafbf953-4456-4907-9bd5-faedf095652d\r\n\r\n\r\n\r\n## Why?\r\n\r\nThis is because the lightboxChecked variable returns undefined the first time the image block is inserted.\r\n\r\n## How?\r\n\r\nI made it always return a boolean value.\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54938/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54938/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33847", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54932", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33847/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33847/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33847/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33847", - "id": 959087985, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAyMjU2MDk4", - "number": 33847, - "title": "[RNMobile] Disables supportsLayout by default on mobile", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54932/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54932/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54932/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54932", + "id": 1919094222, + "node_id": "PR_kwDOBNHdeM5bhzAq", + "number": 54932, + "title": "Document the current state of the Real-Time collaboration experiment", "user": { - "login": "antonis", - "id": 304044, - "node_id": "MDQ6VXNlcjMwNDA0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/304044?v=4", + "login": "oandregal", + "id": 583546, + "node_id": "MDQ6VXNlcjU4MzU0Ng==", + "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/antonis", - "html_url": "https://github.com/antonis", - "followers_url": "https://api.github.com/users/antonis/followers", - "following_url": "https://api.github.com/users/antonis/following{/other_user}", - "gists_url": "https://api.github.com/users/antonis/gists{/gist_id}", - "starred_url": "https://api.github.com/users/antonis/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/antonis/subscriptions", - "organizations_url": "https://api.github.com/users/antonis/orgs", - "repos_url": "https://api.github.com/users/antonis/repos", - "events_url": "https://api.github.com/users/antonis/events{/privacy}", - "received_events_url": "https://api.github.com/users/antonis/received_events", + "url": "https://api.github.com/users/oandregal", + "html_url": "https://github.com/oandregal", + "followers_url": "https://api.github.com/users/oandregal/followers", + "following_url": "https://api.github.com/users/oandregal/following{/other_user}", + "gists_url": "https://api.github.com/users/oandregal/gists{/gist_id}", + "starred_url": "https://api.github.com/users/oandregal/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/oandregal/subscriptions", + "organizations_url": "https://api.github.com/users/oandregal/orgs", + "repos_url": "https://api.github.com/users/oandregal/repos", + "events_url": "https://api.github.com/users/oandregal/events{/privacy}", + "received_events_url": "https://api.github.com/users/oandregal/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", + "id": 567484057, + "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Developer%20Documentation", + "name": "[Type] Developer Documentation", + "color": "bfd4f2", + "default": false, + "description": "Documentation for developers" + }, + { + "id": 1663133831, + "node_id": "MDU6TGFiZWwxNjYzMTMzODMx", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Collaborative%20Editing", + "name": "[Feature] Collaborative Editing", + "color": "fbca04", "default": false, - "description": "An existing feature is broken." + "description": "Phase 3 of the Gutenberg roadmap around collaborative workflows" } ], "state": "closed", "locked": false, "assignee": { - "login": "antonis", - "id": 304044, - "node_id": "MDQ6VXNlcjMwNDA0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/304044?v=4", + "login": "oandregal", + "id": 583546, + "node_id": "MDQ6VXNlcjU4MzU0Ng==", + "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/antonis", - "html_url": "https://github.com/antonis", - "followers_url": "https://api.github.com/users/antonis/followers", - "following_url": "https://api.github.com/users/antonis/following{/other_user}", - "gists_url": "https://api.github.com/users/antonis/gists{/gist_id}", - "starred_url": "https://api.github.com/users/antonis/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/antonis/subscriptions", - "organizations_url": "https://api.github.com/users/antonis/orgs", - "repos_url": "https://api.github.com/users/antonis/repos", - "events_url": "https://api.github.com/users/antonis/events{/privacy}", - "received_events_url": "https://api.github.com/users/antonis/received_events", + "url": "https://api.github.com/users/oandregal", + "html_url": "https://github.com/oandregal", + "followers_url": "https://api.github.com/users/oandregal/followers", + "following_url": "https://api.github.com/users/oandregal/following{/other_user}", + "gists_url": "https://api.github.com/users/oandregal/gists{/gist_id}", + "starred_url": "https://api.github.com/users/oandregal/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/oandregal/subscriptions", + "organizations_url": "https://api.github.com/users/oandregal/orgs", + "repos_url": "https://api.github.com/users/oandregal/repos", + "events_url": "https://api.github.com/users/oandregal/events{/privacy}", + "received_events_url": "https://api.github.com/users/oandregal/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "antonis", - "id": 304044, - "node_id": "MDQ6VXNlcjMwNDA0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/304044?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/antonis", - "html_url": "https://github.com/antonis", - "followers_url": "https://api.github.com/users/antonis/followers", - "following_url": "https://api.github.com/users/antonis/following{/other_user}", - "gists_url": "https://api.github.com/users/antonis/gists{/gist_id}", - "starred_url": "https://api.github.com/users/antonis/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/antonis/subscriptions", - "organizations_url": "https://api.github.com/users/antonis/orgs", - "repos_url": "https://api.github.com/users/antonis/repos", - "events_url": "https://api.github.com/users/antonis/events{/privacy}", - "received_events_url": "https://api.github.com/users/antonis/received_events", + "login": "oandregal", + "id": 583546, + "node_id": "MDQ6VXNlcjU4MzU0Ng==", + "avatar_url": "https://avatars.githubusercontent.com/u/583546?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/oandregal", + "html_url": "https://github.com/oandregal", + "followers_url": "https://api.github.com/users/oandregal/followers", + "following_url": "https://api.github.com/users/oandregal/following{/other_user}", + "gists_url": "https://api.github.com/users/oandregal/gists{/gist_id}", + "starred_url": "https://api.github.com/users/oandregal/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/oandregal/subscriptions", + "organizations_url": "https://api.github.com/users/oandregal/orgs", + "repos_url": "https://api.github.com/users/oandregal/repos", + "events_url": "https://api.github.com/users/oandregal/events{/privacy}", + "received_events_url": "https://api.github.com/users/oandregal/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -4734,56 +5328,72 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 3, - "created_at": "2021-08-03T12:55:37Z", - "updated_at": "2021-08-04T12:13:20Z", - "closed_at": "2021-08-04T06:27:50Z", + "comments": 2, + "created_at": "2023-09-29T11:23:46Z", + "updated_at": "2023-10-07T09:02:11Z", + "closed_at": "2023-10-03T11:12:15Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33847", - "html_url": "https://github.com/WordPress/gutenberg/pull/33847", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33847.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33847.patch" - }, - "body": "## Description\r\nThis PR handles an incoming breakage after the merge of https://github.com/WordPress/gutenberg/pull/33359 making the `Wide width` and `Full width` alignment options unavailable. To achieve this the `supportsLayout` setting introduced in https://github.com/WordPress/gutenberg/pull/29335 is set by default to `false` on mobile. \r\n\r\n## How has this been tested?\r\n1. Run the app using metro\r\n2. Create a new Post/Page\r\n3. Add an image block and choose an image\r\n4. Tap on the alignment options at the bottom toolbar\r\n5. **Verify** that the `Wide width` and `Full width` options are available\r\n\r\n## Screenshots\r\n\r\n|Before|After|\r\n|---|---|\r\n|![IMG_20BE77E7CBA5-1](https://user-images.githubusercontent.com/304044/128035883-b043290f-1bb4-4e28-8550-90d620333695.jpeg)|![IMG_675ABFF98181-1](https://user-images.githubusercontent.com/304044/128035895-d2706b23-f164-40f5-9b30-7006ae270917.jpeg)|\r\n\r\n## Types of changes\r\nBug fix\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54932", + "html_url": "https://github.com/WordPress/gutenberg/pull/54932", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54932.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54932.patch", + "merged_at": "2023-10-03T11:12:15Z" + }, + "body": "Related https://github.com/WordPress/gutenberg/issues/52593\r\n\r\nAdd some notes to document how the Real-Time collaboration experiment works at the moment. This is a minimal and ongoing effort, to have some low-level notes to help navigate the code, complementing what has already been shared in make/core and the tracking issue.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54932/reactions", + "total_count": 1, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 1, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54932/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33845", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54931", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33845/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33845/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33845/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33845", - "id": 959073850, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAyMjQzOTAy", - "number": 33845, - "title": "[RNMobile] Fix BottomSheet.SubSheet/TextInput Conflict", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54931/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54931/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54931/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54931", + "id": 1918988447, + "node_id": "PR_kwDOBNHdeM5bhb3_", + "number": 54931, + "title": "Reverting addition of `aria-selected` style hook in `Button`", "user": { - "login": "SiobhyB", - "id": 2998162, - "node_id": "MDQ6VXNlcjI5OTgxNjI=", - "avatar_url": "https://avatars.githubusercontent.com/u/2998162?v=4", + "login": "andrewhayward", + "id": 159848, + "node_id": "MDQ6VXNlcjE1OTg0OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/159848?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/SiobhyB", - "html_url": "https://github.com/SiobhyB", - "followers_url": "https://api.github.com/users/SiobhyB/followers", - "following_url": "https://api.github.com/users/SiobhyB/following{/other_user}", - "gists_url": "https://api.github.com/users/SiobhyB/gists{/gist_id}", - "starred_url": "https://api.github.com/users/SiobhyB/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/SiobhyB/subscriptions", - "organizations_url": "https://api.github.com/users/SiobhyB/orgs", - "repos_url": "https://api.github.com/users/SiobhyB/repos", - "events_url": "https://api.github.com/users/SiobhyB/events{/privacy}", - "received_events_url": "https://api.github.com/users/SiobhyB/received_events", + "url": "https://api.github.com/users/andrewhayward", + "html_url": "https://github.com/andrewhayward", + "followers_url": "https://api.github.com/users/andrewhayward/followers", + "following_url": "https://api.github.com/users/andrewhayward/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewhayward/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewhayward/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewhayward/subscriptions", + "organizations_url": "https://api.github.com/users/andrewhayward/orgs", + "repos_url": "https://api.github.com/users/andrewhayward/repos", + "events_url": "https://api.github.com/users/andrewhayward/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewhayward/received_events", "type": "User", "site_admin": false }, @@ -4795,79 +5405,70 @@ "name": "[Type] Bug", "color": "d93f0b", "default": false, - "description": "An existing feature is broken." - }, - { - "id": 982506020, - "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", - "name": "Mobile App - i.e. Android or iOS", - "color": "a3ef7a", - "default": false, - "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + "description": "An existing feature does not function as intended" }, { - "id": 1101518360, - "node_id": "MDU6TGFiZWwxMTAxNTE4MzYw", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Image", - "name": "[Block] Image", - "color": "6767e5", + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", "default": false, - "description": "" + "description": "/packages/components" } ], "state": "closed", "locked": false, "assignee": { - "login": "SiobhyB", - "id": 2998162, - "node_id": "MDQ6VXNlcjI5OTgxNjI=", - "avatar_url": "https://avatars.githubusercontent.com/u/2998162?v=4", + "login": "andrewhayward", + "id": 159848, + "node_id": "MDQ6VXNlcjE1OTg0OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/159848?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/SiobhyB", - "html_url": "https://github.com/SiobhyB", - "followers_url": "https://api.github.com/users/SiobhyB/followers", - "following_url": "https://api.github.com/users/SiobhyB/following{/other_user}", - "gists_url": "https://api.github.com/users/SiobhyB/gists{/gist_id}", - "starred_url": "https://api.github.com/users/SiobhyB/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/SiobhyB/subscriptions", - "organizations_url": "https://api.github.com/users/SiobhyB/orgs", - "repos_url": "https://api.github.com/users/SiobhyB/repos", - "events_url": "https://api.github.com/users/SiobhyB/events{/privacy}", - "received_events_url": "https://api.github.com/users/SiobhyB/received_events", + "url": "https://api.github.com/users/andrewhayward", + "html_url": "https://github.com/andrewhayward", + "followers_url": "https://api.github.com/users/andrewhayward/followers", + "following_url": "https://api.github.com/users/andrewhayward/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewhayward/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewhayward/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewhayward/subscriptions", + "organizations_url": "https://api.github.com/users/andrewhayward/orgs", + "repos_url": "https://api.github.com/users/andrewhayward/repos", + "events_url": "https://api.github.com/users/andrewhayward/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewhayward/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "SiobhyB", - "id": 2998162, - "node_id": "MDQ6VXNlcjI5OTgxNjI=", - "avatar_url": "https://avatars.githubusercontent.com/u/2998162?v=4", + "login": "andrewhayward", + "id": 159848, + "node_id": "MDQ6VXNlcjE1OTg0OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/159848?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/SiobhyB", - "html_url": "https://github.com/SiobhyB", - "followers_url": "https://api.github.com/users/SiobhyB/followers", - "following_url": "https://api.github.com/users/SiobhyB/following{/other_user}", - "gists_url": "https://api.github.com/users/SiobhyB/gists{/gist_id}", - "starred_url": "https://api.github.com/users/SiobhyB/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/SiobhyB/subscriptions", - "organizations_url": "https://api.github.com/users/SiobhyB/orgs", - "repos_url": "https://api.github.com/users/SiobhyB/repos", - "events_url": "https://api.github.com/users/SiobhyB/events{/privacy}", - "received_events_url": "https://api.github.com/users/SiobhyB/received_events", + "url": "https://api.github.com/users/andrewhayward", + "html_url": "https://github.com/andrewhayward", + "followers_url": "https://api.github.com/users/andrewhayward/followers", + "following_url": "https://api.github.com/users/andrewhayward/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewhayward/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewhayward/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewhayward/subscriptions", + "organizations_url": "https://api.github.com/users/andrewhayward/orgs", + "repos_url": "https://api.github.com/users/andrewhayward/repos", + "events_url": "https://api.github.com/users/andrewhayward/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewhayward/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -4890,131 +5491,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 3, - "created_at": "2021-08-03T12:37:52Z", - "updated_at": "2021-08-03T18:29:32Z", - "closed_at": "2021-08-03T18:29:00Z", + "comments": 2, + "created_at": "2023-09-29T10:08:57Z", + "updated_at": "2023-09-29T11:32:40Z", + "closed_at": "2023-09-29T11:32:15Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33845", - "html_url": "https://github.com/WordPress/gutenberg/pull/33845", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33845.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33845.patch" - }, - "body": "Fixes: https://github.com/WordPress/gutenberg/issues/33828\r\n\r\n`gutenberg-mobile:` https://github.com/wordpress-mobile/gutenberg-mobile/pull/3784\r\n\r\n## Description\r\n\r\nAs outlined in https://github.com/WordPress/gutenberg/issues/33828, the text editor for adding alt text to an image (accessed from the image block's settings) isn't currently working as expected. At the time of writing, the keyboard is immediately dismissed with each keystroke, making it extremely difficult, bordering on impossible, to add alt text to an image.\r\n\r\n[BottomSheetTextControl](https://github.com/WordPress/gutenberg/tree/trunk/packages/components/src/mobile/bottom-sheet-text-control) is the component behind the image block's alt text settings and is built on [the BottomSheet.SubSheet component](https://github.com/WordPress/gutenberg/blob/trunk/packages/components/src/mobile/bottom-sheet/sub-sheet/index.native.js). There were changes to `BottomSheet.SubSheet` in https://github.com/WordPress/gutenberg/pull/33240/commits/d650b4f1df6e1699c7c45819a8afd4a2ec39a08e that led to a conflict with the `TextInput` component in `BottomSheetTextControl`, which brought this issue to the surface.\r\n\r\nWith this PR, I have refactored the changes in https://github.com/WordPress/gutenberg/pull/33240/commits/d650b4f1df6e1699c7c45819a8afd4a2ec39a08e in a way that enables the alt text entry to work as expected. \r\n\r\n## How has this been tested?\r\n\r\n### Test Case 1: Alt Text Settings\r\n\r\n
\r\nThe following steps outline an approach to test that the original bug is fixed with this PR.\r\n\r\n1. Navigate to a new post then add an image block or tap on an existing one.\r\n2. Access the image block's settings by tapping the cog/gear icon. \r\n3. Tap **Alt Text** and confirm that a new sub sheet opens with a text editor.\r\n4. Enter a few lines into the text editor and confirm that it no longer closes with each keystroke.\r\n
\r\n\r\n### Test Case 2: Help Panel (Production Only)\r\n\r\n
\r\nAs part of our testing, we should also verify that the new changes don't bring any unexpected side effects to other places where the component's used, such as the Help panel.\r\n\r\n* Run the demo app.\r\n* Open the menu on iOS by clicking the overflow menu icon in the ActionBar or by shaking the device on Android.\r\n* Tap **Help**. The main help topics bottom sheet should be displayed.\r\n* Tap one of the help topics and verify that the new sheet displays as expected.\r\n\r\n
\r\n\r\n### Test Case 3: Full Screen (Code Changes Required)\r\n\r\n
\r\nLastly, we'll need to double-check that the \"isFullScreen\" parameter works as expected following the refactor. This will require code changes.\r\n\r\n* Find a component in the app where [the BottomSheet.SubSheet component](https://github.com/WordPress/gutenberg/blob/trunk/packages/components/src/mobile/bottom-sheet/sub-sheet/index.native.js) is being utilised, such as [the BottomSheetTextControl component](https://github.com/WordPress/gutenberg/blob/trunk/packages/components/src/mobile/bottom-sheet-text-control/index.native.js).\r\n* Add `isFullScreen={ true }` to the list of parameters being accepted by `BottomSheet.SubSheet`.\r\n* Navigate to the area in the app where the edited component is being used and verify that it's rendered as a sheet that takes up the full screen.\r\n
\r\n\r\n## Screenshots \r\n\r\nhttps://user-images.githubusercontent.com/2998162/128023488-cb4a35b3-34eb-4478-acf9-9e8835fc1ab3.mov\r\n\r\n## Types of changes\r\n\r\nBug fix (non-breaking change which fixes an issue), with the following high-level rundown of the main code changes:\r\n\r\n* The `setIsFullScreen( isFullScreen )` method was moved to [a standalone `useEffect` hook](https://github.com/WordPress/gutenberg/pull/33845/files#diff-d16d37d09ff59dce57c087e978ac5536503cb1642ec2b0ecdba9536f5c695b95R26), which fires only when [the values of either `showSheet` or `isFullScreen` change](https://github.com/WordPress/gutenberg/pull/33845/files#diff-d16d37d09ff59dce57c087e978ac5536503cb1642ec2b0ecdba9536f5c695b95R30).\r\n* Moving the method to the standalone hook meant [the BottomSheetScreen component could be removed](https://github.com/WordPress/gutenberg/pull/33845/files#diff-d16d37d09ff59dce57c087e978ac5536503cb1642ec2b0ecdba9536f5c695b95L20). It appeared to be the addition of this component that was causing a conflict with the `TextInput` component.\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54931", + "html_url": "https://github.com/WordPress/gutenberg/pull/54931", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54931.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54931.patch", + "merged_at": "2023-09-29T11:32:15Z" + }, + "body": "## What?\r\nThis PR removes the addition of `aria-selected` as a styling hook from `Button`.\r\n\r\n## Why?\r\n[As pointed out](https://github.com/WordPress/gutenberg/pull/54903#issuecomment-1740537243) by @madhusudhand, #54903 inadvertently changed how tabs are rendered.\r\n\r\n## How?\r\nThe `[aria-selected=\"true\"]` selector has been removed from `Button`.\r\n\r\n## Testing Instructions\r\n\r\n1. Under global styles -> typography, click on `Aa` or any font to invoke the font library modal.\r\n2. Observe that the active tab no longer has a black background.\r\n\r\n## Screenshots\r\n\r\n### Before\r\n\r\n![Screenshot of tabs, the selected one having an unexpected dark background.](https://github.com/WordPress/gutenberg/assets/159848/780d5362-f023-45d8-8815-28d16f2a95e3)\r\n\r\n### After\r\n\r\n![Screenshot of tabs, the selected one having no background.](https://github.com/WordPress/gutenberg/assets/159848/237ec917-aa3b-45f9-a18c-da03a0b952f5)\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54931/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54931/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33844", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54928", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33844/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33844/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33844/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33844", - "id": 959026920, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAyMjAzOTQ5", - "number": 33844, - "title": "Global Styles: Fix Global Styles transient key clash", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54928/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54928/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54928/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54928", + "id": 1918907902, + "node_id": "PR_kwDOBNHdeM5bhKOu", + "number": 54928, + "title": "[RNMobile] Set native extension to media upload constant file", "user": { - "login": "scruffian", - "id": 275961, - "node_id": "MDQ6VXNlcjI3NTk2MQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/275961?v=4", + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/scruffian", - "html_url": "https://github.com/scruffian", - "followers_url": "https://api.github.com/users/scruffian/followers", - "following_url": "https://api.github.com/users/scruffian/following{/other_user}", - "gists_url": "https://api.github.com/users/scruffian/gists{/gist_id}", - "starred_url": "https://api.github.com/users/scruffian/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/scruffian/subscriptions", - "organizations_url": "https://api.github.com/users/scruffian/orgs", - "repos_url": "https://api.github.com/users/scruffian/repos", - "events_url": "https://api.github.com/users/scruffian/events{/privacy}", - "received_events_url": "https://api.github.com/users/scruffian/received_events", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", "default": false, - "description": "An existing feature is broken." + "description": "A suggestion for improvement." }, { - "id": 1800807983, - "node_id": "MDU6TGFiZWwxODAwODA3OTgz", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Global%20Styles", - "name": "Global Styles", - "color": "2100b7", + "id": 982506020, + "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", + "name": "Mobile App - i.e. Android or iOS", + "color": "a3ef7a", "default": false, - "description": "" + "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" } ], "state": "closed", "locked": false, "assignee": { - "login": "scruffian", - "id": 275961, - "node_id": "MDQ6VXNlcjI3NTk2MQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/275961?v=4", + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/scruffian", - "html_url": "https://github.com/scruffian", - "followers_url": "https://api.github.com/users/scruffian/followers", - "following_url": "https://api.github.com/users/scruffian/following{/other_user}", - "gists_url": "https://api.github.com/users/scruffian/gists{/gist_id}", - "starred_url": "https://api.github.com/users/scruffian/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/scruffian/subscriptions", - "organizations_url": "https://api.github.com/users/scruffian/orgs", - "repos_url": "https://api.github.com/users/scruffian/repos", - "events_url": "https://api.github.com/users/scruffian/events{/privacy}", - "received_events_url": "https://api.github.com/users/scruffian/received_events", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "scruffian", - "id": 275961, - "node_id": "MDQ6VXNlcjI3NTk2MQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/275961?v=4", + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/scruffian", - "html_url": "https://github.com/scruffian", - "followers_url": "https://api.github.com/users/scruffian/followers", - "following_url": "https://api.github.com/users/scruffian/following{/other_user}", - "gists_url": "https://api.github.com/users/scruffian/gists{/gist_id}", - "starred_url": "https://api.github.com/users/scruffian/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/scruffian/subscriptions", - "organizations_url": "https://api.github.com/users/scruffian/orgs", - "repos_url": "https://api.github.com/users/scruffian/repos", - "events_url": "https://api.github.com/users/scruffian/events{/privacy}", - "received_events_url": "https://api.github.com/users/scruffian/received_events", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -5037,56 +5654,72 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, "comments": 3, - "created_at": "2021-08-03T11:39:19Z", - "updated_at": "2021-08-06T09:42:45Z", - "closed_at": "2021-08-03T17:01:45Z", + "created_at": "2023-09-29T09:19:06Z", + "updated_at": "2023-09-29T16:12:48Z", + "closed_at": "2023-09-29T16:12:25Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33844", - "html_url": "https://github.com/WordPress/gutenberg/pull/33844", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33844.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33844.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\nNow that we have a version of Global Styles in core, when you run the Gutenberg plugin activated, you're running a different version of Global Styles. However both versions currently use the same cache key. This means that once the core version of Global Styles has loaded and been cached, the Gutenberg version won't be generated since it will fall back to the same key.\r\n\r\nThis proposes that we introduce a new cache key for Global Styles in Gutenberg (`gutenberg_global_styles`) so that if you're running the Gutenberg plugin you will get the Gutenberg version of Global Styles.\r\n\r\nFixes https://github.com/WordPress/gutenberg/issues/33681\r\n\r\n## How has this been tested?\r\nTested changing fonts in Blockbase.\r\n\r\n## Screenshots \r\n\r\n## Types of changes\r\nBug fix (non-breaking change which fixes an issue)\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54928", + "html_url": "https://github.com/WordPress/gutenberg/pull/54928", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54928.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54928.patch", + "merged_at": "2023-09-29T16:12:25Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\n~~Move the test-only media upload constants to the test file where they are being used.~~\r\n\r\nFollowing this suggestion, the media upload constants file now has the native extension and the option constants are being used in the `MediaUpload` component.\r\n\r\n## Why?\r\n\r\n\r\nThis addresses an issue when bundling Gutenberg Mobile related to missing i18n localizations ([reference](https://github.com/wordpress-mobile/gutenberg-mobile/pull/6243#discussion_r1339784529)).\r\n\r\n## How?\r\n\r\n\r\n~~The constants related to media options being used in `packages/block-editor/src/components/media-upload/test/index.native.js` have been moved from the constants file (`packages/block-editor/src/components/media-upload/constants.js`) to the test.~~\r\n\r\n* The extension of `packages/block-editor/src/components/media-upload/constants.js` file has changed to `native.js`.\r\n* `MediaUpload` uses the media options constants to define the media sources displayed in the \"Choose media\" picker.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n### CI jobs\r\n* Check all CI jobs pass.\r\n\r\n### Media options\r\n1. Open/create a post.\r\n2. Add an Image block.\r\n3. Observe that the block presents the following options:\r\n - Choose from device\r\n - Take a Photo\r\n - WordPress Media Library\r\n - Insert from URL\r\n - Free Photo Library\r\n - Free GIF Library\r\n - Other Apps (only on iOS)\r\n4. Add a Video block.\r\n5. Observe that the block presents the following options:\r\n - Choose from device\r\n - Take a Video\r\n - WordPress Media Library\r\n - Insert from URL\r\n - Other Apps (only on iOS)\r\n\r\n### Testing Instructions for Keyboard\r\n\r\nN/A\r\n\r\n## Screenshots or screencast \r\nN/A", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54928/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54928/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33843", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54927", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33843/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33843/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33843/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33843", - "id": 959014817, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAyMTkzNzk2", - "number": 33843, - "title": "Navigation Editor: Avoid React warning when creating a new menu", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54927/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54927/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54927/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54927", + "id": 1918891324, + "node_id": "PR_kwDOBNHdeM5bhGn_", + "number": 54927, + "title": "[RNMobile] HTML mode: Add dark mode color to post title", "user": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", "type": "User", "site_admin": false }, @@ -5098,79 +5731,70 @@ "name": "[Type] Bug", "color": "d93f0b", "default": false, - "description": "An existing feature is broken." - }, - { - "id": 2074073931, - "node_id": "MDU6TGFiZWwyMDc0MDczOTMx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Navigation%20Screen", - "name": "[Feature] Navigation Screen", - "color": "fbca04", - "default": false, - "description": "A new block-based screen intended to replace nav-menus.php." + "description": "An existing feature does not function as intended" }, { - "id": 2536082965, - "node_id": "MDU6TGFiZWwyNTM2MDgyOTY1", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Edit%20Navigation", - "name": "[Package] Edit Navigation", - "color": "ed2572", + "id": 982506020, + "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", + "name": "Mobile App - i.e. Android or iOS", + "color": "a3ef7a", "default": false, - "description": "/packages/edit-navigation" + "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" } ], "state": "closed", "locked": false, "assignee": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -5193,122 +5817,98 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 4, - "created_at": "2021-08-03T11:24:09Z", - "updated_at": "2021-08-04T08:47:11Z", - "closed_at": "2021-08-04T04:54:22Z", - "author_association": "MEMBER", + "comments": 1, + "created_at": "2023-09-29T09:07:42Z", + "updated_at": "2023-09-29T10:52:06Z", + "closed_at": "2023-09-29T10:51:38Z", + "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33843", - "html_url": "https://github.com/WordPress/gutenberg/pull/33843", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33843.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33843.patch" - }, - "body": "## Description\r\nCurrently, when creating a menu, there's React warning about state updates on unmounted components.\r\n\r\nPR updates `createMenu` logic to set state right after the `saveMenu` action is dispatched. \r\n\r\n## How has this been tested?\r\n1. Go to the experimental navigation screen.\r\n2. Click on \"Switch Menu\" in the top right corner.\r\n3. Choose the\"Create a new menu\" option.\r\n4. After creating the menu, there shouldn't be an error in the browser console.\r\n\r\n## Screenshots \r\n![CleanShot 2021-08-03 at 15 17 52](https://user-images.githubusercontent.com/240569/128007292-91e71416-14e7-40e3-94c4-461ad411f0b2.png)\r\n\r\n## Types of changes\r\nBugfix\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54927", + "html_url": "https://github.com/WordPress/gutenberg/pull/54927", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54927.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54927.patch", + "merged_at": "2023-09-29T10:51:38Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nIn HTML mode and with dark mode enabled, the post title might be not visible due to using the same color as the background. This issue only happens when using themes that don't provide global styles.\r\n\r\n## Why?\r\n\r\n\r\nThis issue affects negatively the experience when editing in HTML mode.\r\n\r\n## How?\r\n\r\n\r\nAdds a style to be used in the title element when in dark mode.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n1. In a browser, navigate to the Theme page of a site.\r\n2. Set a theme that doesn't provide global styles (e.g. Seedlet theme).\r\n3. In the app, open/create a post.\r\n4. Set a post title.\r\n5. Tap on the `...` button and \"Switch to HTML mode\".\r\n6. Observe that the post title is visible.\r\n7. Enable dark mode in the device.\r\n8. Observe that the post title is displayed with a different color and is visible.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\nN/A\r\n\r\n## Screenshots or screencast \r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54927/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54927/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33842", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54926", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33842/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33842/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33842/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33842", - "id": 959008282, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAyMTg4MjY0", - "number": 33842, - "title": "Polish the focus style for the segmented control.", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54926/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54926/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54926/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54926", + "id": 1918859929, + "node_id": "PR_kwDOBNHdeM5bg_yp", + "number": 54926, + "title": "Revert \"Fix warning when a template calls a template area twice\"", "user": { - "login": "jasmussen", - "id": 1204802, - "node_id": "MDQ6VXNlcjEyMDQ4MDI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1204802?v=4", + "login": "scruffian", + "id": 275961, + "node_id": "MDQ6VXNlcjI3NTk2MQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/275961?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/jasmussen", - "html_url": "https://github.com/jasmussen", - "followers_url": "https://api.github.com/users/jasmussen/followers", - "following_url": "https://api.github.com/users/jasmussen/following{/other_user}", - "gists_url": "https://api.github.com/users/jasmussen/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jasmussen/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jasmussen/subscriptions", - "organizations_url": "https://api.github.com/users/jasmussen/orgs", - "repos_url": "https://api.github.com/users/jasmussen/repos", - "events_url": "https://api.github.com/users/jasmussen/events{/privacy}", - "received_events_url": "https://api.github.com/users/jasmussen/received_events", + "url": "https://api.github.com/users/scruffian", + "html_url": "https://github.com/scruffian", + "followers_url": "https://api.github.com/users/scruffian/followers", + "following_url": "https://api.github.com/users/scruffian/following{/other_user}", + "gists_url": "https://api.github.com/users/scruffian/gists{/gist_id}", + "starred_url": "https://api.github.com/users/scruffian/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/scruffian/subscriptions", + "organizations_url": "https://api.github.com/users/scruffian/orgs", + "repos_url": "https://api.github.com/users/scruffian/repos", + "events_url": "https://api.github.com/users/scruffian/events{/privacy}", + "received_events_url": "https://api.github.com/users/scruffian/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 997392122, - "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", - "name": "[Package] Components", - "color": "ed2572", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "/packages/components" + "description": "An existing feature does not function as intended" } ], "state": "closed", "locked": false, - "assignee": { - "login": "jasmussen", - "id": 1204802, - "node_id": "MDQ6VXNlcjEyMDQ4MDI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1204802?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/jasmussen", - "html_url": "https://github.com/jasmussen", - "followers_url": "https://api.github.com/users/jasmussen/followers", - "following_url": "https://api.github.com/users/jasmussen/following{/other_user}", - "gists_url": "https://api.github.com/users/jasmussen/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jasmussen/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jasmussen/subscriptions", - "organizations_url": "https://api.github.com/users/jasmussen/orgs", - "repos_url": "https://api.github.com/users/jasmussen/repos", - "events_url": "https://api.github.com/users/jasmussen/events{/privacy}", - "received_events_url": "https://api.github.com/users/jasmussen/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "jasmussen", - "id": 1204802, - "node_id": "MDQ6VXNlcjEyMDQ4MDI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1204802?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/jasmussen", - "html_url": "https://github.com/jasmussen", - "followers_url": "https://api.github.com/users/jasmussen/followers", - "following_url": "https://api.github.com/users/jasmussen/following{/other_user}", - "gists_url": "https://api.github.com/users/jasmussen/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jasmussen/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jasmussen/subscriptions", - "organizations_url": "https://api.github.com/users/jasmussen/orgs", - "repos_url": "https://api.github.com/users/jasmussen/repos", - "events_url": "https://api.github.com/users/jasmussen/events{/privacy}", - "received_events_url": "https://api.github.com/users/jasmussen/received_events", - "type": "User", - "site_admin": false - } - ], + "assignee": null, + "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -5331,131 +5931,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 3, - "created_at": "2021-08-03T11:16:34Z", - "updated_at": "2021-08-03T14:16:40Z", - "closed_at": "2021-08-03T14:16:07Z", + "comments": 1, + "created_at": "2023-09-29T08:46:38Z", + "updated_at": "2023-10-04T21:57:42Z", + "closed_at": "2023-09-29T10:52:57Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33842", - "html_url": "https://github.com/WordPress/gutenberg/pull/33842", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33842.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33842.patch" - }, - "body": "## Description\r\n\r\nFollowup to feedback in https://github.com/WordPress/gutenberg/pull/31937#issuecomment-880153741, this PR polishes the focus style for the new Segmented Control. Before:\r\n\r\n![before](https://user-images.githubusercontent.com/1204802/128005511-81a68f09-ddf4-4870-b5ce-3889d915ca86.gif)\r\n\r\nAfter:\r\n\r\n![after](https://user-images.githubusercontent.com/1204802/128005531-526c2de3-53fe-4c8c-966c-a85be69064c9.gif)\r\n\r\nThe focus style for buttons, unputs and selected blocks across the block editor is 1.5px blue focusring, which changes the shape from 1px inputs or controls, or sits outset of solid blue primary buttons.\r\n\r\nIn this case, the usage of focus-within feels correct, as when you tab to the segmented control, pressing tab again sets focus on the next control, not the next option inside; you have to use the arrow keys to change the property inside.\r\n\r\nNote: This PR is a draft because it needs a bit more work. Specifically there appears to be a bug in how the `${ CONFIG.controlBoxShadowFocus };` variable is output. It generates the following incorrect box shadow, which then doesn't render at all:\r\n\r\n```\r\nbox-shadow: 0 0 0,0.5px,var( --wp-admin-theme-color, #00669b);\r\n```\r\n\r\nThe two commas are wrong. Here's how it should be:\r\n\r\n```\r\nbox-shadow: 0 0 0 0.5px var( --wp-admin-theme-color, #00669b);\r\n```\r\n\r\nThis PR simply outputs the corrected value directly, but ideally we find a way to output the variable correctly before we land this. If you know how to, please feel free to push directly to this branch.\r\n\r\n## How has this been tested?\r\n\r\nInsert a \"Post Featured Image\" block and focus the segmented control in the inspector.\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54926", + "html_url": "https://github.com/WordPress/gutenberg/pull/54926", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54926.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54926.patch", + "merged_at": "2023-09-29T10:52:57Z" + }, + "body": "Reverts WordPress/gutenberg#54861", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54926/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54926/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33840", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54923", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33840/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33840/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33840/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33840", - "id": 958800394, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAyMDE1NzM0", - "number": 33840, - "title": "Editor: Safer isPreviewingPost check", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54923/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54923/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54923/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54923", + "id": 1918555635, + "node_id": "PR_kwDOBNHdeM5bf9ek", + "number": 54923, + "title": "Patterns: Include pattern category in main e2e critical path test", "user": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "glendaviesnz", + "id": 3629020, + "node_id": "MDQ6VXNlcjM2MjkwMjA=", + "avatar_url": "https://avatars.githubusercontent.com/u/3629020?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/glendaviesnz", + "html_url": "https://github.com/glendaviesnz", + "followers_url": "https://api.github.com/users/glendaviesnz/followers", + "following_url": "https://api.github.com/users/glendaviesnz/following{/other_user}", + "gists_url": "https://api.github.com/users/glendaviesnz/gists{/gist_id}", + "starred_url": "https://api.github.com/users/glendaviesnz/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/glendaviesnz/subscriptions", + "organizations_url": "https://api.github.com/users/glendaviesnz/orgs", + "repos_url": "https://api.github.com/users/glendaviesnz/repos", + "events_url": "https://api.github.com/users/glendaviesnz/events{/privacy}", + "received_events_url": "https://api.github.com/users/glendaviesnz/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "An existing feature is broken." + "description": "Issues or PRs that relate to code quality" }, { - "id": 1013395453, - "node_id": "MDU6TGFiZWwxMDEzMzk1NDUz", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Editor", - "name": "[Package] Editor", - "color": "ed2572", - "default": false, - "description": "/packages/editor" - } + "id": 1882657161, + "node_id": "MDU6TGFiZWwxODgyNjU3MTYx", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Patterns", + "name": "[Feature] Patterns", + "color": "fbca04", + "default": false, + "description": "A collection of blocks that can be synced (previously reusable blocks) or unsynced" + } ], "state": "closed", "locked": false, "assignee": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "glendaviesnz", + "id": 3629020, + "node_id": "MDQ6VXNlcjM2MjkwMjA=", + "avatar_url": "https://avatars.githubusercontent.com/u/3629020?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/glendaviesnz", + "html_url": "https://github.com/glendaviesnz", + "followers_url": "https://api.github.com/users/glendaviesnz/followers", + "following_url": "https://api.github.com/users/glendaviesnz/following{/other_user}", + "gists_url": "https://api.github.com/users/glendaviesnz/gists{/gist_id}", + "starred_url": "https://api.github.com/users/glendaviesnz/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/glendaviesnz/subscriptions", + "organizations_url": "https://api.github.com/users/glendaviesnz/orgs", + "repos_url": "https://api.github.com/users/glendaviesnz/repos", + "events_url": "https://api.github.com/users/glendaviesnz/events{/privacy}", + "received_events_url": "https://api.github.com/users/glendaviesnz/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "glendaviesnz", + "id": 3629020, + "node_id": "MDQ6VXNlcjM2MjkwMjA=", + "avatar_url": "https://avatars.githubusercontent.com/u/3629020?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/glendaviesnz", + "html_url": "https://github.com/glendaviesnz", + "followers_url": "https://api.github.com/users/glendaviesnz/followers", + "following_url": "https://api.github.com/users/glendaviesnz/following{/other_user}", + "gists_url": "https://api.github.com/users/glendaviesnz/gists{/gist_id}", + "starred_url": "https://api.github.com/users/glendaviesnz/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/glendaviesnz/subscriptions", + "organizations_url": "https://api.github.com/users/glendaviesnz/orgs", + "repos_url": "https://api.github.com/users/glendaviesnz/repos", + "events_url": "https://api.github.com/users/glendaviesnz/events{/privacy}", + "received_events_url": "https://api.github.com/users/glendaviesnz/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -5478,82 +6094,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-08-03T07:06:47Z", - "updated_at": "2021-08-03T08:16:59Z", - "closed_at": "2021-08-03T08:16:31Z", - "author_association": "MEMBER", + "comments": 2, + "created_at": "2023-09-29T03:56:06Z", + "updated_at": "2023-10-02T03:37:16Z", + "closed_at": "2023-10-02T03:36:42Z", + "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33840", - "html_url": "https://github.com/WordPress/gutenberg/pull/33840", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33840.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33840.patch" - }, - "body": "## Description\r\nThe `options` property might not always be defined for the `saving` state and, in some cases, might result in an error.\r\n\r\nPR updates selector to use lodash `get` to safely check `options.isPreview` reference. It also matches the signature in the `isAutosavingPost` selector.\r\n\r\nFixes #29711.\r\n\r\n## How has this been tested?\r\n1. Comment out `isSavingPost` condition from the `isPreviewingPost()` selector.\r\n2. Run the following code in the browser console:\r\n\r\n```js\r\nwp.data.select( 'core/editor' ).isPreviewingPost();\r\n```\r\n\r\n## Types of changes\r\nBugfix\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54923", + "html_url": "https://github.com/WordPress/gutenberg/pull/54923", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54923.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54923.patch", + "merged_at": "2023-10-02T03:36:42Z" + }, + "body": "## What?\r\nIncludes the adding of the pattern category into the main post editor e2e test\r\n\r\n## Why?\r\nMakes sure all parts of the critical path are covered\r\n\r\n## How?\r\nAdds a category during pattern creation\r\nFinds the new pattern via that category\r\nDeletes all categories at end of test\r\n\r\n## Testing Instructions\r\n\r\n- Make sure CI passes\r\n- Run `npm run test:e2e:playwright test/e2e/specs/editor/various/patterns.spec.js` locally and then go to http://localhost:8889/wp-admin/edit-tags.php?taxonomy=wp_pattern_category and make sure there are no categories listed\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54923/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54923/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33833", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54922", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33833/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33833/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33833/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33833", - "id": 958653186, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAxOTAwMTgx", - "number": 33833, - "title": "RNMobile: Add integration test guide", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54922/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54922/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54922/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54922", + "id": 1918478677, + "node_id": "PR_kwDOBNHdeM5bftPG", + "number": 54922, + "title": "Components: consolidate utils to remove `ui/`", "user": { - "login": "guarani", - "id": 1898325, - "node_id": "MDQ6VXNlcjE4OTgzMjU=", - "avatar_url": "https://avatars.githubusercontent.com/u/1898325?v=4", + "login": "brookewp", + "id": 35543432, + "node_id": "MDQ6VXNlcjM1NTQzNDMy", + "avatar_url": "https://avatars.githubusercontent.com/u/35543432?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/guarani", - "html_url": "https://github.com/guarani", - "followers_url": "https://api.github.com/users/guarani/followers", - "following_url": "https://api.github.com/users/guarani/following{/other_user}", - "gists_url": "https://api.github.com/users/guarani/gists{/gist_id}", - "starred_url": "https://api.github.com/users/guarani/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/guarani/subscriptions", - "organizations_url": "https://api.github.com/users/guarani/orgs", - "repos_url": "https://api.github.com/users/guarani/repos", - "events_url": "https://api.github.com/users/guarani/events{/privacy}", - "received_events_url": "https://api.github.com/users/guarani/received_events", + "url": "https://api.github.com/users/brookewp", + "html_url": "https://github.com/brookewp", + "followers_url": "https://api.github.com/users/brookewp/followers", + "following_url": "https://api.github.com/users/brookewp/following{/other_user}", + "gists_url": "https://api.github.com/users/brookewp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/brookewp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/brookewp/subscriptions", + "organizations_url": "https://api.github.com/users/brookewp/orgs", + "repos_url": "https://api.github.com/users/brookewp/repos", + "events_url": "https://api.github.com/users/brookewp/events{/privacy}", + "received_events_url": "https://api.github.com/users/brookewp/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 982506020, - "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", - "name": "Mobile App - i.e. Android or iOS", - "color": "a3ef7a", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + "description": "Issues or PRs that relate to code quality" + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "brookewp", + "id": 35543432, + "node_id": "MDQ6VXNlcjM1NTQzNDMy", + "avatar_url": "https://avatars.githubusercontent.com/u/35543432?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/brookewp", + "html_url": "https://github.com/brookewp", + "followers_url": "https://api.github.com/users/brookewp/followers", + "following_url": "https://api.github.com/users/brookewp/following{/other_user}", + "gists_url": "https://api.github.com/users/brookewp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/brookewp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/brookewp/subscriptions", + "organizations_url": "https://api.github.com/users/brookewp/orgs", + "repos_url": "https://api.github.com/users/brookewp/repos", + "events_url": "https://api.github.com/users/brookewp/events{/privacy}", + "received_events_url": "https://api.github.com/users/brookewp/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "brookewp", + "id": 35543432, + "node_id": "MDQ6VXNlcjM1NTQzNDMy", + "avatar_url": "https://avatars.githubusercontent.com/u/35543432?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/brookewp", + "html_url": "https://github.com/brookewp", + "followers_url": "https://api.github.com/users/brookewp/followers", + "following_url": "https://api.github.com/users/brookewp/following{/other_user}", + "gists_url": "https://api.github.com/users/brookewp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/brookewp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/brookewp/subscriptions", + "organizations_url": "https://api.github.com/users/brookewp/orgs", + "repos_url": "https://api.github.com/users/brookewp/repos", + "events_url": "https://api.github.com/users/brookewp/events{/privacy}", + "received_events_url": "https://api.github.com/users/brookewp/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -5576,56 +6257,72 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, "comments": 2, - "created_at": "2021-08-03T02:17:36Z", - "updated_at": "2021-08-04T15:42:53Z", - "closed_at": "2021-08-04T15:42:28Z", + "created_at": "2023-09-29T01:43:46Z", + "updated_at": "2023-10-02T18:12:30Z", + "closed_at": "2023-10-02T18:12:04Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33833", - "html_url": "https://github.com/WordPress/gutenberg/pull/33833", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33833.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33833.patch" - }, - "body": "## Description\r\n\r\nAdds a guide to integration tests on Gutenberg Mobile.\r\n\r\n## How has this been tested?\r\nRead through the guide to ensure legibility and accuracy.\r\n\r\n## Types of changes\r\n- Updated docs\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54922", + "html_url": "https://github.com/WordPress/gutenberg/pull/54922", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54922.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54922.patch", + "merged_at": "2023-10-02T18:12:04Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nRemaining task to remove the `ui/` folder which started in #52953\r\n\r\n## Why?\r\n\r\n\r\nThere isn't a need for the ui folder anymore - more details can be found in above-mentioned PR.\r\n\r\n> For context, there is no longer a need to keep a separate /ui folder around, so we want to move toward removing this extra folder grouping.\r\n> To begin with, there are a lot of experimental components in this folder that are not used anywhere, and are no longer part of our overall component strategy. They add unnecessary overhead when auditing or just looking for components.\r\n\r\n## How?\r\n\r\n\r\nBy moving the files from `ui/utils` to `utils`. \r\n\r\n`colors` was the only name conflict, so it and its tests have been consolidated into one file. \r\n\r\n## Testing Instructions\r\n\r\nEnsure all tests pass\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54922/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54922/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33831", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54912", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33831/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33831/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33831/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33831", - "id": 958559778, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAxODI1NjM1", - "number": 33831, - "title": "Components: Fix RTL on custom gradient picker", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54912/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54912/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54912/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54912", + "id": 1917543753, + "node_id": "PR_kwDOBNHdeM5bch3P", + "number": 54912, + "title": "Popover: Fix the styles for components that use emotion within popovers", "user": { - "login": "walbo", - "id": 1415747, - "node_id": "MDQ6VXNlcjE0MTU3NDc=", - "avatar_url": "https://avatars.githubusercontent.com/u/1415747?v=4", + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/walbo", - "html_url": "https://github.com/walbo", - "followers_url": "https://api.github.com/users/walbo/followers", - "following_url": "https://api.github.com/users/walbo/following{/other_user}", - "gists_url": "https://api.github.com/users/walbo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/walbo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/walbo/subscriptions", - "organizations_url": "https://api.github.com/users/walbo/orgs", - "repos_url": "https://api.github.com/users/walbo/repos", - "events_url": "https://api.github.com/users/walbo/events{/privacy}", - "received_events_url": "https://api.github.com/users/walbo/received_events", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", "type": "User", "site_admin": false }, @@ -5637,39 +6334,70 @@ "name": "[Type] Bug", "color": "d93f0b", "default": false, - "description": "An existing feature is broken." - }, - { - "id": 596965480, - "node_id": "MDU6TGFiZWw1OTY5NjU0ODA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Internationalization%20(i18n)", - "name": "Internationalization (i18n)", - "color": "e881e2", - "default": false, - "description": "" + "description": "An existing feature does not function as intended" }, { - "id": 997392122, - "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", - "name": "[Package] Components", - "color": "ed2572", + "id": 659839209, + "node_id": "MDU6TGFiZWw2NTk4MzkyMDk=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20UI%20Components", + "name": "[Feature] UI Components", + "color": "fbca04", "default": false, - "description": "/packages/components" + "description": "Impacts or related to the UI component system" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -5692,140 +6420,138 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 0, - "created_at": "2021-08-02T22:36:46Z", - "updated_at": "2021-08-03T15:38:00Z", - "closed_at": "2021-08-03T15:27:19Z", + "comments": 3, + "created_at": "2023-09-28T13:20:58Z", + "updated_at": "2023-09-29T14:40:23Z", + "closed_at": "2023-09-29T13:48:06Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33831", - "html_url": "https://github.com/WordPress/gutenberg/pull/33831", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33831.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33831.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nFix custom gradient picker on sites with RTL.\r\n\r\nFixes #27352\r\n\r\n## How has this been tested?\r\nWith a RTL language and RTL tester plugin\r\n\r\n## Screenshots \r\n| Before | After |\r\n| --- | --- |\r\n| ![rtl-custom-gradient](https://user-images.githubusercontent.com/1415747/127931900-3846eecd-8f1a-40d2-9d74-96ddc4b8441e.gif) | ![fixed-rtl-custom-gradient](https://user-images.githubusercontent.com/1415747/127931912-5b1f00e0-d348-4ba7-9f7f-1b7f15268524.gif) |\r\n\r\n## Types of changes\r\nBug fix\r\n\r\n\r\n\r\n\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54912", + "html_url": "https://github.com/WordPress/gutenberg/pull/54912", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54912.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54912.patch", + "merged_at": "2023-09-29T13:48:06Z" + }, + "body": "Fix regression introduced in #53889\r\n\r\n## What?\r\n\r\nIn #53889 default popovers moved from using a \"Slot\" to just rendering within the \"body\" of the page. But we missed the fact that when using a `Slot`, there's an \"emotion\" `StyleProvider` that gets automatically applied which ensures that any CSS in JS styles rendered within the Slot are rendered properly to the right document. Since we're now using `createPortal` directly, we need to ensure the right `StyleProvider` is applied which would ensure that the styles are applied properly within that particular popover.\r\n\r\n## Testing Instructions\r\n\r\n1- A bit hard cause I'm not sure we have a use-case right now in Gutenberg. You'll have to render a `` or `` within a \"block\" (so within the iframe) and use an \"emotion\" based component within it. (I have been personally testing using a private plugin that I can't share publicly)", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54912/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54912/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33824", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54910", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33824/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33824/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33824/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33824", - "id": 958364226, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAxNjU2OTA1", - "number": 33824, - "title": "components: Use updated range styles", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54910/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54910/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54910/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54910", + "id": 1917364624, + "node_id": "PR_kwDOBNHdeM5bb5mC", + "number": 54910, + "title": "ESLint: Update eslint-plugin-testing-library to v6", "user": { - "login": "sarayourfriend", - "id": 24264157, - "node_id": "MDQ6VXNlcjI0MjY0MTU3", - "avatar_url": "https://avatars.githubusercontent.com/u/24264157?v=4", + "login": "tyxla", + "id": 8436925, + "node_id": "MDQ6VXNlcjg0MzY5MjU=", + "avatar_url": "https://avatars.githubusercontent.com/u/8436925?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/sarayourfriend", - "html_url": "https://github.com/sarayourfriend", - "followers_url": "https://api.github.com/users/sarayourfriend/followers", - "following_url": "https://api.github.com/users/sarayourfriend/following{/other_user}", - "gists_url": "https://api.github.com/users/sarayourfriend/gists{/gist_id}", - "starred_url": "https://api.github.com/users/sarayourfriend/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/sarayourfriend/subscriptions", - "organizations_url": "https://api.github.com/users/sarayourfriend/orgs", - "repos_url": "https://api.github.com/users/sarayourfriend/repos", - "events_url": "https://api.github.com/users/sarayourfriend/events{/privacy}", - "received_events_url": "https://api.github.com/users/sarayourfriend/received_events", + "url": "https://api.github.com/users/tyxla", + "html_url": "https://github.com/tyxla", + "followers_url": "https://api.github.com/users/tyxla/followers", + "following_url": "https://api.github.com/users/tyxla/following{/other_user}", + "gists_url": "https://api.github.com/users/tyxla/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tyxla/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tyxla/subscriptions", + "organizations_url": "https://api.github.com/users/tyxla/orgs", + "repos_url": "https://api.github.com/users/tyxla/repos", + "events_url": "https://api.github.com/users/tyxla/events{/privacy}", + "received_events_url": "https://api.github.com/users/tyxla/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680825, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", - "name": "[Type] Enhancement", - "color": "3993a3", - "default": false, - "description": "A suggestion for improvement." - }, - { - "id": 997392122, - "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", - "name": "[Package] Components", - "color": "ed2572", - "default": false, - "description": "/packages/components" - }, - { - "id": 1344464662, - "node_id": "MDU6TGFiZWwxMzQ0NDY0NjYy", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[a11y]%20Keyboard%20&%20Focus", - "name": "[a11y] Keyboard & Focus", - "color": "efde5d", + "id": 615503111, + "node_id": "MDU6TGFiZWw2MTU1MDMxMTE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Automated%20Testing", + "name": "[Type] Automated Testing", + "color": "111111", "default": false, - "description": "" + "description": "Testing infrastructure changes impacting the execution of end-to-end (E2E) and/or unit tests." } ], "state": "closed", "locked": false, "assignee": { - "login": "sarayourfriend", - "id": 24264157, - "node_id": "MDQ6VXNlcjI0MjY0MTU3", - "avatar_url": "https://avatars.githubusercontent.com/u/24264157?v=4", + "login": "tyxla", + "id": 8436925, + "node_id": "MDQ6VXNlcjg0MzY5MjU=", + "avatar_url": "https://avatars.githubusercontent.com/u/8436925?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/sarayourfriend", - "html_url": "https://github.com/sarayourfriend", - "followers_url": "https://api.github.com/users/sarayourfriend/followers", - "following_url": "https://api.github.com/users/sarayourfriend/following{/other_user}", - "gists_url": "https://api.github.com/users/sarayourfriend/gists{/gist_id}", - "starred_url": "https://api.github.com/users/sarayourfriend/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/sarayourfriend/subscriptions", - "organizations_url": "https://api.github.com/users/sarayourfriend/orgs", - "repos_url": "https://api.github.com/users/sarayourfriend/repos", - "events_url": "https://api.github.com/users/sarayourfriend/events{/privacy}", - "received_events_url": "https://api.github.com/users/sarayourfriend/received_events", + "url": "https://api.github.com/users/tyxla", + "html_url": "https://github.com/tyxla", + "followers_url": "https://api.github.com/users/tyxla/followers", + "following_url": "https://api.github.com/users/tyxla/following{/other_user}", + "gists_url": "https://api.github.com/users/tyxla/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tyxla/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tyxla/subscriptions", + "organizations_url": "https://api.github.com/users/tyxla/orgs", + "repos_url": "https://api.github.com/users/tyxla/repos", + "events_url": "https://api.github.com/users/tyxla/events{/privacy}", + "received_events_url": "https://api.github.com/users/tyxla/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "sarayourfriend", - "id": 24264157, - "node_id": "MDQ6VXNlcjI0MjY0MTU3", - "avatar_url": "https://avatars.githubusercontent.com/u/24264157?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/sarayourfriend", - "html_url": "https://github.com/sarayourfriend", - "followers_url": "https://api.github.com/users/sarayourfriend/followers", - "following_url": "https://api.github.com/users/sarayourfriend/following{/other_user}", - "gists_url": "https://api.github.com/users/sarayourfriend/gists{/gist_id}", - "starred_url": "https://api.github.com/users/sarayourfriend/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/sarayourfriend/subscriptions", - "organizations_url": "https://api.github.com/users/sarayourfriend/orgs", - "repos_url": "https://api.github.com/users/sarayourfriend/repos", - "events_url": "https://api.github.com/users/sarayourfriend/events{/privacy}", - "received_events_url": "https://api.github.com/users/sarayourfriend/received_events", + "login": "tyxla", + "id": 8436925, + "node_id": "MDQ6VXNlcjg0MzY5MjU=", + "avatar_url": "https://avatars.githubusercontent.com/u/8436925?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/tyxla", + "html_url": "https://github.com/tyxla", + "followers_url": "https://api.github.com/users/tyxla/followers", + "following_url": "https://api.github.com/users/tyxla/following{/other_user}", + "gists_url": "https://api.github.com/users/tyxla/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tyxla/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tyxla/subscriptions", + "organizations_url": "https://api.github.com/users/tyxla/orgs", + "repos_url": "https://api.github.com/users/tyxla/repos", + "events_url": "https://api.github.com/users/tyxla/events{/privacy}", + "received_events_url": "https://api.github.com/users/tyxla/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -5848,140 +6574,138 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 15, - "created_at": "2021-08-02T17:33:13Z", - "updated_at": "2021-08-06T13:19:05Z", - "closed_at": "2021-08-06T13:18:17Z", - "author_association": "CONTRIBUTOR", + "comments": 1, + "created_at": "2023-09-28T11:58:18Z", + "updated_at": "2023-09-28T13:35:55Z", + "closed_at": "2023-09-28T13:35:30Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33824", - "html_url": "https://github.com/WordPress/gutenberg/pull/33824", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33824.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33824.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\nUse the updated range styles from the Global Styles figma: https://www.figma.com/file/oEkcAyhIvPFMVEAO8EImvA/Global-Styles\r\n\r\n## How has this been tested?\r\nRun storybook and check out the range control page: `iframe.html?id=components-rangecontrol--default`\r\n\r\n## Screenshots \r\n\r\n### Unfocused\r\n\r\n\"Captura\r\n\r\n### Focused\r\n\r\n\"Captura\r\n\r\n\r\n## Types of changes\r\nStyle changes (new feature???)\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54910", + "html_url": "https://github.com/WordPress/gutenberg/pull/54910", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54910.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54910.patch", + "merged_at": "2023-09-28T13:35:30Z" + }, + "body": "## What?\r\nThis PR bumps `eslint-plugin-testing-library` to v6.\r\n\r\n## Why?\r\nIt's simply a dependency change, to keep the testing library tests up to date with the latest best practices of writing component tests.\r\n\r\n## How?\r\nWe're bumping the version and fixing a couple of ESLint errors.\r\n\r\n## Testing Instructions\r\nVerify all checks are green.\r\n\r\n### Testing Instructions for Keyboard\r\nNone.\r\n\r\n## Screenshots or screencast \r\nNone.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54910/reactions", + "total_count": 1, + "+1": 1, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54910/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33818", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54908", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33818/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33818/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33818/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33818", - "id": 958138621, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAxNDYxNTky", - "number": 33818, - "title": "Scripts: Update webpack to v5 (try 2)", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54908/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54908/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54908/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54908", + "id": 1917231902, + "node_id": "PR_kwDOBNHdeM5bbbfE", + "number": 54908, + "title": "Update the documentation of the block editor and replace @wordpress/element with react", "user": { - "login": "gziolo", - "id": 699132, - "node_id": "MDQ6VXNlcjY5OTEzMg==", - "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/gziolo", - "html_url": "https://github.com/gziolo", - "followers_url": "https://api.github.com/users/gziolo/followers", - "following_url": "https://api.github.com/users/gziolo/following{/other_user}", - "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", - "organizations_url": "https://api.github.com/users/gziolo/orgs", - "repos_url": "https://api.github.com/users/gziolo/repos", - "events_url": "https://api.github.com/users/gziolo/events{/privacy}", - "received_events_url": "https://api.github.com/users/gziolo/received_events", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 596512821, - "node_id": "MDU6TGFiZWw1OTY1MTI4MjE=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Build%20Tooling", - "name": "[Type] Build Tooling", - "color": "111111", + "id": 567484057, + "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Developer%20Documentation", + "name": "[Type] Developer Documentation", + "color": "bfd4f2", "default": false, - "description": "" - }, - { - "id": 978007737, - "node_id": "MDU6TGFiZWw5NzgwMDc3Mzc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Scripts", - "name": "[Package] Scripts", - "color": "ed2572", - "default": false, - "description": "/packages/scripts" - }, - { - "id": 1607665481, - "node_id": "MDU6TGFiZWwxNjA3NjY1NDgx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Storybook", - "name": "Storybook", - "color": "81e2c7", - "default": false, - "description": "Storybook and its stories for components" + "description": "Documentation for developers" } ], "state": "closed", "locked": false, "assignee": { - "login": "gziolo", - "id": 699132, - "node_id": "MDQ6VXNlcjY5OTEzMg==", - "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/gziolo", - "html_url": "https://github.com/gziolo", - "followers_url": "https://api.github.com/users/gziolo/followers", - "following_url": "https://api.github.com/users/gziolo/following{/other_user}", - "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", - "organizations_url": "https://api.github.com/users/gziolo/orgs", - "repos_url": "https://api.github.com/users/gziolo/repos", - "events_url": "https://api.github.com/users/gziolo/events{/privacy}", - "received_events_url": "https://api.github.com/users/gziolo/received_events", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "gziolo", - "id": 699132, - "node_id": "MDQ6VXNlcjY5OTEzMg==", - "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/gziolo", - "html_url": "https://github.com/gziolo", - "followers_url": "https://api.github.com/users/gziolo/followers", - "following_url": "https://api.github.com/users/gziolo/following{/other_user}", - "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", - "organizations_url": "https://api.github.com/users/gziolo/orgs", - "repos_url": "https://api.github.com/users/gziolo/repos", - "events_url": "https://api.github.com/users/gziolo/events{/privacy}", - "received_events_url": "https://api.github.com/users/gziolo/received_events", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -6004,140 +6728,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 28, - "created_at": "2021-08-02T13:19:47Z", - "updated_at": "2021-08-10T07:24:53Z", - "closed_at": "2021-08-10T07:24:28Z", - "author_association": "MEMBER", + "comments": 1, + "created_at": "2023-09-28T10:55:04Z", + "updated_at": "2023-10-04T13:45:09Z", + "closed_at": "2023-10-04T13:44:43Z", + "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33818", - "html_url": "https://github.com/WordPress/gutenberg/pull/33818", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33818.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33818.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\n\r\nFollow-up for #26382. \r\nFixes #33768, fixes #32203, fixes #30289.\r\n\r\nIt's a second attempt to upgrade webpack to v5.\r\n\r\n## Known Issues\r\n\r\n- [x] `wp-scripts build` generates styles with a wrong name\r\n \"Screen\r\n it should be `index-style.css` in the context of a block\r\n- [x] `npm run build` errors because of API changes in webpack plugins\r\n \"Screen\r\n- [x] `npm run storybook:build` – Storybook has to be updated to work with webpack v5, more details at https://storybook.js.org/blog/storybook-for-webpack-5/\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\n### Build for Gutenberg\r\n\r\n- `npm run dev`\r\n- `npm run build`\r\n\r\n### Build for Storybook\r\n\r\n- `npm run storybook:dev`\r\n- `npm run storybook:build`\r\n\r\n### Build for `@wordpress/scripts`\r\n\r\n```bash\r\nnpx wp-create-block example --no-wp-scripts\r\ncd example\r\n../node_modules/.bin/wp-script build\r\n```\r\n\r\n## Types of changes\r\nBreaking change for `@wordpress/scripts` users that provide their own config files for build tools.\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54908", + "html_url": "https://github.com/WordPress/gutenberg/pull/54908", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54908.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54908.patch", + "merged_at": "2023-10-04T13:44:43Z" + }, + "body": "Follow-up to #54494\r\nRelated to #54074\r\n\r\n## What?\r\n\r\nSince we switched the default pragma, this PR updates our documentation to clarify that plugin developers should use react directly instead of @wordpress/element \r\n\r\nI also removed the internal WPComponent and WPElement types for clarity. It impacts a high number of files though.\r\n\r\n## Testing Instructions\r\n\r\nThis is mostly a documentation change, so nothing to test.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54908/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54908/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33817", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54906", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33817/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33817/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33817/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33817", - "id": 958115507, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAxNDQxNDI1", - "number": 33817, - "title": "Fix Safari 13 metaboxes from overlapping the content.", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54906/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54906/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54906/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54906", + "id": 1917139479, + "node_id": "PR_kwDOBNHdeM5bbG-t", + "number": 54906, + "title": "Add e2e tests for filtering and searching patterns", "user": { - "login": "jasmussen", - "id": 1204802, - "node_id": "MDQ6VXNlcjEyMDQ4MDI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1204802?v=4", + "login": "kevin940726", + "id": 7753001, + "node_id": "MDQ6VXNlcjc3NTMwMDE=", + "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/jasmussen", - "html_url": "https://github.com/jasmussen", - "followers_url": "https://api.github.com/users/jasmussen/followers", - "following_url": "https://api.github.com/users/jasmussen/following{/other_user}", - "gists_url": "https://api.github.com/users/jasmussen/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jasmussen/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jasmussen/subscriptions", - "organizations_url": "https://api.github.com/users/jasmussen/orgs", - "repos_url": "https://api.github.com/users/jasmussen/repos", - "events_url": "https://api.github.com/users/jasmussen/events{/privacy}", - "received_events_url": "https://api.github.com/users/jasmussen/received_events", + "url": "https://api.github.com/users/kevin940726", + "html_url": "https://github.com/kevin940726", + "followers_url": "https://api.github.com/users/kevin940726/followers", + "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", + "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", + "organizations_url": "https://api.github.com/users/kevin940726/orgs", + "repos_url": "https://api.github.com/users/kevin940726/repos", + "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", + "received_events_url": "https://api.github.com/users/kevin940726/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", - "default": false, - "description": "An existing feature is broken." - }, - { - "id": 671439711, - "node_id": "MDU6TGFiZWw2NzE0Mzk3MTE=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Browser%20Issues", - "name": "Browser Issues", - "color": "0052cc", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": null + "description": "Issues or PRs that relate to code quality" }, { - "id": 738764878, - "node_id": "MDU6TGFiZWw3Mzg3NjQ4Nzg=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Meta%20Boxes", - "name": "[Feature] Meta Boxes", + "id": 1882657161, + "node_id": "MDU6TGFiZWwxODgyNjU3MTYx", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Patterns", + "name": "[Feature] Patterns", "color": "fbca04", "default": false, - "description": "" + "description": "A collection of blocks that can be synced (previously reusable blocks) or unsynced" } ], "state": "closed", "locked": false, "assignee": { - "login": "jasmussen", - "id": 1204802, - "node_id": "MDQ6VXNlcjEyMDQ4MDI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1204802?v=4", + "login": "kevin940726", + "id": 7753001, + "node_id": "MDQ6VXNlcjc3NTMwMDE=", + "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/jasmussen", - "html_url": "https://github.com/jasmussen", - "followers_url": "https://api.github.com/users/jasmussen/followers", - "following_url": "https://api.github.com/users/jasmussen/following{/other_user}", - "gists_url": "https://api.github.com/users/jasmussen/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jasmussen/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jasmussen/subscriptions", - "organizations_url": "https://api.github.com/users/jasmussen/orgs", - "repos_url": "https://api.github.com/users/jasmussen/repos", - "events_url": "https://api.github.com/users/jasmussen/events{/privacy}", - "received_events_url": "https://api.github.com/users/jasmussen/received_events", + "url": "https://api.github.com/users/kevin940726", + "html_url": "https://github.com/kevin940726", + "followers_url": "https://api.github.com/users/kevin940726/followers", + "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", + "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", + "organizations_url": "https://api.github.com/users/kevin940726/orgs", + "repos_url": "https://api.github.com/users/kevin940726/repos", + "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", + "received_events_url": "https://api.github.com/users/kevin940726/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "jasmussen", - "id": 1204802, - "node_id": "MDQ6VXNlcjEyMDQ4MDI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1204802?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/jasmussen", - "html_url": "https://github.com/jasmussen", - "followers_url": "https://api.github.com/users/jasmussen/followers", - "following_url": "https://api.github.com/users/jasmussen/following{/other_user}", - "gists_url": "https://api.github.com/users/jasmussen/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jasmussen/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jasmussen/subscriptions", - "organizations_url": "https://api.github.com/users/jasmussen/orgs", - "repos_url": "https://api.github.com/users/jasmussen/repos", - "events_url": "https://api.github.com/users/jasmussen/events{/privacy}", - "received_events_url": "https://api.github.com/users/jasmussen/received_events", + "login": "kevin940726", + "id": 7753001, + "node_id": "MDQ6VXNlcjc3NTMwMDE=", + "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/kevin940726", + "html_url": "https://github.com/kevin940726", + "followers_url": "https://api.github.com/users/kevin940726/followers", + "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", + "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", + "organizations_url": "https://api.github.com/users/kevin940726/orgs", + "repos_url": "https://api.github.com/users/kevin940726/repos", + "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", + "received_events_url": "https://api.github.com/users/kevin940726/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -6160,91 +6891,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, "comments": 3, - "created_at": "2021-08-02T12:56:59Z", - "updated_at": "2021-08-05T06:43:02Z", - "closed_at": "2021-08-05T06:42:35Z", - "author_association": "CONTRIBUTOR", + "created_at": "2023-09-28T10:00:08Z", + "updated_at": "2023-10-02T03:38:11Z", + "closed_at": "2023-10-02T03:37:43Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33817", - "html_url": "https://github.com/WordPress/gutenberg/pull/33817", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33817.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33817.patch" - }, - "body": "## Description\r\n\r\nFixes #33668.\r\n\r\nFlex is a delicate feature, especially when supporting a range of browsers. As it turns out, older versions of Safari have a pretty specific interpretation of how flex children should inherit the height of their parents. Which is to say, _they do if you don't provide a percentage height_. \r\n\r\nIt gets a bit more gnarly than that, but [this SO comment](https://stackoverflow.com/questions/33636796/chrome-safari-not-filling-100-height-of-flex-parent) elucidates a bit:\r\n\r\n> Remove specified heights from flex items for this method to work. If a child has a height specified (e.g. height: 100%), then it will ignore the align-items: stretch coming from the parent. For the stretch default to work, the child's height must compute to auto.\r\n\r\nI have developed this patch while using Browserstack to test Safari 13, because I'm no longer on MacOS Catalina. And as best I can tell the flex rules we have in place caused a sequence of events there:\r\n\r\n- First it meant that the height of `.edit-post-visual-editor` was allowed to shrink, which happened when a metabox was present. This was fixed by disallowing shrinking (`flex: 1 0 auto;` instead of `flex: 1 1 auto;`) _and_ by removing `flex-basis: 100%;` (more on that in a second)\r\n- When that was fixed, it became clear that the child element, `.edit-post-visual-editor__content-area` no longer expanded to fill the void. _Presumably_ because when `flex-basis: 100%;` was removed, inheritance there no longer worked. This was fixed by removing the explicit `height: 100%;` inline style applied to that element, _and_ by allowing it to grow (`flex-grow: 1;`). \r\n\r\nTo summarize it to the best of my understanding: when we used percentages, the editing canvas didn't actually expand, causing the metaboxes to overlap it. By removing the percentages, I had to remove them from quite a few of the child items, and change those to rely in the intrinsic `align-items: stretch;` property they are given by `display: flex;` by default.\r\n\r\n## How has this been tested?\r\n\r\nIn my testing, this threads the needle and accomplishes what it needs to in modern browsers, Chrome, Firefox, Edge and Safari 14. It also makes it all work with Safar 13. I have not tested older yet, but presume it works the same.\r\n\r\nThe behavior to test is:\r\n\r\n- Test with and without the Custom Fields metabox present.\r\n- Create a new post with no content, and you should not see the dark gray color behind the editing canvas peek through.\r\n- Use the device preview dropdown and verify the sizes are correct. \r\n- Add a lot of content, and observe that the custom fields metabox keeps \"riding below the content\" as you press Enter. No overlap.\r\n\r\n## Screenshots \r\n\r\nThe Safari 13 issue that ships in trunk (big GIF):\r\n\r\nhttps://cldup.com/_zYngFvNTq.gif\r\n\r\nSafari 13 after this PR is applied:\r\n\r\n![saf 13 after](https://user-images.githubusercontent.com/1204802/127865217-0de80ec7-2906-4503-a4d8-6066bf7a6a75.gif)\r\n\r\nChrome after this PR applied (should be like before):\r\n\r\n![chrome](https://user-images.githubusercontent.com/1204802/127865407-7ad3eaef-b067-44b8-895f-e5208342ea55.gif)\r\n\r\n## Types of changes\r\n\r\nSince this is a pretty sensitive part of the editor layout code, it's important to test this pretty broadly, notably with those of you with access to Safari 13. But it's still important to ensure identical behavior on modern browsers as well.\r\n\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54906", + "html_url": "https://github.com/WordPress/gutenberg/pull/54906", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54906.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54906.patch", + "merged_at": "2023-10-02T03:37:43Z" + }, + "body": "\r\n\r\n## What?\r\n\r\nAdd e2e tests for filtering and searching patterns.\r\n\r\n## Why?\r\n\r\nThis is a critical path of the patterns page.\r\n\r\n## How?\r\n\r\nWrite tests 💪 .\r\n\r\nI also smuggled some quick fixes here that I'll explain in inline comments later 🙈 .\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\nCI should pass.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\nN/A\r\n\r\n## Screenshots or screencast \r\nN/A", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54906/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54906/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33800", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54905", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33800/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33800/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33800/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33800", - "id": 957359088, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAwNzk4ODA2", - "number": 33800, - "title": "Fix gutenberg_resolve_template() return documentation", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54905/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54905/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54905/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54905", + "id": 1917124523, + "node_id": "PR_kwDOBNHdeM5bbDsP", + "number": 54905, + "title": "Block Editor: Expose `getDuotoneFilter()` as private API", "user": { - "login": "jeremyfelt", - "id": 286171, - "node_id": "MDQ6VXNlcjI4NjE3MQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/286171?v=4", + "login": "tyxla", + "id": 8436925, + "node_id": "MDQ6VXNlcjg0MzY5MjU=", + "avatar_url": "https://avatars.githubusercontent.com/u/8436925?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/jeremyfelt", - "html_url": "https://github.com/jeremyfelt", - "followers_url": "https://api.github.com/users/jeremyfelt/followers", - "following_url": "https://api.github.com/users/jeremyfelt/following{/other_user}", - "gists_url": "https://api.github.com/users/jeremyfelt/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jeremyfelt/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jeremyfelt/subscriptions", - "organizations_url": "https://api.github.com/users/jeremyfelt/orgs", - "repos_url": "https://api.github.com/users/jeremyfelt/repos", - "events_url": "https://api.github.com/users/jeremyfelt/events{/privacy}", - "received_events_url": "https://api.github.com/users/jeremyfelt/received_events", + "url": "https://api.github.com/users/tyxla", + "html_url": "https://github.com/tyxla", + "followers_url": "https://api.github.com/users/tyxla/followers", + "following_url": "https://api.github.com/users/tyxla/following{/other_user}", + "gists_url": "https://api.github.com/users/tyxla/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tyxla/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tyxla/subscriptions", + "organizations_url": "https://api.github.com/users/tyxla/orgs", + "repos_url": "https://api.github.com/users/tyxla/repos", + "events_url": "https://api.github.com/users/tyxla/events{/privacy}", + "received_events_url": "https://api.github.com/users/tyxla/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 567484057, - "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Documentation", - "name": "[Type] Developer Documentation", - "color": "bfd4f2", + "id": 1248494790, + "node_id": "MDU6TGFiZWwxMjQ4NDk0Nzkw", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Block%20editor", + "name": "[Package] Block editor", + "color": "ed2572", "default": false, - "description": "" + "description": "/packages/block-editor" }, { - "id": 1604715381, - "node_id": "MDU6TGFiZWwxNjA0NzE1Mzgx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Full%20Site%20Editing", - "name": "[Feature] Full Site Editing", - "color": "fbca04", + "id": 1789345375, + "node_id": "MDU6TGFiZWwxNzg5MzQ1Mzc1", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Experimental", + "name": "[Type] Experimental", + "color": "4109a0", "default": false, - "description": "" + "description": "Experimental feature or API." } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "tyxla", + "id": 8436925, + "node_id": "MDQ6VXNlcjg0MzY5MjU=", + "avatar_url": "https://avatars.githubusercontent.com/u/8436925?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/tyxla", + "html_url": "https://github.com/tyxla", + "followers_url": "https://api.github.com/users/tyxla/followers", + "following_url": "https://api.github.com/users/tyxla/following{/other_user}", + "gists_url": "https://api.github.com/users/tyxla/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tyxla/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tyxla/subscriptions", + "organizations_url": "https://api.github.com/users/tyxla/orgs", + "repos_url": "https://api.github.com/users/tyxla/repos", + "events_url": "https://api.github.com/users/tyxla/events{/privacy}", + "received_events_url": "https://api.github.com/users/tyxla/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "tyxla", + "id": 8436925, + "node_id": "MDQ6VXNlcjg0MzY5MjU=", + "avatar_url": "https://avatars.githubusercontent.com/u/8436925?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/tyxla", + "html_url": "https://github.com/tyxla", + "followers_url": "https://api.github.com/users/tyxla/followers", + "following_url": "https://api.github.com/users/tyxla/following{/other_user}", + "gists_url": "https://api.github.com/users/tyxla/gists{/gist_id}", + "starred_url": "https://api.github.com/users/tyxla/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/tyxla/subscriptions", + "organizations_url": "https://api.github.com/users/tyxla/orgs", + "repos_url": "https://api.github.com/users/tyxla/repos", + "events_url": "https://api.github.com/users/tyxla/events{/privacy}", + "received_events_url": "https://api.github.com/users/tyxla/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -6267,72 +7054,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 0, - "created_at": "2021-08-01T01:36:25Z", - "updated_at": "2021-08-02T17:01:25Z", - "closed_at": "2021-08-02T06:04:38Z", + "comments": 1, + "created_at": "2023-09-28T09:51:22Z", + "updated_at": "2023-09-28T12:46:32Z", + "closed_at": "2023-09-28T12:46:05Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33800", - "html_url": "https://github.com/WordPress/gutenberg/pull/33800", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33800.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33800.patch" - }, - "body": "`gutenberg_resolve_template()` now returns a `WP_Block_Template` instance rather than an array of data.", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54905", + "html_url": "https://github.com/WordPress/gutenberg/pull/54905", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54905.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54905.patch", + "merged_at": "2023-09-28T12:46:05Z" + }, + "body": "## What?\r\nThis PR exposes the `getDuotoneFilter()` utility as a private API.\r\n\r\n## Why?\r\nIt was previously exposed as `__unstablePresetDuotoneFilter`, however since #52888 refactored `PresetDuotoneFilter` to `getDuotoneFilter()`, that was never exposed again. \r\n\r\nThe `__unstablePresetDuotoneFilter` was used in external consumers of the `@wordpress/block-editor` package and ideally, we'd like to be able to port to the new version.\r\n \r\n## How?\r\nWe're just adding `getDuotoneFilter()` to the list of private APIs of the package.\r\n\r\n## Testing Instructions\r\nAll checks should be green.\r\n\r\n### Testing Instructions for Keyboard\r\nNone.\r\n\r\n## Screenshots or screencast \r\nNone.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54905/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54905/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33799", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54903", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33799/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33799/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33799/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33799", - "id": 957356268, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAwNzk2MzI3", - "number": 33799, - "title": "Fix misspelling of \"queries\" in filter documentation", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54903/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54903/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54903/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54903", + "id": 1917050627, + "node_id": "PR_kwDOBNHdeM5bazod", + "number": 54903, + "title": "Tidying `CircularOptionPicker.Option`", "user": { - "login": "jeremyfelt", - "id": 286171, - "node_id": "MDQ6VXNlcjI4NjE3MQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/286171?v=4", + "login": "andrewhayward", + "id": 159848, + "node_id": "MDQ6VXNlcjE1OTg0OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/159848?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/jeremyfelt", - "html_url": "https://github.com/jeremyfelt", - "followers_url": "https://api.github.com/users/jeremyfelt/followers", - "following_url": "https://api.github.com/users/jeremyfelt/following{/other_user}", - "gists_url": "https://api.github.com/users/jeremyfelt/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jeremyfelt/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jeremyfelt/subscriptions", - "organizations_url": "https://api.github.com/users/jeremyfelt/orgs", - "repos_url": "https://api.github.com/users/jeremyfelt/repos", - "events_url": "https://api.github.com/users/jeremyfelt/events{/privacy}", - "received_events_url": "https://api.github.com/users/jeremyfelt/received_events", + "url": "https://api.github.com/users/andrewhayward", + "html_url": "https://github.com/andrewhayward", + "followers_url": "https://api.github.com/users/andrewhayward/followers", + "following_url": "https://api.github.com/users/andrewhayward/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewhayward/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewhayward/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewhayward/subscriptions", + "organizations_url": "https://api.github.com/users/andrewhayward/orgs", + "repos_url": "https://api.github.com/users/andrewhayward/repos", + "events_url": "https://api.github.com/users/andrewhayward/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewhayward/received_events", "type": "User", "site_admin": false }, - "labels": [], + "labels": [ + { + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", + "default": false, + "description": "Issues or PRs that relate to code quality" + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" + } + ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "andrewhayward", + "id": 159848, + "node_id": "MDQ6VXNlcjE1OTg0OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/159848?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/andrewhayward", + "html_url": "https://github.com/andrewhayward", + "followers_url": "https://api.github.com/users/andrewhayward/followers", + "following_url": "https://api.github.com/users/andrewhayward/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewhayward/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewhayward/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewhayward/subscriptions", + "organizations_url": "https://api.github.com/users/andrewhayward/orgs", + "repos_url": "https://api.github.com/users/andrewhayward/repos", + "events_url": "https://api.github.com/users/andrewhayward/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewhayward/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "andrewhayward", + "id": 159848, + "node_id": "MDQ6VXNlcjE1OTg0OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/159848?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/andrewhayward", + "html_url": "https://github.com/andrewhayward", + "followers_url": "https://api.github.com/users/andrewhayward/followers", + "following_url": "https://api.github.com/users/andrewhayward/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewhayward/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewhayward/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewhayward/subscriptions", + "organizations_url": "https://api.github.com/users/andrewhayward/orgs", + "repos_url": "https://api.github.com/users/andrewhayward/repos", + "events_url": "https://api.github.com/users/andrewhayward/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewhayward/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -6355,91 +7217,138 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 0, - "created_at": "2021-08-01T01:21:27Z", - "updated_at": "2021-08-02T17:01:51Z", - "closed_at": "2021-08-02T03:22:39Z", - "author_association": "MEMBER", + "comments": 4, + "created_at": "2023-09-28T09:08:45Z", + "updated_at": "2023-09-29T09:52:05Z", + "closed_at": "2023-09-28T19:54:40Z", + "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33799", - "html_url": "https://github.com/WordPress/gutenberg/pull/33799", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33799.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33799.patch" - }, - "body": "## Description\r\n\r\nThis fixes an accidental misspelling in 3 places.\r\n\r\n\r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54903", + "html_url": "https://github.com/WordPress/gutenberg/pull/54903", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54903.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54903.patch", + "merged_at": "2023-09-28T19:54:40Z" + }, + "body": "## What?\r\nThis PR removes some now-defunct styling workarounds from `CircularOptionPicker.Option`, and normalises style application between it and `Button`.\r\n\r\n## Why?\r\nBefore `Button` was refactored in #54740, it was necessary to explicitly add an `is-pressed` class to the `CircularOptionPicker.Option`, to avoid using `isPressed` which automatically added `aria-pressed`. With those changes, and the refactor here, `is-pressed` is no longer necessary as a class for `CircularOptionPicker.Option`, so the workaround isn't necessary.\r\n\r\n## How?\r\nThe dependency on the `is-pressed` class is removed from `CircularOptionPicker.Option` instead using the `aria-selected`/`aria-pressed` attribute directly.\r\n\r\n`aria-selected` is also added to `Button` to ensure styling is normalised for other consumers.\r\n\r\n## Testing Instructions\r\nThere should be no visual changes, either in `Button` or `CircularOptionPicker`. Both of these components can be checked in StoryBook.\r\n\r\n### Testing Instructions for Keyboard\r\nThere should be no interaction changes to either `Button` or `CircularOptionPicker`.\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54903/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54903/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33796", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54901", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33796/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33796/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33796/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33796", - "id": 957288624, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAwNzQzNTQx", - "number": 33796, - "title": "Add spaces in add_theme_support docs code", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54901/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54901/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54901/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54901", + "id": 1916846180, + "node_id": "PR_kwDOBNHdeM5baHZB", + "number": 54901, + "title": "Make `editor.getBlocks` to return only testing-related properties", "user": { - "login": "kapilpaul", - "id": 9963909, - "node_id": "MDQ6VXNlcjk5NjM5MDk=", - "avatar_url": "https://avatars.githubusercontent.com/u/9963909?v=4", + "login": "kevin940726", + "id": 7753001, + "node_id": "MDQ6VXNlcjc3NTMwMDE=", + "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/kapilpaul", - "html_url": "https://github.com/kapilpaul", - "followers_url": "https://api.github.com/users/kapilpaul/followers", - "following_url": "https://api.github.com/users/kapilpaul/following{/other_user}", - "gists_url": "https://api.github.com/users/kapilpaul/gists{/gist_id}", - "starred_url": "https://api.github.com/users/kapilpaul/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/kapilpaul/subscriptions", - "organizations_url": "https://api.github.com/users/kapilpaul/orgs", - "repos_url": "https://api.github.com/users/kapilpaul/repos", - "events_url": "https://api.github.com/users/kapilpaul/events{/privacy}", - "received_events_url": "https://api.github.com/users/kapilpaul/received_events", + "url": "https://api.github.com/users/kevin940726", + "html_url": "https://github.com/kevin940726", + "followers_url": "https://api.github.com/users/kevin940726/followers", + "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", + "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", + "organizations_url": "https://api.github.com/users/kevin940726/orgs", + "repos_url": "https://api.github.com/users/kevin940726/repos", + "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", + "received_events_url": "https://api.github.com/users/kevin940726/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 567484057, - "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Documentation", - "name": "[Type] Developer Documentation", - "color": "bfd4f2", - "default": false, - "description": "" - }, - { - "id": 1388646432, - "node_id": "MDU6TGFiZWwxMzg4NjQ2NDMy", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/First-time%20Contributor", - "name": "First-time Contributor", - "color": "a0f762", + "id": 615503111, + "node_id": "MDU6TGFiZWw2MTU1MDMxMTE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Automated%20Testing", + "name": "[Type] Automated Testing", + "color": "111111", "default": false, - "description": "Pull request opened by a first-time contributor to Gutenberg repository" + "description": "Testing infrastructure changes impacting the execution of end-to-end (E2E) and/or unit tests." } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "kevin940726", + "id": 7753001, + "node_id": "MDQ6VXNlcjc3NTMwMDE=", + "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/kevin940726", + "html_url": "https://github.com/kevin940726", + "followers_url": "https://api.github.com/users/kevin940726/followers", + "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", + "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", + "organizations_url": "https://api.github.com/users/kevin940726/orgs", + "repos_url": "https://api.github.com/users/kevin940726/repos", + "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", + "received_events_url": "https://api.github.com/users/kevin940726/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "kevin940726", + "id": 7753001, + "node_id": "MDQ6VXNlcjc3NTMwMDE=", + "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/kevin940726", + "html_url": "https://github.com/kevin940726", + "followers_url": "https://api.github.com/users/kevin940726/followers", + "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", + "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", + "organizations_url": "https://api.github.com/users/kevin940726/orgs", + "repos_url": "https://api.github.com/users/kevin940726/repos", + "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", + "received_events_url": "https://api.github.com/users/kevin940726/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -6462,229 +7371,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-07-31T17:34:13Z", - "updated_at": "2021-08-02T05:38:52Z", - "closed_at": "2021-08-02T05:36:51Z", - "author_association": "CONTRIBUTOR", + "comments": 0, + "created_at": "2023-09-28T07:02:22Z", + "updated_at": "2023-09-28T08:45:12Z", + "closed_at": "2023-09-28T08:44:41Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33796", - "html_url": "https://github.com/WordPress/gutenberg/pull/33796", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33796.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33796.patch" - }, - "body": "## Description\r\nAdded missing space in theme support docs\r\n\r\n## Types of changes\r\n\r\nUpdated the documentation\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54901", + "html_url": "https://github.com/WordPress/gutenberg/pull/54901", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54901.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54901.patch", + "merged_at": "2023-09-28T08:44:41Z" + }, + "body": "\r\n\r\n## What?\r\n\r\nAs suggested by @ellatrix in a private conversation some time ago, we probably don't need `getBlocks` to return `clientId` and other properties for testing purposes.\r\n\r\nA recent encounter is https://github.com/WordPress/gutenberg/pull/54892#discussion_r1339563443.\r\n\r\n## Why?\r\n\r\nThis is going to make `editor.getBlocks` slightly more helpful in some situations that we can just compare using `toEqual` rather than having to get rid of `clientId` first.\r\n\r\n## How?\r\n\r\nRecursively transform the blocks before returning. A `full` option can be passed if the users want to retain the previous behavior.\r\n\r\nAnother idea would be to allow comparing blocks with consideration of the default attributes' values. That would be probably be better suited in a different PR though.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\nCI should pass.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\nN/A\r\n\r\n## Screenshots or screencast \r\nN/A", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54901/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54901/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33788", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54900", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33788/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33788/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33788/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33788", - "id": 957068842, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAwNTY5NTA4", - "number": 33788, - "title": "[RNMobile] Fix Xcode Demo app build", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54900/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54900/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54900/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54900", + "id": 1916793917, + "node_id": "PR_kwDOBNHdeM5bZ8P-", + "number": 54900, + "title": "List View: Fix performance issue when selecting all blocks", "user": { - "login": "dcalhoun", - "id": 438664, - "node_id": "MDQ6VXNlcjQzODY2NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", + "login": "andrewserong", + "id": 14988353, + "node_id": "MDQ6VXNlcjE0OTg4MzUz", + "avatar_url": "https://avatars.githubusercontent.com/u/14988353?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/dcalhoun", - "html_url": "https://github.com/dcalhoun", - "followers_url": "https://api.github.com/users/dcalhoun/followers", - "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", - "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", - "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", - "organizations_url": "https://api.github.com/users/dcalhoun/orgs", - "repos_url": "https://api.github.com/users/dcalhoun/repos", - "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", - "received_events_url": "https://api.github.com/users/dcalhoun/received_events", + "url": "https://api.github.com/users/andrewserong", + "html_url": "https://github.com/andrewserong", + "followers_url": "https://api.github.com/users/andrewserong/followers", + "following_url": "https://api.github.com/users/andrewserong/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewserong/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewserong/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewserong/subscriptions", + "organizations_url": "https://api.github.com/users/andrewserong/orgs", + "repos_url": "https://api.github.com/users/andrewserong/repos", + "events_url": "https://api.github.com/users/andrewserong/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewserong/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 596512821, - "node_id": "MDU6TGFiZWw1OTY1MTI4MjE=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Build%20Tooling", - "name": "[Type] Build Tooling", - "color": "111111", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "" + "description": "An existing feature does not function as intended" }, { - "id": 982506020, - "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", - "name": "Mobile App - i.e. Android or iOS", - "color": "a3ef7a", + "id": 1123763869, + "node_id": "MDU6TGFiZWwxMTIzNzYzODY5", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20List%20View", + "name": "[Feature] List View", + "color": "fbca04", "default": false, - "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + "description": "Menu item in the top toolbar to select blocks from a list of links." } ], "state": "closed", "locked": false, "assignee": { - "login": "dcalhoun", - "id": 438664, - "node_id": "MDQ6VXNlcjQzODY2NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", + "login": "andrewserong", + "id": 14988353, + "node_id": "MDQ6VXNlcjE0OTg4MzUz", + "avatar_url": "https://avatars.githubusercontent.com/u/14988353?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/dcalhoun", - "html_url": "https://github.com/dcalhoun", - "followers_url": "https://api.github.com/users/dcalhoun/followers", - "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", - "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", - "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", - "organizations_url": "https://api.github.com/users/dcalhoun/orgs", - "repos_url": "https://api.github.com/users/dcalhoun/repos", - "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", - "received_events_url": "https://api.github.com/users/dcalhoun/received_events", + "url": "https://api.github.com/users/andrewserong", + "html_url": "https://github.com/andrewserong", + "followers_url": "https://api.github.com/users/andrewserong/followers", + "following_url": "https://api.github.com/users/andrewserong/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewserong/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewserong/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewserong/subscriptions", + "organizations_url": "https://api.github.com/users/andrewserong/orgs", + "repos_url": "https://api.github.com/users/andrewserong/repos", + "events_url": "https://api.github.com/users/andrewserong/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewserong/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "dcalhoun", - "id": 438664, - "node_id": "MDQ6VXNlcjQzODY2NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", + "login": "andrewserong", + "id": 14988353, + "node_id": "MDQ6VXNlcjE0OTg4MzUz", + "avatar_url": "https://avatars.githubusercontent.com/u/14988353?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/dcalhoun", - "html_url": "https://github.com/dcalhoun", - "followers_url": "https://api.github.com/users/dcalhoun/followers", - "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", - "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", - "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", - "organizations_url": "https://api.github.com/users/dcalhoun/orgs", - "repos_url": "https://api.github.com/users/dcalhoun/repos", - "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", - "received_events_url": "https://api.github.com/users/dcalhoun/received_events", + "url": "https://api.github.com/users/andrewserong", + "html_url": "https://github.com/andrewserong", + "followers_url": "https://api.github.com/users/andrewserong/followers", + "following_url": "https://api.github.com/users/andrewserong/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewserong/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewserong/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewserong/subscriptions", + "organizations_url": "https://api.github.com/users/andrewserong/orgs", + "repos_url": "https://api.github.com/users/andrewserong/repos", + "events_url": "https://api.github.com/users/andrewserong/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewserong/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", - "description": null, - "creator": { - "login": "github-actions[bot]", - "id": 41898282, - "node_id": "MDM6Qm90NDE4OTgyODI=", - "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/github-actions%5Bbot%5D", - "html_url": "https://github.com/apps/github-actions", - "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", - "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", - "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", - "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", - "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", - "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", - "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", - "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", - "type": "Bot", - "site_admin": false - }, - "open_issues": 0, - "closed_issues": 113, - "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", - "closed_at": null - }, - "comments": 1, - "created_at": "2021-07-30T21:26:38Z", - "updated_at": "2021-08-09T16:07:06Z", - "closed_at": "2021-08-09T16:06:39Z", - "author_association": "MEMBER", - "active_lock_reason": null, - "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33788", - "html_url": "https://github.com/WordPress/gutenberg/pull/33788", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33788.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33788.patch" - }, - "body": "## Description\r\nReact Native added a `PROJECT_ROOT` [configuration to better support monorepos](https://github.com/facebook/react-native/commit/9ccde378b6e6379df61f9d968be6346ca6be7ead). Prior to setting the `PROJECT_ROOT` configuration, building the Demo app in Xcode threw errors related to the inability to find the entry `index.js` file, as it was searching in the root directory.\r\n\r\n
Error Text\r\n\r\n```\r\nerror The resource `/Users/username/Sites/a8c/gutenberg/index.js` was not found.\r\nError: The resource `/Users/username/Sites/a8c/gutenberg/index.js` was not found.\r\n at /Users/username/Sites/a8c/gutenberg/node_modules/metro/src/IncrementalBundler.js:457:26\r\n at gotStat (node:fs:2627:21)\r\n at FSReqCallback.oncomplete (node:fs:195:21)\r\ninfo Run CLI with --verbose flag for more details.\r\nCommand PhaseScriptExecution failed with a nonzero exit code\r\n```\r\n\r\n
\r\n\r\n
Error Screenshot\r\n\r\n\"xcode-demo-app-error\"\r\n\r\n
\r\n\r\n## How has this been tested?\r\n1. Check out `trunk` branch. \r\n2. `npm run native start:reset`\r\n3. Launch Xcode and build the Demo app to a physical device. \r\n4. ⚠️ **Unexpected:** Notice the build failure. \r\n5. Check out this PR branch. \r\n6. `npm run native start:reset`\r\n7. Launch Xcode and build the Demo app to a physical device. \r\n8. ℹ️ **Expected:** The build succeeds and runs on the device. \r\n\r\n## Screenshots \r\n\r\n## Types of changes\r\nBug fix\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null - }, - { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33786", - "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33786/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33786/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33786/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33786", - "id": 956992028, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAwNTA0MTcw", - "number": 33786, - "title": "GitHub Templates: Format bug report template", - "user": { - "login": "walbo", - "id": 1415747, - "node_id": "MDQ6VXNlcjE0MTU3NDc=", - "avatar_url": "https://avatars.githubusercontent.com/u/1415747?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/walbo", - "html_url": "https://github.com/walbo", - "followers_url": "https://api.github.com/users/walbo/followers", - "following_url": "https://api.github.com/users/walbo/following{/other_user}", - "gists_url": "https://api.github.com/users/walbo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/walbo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/walbo/subscriptions", - "organizations_url": "https://api.github.com/users/walbo/orgs", - "repos_url": "https://api.github.com/users/walbo/repos", - "events_url": "https://api.github.com/users/walbo/events{/privacy}", - "received_events_url": "https://api.github.com/users/walbo/received_events", - "type": "User", - "site_admin": false - }, - "labels": [ - { - "id": 1032028862, - "node_id": "MDU6TGFiZWwxMDMyMDI4ODYy", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Project%20Management", - "name": "[Type] Project Management", - "color": "e55ead", - "default": false, - "description": "Meta-issues related to project management of Gutenberg" - } - ], - "state": "closed", - "locked": false, - "assignee": null, - "assignees": [], - "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -6707,69 +7534,76 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 0, - "created_at": "2021-07-30T19:00:14Z", - "updated_at": "2021-08-02T10:12:55Z", - "closed_at": "2021-08-02T04:01:02Z", + "comments": 11, + "created_at": "2023-09-28T06:21:03Z", + "updated_at": "2023-10-04T09:38:04Z", + "closed_at": "2023-10-04T02:21:32Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33786", - "html_url": "https://github.com/WordPress/gutenberg/pull/33786", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33786.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33786.patch" - }, - "body": "Follow-up to #33761\r\n\r\nSeem like the bug report template never went trough prettier. Running `npm run format` adds the correct spacing to the .yml file.\r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54900", + "html_url": "https://github.com/WordPress/gutenberg/pull/54900", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54900.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54900.patch", + "merged_at": "2023-10-04T02:21:32Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nPart of: https://github.com/WordPress/gutenberg/issues/49563\r\n\r\nFix a performance issue with the List View when selecting all blocks within the editor canvas, with the list view open. For long posts or pages, the current performance issue means it will likely feel broken as it can take many seconds to apply the selection.\r\n\r\n## Why?\r\n\r\n\r\n\r\n\r\nThere are two related performance issues on `trunk` that affect this behaviour:\r\n\r\n* Currently all selected blocks are rendered as \"real\" list view items, bypassing the windowing logic, which means that there are unnecessary renders / mounts of selected blocks.\r\n* The block item (`ListViewBlock`) is currently responsible for directing focus to it when the list view is mounted. Because it occurs at the block item level, it is possible for dozens of calls to competing `cellRef.current.focus()` to occur at once, causing the editor to slow down until they are all complete.\r\n\r\nThe result of these two issues interacting is that when you select all blocks with the list view open, (or go to open the list view after selecting all blocks), the list view slows to a crawl until all the `.focus()` calls have completed.\r\n\r\n## How?\r\n\r\n\r\n1. Only render list view items for selected blocks that exist outside the current windowing logic if it is the first of the block selection. This prevents a large amount of re-rendering / re-mounting when a user goes to select all blocks.\r\n2. Move the focus logic up to the list view root, so that it is only fired once, irrespective of the number of list view items rendered. To do so, I've moved the existing logic for focusing a list view item to a shared function in `utils` (the logic was introduced back in https://github.com/WordPress/gutenberg/issues/50422).\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n1. Add a post or page with heaps of blocks (e.g. for testing that makes all this clear, add > 150 paragraphs)\r\n3. Ensure the list view is open\r\n4. Focus somewhere within a block in the editor canvas\r\n5. Press CMD+A once to select all of that block. Press CMD+A again to select all blocks (if you're in a nested block, it'll just select the parent — keep pressing to eventually select all blocks, one level of hierarchy at a time)\r\n6. If you're on `trunk`, it'll take a _long_ time to select all blocks in a long post or page\r\n7. With this PR applied, it should take under a second to select all blocks. Maybe not snappy, but fast enough that it doesn't feel broken\r\n8. Ensure scrolling up and down the list view remains performant (there'll still be a slight delay rendering items, caused by the windowing logic, but there shouldn't be any big slowdowns)\r\n\r\nAssuming all this is working okay for this PR, we then need to make sure that we haven't broken the scroll into view logic when single block selection changes (introduced in https://github.com/WordPress/gutenberg/pull/46895). Follow the testing instructions from that PR:\r\n\r\n> In a really long post or page, with the list view opened, scroll the editor canvas to far down the page or post and select a block outside of the currently visible area within the list view. The list view should scroll the selected block into view.\r\n> To test the windowed area versus the non-windowed area, add a very large number of blocks (e.g. 60+) and try selecting from the very top block to the very bottom block in the list, via the editor canvas.\r\n\r\nFinally, double check that focus still appears to be correct when deleting blocks via the list view (with an item in the list view focused, press the Backspace key).\r\n\r\n## Screenshots or screencast \r\n\r\nNote: the List View must be open to test out this performance issue.\r\n\r\nThe following screengrabs are from a post containing 203 blocks. The first press of CMD+A works quickly to select the individual block. It's the second press of CMD+A to select all blocks that's the problem here!\r\n\r\n### Before (takes 8 seconds or so to select all)\r\n\r\nhttps://github.com/WordPress/gutenberg/assets/14988353/700f8d73-4194-4f44-b635-f5b08604b3c4\r\n\r\n### After (takes < 1 second to select all)\r\n\r\nhttps://github.com/WordPress/gutenberg/assets/14988353/9cf84750-b9f4-45e4-9267-ee9e3ec562ac\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54900/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54900/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33785", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54898", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33785/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33785/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33785/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33785", - "id": 956986302, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAwNDk5Mjc0", - "number": 33785, - "title": "Readable JS assets Plugin: Fix webpack 5 support", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54898/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54898/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54898/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54898", + "id": 1916602785, + "node_id": "PR_kwDOBNHdeM5bZSyn", + "number": 54898, + "title": "Mobile Release v1.105.0", "user": { - "login": "walbo", - "id": 1415747, - "node_id": "MDQ6VXNlcjE0MTU3NDc=", - "avatar_url": "https://avatars.githubusercontent.com/u/1415747?v=4", + "login": "derekblank", + "id": 643285, + "node_id": "MDQ6VXNlcjY0MzI4NQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/643285?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/walbo", - "html_url": "https://github.com/walbo", - "followers_url": "https://api.github.com/users/walbo/followers", - "following_url": "https://api.github.com/users/walbo/following{/other_user}", - "gists_url": "https://api.github.com/users/walbo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/walbo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/walbo/subscriptions", - "organizations_url": "https://api.github.com/users/walbo/orgs", - "repos_url": "https://api.github.com/users/walbo/repos", - "events_url": "https://api.github.com/users/walbo/events{/privacy}", - "received_events_url": "https://api.github.com/users/walbo/received_events", + "url": "https://api.github.com/users/derekblank", + "html_url": "https://github.com/derekblank", + "followers_url": "https://api.github.com/users/derekblank/followers", + "following_url": "https://api.github.com/users/derekblank/following{/other_user}", + "gists_url": "https://api.github.com/users/derekblank/gists{/gist_id}", + "starred_url": "https://api.github.com/users/derekblank/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/derekblank/subscriptions", + "organizations_url": "https://api.github.com/users/derekblank/orgs", + "repos_url": "https://api.github.com/users/derekblank/repos", + "events_url": "https://api.github.com/users/derekblank/events{/privacy}", + "received_events_url": "https://api.github.com/users/derekblank/received_events", "type": "User", "site_admin": false }, "labels": [ - { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", - "default": false, - "description": "An existing feature is broken." - }, { "id": 596512821, "node_id": "MDU6TGFiZWw1OTY1MTI4MjE=", @@ -6777,16 +7611,16 @@ "name": "[Type] Build Tooling", "color": "111111", "default": false, - "description": "" + "description": "Issues or PRs related to build tooling" }, { - "id": 3222328876, - "node_id": "MDU6TGFiZWwzMjIyMzI4ODc2", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Readable%20JS%20Assets%20Webpack%20Plugin", - "name": "[Package] Readable JS Assets Webpack Plugin", - "color": "ed2572", + "id": 982506020, + "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", + "name": "Mobile App - i.e. Android or iOS", + "color": "a3ef7a", "default": false, - "description": "/packages/readable-js-assets-webpack-plugin" + "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" } ], "state": "closed", @@ -6794,13 +7628,13 @@ "assignee": null, "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -6823,68 +7657,84 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, "comments": 1, - "created_at": "2021-07-30T18:50:05Z", - "updated_at": "2021-08-02T14:50:22Z", - "closed_at": "2021-08-02T14:49:37Z", - "author_association": "CONTRIBUTOR", + "created_at": "2023-09-28T02:28:14Z", + "updated_at": "2023-09-28T14:44:47Z", + "closed_at": "2023-09-28T14:44:14Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33785", - "html_url": "https://github.com/WordPress/gutenberg/pull/33785", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33785.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33785.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\nIn webpack v5 `Compilation.chunks` and `Chunk.files` changed from arrays to sets. See https://webpack.js.org/blog/2020-10-10-webpack-5-release/#arrays-to-sets\r\n\r\nSupport both v4 and v5 by making sure we work with arrays (converting the set to array for v5) when generating the files list.\r\n\r\n## How has this been tested?\r\nTested the plugin both in webpack v4 and v5.\r\n\r\n\r\n\r\n\r\n## Types of changes\r\nBug fix\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54898", + "html_url": "https://github.com/WordPress/gutenberg/pull/54898", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54898.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54898.patch", + "merged_at": "2023-09-28T14:44:14Z" + }, + "body": "## Description\nRelease 1.105.0 of the react-native-editor and Gutenberg-Mobile.\n\nFor more information about this release and testing instructions, please see the related Gutenberg-Mobile PR: https://github.com/wordpress-mobile/gutenberg-mobile/pull/6243\n\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54898/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54898/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33782", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54897", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33782/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33782/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33782/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33782", - "id": 956872839, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAwNDAzNDI1", - "number": 33782, - "title": "[RNMobile] Fix crash caused by column block with padding having paragraph as a child", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54897/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54897/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54897/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54897", + "id": 1916594809, + "node_id": "PR_kwDOBNHdeM5bZRIM", + "number": 54897, + "title": "[RNMobile] Update mobile iOS Ruby version to from 2.7.4 to 3.2.2.", "user": { - "login": "ceyhun", - "id": 1845482, - "node_id": "MDQ6VXNlcjE4NDU0ODI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1845482?v=4", + "login": "derekblank", + "id": 643285, + "node_id": "MDQ6VXNlcjY0MzI4NQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/643285?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/ceyhun", - "html_url": "https://github.com/ceyhun", - "followers_url": "https://api.github.com/users/ceyhun/followers", - "following_url": "https://api.github.com/users/ceyhun/following{/other_user}", - "gists_url": "https://api.github.com/users/ceyhun/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ceyhun/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ceyhun/subscriptions", - "organizations_url": "https://api.github.com/users/ceyhun/orgs", - "repos_url": "https://api.github.com/users/ceyhun/repos", - "events_url": "https://api.github.com/users/ceyhun/events{/privacy}", - "received_events_url": "https://api.github.com/users/ceyhun/received_events", + "url": "https://api.github.com/users/derekblank", + "html_url": "https://github.com/derekblank", + "followers_url": "https://api.github.com/users/derekblank/followers", + "following_url": "https://api.github.com/users/derekblank/following{/other_user}", + "gists_url": "https://api.github.com/users/derekblank/gists{/gist_id}", + "starred_url": "https://api.github.com/users/derekblank/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/derekblank/subscriptions", + "organizations_url": "https://api.github.com/users/derekblank/orgs", + "repos_url": "https://api.github.com/users/derekblank/repos", + "events_url": "https://api.github.com/users/derekblank/events{/privacy}", + "received_events_url": "https://api.github.com/users/derekblank/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", + "id": 531680824, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjQ=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Task", + "name": "[Type] Task", + "color": "fef2c0", "default": false, - "description": "An existing feature is broken." + "description": "Issues or PRs that have been broken down into an individual action to take" }, { "id": 982506020, @@ -6894,6 +7744,15 @@ "color": "a3ef7a", "default": false, "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + }, + { + "id": 3639254262, + "node_id": "LA_kwDOBNHdeM7Y6pz2", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20Automation", + "name": "Mobile App - Automation", + "color": "669206", + "default": false, + "description": "Label used to initiate Mobile App PR Automation" } ], "state": "closed", @@ -6901,13 +7760,13 @@ "assignee": null, "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -6930,131 +7789,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 3, - "created_at": "2021-07-30T15:50:03Z", - "updated_at": "2021-08-03T09:18:47Z", - "closed_at": "2021-08-03T09:18:16Z", + "comments": 5, + "created_at": "2023-09-28T02:15:11Z", + "updated_at": "2023-10-04T03:12:37Z", + "closed_at": "2023-10-04T03:12:13Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33782", - "html_url": "https://github.com/WordPress/gutenberg/pull/33782", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33782.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33782.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\n\r\nFixes https://github.com/wordpress-mobile/WordPress-Android/issues/15016.\r\n\r\nColumn block has [a new feature](https://github.com/WordPress/gutenberg/pull/31778), where we can add paddings to a column block and it passes these to its child as `wrapperStyles`. These paddings can have units of `%` as well as `px`, `em`, etc. Since paragraph block on mobile doesn't yet support all of those units, the app crashes during layout. \r\n\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\nOn web, using a self-hosted or atomic site with latest Gutenberg version.\r\n1. Add a columns block\r\n1. Select 100 to add a single column\r\n1. Add a paragraph block inside this column and add some text\r\n1. Select back the column\r\n1. Add some padding from sidebar -> `Spacing` -> `Padding`\r\n1. Save the post as draft and open from Mobile Gutenberg\r\n\r\n\"column-settings\"\r\n\r\nAlternatively you can use this HTML in the Gutenberg demo app by switching to HTML mode, pasting it and switching back to Visual mode to test:\r\n\r\n```\r\n\r\n
\r\n
\r\n

Test

\r\n
\r\n
\r\n\r\n```\r\n\r\n## Screenshots \r\n\r\nBefore | After\r\n-- | -- \r\n|\r\n\r\n\r\n\r\n\r\n\r\n## Types of changes\r\n\r\nBug fix (non-breaking change which fixes an issue)\r\n\r\n\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54897", + "html_url": "https://github.com/WordPress/gutenberg/pull/54897", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54897.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54897.patch", + "merged_at": "2023-10-04T03:12:13Z" + }, + "body": "\r\n\r\n## What?\r\nBumps the iOS Ruby version to 3.2.2.\r\n\r\nRelated:\r\n* https://github.com/wordpress-mobile/gutenberg-mobile/pull/6180\r\n\r\n## Why?\r\nThe WPiOS Ruby version was updated to 3.2.2 in https://github.com/wordpress-mobile/WordPress-iOS/pull/21498.\r\n\r\n## How?\r\nUpdates `packages/react-native-editor/ios/.ruby-version` to 3.2.2.\r\n\r\n## Testing Instructions\r\n`rbenv install 3.2.2` should run successfully.\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54897/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54897/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33781", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54894", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33781/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33781/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33781/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33781", - "id": 956812984, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAwMzUwNTc1", - "number": 33781, - "title": "[docs] fix: `supports.color.gradients` is plural", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54894/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54894/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54894/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54894", + "id": 1916537313, + "node_id": "PR_kwDOBNHdeM5bZFOt", + "number": 54894, + "title": "Patterns: Remove category description in inserter panel", "user": { - "login": "chrisvanpatten", - "id": 1231306, - "node_id": "MDQ6VXNlcjEyMzEzMDY=", - "avatar_url": "https://avatars.githubusercontent.com/u/1231306?v=4", + "login": "aaronrobertshaw", + "id": 60436221, + "node_id": "MDQ6VXNlcjYwNDM2MjIx", + "avatar_url": "https://avatars.githubusercontent.com/u/60436221?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/chrisvanpatten", - "html_url": "https://github.com/chrisvanpatten", - "followers_url": "https://api.github.com/users/chrisvanpatten/followers", - "following_url": "https://api.github.com/users/chrisvanpatten/following{/other_user}", - "gists_url": "https://api.github.com/users/chrisvanpatten/gists{/gist_id}", - "starred_url": "https://api.github.com/users/chrisvanpatten/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/chrisvanpatten/subscriptions", - "organizations_url": "https://api.github.com/users/chrisvanpatten/orgs", - "repos_url": "https://api.github.com/users/chrisvanpatten/repos", - "events_url": "https://api.github.com/users/chrisvanpatten/events{/privacy}", - "received_events_url": "https://api.github.com/users/chrisvanpatten/received_events", + "url": "https://api.github.com/users/aaronrobertshaw", + "html_url": "https://github.com/aaronrobertshaw", + "followers_url": "https://api.github.com/users/aaronrobertshaw/followers", + "following_url": "https://api.github.com/users/aaronrobertshaw/following{/other_user}", + "gists_url": "https://api.github.com/users/aaronrobertshaw/gists{/gist_id}", + "starred_url": "https://api.github.com/users/aaronrobertshaw/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/aaronrobertshaw/subscriptions", + "organizations_url": "https://api.github.com/users/aaronrobertshaw/orgs", + "repos_url": "https://api.github.com/users/aaronrobertshaw/repos", + "events_url": "https://api.github.com/users/aaronrobertshaw/events{/privacy}", + "received_events_url": "https://api.github.com/users/aaronrobertshaw/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 567484057, - "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Documentation", - "name": "[Type] Developer Documentation", - "color": "bfd4f2", + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", "default": false, - "description": "" + "description": "A suggestion for improvement." }, { - "id": 2551400612, - "node_id": "MDU6TGFiZWwyNTUxNDAwNjEy", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/developer-docs", - "name": "developer-docs", - "color": "1d76db", + "id": 1882657161, + "node_id": "MDU6TGFiZWwxODgyNjU3MTYx", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Patterns", + "name": "[Feature] Patterns", + "color": "fbca04", "default": false, - "description": "Issues that impact the block editor developer documentation site" + "description": "A collection of blocks that can be synced (previously reusable blocks) or unsynced" } ], "state": "closed", "locked": false, "assignee": { - "login": "chrisvanpatten", - "id": 1231306, - "node_id": "MDQ6VXNlcjEyMzEzMDY=", - "avatar_url": "https://avatars.githubusercontent.com/u/1231306?v=4", + "login": "aaronrobertshaw", + "id": 60436221, + "node_id": "MDQ6VXNlcjYwNDM2MjIx", + "avatar_url": "https://avatars.githubusercontent.com/u/60436221?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/chrisvanpatten", - "html_url": "https://github.com/chrisvanpatten", - "followers_url": "https://api.github.com/users/chrisvanpatten/followers", - "following_url": "https://api.github.com/users/chrisvanpatten/following{/other_user}", - "gists_url": "https://api.github.com/users/chrisvanpatten/gists{/gist_id}", - "starred_url": "https://api.github.com/users/chrisvanpatten/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/chrisvanpatten/subscriptions", - "organizations_url": "https://api.github.com/users/chrisvanpatten/orgs", - "repos_url": "https://api.github.com/users/chrisvanpatten/repos", - "events_url": "https://api.github.com/users/chrisvanpatten/events{/privacy}", - "received_events_url": "https://api.github.com/users/chrisvanpatten/received_events", + "url": "https://api.github.com/users/aaronrobertshaw", + "html_url": "https://github.com/aaronrobertshaw", + "followers_url": "https://api.github.com/users/aaronrobertshaw/followers", + "following_url": "https://api.github.com/users/aaronrobertshaw/following{/other_user}", + "gists_url": "https://api.github.com/users/aaronrobertshaw/gists{/gist_id}", + "starred_url": "https://api.github.com/users/aaronrobertshaw/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/aaronrobertshaw/subscriptions", + "organizations_url": "https://api.github.com/users/aaronrobertshaw/orgs", + "repos_url": "https://api.github.com/users/aaronrobertshaw/repos", + "events_url": "https://api.github.com/users/aaronrobertshaw/events{/privacy}", + "received_events_url": "https://api.github.com/users/aaronrobertshaw/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "chrisvanpatten", - "id": 1231306, - "node_id": "MDQ6VXNlcjEyMzEzMDY=", - "avatar_url": "https://avatars.githubusercontent.com/u/1231306?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/chrisvanpatten", - "html_url": "https://github.com/chrisvanpatten", - "followers_url": "https://api.github.com/users/chrisvanpatten/followers", - "following_url": "https://api.github.com/users/chrisvanpatten/following{/other_user}", - "gists_url": "https://api.github.com/users/chrisvanpatten/gists{/gist_id}", - "starred_url": "https://api.github.com/users/chrisvanpatten/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/chrisvanpatten/subscriptions", - "organizations_url": "https://api.github.com/users/chrisvanpatten/orgs", - "repos_url": "https://api.github.com/users/chrisvanpatten/repos", - "events_url": "https://api.github.com/users/chrisvanpatten/events{/privacy}", - "received_events_url": "https://api.github.com/users/chrisvanpatten/received_events", + "login": "aaronrobertshaw", + "id": 60436221, + "node_id": "MDQ6VXNlcjYwNDM2MjIx", + "avatar_url": "https://avatars.githubusercontent.com/u/60436221?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/aaronrobertshaw", + "html_url": "https://github.com/aaronrobertshaw", + "followers_url": "https://api.github.com/users/aaronrobertshaw/followers", + "following_url": "https://api.github.com/users/aaronrobertshaw/following{/other_user}", + "gists_url": "https://api.github.com/users/aaronrobertshaw/gists{/gist_id}", + "starred_url": "https://api.github.com/users/aaronrobertshaw/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/aaronrobertshaw/subscriptions", + "organizations_url": "https://api.github.com/users/aaronrobertshaw/orgs", + "repos_url": "https://api.github.com/users/aaronrobertshaw/repos", + "events_url": "https://api.github.com/users/aaronrobertshaw/events{/privacy}", + "received_events_url": "https://api.github.com/users/aaronrobertshaw/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -7077,92 +7952,148 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 0, - "created_at": "2021-07-30T14:47:40Z", - "updated_at": "2021-07-30T16:23:33Z", - "closed_at": "2021-07-30T16:22:36Z", - "author_association": "MEMBER", + "comments": 4, + "created_at": "2023-09-28T00:39:53Z", + "updated_at": "2023-10-05T11:16:48Z", + "closed_at": "2023-10-02T16:55:19Z", + "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33781", - "html_url": "https://github.com/WordPress/gutenberg/pull/33781", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33781.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33781.patch" - }, - "body": "Small typo in the block supports documentation; `supports.color.gradient` should be `supports.color.gradients` as plural.", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54894", + "html_url": "https://github.com/WordPress/gutenberg/pull/54894", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54894.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54894.patch", + "merged_at": "2023-10-02T16:55:19Z" + }, + "body": "Fixes: https://github.com/WordPress/gutenberg/issues/54874\r\n\r\n## What?\r\n\r\nRemoves pattern category description from inserter panel.\r\n\r\n## Why?\r\n\r\nNot all pattern categories have a description and those that do have varying length descriptions leading to additional variance in the UI.\r\n\r\n## How?\r\n\r\nRemove rendering of the category description and tweak spacing between the panel header and patterns list. \r\n\r\n**Note: This spacing will likely need tweaking further but the header and pattern list padding now total 32px between them matching the padding at the bottom of the pattern list**\r\n\r\n## Testing Instructions\r\n\r\n1. Open the post editor\r\n2. Open the Block Inserter and select the patterns tab\r\n3. Navigate through various pattern categories and ensure no category descriptions are shown\r\n\r\n## Screenshots or screencast \r\n\r\n\"Screenshot\"Screenshot\r\n\"Screenshot\"Screenshot\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54894/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54894/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33780", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54892", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33780/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33780/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33780/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33780", - "id": 956788321, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAwMzI5OTY1", - "number": 33780, - "title": "fix: broken link in documentation to block support mechanism", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54892/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54892/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54892/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54892", + "id": 1916429821, + "node_id": "PR_kwDOBNHdeM5bYtvS", + "number": 54892, + "title": "Patterns: add a new spec for for adding an unsynced pattern", "user": { - "login": "RhnSharma", - "id": 22129063, - "node_id": "MDQ6VXNlcjIyMTI5MDYz", - "avatar_url": "https://avatars.githubusercontent.com/u/22129063?v=4", + "login": "glendaviesnz", + "id": 3629020, + "node_id": "MDQ6VXNlcjM2MjkwMjA=", + "avatar_url": "https://avatars.githubusercontent.com/u/3629020?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/RhnSharma", - "html_url": "https://github.com/RhnSharma", - "followers_url": "https://api.github.com/users/RhnSharma/followers", - "following_url": "https://api.github.com/users/RhnSharma/following{/other_user}", - "gists_url": "https://api.github.com/users/RhnSharma/gists{/gist_id}", - "starred_url": "https://api.github.com/users/RhnSharma/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/RhnSharma/subscriptions", - "organizations_url": "https://api.github.com/users/RhnSharma/orgs", - "repos_url": "https://api.github.com/users/RhnSharma/repos", - "events_url": "https://api.github.com/users/RhnSharma/events{/privacy}", - "received_events_url": "https://api.github.com/users/RhnSharma/received_events", + "url": "https://api.github.com/users/glendaviesnz", + "html_url": "https://github.com/glendaviesnz", + "followers_url": "https://api.github.com/users/glendaviesnz/followers", + "following_url": "https://api.github.com/users/glendaviesnz/following{/other_user}", + "gists_url": "https://api.github.com/users/glendaviesnz/gists{/gist_id}", + "starred_url": "https://api.github.com/users/glendaviesnz/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/glendaviesnz/subscriptions", + "organizations_url": "https://api.github.com/users/glendaviesnz/orgs", + "repos_url": "https://api.github.com/users/glendaviesnz/repos", + "events_url": "https://api.github.com/users/glendaviesnz/events{/privacy}", + "received_events_url": "https://api.github.com/users/glendaviesnz/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "An existing feature is broken." + "description": "Issues or PRs that relate to code quality" }, { - "id": 567484057, - "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Documentation", - "name": "[Type] Developer Documentation", - "color": "bfd4f2", + "id": 1882657161, + "node_id": "MDU6TGFiZWwxODgyNjU3MTYx", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Patterns", + "name": "[Feature] Patterns", + "color": "fbca04", "default": false, - "description": "" + "description": "A collection of blocks that can be synced (previously reusable blocks) or unsynced" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], - "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", - "description": null, + "assignee": { + "login": "glendaviesnz", + "id": 3629020, + "node_id": "MDQ6VXNlcjM2MjkwMjA=", + "avatar_url": "https://avatars.githubusercontent.com/u/3629020?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/glendaviesnz", + "html_url": "https://github.com/glendaviesnz", + "followers_url": "https://api.github.com/users/glendaviesnz/followers", + "following_url": "https://api.github.com/users/glendaviesnz/following{/other_user}", + "gists_url": "https://api.github.com/users/glendaviesnz/gists{/gist_id}", + "starred_url": "https://api.github.com/users/glendaviesnz/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/glendaviesnz/subscriptions", + "organizations_url": "https://api.github.com/users/glendaviesnz/orgs", + "repos_url": "https://api.github.com/users/glendaviesnz/repos", + "events_url": "https://api.github.com/users/glendaviesnz/events{/privacy}", + "received_events_url": "https://api.github.com/users/glendaviesnz/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "glendaviesnz", + "id": 3629020, + "node_id": "MDQ6VXNlcjM2MjkwMjA=", + "avatar_url": "https://avatars.githubusercontent.com/u/3629020?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/glendaviesnz", + "html_url": "https://github.com/glendaviesnz", + "followers_url": "https://api.github.com/users/glendaviesnz/followers", + "following_url": "https://api.github.com/users/glendaviesnz/following{/other_user}", + "gists_url": "https://api.github.com/users/glendaviesnz/gists{/gist_id}", + "starred_url": "https://api.github.com/users/glendaviesnz/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/glendaviesnz/subscriptions", + "organizations_url": "https://api.github.com/users/glendaviesnz/orgs", + "repos_url": "https://api.github.com/users/glendaviesnz/repos", + "events_url": "https://api.github.com/users/glendaviesnz/events{/privacy}", + "received_events_url": "https://api.github.com/users/glendaviesnz/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, "creator": { "login": "github-actions[bot]", "id": 41898282, @@ -7184,39 +8115,169 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 0, - "created_at": "2021-07-30T14:17:38Z", - "updated_at": "2021-08-04T09:15:30Z", - "closed_at": "2021-08-04T09:14:57Z", + "comments": 2, + "created_at": "2023-09-27T22:33:16Z", + "updated_at": "2023-09-28T07:55:44Z", + "closed_at": "2023-09-28T07:55:16Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33780", - "html_url": "https://github.com/WordPress/gutenberg/pull/33780", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33780.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33780.patch" + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54892", + "html_url": "https://github.com/WordPress/gutenberg/pull/54892", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54892.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54892.patch", + "merged_at": "2023-09-28T07:55:16Z" + }, + "body": "## What?\r\nAdds an e2e spec for adding an unsynced pattern in the post editor.\r\n\r\n## Why?\r\nTo try and guard against future regressions like https://github.com/WordPress/gutenberg/pull/54804.\r\n\r\n## How?\r\nAdds a new spec that goes through the flow of adding an unsynced pattern in the post editor, checking that it is not mistakingly added as synced, and checking that it is then available in the inserter, and gets inserted as a plain block.\r\n\r\n## Testing Instructions\r\n\r\n- Check that CI tests pass\r\n- Check test locally with `npm run test:e2e:playwright specs/editor/various/unsynced-pattern.spec.js`\r\n\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54892/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54892/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54890", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54890/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54890/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54890/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54890", + "id": 1916234211, + "node_id": "PR_kwDOBNHdeM5bYCMh", + "number": 54890, + "title": "Update versions in WP for 6.4", + "user": { + "login": "annezazu", + "id": 26996883, + "node_id": "MDQ6VXNlcjI2OTk2ODgz", + "avatar_url": "https://avatars.githubusercontent.com/u/26996883?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/annezazu", + "html_url": "https://github.com/annezazu", + "followers_url": "https://api.github.com/users/annezazu/followers", + "following_url": "https://api.github.com/users/annezazu/following{/other_user}", + "gists_url": "https://api.github.com/users/annezazu/gists{/gist_id}", + "starred_url": "https://api.github.com/users/annezazu/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/annezazu/subscriptions", + "organizations_url": "https://api.github.com/users/annezazu/orgs", + "repos_url": "https://api.github.com/users/annezazu/repos", + "events_url": "https://api.github.com/users/annezazu/events{/privacy}", + "received_events_url": "https://api.github.com/users/annezazu/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 567484057, + "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Developer%20Documentation", + "name": "[Type] Developer Documentation", + "color": "bfd4f2", + "default": false, + "description": "Documentation for developers" + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nFixes #33778\r\nFix a broken link to block support mechanism in `theme-json.md`.\r\n\r\nHi @Mamaduka, how does this look?\r\nLet me know if this needs any changes.\r\nThanks\r\n\r\n## Types of changes\r\n\r\n Bug fix (non-breaking change which fixes an issue) \r\n\r\n\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "comments": 3, + "created_at": "2023-09-27T20:05:19Z", + "updated_at": "2023-10-02T14:43:40Z", + "closed_at": "2023-10-02T07:53:27Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54890", + "html_url": "https://github.com/WordPress/gutenberg/pull/54890", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54890.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54890.patch", + "merged_at": "2023-10-02T07:53:27Z" + }, + "body": "Quick update to the Versions in WP doc for 6.4 with beta 1 out in the world.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54890/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54890/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33779", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54887", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33779/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33779/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33779/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33779", - "id": 956687808, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAwMjQzMzA1", - "number": 33779, - "title": "URL Details: Avoid PHP notice when parsing protocol-relative icon URLs", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54887/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54887/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54887/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54887", + "id": 1916148734, + "node_id": "PR_kwDOBNHdeM5bXvkS", + "number": 54887, + "title": "Block Editor: Update strings in blocks 'RenameModal' component", "user": { "login": "Mamaduka", "id": 240569, @@ -7239,22 +8300,31 @@ }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", "default": false, - "description": "An existing feature is broken." + "description": "A suggestion for improvement." }, { - "id": 1838782557, - "node_id": "MDU6TGFiZWwxODM4NzgyNTU3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Link%20Editing", - "name": "[Feature] Link Editing", - "color": "fbca04", + "id": 596965480, + "node_id": "MDU6TGFiZWw1OTY5NjU0ODA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Internationalization%20(i18n)", + "name": "Internationalization (i18n)", + "color": "e881e2", "default": false, - "description": "Link components (LinkControl, URLInput) and integrations (RichText link formatting)" + "description": "Issues or PRs related to internationalization efforts" + }, + { + "id": 1248494790, + "node_id": "MDU6TGFiZWwxMjQ4NDk0Nzkw", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Block%20editor", + "name": "[Package] Block editor", + "color": "ed2572", + "default": false, + "description": "/packages/block-editor" } ], "state": "closed", @@ -7302,13 +8372,13 @@ } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -7331,122 +8401,116 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 0, - "created_at": "2021-07-30T12:09:09Z", - "updated_at": "2021-07-30T14:14:09Z", - "closed_at": "2021-07-30T14:13:37Z", + "comments": 2, + "created_at": "2023-09-27T18:58:27Z", + "updated_at": "2023-09-29T12:05:00Z", + "closed_at": "2023-09-27T20:13:04Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33779", - "html_url": "https://github.com/WordPress/gutenberg/pull/33779", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33779.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33779.patch" - }, - "body": "## Description\r\nSites might use protocol-relative URLs for icons. When a similar URL is parsed with `parse_url`, it doesn't return schema and triggered PHP notice.\r\n\r\nExample: https://3v4l.org/SFEiZ\r\n\r\n## How has this been tested?\r\n1. Create a post.\r\n2. Add a paragraph with a link to `https://twitter.com/`\r\n3. Display rich URL preview.\r\n4. WP shouldn't log the `PHP Notice: Undefined index: scheme` message.\r\n\r\n## Types of changes\r\nBugfix\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54887", + "html_url": "https://github.com/WordPress/gutenberg/pull/54887", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54887.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54887.patch", + "merged_at": "2023-09-27T20:13:04Z" + }, + "body": "## What?\r\nFixes #54872.\r\n\r\nPR simplifies the action announcement message text in blocks `RenameModal` component. The submit action only resolves in two states - \"reset\" and \"changed,\" let's make them part of the message.\r\n\r\n## Why?\r\nTo make translations easier.\r\n\r\n## Testing Instructions\r\nAll CI checks pass. There are no changes in component behavior.\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54887/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54887/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33777", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54886", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33777/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33777/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33777/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33777", - "id": 956555230, - "node_id": "MDExOlB1bGxSZXF1ZXN0NzAwMTMwNjkz", - "number": 33777, - "title": "Enable ability to remove a link from the Nav Link block in the Nav Block", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54886/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54886/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54886/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54886", + "id": 1916142985, + "node_id": "PR_kwDOBNHdeM5bXuTW", + "number": 54886, + "title": "Font Library: Changed the OTF mime type expected value to be what PHP returns", "user": { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", + "login": "pbking", + "id": 146530, + "node_id": "MDQ6VXNlcjE0NjUzMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/146530?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", + "url": "https://api.github.com/users/pbking", + "html_url": "https://github.com/pbking", + "followers_url": "https://api.github.com/users/pbking/followers", + "following_url": "https://api.github.com/users/pbking/following{/other_user}", + "gists_url": "https://api.github.com/users/pbking/gists{/gist_id}", + "starred_url": "https://api.github.com/users/pbking/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/pbking/subscriptions", + "organizations_url": "https://api.github.com/users/pbking/orgs", + "repos_url": "https://api.github.com/users/pbking/repos", + "events_url": "https://api.github.com/users/pbking/events{/privacy}", + "received_events_url": "https://api.github.com/users/pbking/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 1225853227, - "node_id": "MDU6TGFiZWwxMjI1ODUzMjI3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Navigation", - "name": "[Block] Navigation", - "color": "6767e5", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 4254348202, + "node_id": "LA_kwDOBNHdeM79lDOq", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20PHP%20backport", + "name": "Needs PHP backport", + "color": "64436E", + "default": false, + "description": "Needs PHP backport to Core" + }, + { + "id": 4366600186, + "node_id": "LA_kwDOBNHdeM8AAAABBEUH-g", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Typography", + "name": "[Feature] Typography", + "color": "fbca04", "default": false, - "description": "" + "description": "Font and typography-related issues and PRs" } ], "state": "closed", "locked": false, - "assignee": { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", - "type": "User", - "site_admin": false - } - ], + "assignee": null, + "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -7469,149 +8533,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 9, - "created_at": "2021-07-30T09:04:31Z", - "updated_at": "2021-08-03T12:59:45Z", - "closed_at": "2021-08-03T12:59:19Z", + "comments": 3, + "created_at": "2023-09-27T18:54:01Z", + "updated_at": "2023-10-02T09:41:20Z", + "closed_at": "2023-09-28T16:13:48Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33777", - "html_url": "https://github.com/WordPress/gutenberg/pull/33777", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33777.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33777.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nIn https://github.com/WordPress/gutenberg/issues/18866 we see that it is impossible to remove a link from the Nav Link block once it's been added. That's not good.\r\n\r\n[I've already added a `Unlink` feature to the link UI in the format library](https://github.com/WordPress/gutenberg/pull/32541) for rich text and I've been meaning to port it over to the Nav Block link implementation.\r\n\r\nThis PR enables the ability to unset links on the Nav Link block using the `Unlink` button in the link UI.\r\n\r\n**Note**: we are intentionally not mirroring this unlink behaviour in the block toolbar for [the reasons outlined in this comment](https://github.com/WordPress/gutenberg/pull/33777#issuecomment-889829952).\r\n\r\n## How has this been tested?\r\n\r\n* Create a new Post.\r\n* Add Nav Block.\r\n* Add a custom link to anything you want.\r\n* Click on link.\r\n* See `Unlink` button in popover.\r\n* Click button.\r\n* Remove is removed and the UI of the `Nav Link` block should be reset to default state.\r\n* Check you can click and re-add the link as required.\r\n* Check you can do the same in the Nav Editor screen.\r\n\r\n## Screenshots \r\n\r\n\r\n#### Post Editor\r\nhttps://user-images.githubusercontent.com/444434/127629489-927586d7-6bb8-49eb-85a9-b09e3de7263e.mp4\r\n\r\n\r\n#### Nav Editor\r\nhttps://user-images.githubusercontent.com/444434/127629484-e5837372-a98c-40a8-8678-7afd8d48b98f.mp4\r\n\r\n\r\n\r\n\r\n## Types of changes\r\nNew feature (non-breaking change which adds functionality)\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54886", + "html_url": "https://github.com/WordPress/gutenberg/pull/54886", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54886.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54886.patch", + "merged_at": "2023-09-28T16:13:48Z" + }, + "body": "## What?\r\nChanges the expected mime type for 'otf' files to be `application/vnd.ms-opentype`\r\n\r\n## Why?\r\nThe [expected](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types) value is `font/otf` however calls to `finfo_file()` are returning `application/vnd.ms-opentype` as the mime type which cause files with .otf file extensions to to be denied upload.\r\n\r\nNote: I haven't figured out why the font mime type is so out-of-date while the others have improved. It may be due to the specific OTF files? If that is the case then I haven't found any OTF files myself that return any different value.\r\n\r\n\r\n## Testing Instructions\r\nUsing the Font Library UI upload an OTF font file file.\r\n\r\nIt should work.\r\n\r\n\r\n[Lato-Regular.otf.zip](https://github.com/WordPress/gutenberg/files/12742349/Lato-Regular.otf.zip)\r\n\r\n\r\nFixes: https://github.com/WordPress/gutenberg/issues/54759\r\n\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54886/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54886/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33771", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54884", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33771/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33771/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33771/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33771", - "id": 956384942, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5OTg5NDU2", - "number": 33771, - "title": "Add error boundaries to widget screens", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54884/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54884/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54884/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54884", + "id": 1915996838, + "node_id": "PR_kwDOBNHdeM5bXPAk", + "number": 54884, + "title": "Use list role instead of listbox in patterns list", "user": { - "login": "talldan", - "id": 677833, - "node_id": "MDQ6VXNlcjY3NzgzMw==", - "avatar_url": "https://avatars.githubusercontent.com/u/677833?v=4", + "login": "kevin940726", + "id": 7753001, + "node_id": "MDQ6VXNlcjc3NTMwMDE=", + "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/talldan", - "html_url": "https://github.com/talldan", - "followers_url": "https://api.github.com/users/talldan/followers", - "following_url": "https://api.github.com/users/talldan/following{/other_user}", - "gists_url": "https://api.github.com/users/talldan/gists{/gist_id}", - "starred_url": "https://api.github.com/users/talldan/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/talldan/subscriptions", - "organizations_url": "https://api.github.com/users/talldan/orgs", - "repos_url": "https://api.github.com/users/talldan/repos", - "events_url": "https://api.github.com/users/talldan/events{/privacy}", - "received_events_url": "https://api.github.com/users/talldan/received_events", + "url": "https://api.github.com/users/kevin940726", + "html_url": "https://github.com/kevin940726", + "followers_url": "https://api.github.com/users/kevin940726/followers", + "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", + "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", + "organizations_url": "https://api.github.com/users/kevin940726/orgs", + "repos_url": "https://api.github.com/users/kevin940726/repos", + "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", + "received_events_url": "https://api.github.com/users/kevin940726/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680825, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", - "name": "[Type] Enhancement", - "color": "3993a3", - "default": false, - "description": "A suggestion for improvement." - }, - { - "id": 1414926647, - "node_id": "MDU6TGFiZWwxNDE0OTI2NjQ3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Edit%20Widgets", - "name": "[Package] Edit Widgets", - "color": "ed2572", - "default": false, - "description": "/packages/edit-widgets" - }, - { - "id": 2463256422, - "node_id": "MDU6TGFiZWwyNDYzMjU2NDIy", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Backport%20to%20WP%20Minor%20Release", - "name": "Backport to WP Minor Release", - "color": "491d8e", + "id": 546517042, + "node_id": "MDU6TGFiZWw1NDY1MTcwNDI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Focus]%20Accessibility%20(a11y)", + "name": "[Focus] Accessibility (a11y)", + "color": "efde5d", "default": false, - "description": "PRs to be back-ported to a WordPress minor release." + "description": "Changes that impact accessibility and need corresponding review (e.g. markup changes)." }, { - "id": 2632875097, - "node_id": "MDU6TGFiZWwyNjMyODc1MDk3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Widgets%20Customizer", - "name": "[Feature] Widgets Customizer", + "id": 1882657161, + "node_id": "MDU6TGFiZWwxODgyNjU3MTYx", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Patterns", + "name": "[Feature] Patterns", "color": "fbca04", "default": false, - "description": "Ability to add and edit blocks in Customize → Widgets." + "description": "A collection of blocks that can be synced (previously reusable blocks) or unsynced" } ], "state": "closed", "locked": false, "assignee": { - "login": "talldan", - "id": 677833, - "node_id": "MDQ6VXNlcjY3NzgzMw==", - "avatar_url": "https://avatars.githubusercontent.com/u/677833?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/talldan", - "html_url": "https://github.com/talldan", - "followers_url": "https://api.github.com/users/talldan/followers", - "following_url": "https://api.github.com/users/talldan/following{/other_user}", - "gists_url": "https://api.github.com/users/talldan/gists{/gist_id}", - "starred_url": "https://api.github.com/users/talldan/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/talldan/subscriptions", - "organizations_url": "https://api.github.com/users/talldan/orgs", - "repos_url": "https://api.github.com/users/talldan/repos", - "events_url": "https://api.github.com/users/talldan/events{/privacy}", - "received_events_url": "https://api.github.com/users/talldan/received_events", - "type": "User", - "site_admin": false + "login": "kevin940726", + "id": 7753001, + "node_id": "MDQ6VXNlcjc3NTMwMDE=", + "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/kevin940726", + "html_url": "https://github.com/kevin940726", + "followers_url": "https://api.github.com/users/kevin940726/followers", + "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", + "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", + "organizations_url": "https://api.github.com/users/kevin940726/orgs", + "repos_url": "https://api.github.com/users/kevin940726/repos", + "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", + "received_events_url": "https://api.github.com/users/kevin940726/received_events", + "type": "User", + "site_admin": false }, "assignees": [ { - "login": "talldan", - "id": 677833, - "node_id": "MDQ6VXNlcjY3NzgzMw==", - "avatar_url": "https://avatars.githubusercontent.com/u/677833?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/talldan", - "html_url": "https://github.com/talldan", - "followers_url": "https://api.github.com/users/talldan/followers", - "following_url": "https://api.github.com/users/talldan/following{/other_user}", - "gists_url": "https://api.github.com/users/talldan/gists{/gist_id}", - "starred_url": "https://api.github.com/users/talldan/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/talldan/subscriptions", - "organizations_url": "https://api.github.com/users/talldan/orgs", - "repos_url": "https://api.github.com/users/talldan/repos", - "events_url": "https://api.github.com/users/talldan/events{/privacy}", - "received_events_url": "https://api.github.com/users/talldan/received_events", + "login": "kevin940726", + "id": 7753001, + "node_id": "MDQ6VXNlcjc3NTMwMDE=", + "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/kevin940726", + "html_url": "https://github.com/kevin940726", + "followers_url": "https://api.github.com/users/kevin940726/followers", + "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", + "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", + "organizations_url": "https://api.github.com/users/kevin940726/orgs", + "repos_url": "https://api.github.com/users/kevin940726/repos", + "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", + "received_events_url": "https://api.github.com/users/kevin940726/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -7634,308 +8696,116 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-07-30T04:14:40Z", - "updated_at": "2021-08-02T07:33:24Z", - "closed_at": "2021-08-02T03:20:39Z", - "author_association": "CONTRIBUTOR", + "comments": 3, + "created_at": "2023-09-27T17:07:28Z", + "updated_at": "2023-09-29T14:26:42Z", + "closed_at": "2023-09-28T02:16:51Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33771", - "html_url": "https://github.com/WordPress/gutenberg/pull/33771", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33771.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33771.patch" - }, - "body": "## Description\r\nCloses #33620\r\n\r\nAdds error boundaries to the widgets screens. Previously users have reported JavaScript errors (like those solved by #33618) cause a blank white screen with very little information.\r\n\r\nThis PR at least adds a message and a Copy Error button. The edit widgets screen also has an 'Attempt Recovery' button, but I didn't add this to the customizer screen, as the customizer is a little more complex. When I attempted to do so, I found that the `activeSidebarControl` state was lost, so recovery would never work.\r\n\r\nThe ErrorBoundary component is also in need of refactoring and improvement, but this PR would be good to backport to a minor release, so I'd prefer to keep it simple.\r\n\r\n## How has this been tested?\r\n### Appearance > Widgets screen\r\n1. Have your dev environment running and add some code to throw an error in a widget screen component. e.g. add `throw new Error( 'Test' );` to somewhere like the Header component.\r\n2. Load the editor\r\n3. Observe the notice\r\n4. Copy the error and paste it somewhere, it should be the same as the error message thrown\r\n5. Click attempt recovery, observe the editor reloads, but you'll encounter the same error again\r\n\r\n### Appearance > Customize > Widgets screen\r\n1. Have your dev environment running and add some code to throw an error in a widget screen component. e.g. add `throw new Error( 'Test' );` to somewhere like the Header component.\r\n2. Load the editor\r\n3. Observe the notice\r\n4. Copy the error and paste it somewhere, it should be the same as the error message thrown\r\n\r\n## Screenshots \r\n### Appearance > Widgets screen\r\n\"Screenshot\r\n\r\n### Appearance > Customize > Widgets screen\r\n\"Screenshot\r\n\r\n## Types of changes\r\n\r\n\r\nNew feature (non-breaking change which adds functionality) \r\n\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54884", + "html_url": "https://github.com/WordPress/gutenberg/pull/54884", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54884.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54884.patch", + "merged_at": "2023-09-28T02:16:51Z" + }, + "body": "\r\n\r\n## What?\r\n\r\nA follow-up to https://github.com/WordPress/gutenberg/pull/52357. It was discussed in https://github.com/WordPress/gutenberg/issues/52009#issuecomment-1619832166 to implement the patterns in `list` not `listbox`, but it seems like we missed it in https://github.com/WordPress/gutenberg/pull/52357. This PR fixes that.\r\n\r\n## Why?\r\n\r\nFor accessibility and simplicity.\r\n\r\n## How?\r\n\r\nRemove `role=\"listbox\"` and tweak e2e tests.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\nCI should pass.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n1. Visit Site editor -> Patterns.\r\n2. Tabbing through each pattern should announce the title and the description in screen readers.\r\n\r\n## Screenshots or screencast \r\nN/A", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54884/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54884/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33764", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54878", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33764/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33764/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33764/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33764", - "id": 956032331, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5Njk0MDMy", - "number": 33764, - "title": "[Documentation] Add missing comma", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54878/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54878/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54878/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54878", + "id": 1915807057, + "node_id": "PR_kwDOBNHdeM5bWlk4", + "number": 54878, + "title": "Image: Ensure Expand on Click toggle is shown if block-level lightbox setting exists", "user": { - "login": "mrleemon", - "id": 2060659, - "node_id": "MDQ6VXNlcjIwNjA2NTk=", - "avatar_url": "https://avatars.githubusercontent.com/u/2060659?v=4", + "login": "artemiomorales", + "id": 5360536, + "node_id": "MDQ6VXNlcjUzNjA1MzY=", + "avatar_url": "https://avatars.githubusercontent.com/u/5360536?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/mrleemon", - "html_url": "https://github.com/mrleemon", - "followers_url": "https://api.github.com/users/mrleemon/followers", - "following_url": "https://api.github.com/users/mrleemon/following{/other_user}", - "gists_url": "https://api.github.com/users/mrleemon/gists{/gist_id}", - "starred_url": "https://api.github.com/users/mrleemon/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/mrleemon/subscriptions", - "organizations_url": "https://api.github.com/users/mrleemon/orgs", - "repos_url": "https://api.github.com/users/mrleemon/repos", - "events_url": "https://api.github.com/users/mrleemon/events{/privacy}", - "received_events_url": "https://api.github.com/users/mrleemon/received_events", + "url": "https://api.github.com/users/artemiomorales", + "html_url": "https://github.com/artemiomorales", + "followers_url": "https://api.github.com/users/artemiomorales/followers", + "following_url": "https://api.github.com/users/artemiomorales/following{/other_user}", + "gists_url": "https://api.github.com/users/artemiomorales/gists{/gist_id}", + "starred_url": "https://api.github.com/users/artemiomorales/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/artemiomorales/subscriptions", + "organizations_url": "https://api.github.com/users/artemiomorales/orgs", + "repos_url": "https://api.github.com/users/artemiomorales/repos", + "events_url": "https://api.github.com/users/artemiomorales/events{/privacy}", + "received_events_url": "https://api.github.com/users/artemiomorales/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 567484057, - "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Documentation", - "name": "[Type] Developer Documentation", - "color": "bfd4f2", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "" - } - ], - "state": "closed", - "locked": false, - "assignee": null, - "assignees": [], - "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", - "description": null, - "creator": { - "login": "github-actions[bot]", - "id": 41898282, - "node_id": "MDM6Qm90NDE4OTgyODI=", - "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/github-actions%5Bbot%5D", - "html_url": "https://github.com/apps/github-actions", - "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", - "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", - "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", - "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", - "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", - "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", - "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", - "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", - "type": "Bot", - "site_admin": false + "description": "An existing feature does not function as intended" }, - "open_issues": 0, - "closed_issues": 113, - "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", - "closed_at": null - }, - "comments": 0, - "created_at": "2021-07-29T16:55:31Z", - "updated_at": "2021-07-30T04:59:01Z", - "closed_at": "2021-07-30T04:58:41Z", - "author_association": "CONTRIBUTOR", - "active_lock_reason": null, - "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33764", - "html_url": "https://github.com/WordPress/gutenberg/pull/33764", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33764.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33764.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\n## Screenshots \r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null - }, - { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33761", - "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33761/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33761/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33761/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33761", - "id": 955949660, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5NjI0MDM2", - "number": 33761, - "title": "GitHub Templates: Fix spacing in bug report template", - "user": { - "login": "ryelle", - "id": 541093, - "node_id": "MDQ6VXNlcjU0MTA5Mw==", - "avatar_url": "https://avatars.githubusercontent.com/u/541093?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/ryelle", - "html_url": "https://github.com/ryelle", - "followers_url": "https://api.github.com/users/ryelle/followers", - "following_url": "https://api.github.com/users/ryelle/following{/other_user}", - "gists_url": "https://api.github.com/users/ryelle/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ryelle/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ryelle/subscriptions", - "organizations_url": "https://api.github.com/users/ryelle/orgs", - "repos_url": "https://api.github.com/users/ryelle/repos", - "events_url": "https://api.github.com/users/ryelle/events{/privacy}", - "received_events_url": "https://api.github.com/users/ryelle/received_events", - "type": "User", - "site_admin": false - }, - "labels": [ { - "id": 1032028862, - "node_id": "MDU6TGFiZWwxMDMyMDI4ODYy", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Project%20Management", - "name": "[Type] Project Management", - "color": "e55ead", + "id": 1101518360, + "node_id": "MDU6TGFiZWwxMTAxNTE4MzYw", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Image", + "name": "[Block] Image", + "color": "6767e5", "default": false, - "description": "Meta-issues related to project management of Gutenberg" - } - ], - "state": "closed", - "locked": false, - "assignee": { - "login": "ryelle", - "id": 541093, - "node_id": "MDQ6VXNlcjU0MTA5Mw==", - "avatar_url": "https://avatars.githubusercontent.com/u/541093?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/ryelle", - "html_url": "https://github.com/ryelle", - "followers_url": "https://api.github.com/users/ryelle/followers", - "following_url": "https://api.github.com/users/ryelle/following{/other_user}", - "gists_url": "https://api.github.com/users/ryelle/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ryelle/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ryelle/subscriptions", - "organizations_url": "https://api.github.com/users/ryelle/orgs", - "repos_url": "https://api.github.com/users/ryelle/repos", - "events_url": "https://api.github.com/users/ryelle/events{/privacy}", - "received_events_url": "https://api.github.com/users/ryelle/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ + "description": "Affects the Image Block" + }, { - "login": "ryelle", - "id": 541093, - "node_id": "MDQ6VXNlcjU0MTA5Mw==", - "avatar_url": "https://avatars.githubusercontent.com/u/541093?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/ryelle", - "html_url": "https://github.com/ryelle", - "followers_url": "https://api.github.com/users/ryelle/followers", - "following_url": "https://api.github.com/users/ryelle/following{/other_user}", - "gists_url": "https://api.github.com/users/ryelle/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ryelle/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ryelle/subscriptions", - "organizations_url": "https://api.github.com/users/ryelle/orgs", - "repos_url": "https://api.github.com/users/ryelle/repos", - "events_url": "https://api.github.com/users/ryelle/events{/privacy}", - "received_events_url": "https://api.github.com/users/ryelle/received_events", - "type": "User", - "site_admin": false + "id": 5833813824, + "node_id": "LA_kwDOBNHdeM8AAAABW7jvQA", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Packages]%20Interactivity", + "name": "[Packages] Interactivity", + "color": "ed2572", + "default": false, + "description": "/packages/interactivity" } ], - "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", - "description": null, - "creator": { - "login": "github-actions[bot]", - "id": 41898282, - "node_id": "MDM6Qm90NDE4OTgyODI=", - "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/github-actions%5Bbot%5D", - "html_url": "https://github.com/apps/github-actions", - "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", - "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", - "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", - "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", - "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", - "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", - "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", - "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", - "type": "Bot", - "site_admin": false - }, - "open_issues": 0, - "closed_issues": 113, - "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", - "closed_at": null - }, - "comments": 0, - "created_at": "2021-07-29T15:17:03Z", - "updated_at": "2021-07-29T15:59:58Z", - "closed_at": "2021-07-29T15:59:32Z", - "author_association": "CONTRIBUTOR", - "active_lock_reason": null, - "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33761", - "html_url": "https://github.com/WordPress/gutenberg/pull/33761", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33761.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33761.patch" - }, - "body": "Follow up to #33713, which had some yml syntax issues that caused the Bug Report template to disappear. This fixes up some indentation, spacing, and moves the `required` value into the `validation` property to match the documentation.", - "performed_via_github_app": null - }, - { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33757", - "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33757/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33757/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33757/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33757", - "id": 955801397, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5NDk3NzA3", - "number": 33757, - "title": "[RNMobile] Bump SauceLabs caps", - "user": { - "login": "hypest", - "id": 1032913, - "node_id": "MDQ6VXNlcjEwMzI5MTM=", - "avatar_url": "https://avatars.githubusercontent.com/u/1032913?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/hypest", - "html_url": "https://github.com/hypest", - "followers_url": "https://api.github.com/users/hypest/followers", - "following_url": "https://api.github.com/users/hypest/following{/other_user}", - "gists_url": "https://api.github.com/users/hypest/gists{/gist_id}", - "starred_url": "https://api.github.com/users/hypest/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/hypest/subscriptions", - "organizations_url": "https://api.github.com/users/hypest/orgs", - "repos_url": "https://api.github.com/users/hypest/repos", - "events_url": "https://api.github.com/users/hypest/events{/privacy}", - "received_events_url": "https://api.github.com/users/hypest/received_events", - "type": "User", - "site_admin": false - }, - "labels": [], "state": "closed", "locked": false, "assignee": null, "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -7958,39 +8828,55 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-07-29T12:40:07Z", - "updated_at": "2021-08-03T10:19:08Z", - "closed_at": "2021-08-03T10:18:40Z", + "comments": 4, + "created_at": "2023-09-27T15:11:51Z", + "updated_at": "2023-09-29T12:04:54Z", + "closed_at": "2023-09-27T18:41:15Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33757", - "html_url": "https://github.com/WordPress/gutenberg/pull/33757", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33757.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33757.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\nBumping the Appium and iOS versions used on SauceLabs, in an attempt to improve test reliability in gutenberg-mobile.\r\n\r\ngutenberg-mobile PR: https://github.com/wordpress-mobile/gutenberg-mobile/pull/3770\r\n\r\n## How has this been tested?\r\nBy checking the mobile device CI tests on the gutenberg-mobile PR.\r\n\r\n1. Bumping the iOS version used in the iOS simulator to the latest available on SauceLabs, v14.5.\r\n2. Bumping the Appium version used in the iOS run to v1.20.1. **Note:** this is not the same version as specified in our package.json (v1.20.2) because the `.2` doesn't seem to be available yet on SauceLabs for the iOS targets (it is for Android though 🤷‍♂️).\r\n3. Bumping the Appium version used in the Android run to v1.20.2, same as the one used via package.json.\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54878", + "html_url": "https://github.com/WordPress/gutenberg/pull/54878", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54878.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54878.patch", + "merged_at": "2023-09-27T18:41:15Z" + }, + "body": "\r\n\r\n## What?\r\n\r\nIf a user turns on `Expand on Click` in the image's block settings, then subsequently sets `settings.blocks.core/image.lightbox.allowEditing` to `false`, the Expand on Click UI disappears for the image block in question when it should remain visible. This PR fixes that.\r\n\r\n## Why?\r\n\r\nUsers should be able to access their manual overrides of the Expand on Click setting, even if `allowEditing` is disabled, otherwise they are unable to modify the settings without opening the code editor.\r\n\r\n## How?\r\n\r\nIt revises a conditional check when determining whether to show the toggle or not.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n1. Add an image to a post.\r\n2. Enable the image's `Expand on Click` option.\r\n3. Save the post.\r\n4. In the theme's `theme.json`, set `settings.blocks.core/image.lightbox.allowEditing` to `false`.\r\n5. Refresh the post page and click on the image block — ensure that the `Expand on Click` option is still visible.\r\n6. Now, reset the `Expand on Click` option to default using the Settings dropdown, and verify that the toggle disappears due to `allowEditing` being false and the block-level setting being removed.\r\n\r\n### Testing Instructions for Keyboard\r\n N/A\r\n\r\n## Screenshots or screencast \r\n\r\nhttps://github.com/WordPress/gutenberg/assets/5360536/d3062d65-e035-4748-b02e-6d361098f0e2", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54878/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54878/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33755", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54876", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33755/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33755/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33755/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33755", - "id": 955764324, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5NDY1NzQz", - "number": 33755, - "title": "Mobile Release v1.58.1", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54876/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54876/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54876/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54876", + "id": 1915749872, + "node_id": "PR_kwDOBNHdeM5bWZAs", + "number": 54876, + "title": "Fallback to Twitter provider when embedding X URLs", "user": { "login": "fluiddot", "id": 14905380, @@ -8013,13 +8899,22 @@ }, "labels": [ { - "id": 982506020, - "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", - "name": "Mobile App - i.e. Android or iOS", - "color": "a3ef7a", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + "description": "An existing feature does not function as intended" + }, + { + "id": 1078477350, + "node_id": "MDU6TGFiZWwxMDc4NDc3MzUw", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Embed", + "name": "[Block] Embed", + "color": "6767e5", + "default": false, + "description": "Affects the Embed Block" } ], "state": "closed", @@ -8067,13 +8962,13 @@ } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -8096,401 +8991,114 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-07-29T11:57:57Z", - "updated_at": "2021-08-04T11:58:18Z", - "closed_at": "2021-07-30T17:02:04Z", + "comments": 3, + "created_at": "2023-09-27T14:43:35Z", + "updated_at": "2023-10-05T11:17:15Z", + "closed_at": "2023-09-27T16:35:10Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33755", - "html_url": "https://github.com/WordPress/gutenberg/pull/33755", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33755.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33755.patch" - }, - "body": "## Description\nRelease 1.58.1 of the react-native-editor and Gutenberg-Mobile.\n\nFor more information about this release and testing instructions, please see the related Gutenberg-Mobile PR: https://github.com/wordpress-mobile/gutenberg-mobile/pull/3769\n\n## Checklist:\n- [x] My code is tested.\n- [x] My code follows the WordPress code style. \n- [x] My code follows the accessibility standards. \n- [ ] I've tested my changes with keyboard and screen readers. \n- [x] My code has proper inline documentation. \n- [x] I've included developer documentation if appropriate. \n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). ", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54876", + "html_url": "https://github.com/WordPress/gutenberg/pull/54876", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54876.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54876.patch", + "merged_at": "2023-09-27T16:35:10Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nUse Twitter provider when embedding X URLs (e.g. `https://x.com/automattic/status/1395447061336711181`).\r\n\r\n## Why?\r\n\r\n\r\nFixes https://github.com/WordPress/gutenberg/issues/54042.\r\n\r\n## How?\r\n\r\n\r\nAdds an effect to the Embed block triggered when an embed URL fails (i.e. `cannotEmbed` is `true`). It checks if the URL points to `x.com` and replaces it with `twitter.com` as a fallback to retrieve the embed preview using the Twitter provider.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n### Web\r\n1. Open/create a post.\r\n2. Paste an X embed URL (e.g. `https://x.com/automattic/status/1395447061336711181`)\r\n3. Observe that an Embed block is created and previews the tweet.\r\n4. Add an Embed block.\r\n5. Set an X embed URL (e.g. `https://x.com/automattic/status/1395447061336711181`)\r\n6. Click on the \"Embed\" button.\r\n7. Observe that the Embed block previews the tweet.\r\n8. Try embedding a different embed URL (e.g. `https://www.youtube.com/watch?v=ssfHW5lwFZg`).\r\n9. Observe that the Embed block previews the content.\r\n\r\n### Native\r\n1. Open/create a post.\r\n2. Paste an X embed URL (e.g. `https://x.com/automattic/status/1395447061336711181`)\r\n3. Tap on the \"Create embed\" option.\r\n4. Observe that an Embed block is created and previews the tweet.\r\n5. Add an Embed block.\r\n6. Tap on the \"Add link\" button.\r\n7. Set an X embed URL (e.g. `https://x.com/automattic/status/1395447061336711181`)\r\n8. Dismiss the bottom sheet.\r\n9. Observe that the Embed block previews the tweet.\r\n10. Try embedding a different embed URL (e.g. `https://www.youtube.com/watch?v=ssfHW5lwFZg`).\r\n11. Observe that the Embed block previews the content.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\nN/A\r\n\r\n## Screenshots or screencast \r\nN/A", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54876/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54876/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33753", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54870", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33753/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33753/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33753/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33753", - "id": 955746219, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5NDUwMjY0", - "number": 33753, - "title": "Force link text to wrap in the Link UI when encountering extra long link text", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54870/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54870/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54870/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54870", + "id": 1915647677, + "node_id": "PR_kwDOBNHdeM5bWCpy", + "number": 54870, + "title": "Add a documentation page about the block editor settings", "user": { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", - "default": false, - "description": "An existing feature is broken." - }, - { - "id": 644027893, - "node_id": "MDU6TGFiZWw2NDQwMjc4OTM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20Design%20Feedback", - "name": "Needs Design Feedback", - "color": "0e8a16", + "id": 562969841, + "node_id": "MDU6TGFiZWw1NjI5Njk4NDE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Framework", + "name": "Framework", + "color": "fbca04", "default": false, - "description": "Anything that needs general design feedback." + "description": "Issues related to broader framework topics, especially as it relates to javascript" }, { - "id": 1838782557, - "node_id": "MDU6TGFiZWwxODM4NzgyNTU3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Link%20Editing", - "name": "[Feature] Link Editing", - "color": "fbca04", + "id": 567484057, + "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Developer%20Documentation", + "name": "[Type] Developer Documentation", + "color": "bfd4f2", "default": false, - "description": "Link components (LinkControl, URLInput) and integrations (RichText link formatting)" + "description": "Documentation for developers" } ], "state": "closed", "locked": false, "assignee": { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", - "type": "User", - "site_admin": false - } - ], - "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", - "description": null, - "creator": { - "login": "github-actions[bot]", - "id": 41898282, - "node_id": "MDM6Qm90NDE4OTgyODI=", - "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/github-actions%5Bbot%5D", - "html_url": "https://github.com/apps/github-actions", - "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", - "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", - "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", - "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", - "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", - "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", - "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", - "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", - "type": "Bot", - "site_admin": false - }, - "open_issues": 0, - "closed_issues": 113, - "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", - "closed_at": null - }, - "comments": 9, - "created_at": "2021-07-29T11:32:59Z", - "updated_at": "2021-07-30T14:42:36Z", - "closed_at": "2021-07-30T14:42:14Z", - "author_association": "CONTRIBUTOR", - "active_lock_reason": null, - "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33753", - "html_url": "https://github.com/WordPress/gutenberg/pull/33753", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33753.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33753.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\nCurrently in the Link UI, if the link text is particularly long then it is \"clipped\" and an ellipsis is shown. This is ok, but it does make the UI difficult to use if you are trying to [distinguish between similarly named posts](https://ibb.co/tczM3Y8).\r\n\r\nMoreover, if you enter a link which has no spaces and is very long then you encounter the same problem.\r\n\r\nThis PR resolves this by allowing the UI to wrap the link text. This allow the user to see the full link text whilst avoid any unwanted horizontal overflow.\r\n\r\nCloses https://github.com/WordPress/gutenberg/issues/33586\r\n\r\n\r\n## How has this been tested?\r\n1. Create a few posts with very long titles and publish them.\r\n2. Create a new post and add some text content.\r\n3. Create a link to one of your test posts (the ones with the long titles). \r\n4. See that the link UI wraps the long text both in edit and in preview mode.\r\n5. Create a very long freeform link with no spaces at all.\r\n6. Check that the link UI wraps the long text both in edit and in preview mode.\r\n\r\n## Screenshots \r\n\r\n\r\n\"Screen\r\n\"Screen\r\n\r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null - }, - { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33750", - "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33750/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33750/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33750/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33750", - "id": 955696398, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5NDA3ODQ3", - "number": 33750, - "title": "Scripts: Use cssnano to minimize CSS files with build", - "user": { - "login": "gziolo", - "id": 699132, - "node_id": "MDQ6VXNlcjY5OTEzMg==", - "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/gziolo", - "html_url": "https://github.com/gziolo", - "followers_url": "https://api.github.com/users/gziolo/followers", - "following_url": "https://api.github.com/users/gziolo/following{/other_user}", - "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", - "organizations_url": "https://api.github.com/users/gziolo/orgs", - "repos_url": "https://api.github.com/users/gziolo/repos", - "events_url": "https://api.github.com/users/gziolo/events{/privacy}", - "received_events_url": "https://api.github.com/users/gziolo/received_events", - "type": "User", - "site_admin": false - }, - "labels": [ - { - "id": 531680825, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", - "name": "[Type] Enhancement", - "color": "3993a3", - "default": false, - "description": "A suggestion for improvement." - }, - { - "id": 978007737, - "node_id": "MDU6TGFiZWw5NzgwMDc3Mzc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Scripts", - "name": "[Package] Scripts", - "color": "ed2572", - "default": false, - "description": "/packages/scripts" - } - ], - "state": "closed", - "locked": false, - "assignee": { - "login": "gziolo", - "id": 699132, - "node_id": "MDQ6VXNlcjY5OTEzMg==", - "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/gziolo", - "html_url": "https://github.com/gziolo", - "followers_url": "https://api.github.com/users/gziolo/followers", - "following_url": "https://api.github.com/users/gziolo/following{/other_user}", - "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", - "organizations_url": "https://api.github.com/users/gziolo/orgs", - "repos_url": "https://api.github.com/users/gziolo/repos", - "events_url": "https://api.github.com/users/gziolo/events{/privacy}", - "received_events_url": "https://api.github.com/users/gziolo/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "gziolo", - "id": 699132, - "node_id": "MDQ6VXNlcjY5OTEzMg==", - "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/gziolo", - "html_url": "https://github.com/gziolo", - "followers_url": "https://api.github.com/users/gziolo/followers", - "following_url": "https://api.github.com/users/gziolo/following{/other_user}", - "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", - "organizations_url": "https://api.github.com/users/gziolo/orgs", - "repos_url": "https://api.github.com/users/gziolo/repos", - "events_url": "https://api.github.com/users/gziolo/events{/privacy}", - "received_events_url": "https://api.github.com/users/gziolo/received_events", - "type": "User", - "site_admin": false - } - ], - "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", - "description": null, - "creator": { - "login": "github-actions[bot]", - "id": 41898282, - "node_id": "MDM6Qm90NDE4OTgyODI=", - "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/github-actions%5Bbot%5D", - "html_url": "https://github.com/apps/github-actions", - "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", - "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", - "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", - "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", - "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", - "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", - "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", - "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", - "type": "Bot", - "site_admin": false - }, - "open_issues": 0, - "closed_issues": 113, - "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", - "closed_at": null - }, - "comments": 3, - "created_at": "2021-07-29T10:28:57Z", - "updated_at": "2021-08-02T08:16:43Z", - "closed_at": "2021-08-01T08:20:16Z", - "author_association": "MEMBER", - "active_lock_reason": null, - "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33750", - "html_url": "https://github.com/WordPress/gutenberg/pull/33750", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33750.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33750.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nFollow-up for #33676 and the comment from @ocean90 https://github.com/WordPress/gutenberg/pull/33676#issuecomment-888435234:\r\n\r\n> This should probably be released as a breaking change because it can impact users which have their own PostCSS config which already includes cssnano (which optimize-css-assets-webpack-plugin uses by default) with a custom config for [allowed optimisations](https://cssnano.co/docs/optimisations/).\r\n> \r\n> Since sass-loader seems to minify the CSS already, should we maybe extend the default PostCSS config to use cssnano instead?\r\n> \r\n> Related:\r\n> * [github.com/WordPress/gutenberg/blob/44212878dcbf6f4616266eb0fb4756293a471615/tools/webpack/shared.js#L82-L93](https://github.com/WordPress/gutenberg/blob/44212878dcbf6f4616266eb0fb4756293a471615/tools/webpack/shared.js#L82-L93)\r\n> * [github.com/WordPress/gutenberg/blob/44212878dcbf6f4616266eb0fb4756293a471615/packages/scripts/config/webpack.config.js#L47-L55](https://github.com/WordPress/gutenberg/blob/44212878dcbf6f4616266eb0fb4756293a471615/packages/scripts/config/webpack.config.js#L47-L55)\r\n> * [github.com/WordPress/gutenberg/blob/44212878dcbf6f4616266eb0fb4756293a471615/packages/postcss-plugins-preset/lib/index.js](https://github.com/WordPress/gutenberg/blob/44212878dcbf6f4616266eb0fb4756293a471615/packages/postcss-plugins-preset/lib/index.js)\r\n\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\nI created a custom block with:\r\n\r\n```bash\r\nnpx wp-create-block example --no-wp-scripts\r\ncd example\r\n../node_modules/.bin/wp-scripts build\r\n```\r\n\r\nI updated used CSS files to end with `.css` to ensure that the output is properly minimized.\r\n\r\nI also ensured that the output of CSS files isn't minified in the dev mode with:\r\n```bash\r\n../node_modules/.bin/wp-scripts start\r\n```\r\n\r\nI added `cssnano.config.js` file in the root folder of the project with the following content:\r\n\r\n```js\r\nmodule.exports = {\r\n\tpreset: [ require( 'cssnano-preset-default' ), { discardComments: false } ],\r\n};\r\n```\r\n\r\nI also had to install `cssnano-preset-default' with:\r\n\r\n```bash\r\nnpm i cssnano-preset-default --save-dev\r\n```\r\n\r\nWhen I run:\r\n\r\n```bash\r\n../node_modules/.bin/wp-scripts build\r\n```\r\n\r\nI can see that comments in the CSS files are preserved. It means that the custom config is properly loaded when present.\r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\nEnhancement.\r\n\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null - }, - { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33749", - "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33749/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33749/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33749/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33749", - "id": 955687904, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5NDAwNTQ3", - "number": 33749, - "title": "Lazy render block types in the inserter", - "user": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", - "type": "User", - "site_admin": false - }, - "labels": [ - { - "id": 596962434, - "node_id": "MDU6TGFiZWw1OTY5NjI0MzQ=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Inserter", - "name": "[Feature] Inserter", - "color": "fbca04", - "default": false, - "description": "" - }, - { - "id": 731693674, - "node_id": "MDU6TGFiZWw3MzE2OTM2NzQ=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Performance", - "name": "[Type] Performance", - "color": "f3f4fe", - "default": false, - "description": "" - } - ], - "state": "closed", - "locked": false, - "assignee": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", "type": "User", "site_admin": false }, @@ -8517,13 +9125,13 @@ } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -8546,39 +9154,55 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 16, - "created_at": "2021-07-29T10:18:38Z", - "updated_at": "2021-07-30T18:56:37Z", - "closed_at": "2021-07-30T18:56:15Z", + "comments": 0, + "created_at": "2023-09-27T13:54:40Z", + "updated_at": "2023-10-07T08:54:22Z", + "closed_at": "2023-09-28T08:54:23Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33749", - "html_url": "https://github.com/WordPress/gutenberg/pull/33749", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33749.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33749.patch" - }, - "body": "Opening the inserter is very a slow operation, it takes approximatively 360ms according to our metrics https://codehealth-riad.vercel.app and the size of the post don't have an impact there meaning on slow machines, folks could potentially notice a small lag when clicking the \"open inserter\" button.\r\n\r\nI tried to debug this using the Chrome tools, and I noticed that the biggest part of that time is spent on rendering the block types, there's just a lot of block types and the number grows with third-party blocks.\r\n\r\nThis PR uses a technique we previously used for the patterns list to make the inserter feel more responsive: render the inserter categories one by one, and then let the browser do more priority things (like actually opening the inserter) before continuing\r\n\r\n**Trace before this PR:** \r\n\"Screen\r\n\r\n**Trace after the PR**\r\n\"Screen\r\n\r\nNotice that now the trace is split into smaller chunks which allows the browser to feel more responsive.", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54870", + "html_url": "https://github.com/WordPress/gutenberg/pull/54870", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54870.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54870.patch", + "merged_at": "2023-09-28T08:54:23Z" + }, + "body": "Related #53874\r\n\r\n## What?\r\n\r\nJust documents some of the most important settings a user can pass as a prop to the `BlockEditorProvider` component. I think we're still missing the \"theme.json\" settings and styles from this list but these should be added when we decided on a stable name.\r\n\r\n### Test the documentation website\r\n\r\n```\r\ncd platform-docs\r\nnpm install\r\nnpm start\r\n```", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54870/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54870/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33748", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54866", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33748/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33748/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33748/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33748", - "id": 955676709, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5MzkxMDcx", - "number": 33748, - "title": "Fix regressed menu selection dropdown placeholder value for Nav Editor menu locations UI", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54866/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54866/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54866/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54866", + "id": 1915441696, + "node_id": "PR_kwDOBNHdeM5bVUzu", + "number": 54866, + "title": "All Nav block items to break long titles", "user": { "login": "getdave", "id": 444434, @@ -8601,31 +9225,22 @@ }, "labels": [ { - "id": 949438185, - "node_id": "MDU6TGFiZWw5NDk0MzgxODU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Regression", - "name": "[Type] Regression", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", "color": "d93f0b", "default": false, - "description": "" + "description": "An existing feature does not function as intended" }, { - "id": 2074073931, - "node_id": "MDU6TGFiZWwyMDc0MDczOTMx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Navigation%20Screen", - "name": "[Feature] Navigation Screen", - "color": "fbca04", - "default": false, - "description": "A new block-based screen intended to replace nav-menus.php." - }, - { - "id": 2536082965, - "node_id": "MDU6TGFiZWwyNTM2MDgyOTY1", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Edit%20Navigation", - "name": "[Package] Edit Navigation", - "color": "ed2572", + "id": 3229566535, + "node_id": "MDU6TGFiZWwzMjI5NTY2NTM1", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Navigation%20Link", + "name": "[Block] Navigation Link", + "color": "6767e5", "default": false, - "description": "/packages/edit-navigation" + "description": "Affects the Navigation Link Block" } ], "state": "closed", @@ -8673,13 +9288,13 @@ } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -8702,131 +9317,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-07-29T10:06:10Z", - "updated_at": "2021-07-29T11:21:22Z", - "closed_at": "2021-07-29T11:20:57Z", + "comments": 11, + "created_at": "2023-09-27T12:17:45Z", + "updated_at": "2023-10-02T15:05:39Z", + "closed_at": "2023-09-29T11:02:43Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33748", - "html_url": "https://github.com/WordPress/gutenberg/pull/33748", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33748.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33748.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nTakes over from https://github.com/WordPress/gutenberg/pull/32423#issuecomment-888903800 as the contributor seems unable to continue.\r\n\r\nCloses https://github.com/WordPress/gutenberg/issues/30330\r\n\r\n## How has this been tested?\r\n\r\n* Enable Nav Editor experiment.\r\n* Go to Nav Editor screen.\r\n* Add a menu.\r\n* Click \"Manage Locations\" in the sidebar.\r\n* See modal appear with locations for menus.\r\n* See placeholder value for the menu selection dropdown is now \"Select a Menu\".\r\n\r\n\r\n## Screenshots \r\n\r\n\"Screen\r\n\r\n\r\n## Types of changes\r\nBug fix (non-breaking change which fixes an issue)\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54866", + "html_url": "https://github.com/WordPress/gutenberg/pull/54866", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54866.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54866.patch", + "merged_at": "2023-09-29T11:02:43Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nNav block _items_ may have long titles which do not have natural word breaks. In certain cases this may causes them to overflow their container.\r\n\r\nThis PR seeks to address that by removing a (seemingly) redundant CSS proprerty thereby allowing menu item titles to wrap.\r\n\r\nCloses https://github.com/WordPress/gutenberg/issues/52298\r\n\r\n## Why?\r\n\r\n\r\nHaving menu item text break out of it's container is not good for visual design.\r\n\r\n## How?\r\n\r\n\r\nRemoves seemingly redundant property [`word-break: normal;`](https://developer.mozilla.org/en-US/docs/Web/CSS/word-break).\r\n\r\n> normal - Use the default line break rule.\r\n\r\n## Questions/concerns\r\n\r\nThis property seems to indicate it was added intentionally to cover some special case. T[he PR that added](https://github.com/WordPress/gutenberg/pull/29975) it was authored by @jasmussen but has some complexities that I don't fully understand. It's also a large PR.\r\n\r\nIt would be good to get context from @jasmussen before we look to merge this one.\r\n\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n- New Post\r\n- Add Nav block\r\n- Add a nav item with some very long title text that doesn't contain any spaces (e.g. `Supercalifragilisticexpialidocious`).\r\n- Set the Navigation to \"vertivcal\" orientation in the sidebar controls.\r\n- Create Columns block with 3 columns. Add a background to each column to make things clearer.\r\n- Drag the Nav block into Column 1.\r\n- See that Nav item `Supercalifragilisticexpialidocious` does not overflow the boundary (as [per the Issue](https://github.com/WordPress/gutenberg/issues/52298)) but instead wraps.\r\n- Add another Nav block which is in horizontal orientation and check this change does not effect those items.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n\r\n\r\nhttps://github.com/WordPress/gutenberg/assets/444434/a34c9883-bc89-415f-9b47-64fdb3599a11\r\n\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54866/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54866/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33747", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54865", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33747/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33747/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33747/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33747", - "id": 955662605, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5Mzc5MTg0", - "number": 33747, - "title": "Improve likelihood of getting rich link previews by modifying UA string for URL Details REST API endpoint", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54865/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54865/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54865/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54865", + "id": 1915417802, + "node_id": "PR_kwDOBNHdeM5bVPbS", + "number": 54865, + "title": "E2E Tests: Revert temporary fixes", "user": { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 813888420, - "node_id": "MDU6TGFiZWw4MTM4ODg0MjA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/REST%20API%20Interaction", - "name": "REST API Interaction", - "color": "fbca04", + "id": 531680824, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjQ=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Task", + "name": "[Type] Task", + "color": "fef2c0", "default": false, - "description": "" + "description": "Issues or PRs that have been broken down into an individual action to take" }, { - "id": 1838782557, - "node_id": "MDU6TGFiZWwxODM4NzgyNTU3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Link%20Editing", - "name": "[Feature] Link Editing", - "color": "fbca04", + "id": 1699237849, + "node_id": "MDU6TGFiZWwxNjk5MjM3ODQ5", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20E2E%20Tests", + "name": "[Package] E2E Tests", + "color": "ed2572", "default": false, - "description": "Link components (LinkControl, URLInput) and integrations (RichText link formatting)" + "description": "/packages/e2e-tests" } ], "state": "closed", "locked": false, "assignee": { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -8849,56 +9480,72 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 6, - "created_at": "2021-07-29T09:49:52Z", - "updated_at": "2021-07-30T14:59:01Z", - "closed_at": "2021-07-30T14:07:41Z", - "author_association": "CONTRIBUTOR", + "comments": 1, + "created_at": "2023-09-27T12:06:18Z", + "updated_at": "2023-09-27T14:06:52Z", + "closed_at": "2023-09-27T14:06:21Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33747", - "html_url": "https://github.com/WordPress/gutenberg/pull/33747", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33747.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33747.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nAs described in https://github.com/WordPress/gutenberg/issues/33722#issuecomment-888341130 the UA string seems to be causing the `url-details` endpoint requests to be rejected by certain prominent web properties such as Google. This appears to be due to the default UA string used by the WP HTTP API being very similar to the UA string used by \"Pingback\" requests - many people block such requests.\r\n\r\nIf we change the UA string to something else the failing requests start to work. Therefore we need to use a different UA string from the default provided by the WP HTTP API.\r\n\r\nThe REST API Core team have advised that we should _not_ be seen to be spoofing the UA string. However, we can _modify_ it as long as it still has something to identify it as \"WordPress\".\r\n\r\nTherefore this PR tweaks the UA string to:\r\n\r\n* Use `WP` instead of `WordPress`.\r\n* Includes the feature name in the UA string in order that properties can still easily identify it and block it if they wish to do so.\r\n\r\nCloses https://github.com/WordPress/gutenberg/issues/33722\r\n\r\n## How has this been tested?\r\n\r\n### On trunk\r\n\r\n1. New Post.\r\n2. Open browser dev tools `Console`.\r\n3. Type `copy(wpApiSettings.nonce)`.\r\n4. Update the following URL replacing `YOUR_NONCE_HERE` with the value from the previous step.\r\n\r\n```\r\nhttp://localhost:8888/index.php?rest_route=%2F__experimental%2Furl-details&url=http%3A%2F%2Fwww.google.com&_locale=user&_wpnonce=YOUR_NONCE_HERE\r\n```\r\n5. Paste into your browser.\r\n6. See the \"404\" response.\r\n```\r\n{\r\ncode: \"no_response\",\r\nmessage: \"URL not found. Response returned a non-200 status code for this URL.\",\r\ndata: {\r\nstatus: 404\r\n}\r\n}\r\n```\r\n\r\n### On this PR branch\r\n\r\n1. Repeat the steps above. \r\n2. This time see the request suceed and rich results returned, eg:\r\n\r\n```\r\n{\r\ntitle: \"Google\",\r\nicon: \"\",\r\ndescription: \"\",\r\nimage: \"https://www.google.com/logos/doodles/2021/doodle-champion-island-games-july-29-6753651837109022-2xa.gif\"\r\n}\r\n```\r\n\r\n## Screenshots \r\n\r\n## Types of changes\r\nBug fix (non-breaking change which fixes an issue)\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54865", + "html_url": "https://github.com/WordPress/gutenberg/pull/54865", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54865.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54865.patch", + "merged_at": "2023-09-27T14:06:21Z" + }, + "body": "## What?\r\nPR reverts temporary fixes from `datepicker` and `scheduling` e2e tests.\r\n\r\nThe bug was fixed in WP Core - https://core.trac.wordpress.org/changeset/56717.\r\n\r\n## Testing Instructions\r\nCI check should pass.\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54865/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54865/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33746", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54863", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33746/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33746/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33746/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33746", - "id": 955641959, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5MzYxODkw", - "number": 33746, - "title": "ESLint Plugin: Include .jsx extenstion when linting import statements", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54863/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54863/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54863/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54863", + "id": 1915368610, + "node_id": "PR_kwDOBNHdeM5bVEUx", + "number": 54863, + "title": "Site Editor: Avoid same key warnings in template parts area listings", "user": { - "login": "gziolo", - "id": 699132, - "node_id": "MDQ6VXNlcjY5OTEzMg==", - "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/gziolo", - "html_url": "https://github.com/gziolo", - "followers_url": "https://api.github.com/users/gziolo/followers", - "following_url": "https://api.github.com/users/gziolo/following{/other_user}", - "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", - "organizations_url": "https://api.github.com/users/gziolo/orgs", - "repos_url": "https://api.github.com/users/gziolo/repos", - "events_url": "https://api.github.com/users/gziolo/events{/privacy}", - "received_events_url": "https://api.github.com/users/gziolo/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, @@ -8910,70 +9557,70 @@ "name": "[Type] Bug", "color": "d93f0b", "default": false, - "description": "An existing feature is broken." + "description": "An existing feature does not function as intended" }, { - "id": 1159632801, - "node_id": "MDU6TGFiZWwxMTU5NjMyODAx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20ESLint%20plugin", - "name": "[Package] ESLint plugin", - "color": "ed2572", + "id": 2706102777, + "node_id": "MDU6TGFiZWwyNzA2MTAyNzc3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Site%20Editor", + "name": "[Feature] Site Editor", + "color": "fbca04", "default": false, - "description": "/packages/eslint-plugin" + "description": "Related to the overarching Site Editor (formerly \"full site editing\")" } ], "state": "closed", "locked": false, "assignee": { - "login": "gziolo", - "id": 699132, - "node_id": "MDQ6VXNlcjY5OTEzMg==", - "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/gziolo", - "html_url": "https://github.com/gziolo", - "followers_url": "https://api.github.com/users/gziolo/followers", - "following_url": "https://api.github.com/users/gziolo/following{/other_user}", - "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", - "organizations_url": "https://api.github.com/users/gziolo/orgs", - "repos_url": "https://api.github.com/users/gziolo/repos", - "events_url": "https://api.github.com/users/gziolo/events{/privacy}", - "received_events_url": "https://api.github.com/users/gziolo/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "gziolo", - "id": 699132, - "node_id": "MDQ6VXNlcjY5OTEzMg==", - "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/gziolo", - "html_url": "https://github.com/gziolo", - "followers_url": "https://api.github.com/users/gziolo/followers", - "following_url": "https://api.github.com/users/gziolo/following{/other_user}", - "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", - "organizations_url": "https://api.github.com/users/gziolo/orgs", - "repos_url": "https://api.github.com/users/gziolo/repos", - "events_url": "https://api.github.com/users/gziolo/events{/privacy}", - "received_events_url": "https://api.github.com/users/gziolo/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -8996,82 +9643,138 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-07-29T09:24:57Z", - "updated_at": "2021-08-03T13:56:04Z", - "closed_at": "2021-08-03T13:55:39Z", + "comments": 6, + "created_at": "2023-09-27T11:42:59Z", + "updated_at": "2023-10-02T09:39:42Z", + "closed_at": "2023-09-28T05:00:41Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33746", - "html_url": "https://github.com/WordPress/gutenberg/pull/33746", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33746.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33746.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nFixes #32408.\r\n\r\nReported by @galloppinggryphon:\r\n\r\n> When using `@wordpress/eslint-plugin`, ESLint is reporting the following error while trying to resolve `.jsx` files:\r\n> \r\n> Unable to resolve path to module './path/jsx-file-sans-extension'. eslint(import/no-unresolved)\r\n> Adding the extension to the import statement makes the file resolve. All `.js` files resolve normally.\r\n\r\nA similar setting is present when TypeScript is found in the project:\r\n\r\nhttps://github.com/WordPress/gutenberg/blob/85cfab17de6a23a73a6163472d1c9d85581d86c2/packages/eslint-plugin/configs/recommended.js#L33-L36\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\n`npm run lint-js` should work as before. \r\n\r\nIt also needs to be tested in the 3rd party project that doesn't have TypeScript installed.", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54863", + "html_url": "https://github.com/WordPress/gutenberg/pull/54863", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54863.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54863.patch", + "merged_at": "2023-09-28T05:00:41Z" + }, + "body": "## What?\r\nAlternative to #54861.\r\n\r\nPR prevents the React \"same key\" warnings in the `HomeTemplateDetails` and `TemplateAreas` components when the template part is used multiple times on the same page.\r\n\r\nThis fix uses the template part block `clientId` for the `key` prop, which is unique for each block.\r\n\r\n## Why?\r\nEditors shouldn't display warnings or errors in the console, plus list items with the same keys can have unwanted side effects.\r\n\r\n\r\n## How?\r\nUse block's `clientId` for keys.\r\n\r\nI also did a minor cleanup for the `useSelect` hook - [18a00ac](https://github.com/WordPress/gutenberg/pull/54863/commits/18a00ac4e89f2308da8abab738fcf2fe9a04d589).\r\n\r\n* Removes unnecessary dependencies. This allows us to remove the `useNavigator` hook used in the component.\r\n* Cleaned up some variable assignments since I was in the area.\r\n\r\n## Testing Instructions\r\n1. Enable the TT4 theme.\r\n2. Open the Blog Home template. It has multiple template parts with the same slug on the page.\r\n3. Confirm there are no errors when opening the template in `edit` or `view` mode.\r\n4. Confirm the `HomeTemplateDetails` component works as before.\r\n\r\n### Testing Instructions for Keyboard\r\nSame\r\n\r\n## Screenshots or screencast \r\n![CleanShot 2023-09-27 at 15 19 03](https://github.com/WordPress/gutenberg/assets/240569/d95462d2-05ed-4976-ab00-f48ec739bbe2)\r\n![CleanShot 2023-09-27 at 15 19 11](https://github.com/WordPress/gutenberg/assets/240569/4144b584-8590-4d70-aad6-e47031110737)\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54863/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54863/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33745", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54862", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33745/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33745/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33745/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33745", - "id": 955570802, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5MzAxOTQz", - "number": 33745, - "title": "[RNMobile][Embed block] Disable paragraph transform", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54862/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54862/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54862/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54862", + "id": 1915356971, + "node_id": "PR_kwDOBNHdeM5bVBq-", + "number": 54862, + "title": "Docs: Rename Block Hooks handbook page to Block Filters", "user": { - "login": "ceyhun", - "id": 1845482, - "node_id": "MDQ6VXNlcjE4NDU0ODI=", - "avatar_url": "https://avatars.githubusercontent.com/u/1845482?v=4", + "login": "ockham", + "id": 96308, + "node_id": "MDQ6VXNlcjk2MzA4", + "avatar_url": "https://avatars.githubusercontent.com/u/96308?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/ceyhun", - "html_url": "https://github.com/ceyhun", - "followers_url": "https://api.github.com/users/ceyhun/followers", - "following_url": "https://api.github.com/users/ceyhun/following{/other_user}", - "gists_url": "https://api.github.com/users/ceyhun/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ceyhun/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ceyhun/subscriptions", - "organizations_url": "https://api.github.com/users/ceyhun/orgs", - "repos_url": "https://api.github.com/users/ceyhun/repos", - "events_url": "https://api.github.com/users/ceyhun/events{/privacy}", - "received_events_url": "https://api.github.com/users/ceyhun/received_events", + "url": "https://api.github.com/users/ockham", + "html_url": "https://github.com/ockham", + "followers_url": "https://api.github.com/users/ockham/followers", + "following_url": "https://api.github.com/users/ockham/following{/other_user}", + "gists_url": "https://api.github.com/users/ockham/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ockham/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ockham/subscriptions", + "organizations_url": "https://api.github.com/users/ockham/orgs", + "repos_url": "https://api.github.com/users/ockham/repos", + "events_url": "https://api.github.com/users/ockham/events{/privacy}", + "received_events_url": "https://api.github.com/users/ockham/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 982506020, - "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", - "name": "Mobile App - i.e. Android or iOS", - "color": "a3ef7a", + "id": 567484057, + "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Developer%20Documentation", + "name": "[Type] Developer Documentation", + "color": "bfd4f2", "default": false, - "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + "description": "Documentation for developers" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "ockham", + "id": 96308, + "node_id": "MDQ6VXNlcjk2MzA4", + "avatar_url": "https://avatars.githubusercontent.com/u/96308?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ockham", + "html_url": "https://github.com/ockham", + "followers_url": "https://api.github.com/users/ockham/followers", + "following_url": "https://api.github.com/users/ockham/following{/other_user}", + "gists_url": "https://api.github.com/users/ockham/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ockham/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ockham/subscriptions", + "organizations_url": "https://api.github.com/users/ockham/orgs", + "repos_url": "https://api.github.com/users/ockham/repos", + "events_url": "https://api.github.com/users/ockham/events{/privacy}", + "received_events_url": "https://api.github.com/users/ockham/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "ockham", + "id": 96308, + "node_id": "MDQ6VXNlcjk2MzA4", + "avatar_url": "https://avatars.githubusercontent.com/u/96308?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ockham", + "html_url": "https://github.com/ockham", + "followers_url": "https://api.github.com/users/ockham/followers", + "following_url": "https://api.github.com/users/ockham/following{/other_user}", + "gists_url": "https://api.github.com/users/ockham/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ockham/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ockham/subscriptions", + "organizations_url": "https://api.github.com/users/ockham/orgs", + "repos_url": "https://api.github.com/users/ockham/repos", + "events_url": "https://api.github.com/users/ockham/events{/privacy}", + "received_events_url": "https://api.github.com/users/ockham/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -9094,131 +9797,138 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 3, - "created_at": "2021-07-29T08:01:33Z", - "updated_at": "2021-07-30T07:20:33Z", - "closed_at": "2021-07-30T07:20:01Z", - "author_association": "MEMBER", + "comments": 5, + "created_at": "2023-09-27T11:37:37Z", + "updated_at": "2023-09-28T06:53:36Z", + "closed_at": "2023-09-27T13:09:11Z", + "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33745", - "html_url": "https://github.com/WordPress/gutenberg/pull/33745", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33745.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33745.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\n\r\nDisabling paragraph transform for embed block on mobile/native as a workaround to fix https://github.com/wordpress-mobile/gutenberg-mobile/issues/3762\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\nSee: https://github.com/wordpress-mobile/gutenberg-mobile/issues/3762\r\n\r\n## Screenshots \r\n\r\nN/A\r\n\r\n## Types of changes\r\n\r\nBug fix (non-breaking change which fixes an issue)\r\n\r\n\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54862", + "html_url": "https://github.com/WordPress/gutenberg/pull/54862", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54862.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54862.patch", + "merged_at": "2023-09-27T13:09:11Z" + }, + "body": "## What?\r\n\r\nRename the handbook page currently entitled \"Block Hooks\" to \"Block Filters\".\r\n\r\n## Why?\r\n\r\nTo distinguish from the new [\"Block Hooks\" feature](https://core.trac.wordpress.org/ticket/59313), which is conceptually very different.\r\n\r\n## How?\r\n\r\nBy renaming the handbook page from \"Block Hooks\" to \"Block Filters\".\r\n\r\nAFAICT, the handbook page makes no direct reference to hooks, other than the title; furthermore, the relevant client-side `@wordpress/` package happens to be called `@wordpress/hooks`. Reading the page, it’s all about filters though (both on the client and server sides), whereas \"hooks\" traditionally denotes the union of filters and actions — the latter of which are pretty much absent from the page.\r\n\r\nFinally, note that the filename has already been `block-filters.md` before.\r\n\r\nThus, changing the title to \"Block Filters\" seems warranted.\r\n\r\nFlagged by @juanmaguitar in Slack.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54862/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54862/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33742", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54861", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33742/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33742/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33742/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33742", - "id": 955514565, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5MjU0MjM0", - "number": 33742, - "title": "Template Mode: Remove 'per_page' argument from the template data selector", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54861/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54861/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54861/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54861", + "id": 1915325797, + "node_id": "PR_kwDOBNHdeM5bU6oV", + "number": 54861, + "title": "Fix warning when a template calls a template area twice", "user": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "MaggieCabrera", + "id": 3593343, + "node_id": "MDQ6VXNlcjM1OTMzNDM=", + "avatar_url": "https://avatars.githubusercontent.com/u/3593343?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", - "type": "User", - "site_admin": false - }, - "labels": [ - { - "id": 731693674, - "node_id": "MDU6TGFiZWw3MzE2OTM2NzQ=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Performance", - "name": "[Type] Performance", - "color": "f3f4fe", - "default": false, - "description": "" - }, + "url": "https://api.github.com/users/MaggieCabrera", + "html_url": "https://github.com/MaggieCabrera", + "followers_url": "https://api.github.com/users/MaggieCabrera/followers", + "following_url": "https://api.github.com/users/MaggieCabrera/following{/other_user}", + "gists_url": "https://api.github.com/users/MaggieCabrera/gists{/gist_id}", + "starred_url": "https://api.github.com/users/MaggieCabrera/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/MaggieCabrera/subscriptions", + "organizations_url": "https://api.github.com/users/MaggieCabrera/orgs", + "repos_url": "https://api.github.com/users/MaggieCabrera/repos", + "events_url": "https://api.github.com/users/MaggieCabrera/events{/privacy}", + "received_events_url": "https://api.github.com/users/MaggieCabrera/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ { - "id": 2978205898, - "node_id": "MDU6TGFiZWwyOTc4MjA1ODk4", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Template%20Editing%20Mode", - "name": "[Feature] Template Editing Mode", - "color": "FBCA04", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "" + "description": "An existing feature does not function as intended" } ], "state": "closed", "locked": false, "assignee": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "MaggieCabrera", + "id": 3593343, + "node_id": "MDQ6VXNlcjM1OTMzNDM=", + "avatar_url": "https://avatars.githubusercontent.com/u/3593343?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/MaggieCabrera", + "html_url": "https://github.com/MaggieCabrera", + "followers_url": "https://api.github.com/users/MaggieCabrera/followers", + "following_url": "https://api.github.com/users/MaggieCabrera/following{/other_user}", + "gists_url": "https://api.github.com/users/MaggieCabrera/gists{/gist_id}", + "starred_url": "https://api.github.com/users/MaggieCabrera/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/MaggieCabrera/subscriptions", + "organizations_url": "https://api.github.com/users/MaggieCabrera/orgs", + "repos_url": "https://api.github.com/users/MaggieCabrera/repos", + "events_url": "https://api.github.com/users/MaggieCabrera/events{/privacy}", + "received_events_url": "https://api.github.com/users/MaggieCabrera/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "MaggieCabrera", + "id": 3593343, + "node_id": "MDQ6VXNlcjM1OTMzNDM=", + "avatar_url": "https://avatars.githubusercontent.com/u/3593343?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/MaggieCabrera", + "html_url": "https://github.com/MaggieCabrera", + "followers_url": "https://api.github.com/users/MaggieCabrera/followers", + "following_url": "https://api.github.com/users/MaggieCabrera/following{/other_user}", + "gists_url": "https://api.github.com/users/MaggieCabrera/gists{/gist_id}", + "starred_url": "https://api.github.com/users/MaggieCabrera/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/MaggieCabrera/subscriptions", + "organizations_url": "https://api.github.com/users/MaggieCabrera/orgs", + "repos_url": "https://api.github.com/users/MaggieCabrera/repos", + "events_url": "https://api.github.com/users/MaggieCabrera/events{/privacy}", + "received_events_url": "https://api.github.com/users/MaggieCabrera/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -9241,86 +9951,93 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-07-29T06:41:40Z", - "updated_at": "2021-07-29T07:25:16Z", - "closed_at": "2021-07-29T07:24:49Z", - "author_association": "MEMBER", + "comments": 14, + "created_at": "2023-09-27T11:22:37Z", + "updated_at": "2023-09-29T18:47:47Z", + "closed_at": "2023-09-28T15:25:23Z", + "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33742", - "html_url": "https://github.com/WordPress/gutenberg/pull/33742", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33742.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33742.patch" - }, - "body": "## Description\r\nRemoves `per_page` query argument in TemplatesPanel component when fetching WP templates. This argument isn't supported by the `templates` endpoint nor by the `get_block_templates` function.\r\n\r\nThis also allows reusing data from the store between the `getEditedPostTemplate` and TemplatesPanel component and removes extra API requests.\r\n\r\n## Screenshots\r\n| Before | After |\r\n| ------------- | ------------- |\r\n| ![template-mode-before](https://user-images.githubusercontent.com/240569/127444078-cca5f00b-106d-4ed0-bc62-bbf70ba17d53.png) | ![template-mode-after](https://user-images.githubusercontent.com/240569/127444070-fdb82e5c-d3c2-45f8-b694-0325f3cb9fab.png) |\r\n\r\n## How has this been tested?\r\n1. Enable TT1 Blocks theme\r\n2. Create a new post.\r\n3. The sidebar should render templates selection.\r\n\r\n## Types of changes\r\nPerformance\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54861", + "html_url": "https://github.com/WordPress/gutenberg/pull/54861", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54861.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54861.patch", + "merged_at": "2023-09-28T15:25:23Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nThis PR removes duplicate template areas from the sidebar when in Site View.\r\n\r\nThe list of areas is based on the template parts used on the page, but we may use some template parts twice. \r\n\r\n## Why?\r\nWe only want to display these template areas and corresponding parts once in the sidebar even if they are used multiple times.\r\n\r\n## How?\r\nBy making sure that `getFilteredTemplatePartBlocks` only returns one instance of each `templateId`, making them unique\r\n\r\n## Screenshot\r\n\"Screenshot\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54861/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54861/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33740", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54856", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33740/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33740/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33740/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33740", - "id": 955404874, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5MTYxMDM4", - "number": 33740, - "title": "[RNMobile] Fix UBE's Inaccessible \"More\" Toolbar Item on Android", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54856/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54856/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54856/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54856", + "id": 1915129551, + "node_id": "PR_kwDOBNHdeM5bUUof", + "number": 54856, + "title": "Don’t use TypeScript files in scripts package", "user": { - "login": "SiobhyB", - "id": 2998162, - "node_id": "MDQ6VXNlcjI5OTgxNjI=", - "avatar_url": "https://avatars.githubusercontent.com/u/2998162?v=4", + "login": "swissspidy", + "id": 841956, + "node_id": "MDQ6VXNlcjg0MTk1Ng==", + "avatar_url": "https://avatars.githubusercontent.com/u/841956?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/SiobhyB", - "html_url": "https://github.com/SiobhyB", - "followers_url": "https://api.github.com/users/SiobhyB/followers", - "following_url": "https://api.github.com/users/SiobhyB/following{/other_user}", - "gists_url": "https://api.github.com/users/SiobhyB/gists{/gist_id}", - "starred_url": "https://api.github.com/users/SiobhyB/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/SiobhyB/subscriptions", - "organizations_url": "https://api.github.com/users/SiobhyB/orgs", - "repos_url": "https://api.github.com/users/SiobhyB/repos", - "events_url": "https://api.github.com/users/SiobhyB/events{/privacy}", - "received_events_url": "https://api.github.com/users/SiobhyB/received_events", + "url": "https://api.github.com/users/swissspidy", + "html_url": "https://github.com/swissspidy", + "followers_url": "https://api.github.com/users/swissspidy/followers", + "following_url": "https://api.github.com/users/swissspidy/following{/other_user}", + "gists_url": "https://api.github.com/users/swissspidy/gists{/gist_id}", + "starred_url": "https://api.github.com/users/swissspidy/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/swissspidy/subscriptions", + "organizations_url": "https://api.github.com/users/swissspidy/orgs", + "repos_url": "https://api.github.com/users/swissspidy/repos", + "events_url": "https://api.github.com/users/swissspidy/events{/privacy}", + "received_events_url": "https://api.github.com/users/swissspidy/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", - "default": false, - "description": "An existing feature is broken." - }, - { - "id": 982506020, - "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", - "name": "Mobile App - i.e. Android or iOS", - "color": "a3ef7a", + "id": 615503111, + "node_id": "MDU6TGFiZWw2MTU1MDMxMTE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Automated%20Testing", + "name": "[Type] Automated Testing", + "color": "111111", "default": false, - "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + "description": "Testing infrastructure changes impacting the execution of end-to-end (E2E) and/or unit tests." }, { - "id": 1999059055, - "node_id": "MDU6TGFiZWwxOTk5MDU5MDU1", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/CSS%20Styling", - "name": "CSS Styling", - "color": "63e2d2", + "id": 978007737, + "node_id": "MDU6TGFiZWw5NzgwMDc3Mzc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Scripts", + "name": "[Package] Scripts", + "color": "ed2572", "default": false, - "description": "Related to editor and front end styles, CSS-specific issues." + "description": "/packages/scripts" } ], "state": "closed", @@ -9328,13 +10045,13 @@ "assignee": null, "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -9357,91 +10074,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-07-29T02:48:49Z", - "updated_at": "2021-08-02T18:22:05Z", - "closed_at": "2021-08-02T18:21:37Z", - "author_association": "CONTRIBUTOR", + "comments": 5, + "created_at": "2023-09-27T09:52:57Z", + "updated_at": "2023-10-02T15:05:25Z", + "closed_at": "2023-09-27T12:32:34Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33740", - "html_url": "https://github.com/WordPress/gutenberg/pull/33740", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33740.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33740.patch" - }, - "body": "Fixes https://github.com/WordPress/gutenberg/issues/33592\r\n\r\n`gutenberg-mobile`: https://github.com/wordpress-mobile/gutenberg-mobile/pull/3771\r\n\r\n## Brief Description\r\n\r\nThe \"more\" toolbar item isn't currently accessible from the Unsupported Block Editor (UBE) within the Android app. As outlined in https://github.com/WordPress/gutenberg/issues/33592, tapping on the toolbar items results in a flash of a dropdown menu, but that menu instantly disappears. This PR includes a fix for that.\r\n\r\n## More Detailed/Technical Description\r\n\r\nThe UBE is essentially the same editor that loads in the web, with a key difference being that we override some of the default CSS in [the /editor-style-overrides.css file](https://github.com/WordPress/gutenberg/blob/trunk/packages/react-native-bridge/common/gutenberg-web-single-block/editor-style-overrides.css). In that CSS file, we're currently attempting to hide all but one item in the dropdown menu associated with the \"more\" toolbar item. The only item we want to display is the link to **Show More Settings**.\r\n\r\n| Default web view | HTML + class names |\r\n| ------------- | ------------- |\r\n| | |\r\n\r\nYou'll see from the above screenshot of the dropdown menu's HTML, that there aren't any specific class names we can target to achieve our goal of only displaying the **Show More Settings** link. As such, [the `:first-child` selector](https://developer.mozilla.org/en-US/docs/Web/CSS/:first-child) is [being used here to target it](https://github.com/WordPress/gutenberg/blob/trunk/packages/react-native-bridge/common/gutenberg-web-single-block/editor-style-overrides.css#L68):\r\n\r\n```\r\n/* Remove all buttons from the component menu group inside \\'...\\' button in block toolbar */\r\n.components-menu-group > div > button:not(:first-child) {\r\n display: none;\r\n}\r\n```\r\n\r\n**Show More Settings** isn't _always_ the first child in the dropdown menu. The **Copy** link is the menu's first initial child, with **Show More Settings** being added via JavaScript when the \"more\" toolbar item is added. Although the CSS should still work in theory, as it seems to in Safari, this seems to be the crutch of the reason Chrome isn't applying the selector as expected. Both menus are _at some point_ removed, causing an empty dropdown menu to disappear.\r\n\r\nWith this PR, I've been able to work around the issue with a somewhat hacky-feeling addition to the custom CSS we're using, but I believe it may be the best solution. Specifically, I've targeted the **Copy** link so that it's never technically removed from the document and only hidden by reducing its height to zero. \r\n\r\nFurther details around debugging this issue and commentary around the solution can be found in the **Developer Notes** section below.\r\n\r\n_**Sidenote:** As [I was able to replicate the problem in much older versions of the app](https://github.com/WordPress/gutenberg/issues/33592#issuecomment-884402519), and I'm fairly certain it'd have been spotted when the UBE was first released if it had existed back then, I'm speculating that this has come up due to a change in the way Chrome applies the `:first-child` CSS selector. As outlined in https://github.com/WordPress/gutenberg/issues/21874, this highlights some fragility with the way the UBE is being styled, which is a wider discussion than intended for this specific PR._\r\n\r\n## How has this been tested?\r\n\r\n_**Precondition:** To follow these steps, you'll first need to create a post or page on the web that contains a block that's unsupported in the apps. At the time of writing, the tag cloud block is an option. You will also need to be working on a WordPress.com or a Jetpack-connected site._ \r\n\r\nThe testing steps are as follows:\r\n\r\n* In the Android app, navigate to a post or page containing an unsupported block. \r\n* Tap the **?** icon to the unsupported block's upper right and then **Edit using web editor**.\r\n* Tap the \"more\" icon in the editor's toolbar i.e. the last icon in the toolbar's list, it has three dots.\r\n* Verify that you see a **More Settings** menu item that you're able to tap on and use with no issues.\r\n\r\nIt'd also be helpful to test the flow on iOS to ensure these changes don't have any unintended side effects on that platform.\r\n\r\n## Screenshots \r\n\r\nA working version of the dropdown menu on a Pixel 2 emulator, with the changes from this branch:\r\n\r\nhttps://user-images.githubusercontent.com/2998162/127540128-79f89b00-7f71-4258-8c61-e3098f2c3708.mov\r\n\r\n## Developer Notes\r\n\r\n
\r\nProcess for Debugging on Chrome\r\n\r\nThe most straightforward way to debug this issue is to [use Chrome's Device Mode to simulate a mobile device](https://developer.chrome.com/docs/devtools/device-mode/) on the web and then [use the CSS tools](https://developer.chrome.com/docs/devtools/css/) to add the following custom CSS, which is being added to the apps via [the /editor-style-overrides.css file](https://github.com/WordPress/gutenberg/blob/trunk/packages/react-native-bridge/common/gutenberg-web-single-block/editor-style-overrides.css):\r\n\r\n```\r\n.components-menu-group > div > button:not( :first-child ) {\r\n\tdisplay: none;\r\n}\r\n\r\ncomponents-dropdown-menu__menu > div:not( :first-child ) {\r\n\tdisplay: none;\r\n}\r\n```\r\n\r\nWith the above CSS added, it's possible to follow the general steps for reproducing the issue outlined in the original issue at https://github.com/WordPress/gutenberg/issues/33592. We can then use Chrome's inspector tools to further experiment with a CSS fix and add breakpoints to dig further. \r\n\r\nFor our purposes, we're only attempting to update the first portion of the above snippet, the portion with the `.components-menu-group > div > button:not( :first-child )` selector.\r\n\r\nIt's also worth highlighting that, all spaces are removed when the CSS is bundled for the app, which can create issues with the CSS e.g. \".components-dropdown-menu__menu .components-menu-group\" will load as \".components-dropdown-menu__menu.components-menu-group\", with no space together.\r\n\r\n
\r\n\r\n
\r\nExperiments\r\n\r\nI tried different variations of `:first-child` and `:first-of-type`, including the following two snippets, but wasn't able to find a way to get these selectors to work with our goal of only displays **Show More Settings**: \r\n\r\n```\r\n.components-menu-group > div > button {\r\n\tdisplay: none;\r\n}\r\n\r\n\r\n.components-menu-group > div > button:first-child {\r\n\tdisplay: block;\r\n}\r\n```\r\n\r\n```\r\n.components-menu-group > div > button {\r\n\tdisplay: none;\r\n}\r\n\r\n\r\n.components-menu-group > div > button:first-of-type {\r\n\tdisplay: block;\r\n}\r\n```\r\n\r\n
\r\n\r\n
\r\nSolution\r\n\r\nThe only CSS I found to achieve the goal was the following, which stops the second menu item (**Copy**) being removed from the document and hides it from view by setting a height of zero and applying `display: none` to its content.\r\n\r\nI believe the core issue is that **Copy** is the dropdown menu's `:first-child` when the page first loads, with **Show More Settings** being dynamically added upon click. As such, the existing CSS removes both at some point, causing an empty dropdown menu. The below CSS gets around that problem by never removing **Copy** completely from the document.\r\n\r\n```\r\n.components-dropdown-menu__menu\r\n\t> .components-menu-group\r\n\t> div\r\n\t> button:nth-child( 2 ) {\r\n\tdisplay: block;\r\n\tmin-height: 0;\r\n\theight: 0;\r\n\tpadding: 0;\r\n}\r\n\r\n.components-menu-group > div > button:nth-child( 2 ) > span {\r\n\tdisplay: none;\r\n}\r\n\r\n.components-button:focus:not( :disabled ) {\r\n\tbox-shadow: none;\r\n}\r\n```\r\n\r\n
\r\n\r\n\r\n## Types of changes\r\n\r\nThis PR introduces a bug fix (a non-breaking change that fixes an issue).\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54856", + "html_url": "https://github.com/WordPress/gutenberg/pull/54856", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54856.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54856.patch", + "merged_at": "2023-09-27T12:32:34Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nThis is a follow-up to #53108, where I added TS files to the scripts package instead of plain JS files.\r\n\r\n## Why?\r\n\r\n\r\nI just realized that the scripts package is not using TypeScript, so these files were not converted to JS on build.\r\n\r\n## How?\r\n\r\n\r\nConverts the two files to plain old JS files.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54856/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54856/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33739", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54855", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33739/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33739/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33739/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33739", - "id": 955312278, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5MDgxNzI0", - "number": 33739, - "title": "Fix justification for button block when selected", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54855/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54855/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54855/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54855", + "id": 1915073415, + "node_id": "PR_kwDOBNHdeM5bUIwZ", + "number": 54855, + "title": "Add new e2e test for creating a pattern", "user": { - "login": "mkaz", - "id": 45363, - "node_id": "MDQ6VXNlcjQ1MzYz", - "avatar_url": "https://avatars.githubusercontent.com/u/45363?v=4", + "login": "kevin940726", + "id": 7753001, + "node_id": "MDQ6VXNlcjc3NTMwMDE=", + "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/mkaz", - "html_url": "https://github.com/mkaz", - "followers_url": "https://api.github.com/users/mkaz/followers", - "following_url": "https://api.github.com/users/mkaz/following{/other_user}", - "gists_url": "https://api.github.com/users/mkaz/gists{/gist_id}", - "starred_url": "https://api.github.com/users/mkaz/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/mkaz/subscriptions", - "organizations_url": "https://api.github.com/users/mkaz/orgs", - "repos_url": "https://api.github.com/users/mkaz/repos", - "events_url": "https://api.github.com/users/mkaz/events{/privacy}", - "received_events_url": "https://api.github.com/users/mkaz/received_events", + "url": "https://api.github.com/users/kevin940726", + "html_url": "https://github.com/kevin940726", + "followers_url": "https://api.github.com/users/kevin940726/followers", + "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", + "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", + "organizations_url": "https://api.github.com/users/kevin940726/orgs", + "repos_url": "https://api.github.com/users/kevin940726/repos", + "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", + "received_events_url": "https://api.github.com/users/kevin940726/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 1112969457, - "node_id": "MDU6TGFiZWwxMTEyOTY5NDU3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Buttons", - "name": "[Block] Buttons", - "color": "6767e5", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "" + "description": "Issues or PRs that relate to code quality" }, { - "id": 2463256422, - "node_id": "MDU6TGFiZWwyNDYzMjU2NDIy", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Backport%20to%20WP%20Minor%20Release", - "name": "Backport to WP Minor Release", - "color": "491d8e", + "id": 1882657161, + "node_id": "MDU6TGFiZWwxODgyNjU3MTYx", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Patterns", + "name": "[Feature] Patterns", + "color": "fbca04", "default": false, - "description": "PRs to be back-ported to a WordPress minor release." + "description": "A collection of blocks that can be synced (previously reusable blocks) or unsynced" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "kevin940726", + "id": 7753001, + "node_id": "MDQ6VXNlcjc3NTMwMDE=", + "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/kevin940726", + "html_url": "https://github.com/kevin940726", + "followers_url": "https://api.github.com/users/kevin940726/followers", + "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", + "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", + "organizations_url": "https://api.github.com/users/kevin940726/orgs", + "repos_url": "https://api.github.com/users/kevin940726/repos", + "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", + "received_events_url": "https://api.github.com/users/kevin940726/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "kevin940726", + "id": 7753001, + "node_id": "MDQ6VXNlcjc3NTMwMDE=", + "avatar_url": "https://avatars.githubusercontent.com/u/7753001?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/kevin940726", + "html_url": "https://github.com/kevin940726", + "followers_url": "https://api.github.com/users/kevin940726/followers", + "following_url": "https://api.github.com/users/kevin940726/following{/other_user}", + "gists_url": "https://api.github.com/users/kevin940726/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kevin940726/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kevin940726/subscriptions", + "organizations_url": "https://api.github.com/users/kevin940726/orgs", + "repos_url": "https://api.github.com/users/kevin940726/repos", + "events_url": "https://api.github.com/users/kevin940726/events{/privacy}", + "received_events_url": "https://api.github.com/users/kevin940726/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -9464,238 +10237,310 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-07-28T23:40:16Z", - "updated_at": "2021-08-02T16:48:16Z", - "closed_at": "2021-08-02T16:46:43Z", + "comments": 3, + "created_at": "2023-09-27T09:21:56Z", + "updated_at": "2023-09-29T14:26:36Z", + "closed_at": "2023-09-27T10:46:01Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33739", - "html_url": "https://github.com/WordPress/gutenberg/pull/33739", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33739.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33739.patch" - }, - "body": "\r\n## Description\r\n\r\nWhen selecting the button block and applying a justification, the justify doesn't apply until the box is unselected.\r\n\r\nWhat is really happening is when the block is unselected the block appender is removed, and the rules for the block appender is forcing the button all the way to the left so when removed it allows the justification to apply and the block is then centered (or right).\r\n\r\nFixes #33487\r\n\r\n## How has this been tested?\r\n\r\n1. Confirm bug by adding buttons block and justify center or right, see bug #33487\r\n2. Unselect the block to see justification applied\r\n3. Apply PR fix\r\n4. Repeat and notice justification applies immediately\r\n\r\n\r\n![button-justify](https://user-images.githubusercontent.com/45363/127409926-b8794df5-faf1-4e01-ae14-e8772e3e3930.gif)\r\n\r\n\r\n## Types of changes\r\n\r\nThis PR changes the block appender CSS rules that forced justified content all the way to the left. I did extra testing around but any additional checks are welcome to confirm no unintended consequences with the appender elsewhere.\r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54855", + "html_url": "https://github.com/WordPress/gutenberg/pull/54855", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54855.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54855.patch", + "merged_at": "2023-09-27T10:46:01Z" + }, + "body": "\r\n\r\n## What?\r\n\r\nA basic e2e test to create a new pattern in the patterns screen.\r\n\r\n## Why?\r\n\r\nTo cover some of the most critical path in the patterns page to allow us to move faster with confidence.\r\n\r\n## How?\r\n\r\nKnow your tools and write an e2e test! ✍️ \r\n\r\nNote that there are some `// TODO`s that each represents a bug. We'll look into those in follow-up PRs.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\nCI should pass\r\n\r\n### Testing Instructions for Keyboard\r\n\r\nN/A\r\n\r\n## Screenshots or screencast \r\nN/A\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54855/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54855/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33738", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54851", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33738/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33738/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33738/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33738", - "id": 955269728, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5MDQ1MjM3", - "number": 33738, - "title": "Example for rest_endpoints filter in PHP", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54851/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54851/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54851/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54851", + "id": 1914982440, + "node_id": "PR_kwDOBNHdeM5bT09x", + "number": 54851, + "title": "Fix the ShortcutProvider usage", "user": { - "login": "amir2mi", - "id": 64708228, - "node_id": "MDQ6VXNlcjY0NzA4MjI4", - "avatar_url": "https://avatars.githubusercontent.com/u/64708228?v=4", + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/amir2mi", - "html_url": "https://github.com/amir2mi", - "followers_url": "https://api.github.com/users/amir2mi/followers", - "following_url": "https://api.github.com/users/amir2mi/following{/other_user}", - "gists_url": "https://api.github.com/users/amir2mi/gists{/gist_id}", - "starred_url": "https://api.github.com/users/amir2mi/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/amir2mi/subscriptions", - "organizations_url": "https://api.github.com/users/amir2mi/orgs", - "repos_url": "https://api.github.com/users/amir2mi/repos", - "events_url": "https://api.github.com/users/amir2mi/events{/privacy}", - "received_events_url": "https://api.github.com/users/amir2mi/received_events", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 567484057, - "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Documentation", - "name": "[Type] Developer Documentation", - "color": "bfd4f2", - "default": false, - "description": "" - }, - { - "id": 1388646432, - "node_id": "MDU6TGFiZWwxMzg4NjQ2NDMy", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/First-time%20Contributor", - "name": "First-time Contributor", - "color": "a0f762", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "Pull request opened by a first-time contributor to Gutenberg repository" + "description": "An existing feature does not function as intended" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], - "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", - "description": null, - "creator": { - "login": "github-actions[bot]", - "id": 41898282, - "node_id": "MDM6Qm90NDE4OTgyODI=", - "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/github-actions%5Bbot%5D", - "html_url": "https://github.com/apps/github-actions", - "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", - "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", - "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", - "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", - "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", - "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", - "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", - "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", - "type": "Bot", - "site_admin": false - }, - "open_issues": 0, - "closed_issues": 113, - "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "assignee": { + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-07-28T22:06:53Z", - "updated_at": "2021-08-03T07:56:08Z", - "closed_at": "2021-08-03T06:40:12Z", + "comments": 3, + "created_at": "2023-09-27T08:29:03Z", + "updated_at": "2023-09-29T12:04:24Z", + "closed_at": "2023-09-27T10:30:21Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33738", - "html_url": "https://github.com/WordPress/gutenberg/pull/33738", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33738.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33738.patch" - }, - "body": "`httpMethod` is added recently. It can be set to `POST`, which allows bigger attributes object.\r\nHowever, before WP 5.5 it does not work and gives 404 error. it will be solved with filtered `rest_endpoints` and here is that example.\r\nThanks to @kienstra, who pointed me out [here](https://github.com/studiopress/genesis-custom-blocks/blob/3670937b8d0a7326c7a4e28413c09e48bae457e4/php/Blocks/Loader.php#L613).", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54851", + "html_url": "https://github.com/WordPress/gutenberg/pull/54851", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54851.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54851.patch", + "merged_at": "2023-09-27T10:30:21Z" + }, + "body": "Follow-up to #54080 \r\nFixes the issue raised here https://github.com/WordPress/gutenberg/pull/54080#issuecomment-1733208834\r\n\r\n## What?\r\n\r\nWe currently have two ways of providing the \"context\" for `useShortcut` hook. One is the default context and one is the `ShortcutProvider`. After #54080 we dropped the usage of `ShortcutProvider` in the WordPress pages (edit post, edit site...) but it's still possible to use it for third-party pages... When we removed the `.current` we missed the fact that the `ShortcutProvider` still provides the context as a \"ref\" so its usage in `useShortcut` was triggering JS errors.\r\n\r\nIn the current PR, I'm updating the `ShortcutProvider` to not use a ref and just pass a stable reference to the shortcuts set.\r\n\r\n## Testing Instructions\r\n\r\n1- Update the edit-post package and add a `ShortcutProvider` top level \r\n2- Ensure that there's no JS error", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54851/reactions", + "total_count": 1, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 1, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54851/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33737", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54850", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33737/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33737/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33737/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33737", - "id": 955251305, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk5MDI5NTMw", - "number": 33737, - "title": "Site Editor: Implement a settings object filter", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54850/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54850/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54850/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54850", + "id": 1914727319, + "node_id": "PR_kwDOBNHdeM5bS9eD", + "number": 54850, + "title": "Background support: Backport fix for undefined array key", "user": { - "login": "jeyip", - "id": 5414230, - "node_id": "MDQ6VXNlcjU0MTQyMzA=", - "avatar_url": "https://avatars.githubusercontent.com/u/5414230?v=4", + "login": "andrewserong", + "id": 14988353, + "node_id": "MDQ6VXNlcjE0OTg4MzUz", + "avatar_url": "https://avatars.githubusercontent.com/u/14988353?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/jeyip", - "html_url": "https://github.com/jeyip", - "followers_url": "https://api.github.com/users/jeyip/followers", - "following_url": "https://api.github.com/users/jeyip/following{/other_user}", - "gists_url": "https://api.github.com/users/jeyip/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jeyip/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jeyip/subscriptions", - "organizations_url": "https://api.github.com/users/jeyip/orgs", - "repos_url": "https://api.github.com/users/jeyip/repos", - "events_url": "https://api.github.com/users/jeyip/events{/privacy}", - "received_events_url": "https://api.github.com/users/jeyip/received_events", + "url": "https://api.github.com/users/andrewserong", + "html_url": "https://github.com/andrewserong", + "followers_url": "https://api.github.com/users/andrewserong/followers", + "following_url": "https://api.github.com/users/andrewserong/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewserong/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewserong/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewserong/subscriptions", + "organizations_url": "https://api.github.com/users/andrewserong/orgs", + "repos_url": "https://api.github.com/users/andrewserong/repos", + "events_url": "https://api.github.com/users/andrewserong/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewserong/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 1604715381, - "node_id": "MDU6TGFiZWwxNjA0NzE1Mzgx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Full%20Site%20Editing", - "name": "[Feature] Full Site Editing", - "color": "fbca04", + "id": 1299054835, + "node_id": "MDU6TGFiZWwxMjk5MDU0ODM1", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Group", + "name": "[Block] Group", + "color": "6767e5", "default": false, - "description": "" + "description": "Affects the Group Block" }, { - "id": 2706102777, - "node_id": "MDU6TGFiZWwyNzA2MTAyNzc3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Site%20Editor", - "name": "[Feature] Site Editor", + "id": 1894493554, + "node_id": "MDU6TGFiZWwxODk0NDkzNTU0", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Design%20Tools", + "name": "[Feature] Design Tools", "color": "fbca04", "default": false, - "description": "" + "description": "Tools that impact the appearance of blocks both to expand the number of tools and improve the experi" + }, + { + "id": 3659584252, + "node_id": "LA_kwDOBNHdeM7aINL8", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Backport%20from%20WordPress%20Core", + "name": "Backport from WordPress Core", + "color": "6FCDF3", + "default": false, + "description": "Pull request that needs to be backported to the a Gutenberg release from WordPress Core" } ], "state": "closed", "locked": false, "assignee": { - "login": "jeyip", - "id": 5414230, - "node_id": "MDQ6VXNlcjU0MTQyMzA=", - "avatar_url": "https://avatars.githubusercontent.com/u/5414230?v=4", + "login": "andrewserong", + "id": 14988353, + "node_id": "MDQ6VXNlcjE0OTg4MzUz", + "avatar_url": "https://avatars.githubusercontent.com/u/14988353?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/jeyip", - "html_url": "https://github.com/jeyip", - "followers_url": "https://api.github.com/users/jeyip/followers", - "following_url": "https://api.github.com/users/jeyip/following{/other_user}", - "gists_url": "https://api.github.com/users/jeyip/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jeyip/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jeyip/subscriptions", - "organizations_url": "https://api.github.com/users/jeyip/orgs", - "repos_url": "https://api.github.com/users/jeyip/repos", - "events_url": "https://api.github.com/users/jeyip/events{/privacy}", - "received_events_url": "https://api.github.com/users/jeyip/received_events", + "url": "https://api.github.com/users/andrewserong", + "html_url": "https://github.com/andrewserong", + "followers_url": "https://api.github.com/users/andrewserong/followers", + "following_url": "https://api.github.com/users/andrewserong/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewserong/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewserong/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewserong/subscriptions", + "organizations_url": "https://api.github.com/users/andrewserong/orgs", + "repos_url": "https://api.github.com/users/andrewserong/repos", + "events_url": "https://api.github.com/users/andrewserong/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewserong/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "jeyip", - "id": 5414230, - "node_id": "MDQ6VXNlcjU0MTQyMzA=", - "avatar_url": "https://avatars.githubusercontent.com/u/5414230?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/jeyip", - "html_url": "https://github.com/jeyip", - "followers_url": "https://api.github.com/users/jeyip/followers", - "following_url": "https://api.github.com/users/jeyip/following{/other_user}", - "gists_url": "https://api.github.com/users/jeyip/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jeyip/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/jeyip/subscriptions", - "organizations_url": "https://api.github.com/users/jeyip/orgs", - "repos_url": "https://api.github.com/users/jeyip/repos", - "events_url": "https://api.github.com/users/jeyip/events{/privacy}", - "received_events_url": "https://api.github.com/users/jeyip/received_events", + "login": "andrewserong", + "id": 14988353, + "node_id": "MDQ6VXNlcjE0OTg4MzUz", + "avatar_url": "https://avatars.githubusercontent.com/u/14988353?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/andrewserong", + "html_url": "https://github.com/andrewserong", + "followers_url": "https://api.github.com/users/andrewserong/followers", + "following_url": "https://api.github.com/users/andrewserong/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewserong/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewserong/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewserong/subscriptions", + "organizations_url": "https://api.github.com/users/andrewserong/orgs", + "repos_url": "https://api.github.com/users/andrewserong/repos", + "events_url": "https://api.github.com/users/andrewserong/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewserong/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -9718,100 +10563,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-07-28T21:33:27Z", - "updated_at": "2021-08-03T17:00:08Z", - "closed_at": "2021-08-03T16:59:29Z", + "comments": 1, + "created_at": "2023-09-27T05:29:32Z", + "updated_at": "2023-09-27T06:11:52Z", + "closed_at": "2023-09-27T06:11:20Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33737", - "html_url": "https://github.com/WordPress/gutenberg/pull/33737", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33737.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33737.patch" - }, - "body": "Potentially solves https://github.com/WordPress/gutenberg/issues/33736\r\n\r\n\r\n\r\n\r\n\r\n## Description\r\n\r\nThe **post editor** has the `block_editor_settings_all` and `block_editor_settings` filter that allows us to modify the `settings` object injected into the block editor. A similar filter, however, doesn't exist for the site editor.\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n**There should be no visible changes to the UI.**\r\n\r\n1. Set up local Gutenberg dev environment\r\n2. Activate a block based theme\r\n3. Navigate to the site editor\r\n4. Smoke test the site editor to ensure that updates still persist correctly, block insertion still functions as expected, etc.\r\n\r\n## Screenshots \r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\nNew feature\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54850", + "html_url": "https://github.com/WordPress/gutenberg/pull/54850", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54850.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54850.patch", + "merged_at": "2023-09-27T06:11:20Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nBackport https://github.com/WordPress/wordpress-develop/pull/5326\r\n\r\nCheck that `$block['attrs']` is set and is an array before assigning to `$block_attributes` in the Background image block support.\r\n\r\n## Why?\r\n\r\n\r\nAs raised in https://core.trac.wordpress.org/ticket/59468 it is possible for this array key not to exist, so this check makes for safe accessing of the block attributes.\r\n\r\n## How?\r\n\r\n\r\nCheck that the `attrs` value is set and is an array before using it.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\nSmoke testing:\r\n\r\n1. Add a couple of Group blocks to a post or page\r\n2. Set one of the Group blocks to have a background image\r\n3. Ensure the background image is displayed correctly on the site frontend", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54850/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54850/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33734", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54847", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33734/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33734/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33734/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33734", - "id": 955144677, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk4OTM3MTI3", - "number": 33734, - "title": "Block patterns: Add translation context on titles", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54847/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54847/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54847/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54847", + "id": 1914507976, + "node_id": "PR_kwDOBNHdeM5bSOLb", + "number": 54847, + "title": "Components: move `ContextSystemProvider` out of `/ui`", "user": { - "login": "walbo", - "id": 1415747, - "node_id": "MDQ6VXNlcjE0MTU3NDc=", - "avatar_url": "https://avatars.githubusercontent.com/u/1415747?v=4", + "login": "brookewp", + "id": 35543432, + "node_id": "MDQ6VXNlcjM1NTQzNDMy", + "avatar_url": "https://avatars.githubusercontent.com/u/35543432?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/walbo", - "html_url": "https://github.com/walbo", - "followers_url": "https://api.github.com/users/walbo/followers", - "following_url": "https://api.github.com/users/walbo/following{/other_user}", - "gists_url": "https://api.github.com/users/walbo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/walbo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/walbo/subscriptions", - "organizations_url": "https://api.github.com/users/walbo/orgs", - "repos_url": "https://api.github.com/users/walbo/repos", - "events_url": "https://api.github.com/users/walbo/events{/privacy}", - "received_events_url": "https://api.github.com/users/walbo/received_events", + "url": "https://api.github.com/users/brookewp", + "html_url": "https://github.com/brookewp", + "followers_url": "https://api.github.com/users/brookewp/followers", + "following_url": "https://api.github.com/users/brookewp/following{/other_user}", + "gists_url": "https://api.github.com/users/brookewp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/brookewp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/brookewp/subscriptions", + "organizations_url": "https://api.github.com/users/brookewp/orgs", + "repos_url": "https://api.github.com/users/brookewp/repos", + "events_url": "https://api.github.com/users/brookewp/events{/privacy}", + "received_events_url": "https://api.github.com/users/brookewp/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680825, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", - "name": "[Type] Enhancement", - "color": "3993a3", - "default": false, - "description": "A suggestion for improvement." - }, - { - "id": 596965480, - "node_id": "MDU6TGFiZWw1OTY5NjU0ODA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Internationalization%20(i18n)", - "name": "Internationalization (i18n)", - "color": "e881e2", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "" + "description": "Issues or PRs that relate to code quality" }, { - "id": 1882657161, - "node_id": "MDU6TGFiZWwxODgyNjU3MTYx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Patterns", - "name": "[Feature] Patterns", - "color": "fbca04", + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", "default": false, - "description": "" + "description": "/packages/components" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "brookewp", + "id": 35543432, + "node_id": "MDQ6VXNlcjM1NTQzNDMy", + "avatar_url": "https://avatars.githubusercontent.com/u/35543432?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/brookewp", + "html_url": "https://github.com/brookewp", + "followers_url": "https://api.github.com/users/brookewp/followers", + "following_url": "https://api.github.com/users/brookewp/following{/other_user}", + "gists_url": "https://api.github.com/users/brookewp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/brookewp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/brookewp/subscriptions", + "organizations_url": "https://api.github.com/users/brookewp/orgs", + "repos_url": "https://api.github.com/users/brookewp/repos", + "events_url": "https://api.github.com/users/brookewp/events{/privacy}", + "received_events_url": "https://api.github.com/users/brookewp/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "brookewp", + "id": 35543432, + "node_id": "MDQ6VXNlcjM1NTQzNDMy", + "avatar_url": "https://avatars.githubusercontent.com/u/35543432?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/brookewp", + "html_url": "https://github.com/brookewp", + "followers_url": "https://api.github.com/users/brookewp/followers", + "following_url": "https://api.github.com/users/brookewp/following{/other_user}", + "gists_url": "https://api.github.com/users/brookewp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/brookewp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/brookewp/subscriptions", + "organizations_url": "https://api.github.com/users/brookewp/orgs", + "repos_url": "https://api.github.com/users/brookewp/repos", + "events_url": "https://api.github.com/users/brookewp/events{/privacy}", + "received_events_url": "https://api.github.com/users/brookewp/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -9834,131 +10726,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 0, - "created_at": "2021-07-28T18:51:55Z", - "updated_at": "2021-08-03T20:17:16Z", - "closed_at": "2021-08-03T18:50:17Z", + "comments": 2, + "created_at": "2023-09-27T01:07:19Z", + "updated_at": "2023-09-27T19:16:54Z", + "closed_at": "2023-09-27T19:16:33Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33734", - "html_url": "https://github.com/WordPress/gutenberg/pull/33734", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33734.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33734.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nAdd context to block pattern titles.\r\n\r\nSee #33715\r\n\r\n## Types of changes\r\nEnhancement\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54847", + "html_url": "https://github.com/WordPress/gutenberg/pull/54847", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54847.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54847.patch", + "merged_at": "2023-09-27T19:16:33Z" + }, + "body": "\r\n\r\n## What?\r\nThis expands on the work started in https://github.com/WordPress/gutenberg/pull/52953 to remove the `ui` folder. \r\n\r\n## Why?\r\n\r\n\r\nThere isn't a need for the `ui` folder anymore - more details can be found in above-mentioned PR.\r\n\r\n>For context, there is no longer a need to keep a separate /ui folder around, so we want to move toward removing this extra folder grouping.\r\nTo begin with, there are a lot of experimental components in this folder that are not used anywhere, and are no longer part of our overall component strategy. They add unnecessary overhead when auditing or just looking for components. \r\n\r\nThe next step will be to move anything still used from `ui/utils` to `packages/components/src/utils`, so the `ui` folder can be removed.\r\n\r\n## How?\r\n\r\n\r\nThis moves the `context` folder out of the `ui` folder and replaces the imports, links, and mentions of `ui/context`. \r\n\r\n## Testing Instructions\r\n\r\nTests pass and `npm run build` succeeds without error \r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54847/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54847/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33733", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54846", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33733/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33733/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33733/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33733", - "id": 954931785, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk4NzUzOTUx", - "number": 33733, - "title": "Template part selection popover - minor style updates for visiblity.", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54846/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54846/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54846/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54846", + "id": 1914430492, + "node_id": "PR_kwDOBNHdeM5bR9sg", + "number": 54846, + "title": "Search block: allow space for input field only when form expanded", "user": { - "login": "Addison-Stavlo", - "id": 28742426, - "node_id": "MDQ6VXNlcjI4NzQyNDI2", - "avatar_url": "https://avatars.githubusercontent.com/u/28742426?v=4", + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Addison-Stavlo", - "html_url": "https://github.com/Addison-Stavlo", - "followers_url": "https://api.github.com/users/Addison-Stavlo/followers", - "following_url": "https://api.github.com/users/Addison-Stavlo/following{/other_user}", - "gists_url": "https://api.github.com/users/Addison-Stavlo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Addison-Stavlo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Addison-Stavlo/subscriptions", - "organizations_url": "https://api.github.com/users/Addison-Stavlo/orgs", - "repos_url": "https://api.github.com/users/Addison-Stavlo/repos", - "events_url": "https://api.github.com/users/Addison-Stavlo/events{/privacy}", - "received_events_url": "https://api.github.com/users/Addison-Stavlo/received_events", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 1604715381, - "node_id": "MDU6TGFiZWwxNjA0NzE1Mzgx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Full%20Site%20Editing", - "name": "[Feature] Full Site Editing", - "color": "fbca04", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "" + "description": "An existing feature does not function as intended" }, { - "id": 2373088071, - "node_id": "MDU6TGFiZWwyMzczMDg4MDcx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Template-Part", - "name": "[Block] Template-Part", + "id": 1539734701, + "node_id": "MDU6TGFiZWwxNTM5NzM0NzAx", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Search", + "name": "[Block] Search", "color": "6767e5", "default": false, - "description": "" + "description": "Affects the Search Block - used to display a search field" } ], "state": "closed", "locked": false, "assignee": { - "login": "Addison-Stavlo", - "id": 28742426, - "node_id": "MDQ6VXNlcjI4NzQyNDI2", - "avatar_url": "https://avatars.githubusercontent.com/u/28742426?v=4", + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Addison-Stavlo", - "html_url": "https://github.com/Addison-Stavlo", - "followers_url": "https://api.github.com/users/Addison-Stavlo/followers", - "following_url": "https://api.github.com/users/Addison-Stavlo/following{/other_user}", - "gists_url": "https://api.github.com/users/Addison-Stavlo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Addison-Stavlo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Addison-Stavlo/subscriptions", - "organizations_url": "https://api.github.com/users/Addison-Stavlo/orgs", - "repos_url": "https://api.github.com/users/Addison-Stavlo/repos", - "events_url": "https://api.github.com/users/Addison-Stavlo/events{/privacy}", - "received_events_url": "https://api.github.com/users/Addison-Stavlo/received_events", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "Addison-Stavlo", - "id": 28742426, - "node_id": "MDQ6VXNlcjI4NzQyNDI2", - "avatar_url": "https://avatars.githubusercontent.com/u/28742426?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/Addison-Stavlo", - "html_url": "https://github.com/Addison-Stavlo", - "followers_url": "https://api.github.com/users/Addison-Stavlo/followers", - "following_url": "https://api.github.com/users/Addison-Stavlo/following{/other_user}", - "gists_url": "https://api.github.com/users/Addison-Stavlo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Addison-Stavlo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Addison-Stavlo/subscriptions", - "organizations_url": "https://api.github.com/users/Addison-Stavlo/orgs", - "repos_url": "https://api.github.com/users/Addison-Stavlo/repos", - "events_url": "https://api.github.com/users/Addison-Stavlo/events{/privacy}", - "received_events_url": "https://api.github.com/users/Addison-Stavlo/received_events", + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -9981,122 +10889,107 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-07-28T14:36:38Z", - "updated_at": "2021-07-30T16:18:27Z", - "closed_at": "2021-07-30T16:18:02Z", - "author_association": "CONTRIBUTOR", + "comments": 8, + "created_at": "2023-09-26T23:21:13Z", + "updated_at": "2023-10-04T00:27:06Z", + "closed_at": "2023-09-27T03:18:03Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33733", - "html_url": "https://github.com/WordPress/gutenberg/pull/33733", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33733.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33733.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nRelated to discussion in https://github.com/WordPress/gutenberg/issues/29950. This PR adds some minor style changes to make previews more visible in the selection popover. While we may still need to reconsider the selection flow/component in the future, these minor changes should help improve the readability of the current state until a new design is introduced.\r\n\r\nCurrently on trunk, there are no borders (save hover and focus) to the items or background to the selection, making it difficult to tell where one preview starts and the other begins:\r\n\r\n![Screen Shot 2021-07-28 at 10 34 24 AM](https://user-images.githubusercontent.com/28742426/127341222-88fdae72-9307-409f-9576-ee0188e653c7.png)\r\n\r\nHere we try adding a gray border to allow the previews to stand out together with their title:\r\n\r\n![Screen Shot 2021-07-30 at 8 23 05 AM](https://user-images.githubusercontent.com/28742426/127652426-8cd19ad4-e29a-4707-b755-fda098ad2a8c.png)\r\n\r\n\r\n\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\nTest the template part selection component in the site and post editors. This can be accessed from a placeholder block's (insert header, footer, or template part) \"Choose existing\" option, or the \"replace\" option in the block toolbar of an existing template part.\r\n\r\n## Screenshots \r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54846", + "html_url": "https://github.com/WordPress/gutenberg/pull/54846", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54846.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54846.patch", + "merged_at": "2023-09-27T03:18:03Z" + }, + "body": "Resolves https://github.com/WordPress/gutenberg/issues/54842\r\n\r\n## What? 🙈 \r\nA follow up to https://github.com/WordPress/gutenberg/pull/54773\r\n\r\n1. When a search box has an expandable input field and is in \"button only\" mode, provide a max-width for the button and take away 100px when the form is expanded. \r\n2. When the search form is collapsed revert to max-width of 100%.\r\n\r\n## Why? 🙉 \r\n1. To avoid text wrapping and overflow in narrow viewport widths. See https://github.com/WordPress/gutenberg/pull/53373#discussion_r1285736216 for context\r\n2. To ensure the button fills its container. (First fix attempt in https://github.com/WordPress/gutenberg/pull/54773) The input is not there so we don't need the 100px.\r\n\r\n## How? 🙊 \r\nSee \"What\"\r\n\r\n## Testing Instructions\r\n1. Create or edit a navigation block in a theme header, and add a search block.\r\n2. Add a few search blocks in a post, some with lots of search button text and with the input field hidden/displayed. \r\n3. For icon-only buttons in the navigation block, the button should stretch the full width. See test steps in https://github.com/WordPress/gutenberg/pull/54773\r\n4. In narrow viewports the search button with text should not be cut off and single words shouldn't wrap (unless there are spaces between multiple words) See test steps in https://github.com/WordPress/gutenberg/pull/53373\r\n\r\n### Some example block code\r\n\r\n```html\r\n\r\n\r\n\r\n```\r\n\r\n\r\n\r\n\r\n\r\n\r\n## Screenshots or screencast \r\n\r\n\r\n\r\n\r\n### With icon as button\r\n\r\nhttps://github.com/WordPress/gutenberg/assets/6458278/702c7ce6-afd5-4956-9316-0f443dbc881b\r\n\r\n### With button text\r\n\r\nhttps://github.com/WordPress/gutenberg/assets/6458278/3c2e0250-e454-4632-bc87-b1b37493755c\r\n\r\n## No text overflow\r\n\r\n\r\n\"Screenshot\r\n\r\nhttps://github.com/WordPress/gutenberg/assets/6458278/65e74997-44a8-4db3-a9b3-ab3a4f367df6\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54846/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54846/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33732", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54844", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33732/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33732/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33732/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33732", - "id": 954881033, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk4NzA4OTkx", - "number": 33732, - "title": "[RNMobile] Use random `postId` in integration tests", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54844/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54844/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54844/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54844", + "id": 1914291830, + "node_id": "PR_kwDOBNHdeM5bRfjn", + "number": 54844, + "title": "Move mime-type collection generation to a function that can be tested…", "user": { - "login": "fluiddot", - "id": 14905380, - "node_id": "MDQ6VXNlcjE0OTA1Mzgw", - "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", + "login": "pbking", + "id": 146530, + "node_id": "MDQ6VXNlcjE0NjUzMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/146530?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/fluiddot", - "html_url": "https://github.com/fluiddot", - "followers_url": "https://api.github.com/users/fluiddot/followers", - "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", - "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", - "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", - "organizations_url": "https://api.github.com/users/fluiddot/orgs", - "repos_url": "https://api.github.com/users/fluiddot/repos", - "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", - "received_events_url": "https://api.github.com/users/fluiddot/received_events", + "url": "https://api.github.com/users/pbking", + "html_url": "https://github.com/pbking", + "followers_url": "https://api.github.com/users/pbking/followers", + "following_url": "https://api.github.com/users/pbking/following{/other_user}", + "gists_url": "https://api.github.com/users/pbking/gists{/gist_id}", + "starred_url": "https://api.github.com/users/pbking/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/pbking/subscriptions", + "organizations_url": "https://api.github.com/users/pbking/orgs", + "repos_url": "https://api.github.com/users/pbking/repos", + "events_url": "https://api.github.com/users/pbking/events{/privacy}", + "received_events_url": "https://api.github.com/users/pbking/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 982506020, - "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", - "name": "Mobile App - i.e. Android or iOS", - "color": "a3ef7a", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + "description": "Issues or PRs that relate to code quality" + }, + { + "id": 4254348202, + "node_id": "LA_kwDOBNHdeM79lDOq", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20PHP%20backport", + "name": "Needs PHP backport", + "color": "64436E", + "default": false, + "description": "Needs PHP backport to Core" } ], "state": "closed", "locked": false, - "assignee": { - "login": "fluiddot", - "id": 14905380, - "node_id": "MDQ6VXNlcjE0OTA1Mzgw", - "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/fluiddot", - "html_url": "https://github.com/fluiddot", - "followers_url": "https://api.github.com/users/fluiddot/followers", - "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", - "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", - "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", - "organizations_url": "https://api.github.com/users/fluiddot/orgs", - "repos_url": "https://api.github.com/users/fluiddot/repos", - "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", - "received_events_url": "https://api.github.com/users/fluiddot/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "fluiddot", - "id": 14905380, - "node_id": "MDQ6VXNlcjE0OTA1Mzgw", - "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/fluiddot", - "html_url": "https://github.com/fluiddot", - "followers_url": "https://api.github.com/users/fluiddot/followers", - "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", - "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", - "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", - "organizations_url": "https://api.github.com/users/fluiddot/orgs", - "repos_url": "https://api.github.com/users/fluiddot/repos", - "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", - "received_events_url": "https://api.github.com/users/fluiddot/received_events", - "type": "User", - "site_admin": false - } - ], + "assignee": null, + "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -10119,122 +11012,165 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, "comments": 3, - "created_at": "2021-07-28T13:54:23Z", - "updated_at": "2021-07-28T18:33:49Z", - "closed_at": "2021-07-28T18:33:20Z", + "created_at": "2023-09-26T20:54:48Z", + "updated_at": "2023-09-29T12:04:48Z", + "closed_at": "2023-09-27T15:58:30Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33732", - "html_url": "https://github.com/WordPress/gutenberg/pull/33732", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33732.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33732.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\n\r\nWe were using the same `postId` value when initializing the editor in the integration tests, due to incoming changes related to the logic of loading the editor (https://github.com/WordPress/gutenberg/pull/33727), now we need to assure that each test uses a unique `postId` value.\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n- Verify that all the tests pass by running the command `npm run native test` or by the CI check.\r\n\r\n## Screenshots \r\nN/A\r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\nBug fix\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54844", + "html_url": "https://github.com/WordPress/gutenberg/pull/54844", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54844.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54844.patch", + "merged_at": "2023-09-27T15:58:30Z" + }, + "body": "\r\n\r\n## What?\r\nRefactors the logic that determines which mime-types are expected based on the PHP version into a function so that it may be unit tested and given better comments.\r\n\r\n## How?\r\nPuts the existing logic into a static function that is used in place of the previous constant and added unit test coverage for that function.\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54844/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54844/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33727", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54843", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33727/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33727/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33727/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33727", - "id": 954756916, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk4NjAyMDQ5", - "number": 33727, - "title": "Avoid double parsing the content when loading the editor", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54843/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54843/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54843/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54843", + "id": 1914253536, + "node_id": "PR_kwDOBNHdeM5bRW9R", + "number": 54843, + "title": "Footnotes: Add aria-label to return links", "user": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "alexstine", + "id": 13755480, + "node_id": "MDQ6VXNlcjEzNzU1NDgw", + "avatar_url": "https://avatars.githubusercontent.com/u/13755480?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/alexstine", + "html_url": "https://github.com/alexstine", + "followers_url": "https://api.github.com/users/alexstine/followers", + "following_url": "https://api.github.com/users/alexstine/following{/other_user}", + "gists_url": "https://api.github.com/users/alexstine/gists{/gist_id}", + "starred_url": "https://api.github.com/users/alexstine/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/alexstine/subscriptions", + "organizations_url": "https://api.github.com/users/alexstine/orgs", + "repos_url": "https://api.github.com/users/alexstine/repos", + "events_url": "https://api.github.com/users/alexstine/events{/privacy}", + "received_events_url": "https://api.github.com/users/alexstine/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 731693674, - "node_id": "MDU6TGFiZWw3MzE2OTM2NzQ=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Performance", - "name": "[Type] Performance", - "color": "f3f4fe", + "id": 546517042, + "node_id": "MDU6TGFiZWw1NDY1MTcwNDI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Focus]%20Accessibility%20(a11y)", + "name": "[Focus] Accessibility (a11y)", + "color": "efde5d", + "default": false, + "description": "Changes that impact accessibility and need corresponding review (e.g. markup changes)." + }, + { + "id": 644027893, + "node_id": "MDU6TGFiZWw2NDQwMjc4OTM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20Design%20Feedback", + "name": "Needs Design Feedback", + "color": "0e8a16", + "default": false, + "description": "Needs general design feedback." + }, + { + "id": 1086171268, + "node_id": "MDU6TGFiZWwxMDg2MTcxMjY4", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20Accessibility%20Feedback", + "name": "Needs Accessibility Feedback", + "color": "ffbcbd", + "default": false, + "description": "Need input from accessibility" + }, + { + "id": 5654261232, + "node_id": "LA_kwDOBNHdeM8AAAABUQUt8A", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Footnotes", + "name": "[Block] Footnotes", + "color": "6767e5", "default": false, - "description": "" + "description": "Affects the Footnotes Block" } ], "state": "closed", "locked": false, "assignee": { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "alexstine", + "id": 13755480, + "node_id": "MDQ6VXNlcjEzNzU1NDgw", + "avatar_url": "https://avatars.githubusercontent.com/u/13755480?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/alexstine", + "html_url": "https://github.com/alexstine", + "followers_url": "https://api.github.com/users/alexstine/followers", + "following_url": "https://api.github.com/users/alexstine/following{/other_user}", + "gists_url": "https://api.github.com/users/alexstine/gists{/gist_id}", + "starred_url": "https://api.github.com/users/alexstine/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/alexstine/subscriptions", + "organizations_url": "https://api.github.com/users/alexstine/orgs", + "repos_url": "https://api.github.com/users/alexstine/repos", + "events_url": "https://api.github.com/users/alexstine/events{/privacy}", + "received_events_url": "https://api.github.com/users/alexstine/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "youknowriad", - "id": 272444, - "node_id": "MDQ6VXNlcjI3MjQ0NA==", - "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "login": "alexstine", + "id": 13755480, + "node_id": "MDQ6VXNlcjEzNzU1NDgw", + "avatar_url": "https://avatars.githubusercontent.com/u/13755480?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/youknowriad", - "html_url": "https://github.com/youknowriad", - "followers_url": "https://api.github.com/users/youknowriad/followers", - "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", - "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", - "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", - "organizations_url": "https://api.github.com/users/youknowriad/orgs", - "repos_url": "https://api.github.com/users/youknowriad/repos", - "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", - "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "url": "https://api.github.com/users/alexstine", + "html_url": "https://github.com/alexstine", + "followers_url": "https://api.github.com/users/alexstine/followers", + "following_url": "https://api.github.com/users/alexstine/following{/other_user}", + "gists_url": "https://api.github.com/users/alexstine/gists{/gist_id}", + "starred_url": "https://api.github.com/users/alexstine/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/alexstine/subscriptions", + "organizations_url": "https://api.github.com/users/alexstine/orgs", + "repos_url": "https://api.github.com/users/alexstine/repos", + "events_url": "https://api.github.com/users/alexstine/events{/privacy}", + "received_events_url": "https://api.github.com/users/alexstine/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -10257,122 +11193,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 6, - "created_at": "2021-07-28T11:26:41Z", - "updated_at": "2021-07-29T09:33:48Z", - "closed_at": "2021-07-29T09:33:20Z", + "comments": 21, + "created_at": "2023-09-26T20:30:03Z", + "updated_at": "2023-10-01T23:22:40Z", + "closed_at": "2023-09-28T05:44:03Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33727", - "html_url": "https://github.com/WordPress/gutenberg/pull/33727", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33727.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33727.patch" - }, - "body": "In the couple last WP releases, we introduced the EntityProvider and the `useEntityBlockEditor` React hook which allows us to retrieve the \"blocks\" of a given post entity. This hook also makes it easy to create block editors for widgets screens, reusable blocks, templates parts... \r\n\r\nThe hook need to transform the \"content\" of the entity to \"blocks\" by parsing it on initial render if the blocks are not already parsed.\r\n\r\nThat said, historically in the post editor, parsing was done in the `setupEditor` action which is called in theory before that hook, the problem though is that the React effect is run before the `useSelect` call subscription triggers after `setupEditor` meaning the `blocks` will always be empty causing a double parsing.\r\n\r\nThe solution I came with is to avoid the parsing in `setupEditor` unless necessary. Ideally the `setupEditor` action shouldn't be needed at all and its logic moved to the components themselves. In other words, the \"editor\" should always be \"setup\"/\"ready\". This is something we've struggled with for a long time but I think we're making good progress towards that .\r\n\r\nRight now, parsing is still done in `setupEditor` when a \"template\" is provided, that said, this is rare and especially for long posts (where the performance issues happen).\r\n\r\n**Notes**\r\n\r\n - I had to change the order of some action calls in the `setupEditor` action. I don't think it's impactful but I know initialization is e2e tests heavily, so let's see the impact here.\r\n - This should result in a gain of half a second at least for long posts (like the one we test with)", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54843", + "html_url": "https://github.com/WordPress/gutenberg/pull/54843", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54843.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54843.patch", + "merged_at": "2023-09-28T05:44:03Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nAdds `aria-label` to the front-end footnotes return links.\r\n\r\n## Why?\r\n\r\n\r\nLinks with icons are not accessible.\r\n\r\n## How?\r\n\r\n\r\nAdds the `aria-label` attribute.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n1. Insert a footnotes block.\r\n2. Create a footnote from a paragraph block by selecting More and then Footnote in the block toolbar.\r\n3. Save.\r\n4. View the front-end.\r\n5. Notice how the link has `aria-label=\"Back to footnote reference X\"` for the number.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54843/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54843/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33725", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54841", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33725/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33725/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33725/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33725", - "id": 954721914, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk4NTcxODcw", - "number": 33725, - "title": "Core Data: Deprecate `getAuthors` in favor of `getUsers`", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54841/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54841/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54841/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54841", + "id": 1914130281, + "node_id": "PR_kwDOBNHdeM5bQ75T", + "number": 54841, + "title": "Make the reset styles command consistent", "user": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "richtabor", + "id": 1813435, + "node_id": "MDQ6VXNlcjE4MTM0MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/1813435?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/richtabor", + "html_url": "https://github.com/richtabor", + "followers_url": "https://api.github.com/users/richtabor/followers", + "following_url": "https://api.github.com/users/richtabor/following{/other_user}", + "gists_url": "https://api.github.com/users/richtabor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/richtabor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/richtabor/subscriptions", + "organizations_url": "https://api.github.com/users/richtabor/orgs", + "repos_url": "https://api.github.com/users/richtabor/repos", + "events_url": "https://api.github.com/users/richtabor/events{/privacy}", + "received_events_url": "https://api.github.com/users/richtabor/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 995368074, - "node_id": "MDU6TGFiZWw5OTUzNjgwNzQ=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Core%20data", - "name": "[Package] Core data", + "id": 793903067, + "node_id": "MDU6TGFiZWw3OTM5MDMwNjc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Copy", + "name": "[Type] Copy", + "color": "e868f9", + "default": false, + "description": "Issues or PRs that need copy editing assistance" + }, + { + "id": 5531793302, + "node_id": "LA_kwDOBNHdeM8AAAABSbh3lg", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Commands", + "name": "[Package] Commands", "color": "ed2572", "default": false, - "description": "/packages/core-data" + "description": "/packages/commands" } ], "state": "closed", "locked": false, "assignee": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "richtabor", + "id": 1813435, + "node_id": "MDQ6VXNlcjE4MTM0MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/1813435?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/richtabor", + "html_url": "https://github.com/richtabor", + "followers_url": "https://api.github.com/users/richtabor/followers", + "following_url": "https://api.github.com/users/richtabor/following{/other_user}", + "gists_url": "https://api.github.com/users/richtabor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/richtabor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/richtabor/subscriptions", + "organizations_url": "https://api.github.com/users/richtabor/orgs", + "repos_url": "https://api.github.com/users/richtabor/repos", + "events_url": "https://api.github.com/users/richtabor/events{/privacy}", + "received_events_url": "https://api.github.com/users/richtabor/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "richtabor", + "id": 1813435, + "node_id": "MDQ6VXNlcjE4MTM0MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/1813435?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/richtabor", + "html_url": "https://github.com/richtabor", + "followers_url": "https://api.github.com/users/richtabor/followers", + "following_url": "https://api.github.com/users/richtabor/following{/other_user}", + "gists_url": "https://api.github.com/users/richtabor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/richtabor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/richtabor/subscriptions", + "organizations_url": "https://api.github.com/users/richtabor/orgs", + "repos_url": "https://api.github.com/users/richtabor/repos", + "events_url": "https://api.github.com/users/richtabor/events{/privacy}", + "received_events_url": "https://api.github.com/users/richtabor/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -10395,122 +11356,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 1, - "created_at": "2021-07-28T10:42:36Z", - "updated_at": "2021-07-28T18:00:34Z", - "closed_at": "2021-07-28T18:00:04Z", + "comments": 2, + "created_at": "2023-09-26T19:03:11Z", + "updated_at": "2023-09-27T11:33:28Z", + "closed_at": "2023-09-27T11:33:05Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33725", - "html_url": "https://github.com/WordPress/gutenberg/pull/33725", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33725.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33725.patch" - }, - "body": "## Description\r\nDeprecates `getAuthors` in favor of `getUsers` and removes `__unstableGetAuthor` selector.\r\n\r\n## How has this been tested?\r\nRunning following code should display deprecation message in console:\r\n\r\n```js\r\nwp.data.select('core').getAuthors();\r\n```\r\n\r\n## Screenshots \r\n![CleanShot 2021-07-28 at 14 40 19](https://user-images.githubusercontent.com/240569/127309189-4b0bb6d5-d2cb-48ec-9699-1fc1b5e2a46b.png)\r\n\r\n## Types of changes\r\nDeprecation\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54841", + "html_url": "https://github.com/WordPress/gutenberg/pull/54841", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54841.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54841.patch", + "merged_at": "2023-09-27T11:33:05Z" + }, + "body": "\r\n\r\n## What?\r\nCleaning up the \"Reset styles to defaults\" command to be consistent with resetting templates/template parts. \r\n\r\n## Testing Instructions\r\n\r\n1. Open the site editor.\r\n2. Make changes to global styles.\r\n3. Open the command palette.\r\n4. Search for \"reset\".\r\n5. See changes.\r\n\r\n## Screenshots or screencast \r\n\r\n| Before | After |\r\n| ------------- | ------------- |\r\n|\"before\"|\"CleanShot|\r\n\r\n\r\nRelated (the reset command for templates/parts): \r\n\"CleanShot\r\n\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54841/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54841/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33721", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54840", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33721/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33721/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33721/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33721", - "id": 954586831, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk4NDU3Nzkz", - "number": 33721, - "title": "E2E: Block Hierarchy Navigation wait for the column to be highlighted", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54840/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54840/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54840/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54840", + "id": 1914088839, + "node_id": "PR_kwDOBNHdeM5bQyss", + "number": 54840, + "title": "Fix ToolSelector popover variant", "user": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "richtabor", + "id": 1813435, + "node_id": "MDQ6VXNlcjE4MTM0MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/1813435?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/richtabor", + "html_url": "https://github.com/richtabor", + "followers_url": "https://api.github.com/users/richtabor/followers", + "following_url": "https://api.github.com/users/richtabor/following{/other_user}", + "gists_url": "https://api.github.com/users/richtabor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/richtabor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/richtabor/subscriptions", + "organizations_url": "https://api.github.com/users/richtabor/orgs", + "repos_url": "https://api.github.com/users/richtabor/repos", + "events_url": "https://api.github.com/users/richtabor/events{/privacy}", + "received_events_url": "https://api.github.com/users/richtabor/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 1699237849, - "node_id": "MDU6TGFiZWwxNjk5MjM3ODQ5", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20E2E%20Tests", - "name": "[Package] E2E Tests", - "color": "ed2572", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "/packages/e2e-tests" + "description": "An existing feature does not function as intended" + }, + { + "id": 2706102777, + "node_id": "MDU6TGFiZWwyNzA2MTAyNzc3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Site%20Editor", + "name": "[Feature] Site Editor", + "color": "fbca04", + "default": false, + "description": "Related to the overarching Site Editor (formerly \"full site editing\")" } ], "state": "closed", "locked": false, "assignee": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "richtabor", + "id": 1813435, + "node_id": "MDQ6VXNlcjE4MTM0MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/1813435?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/richtabor", + "html_url": "https://github.com/richtabor", + "followers_url": "https://api.github.com/users/richtabor/followers", + "following_url": "https://api.github.com/users/richtabor/following{/other_user}", + "gists_url": "https://api.github.com/users/richtabor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/richtabor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/richtabor/subscriptions", + "organizations_url": "https://api.github.com/users/richtabor/orgs", + "repos_url": "https://api.github.com/users/richtabor/repos", + "events_url": "https://api.github.com/users/richtabor/events{/privacy}", + "received_events_url": "https://api.github.com/users/richtabor/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "richtabor", + "id": 1813435, + "node_id": "MDQ6VXNlcjE4MTM0MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/1813435?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/richtabor", + "html_url": "https://github.com/richtabor", + "followers_url": "https://api.github.com/users/richtabor/followers", + "following_url": "https://api.github.com/users/richtabor/following{/other_user}", + "gists_url": "https://api.github.com/users/richtabor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/richtabor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/richtabor/subscriptions", + "organizations_url": "https://api.github.com/users/richtabor/orgs", + "repos_url": "https://api.github.com/users/richtabor/repos", + "events_url": "https://api.github.com/users/richtabor/events{/privacy}", + "received_events_url": "https://api.github.com/users/richtabor/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -10533,140 +11519,116 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 5, - "created_at": "2021-07-28T08:00:11Z", - "updated_at": "2021-07-28T10:43:49Z", - "closed_at": "2021-07-28T10:43:28Z", + "comments": 8, + "created_at": "2023-09-26T18:38:46Z", + "updated_at": "2023-10-02T09:39:48Z", + "closed_at": "2023-09-29T15:29:40Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33721", - "html_url": "https://github.com/WordPress/gutenberg/pull/33721", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33721.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33721.patch" - }, - "body": "## Description\r\nThe \"Block Hierarchy Navigation\" e2e test [fails](https://github.com/WordPress/gutenberg/runs/3162134316) from time to time. Unfortunately, I'm unable to reproduce this locally.\r\n\r\nBased on the screenshot from the artifacts, it looks like block selection happens before navigation reaches the third and last column block.\r\n\r\nI'm adding an extra check to verify that the third block is highlighted before selecting it. This should also give keyboard navigation a little spare time to finish.\r\n\r\n## How has this been tested?\r\nLocally using the following command:\r\n\r\n```\r\nnpm run test-e2e -- packages/e2e-tests/specs/editor/various/block-hierarchy-navigation.test.js\r\n```\r\n\r\n## Screenshots \r\n![should navigate block hierarchy using only the keyboard](https://user-images.githubusercontent.com/240569/127285118-90c8af20-a50e-4729-927c-6fa68dd7bfc2.jpg)\r\n\r\n## Types of changes\r\nBugfix\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54840", + "html_url": "https://github.com/WordPress/gutenberg/pull/54840", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54840.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54840.patch", + "merged_at": "2023-09-29T15:29:40Z" + }, + "body": "\r\n\r\n## What?\r\nUse the proper popover variant for the ToolSelector in the editor header.\r\n\r\n## Why?\r\nIt's inconsistent with other popovers not connected to the block toolbar.\r\n\r\n## Testing Instructions\r\n\r\n1. Open a post or page.\r\n2. Select the \"Tools\" control in the editor header.\r\n3. See the lighter border with a shadow, instead of the hard dark line.\r\n\r\n\r\n## Screenshots or screencast \r\n\r\n| Before | After |\r\n| ------------- | ------------- |\r\n|\"CleanShot|\"CleanShot|\r\n\r\n\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54840/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54840/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33717", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54839", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33717/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33717/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33717/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33717", - "id": 954302691, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk4MjE5Mjg1", - "number": 33717, - "title": "Components: update snackbar to use framer motion instead of react spring", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54839/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54839/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54839/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54839", + "id": 1914077343, + "node_id": "PR_kwDOBNHdeM5bQwIw", + "number": 54839, + "title": "Use \"Not synced\" in place of \"Standard\" nomenclature for patterns", "user": { - "login": "gwwar", - "id": 1270189, - "node_id": "MDQ6VXNlcjEyNzAxODk=", - "avatar_url": "https://avatars.githubusercontent.com/u/1270189?v=4", + "login": "richtabor", + "id": 1813435, + "node_id": "MDQ6VXNlcjE4MTM0MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/1813435?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/gwwar", - "html_url": "https://github.com/gwwar", - "followers_url": "https://api.github.com/users/gwwar/followers", - "following_url": "https://api.github.com/users/gwwar/following{/other_user}", - "gists_url": "https://api.github.com/users/gwwar/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gwwar/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gwwar/subscriptions", - "organizations_url": "https://api.github.com/users/gwwar/orgs", - "repos_url": "https://api.github.com/users/gwwar/repos", - "events_url": "https://api.github.com/users/gwwar/events{/privacy}", - "received_events_url": "https://api.github.com/users/gwwar/received_events", + "url": "https://api.github.com/users/richtabor", + "html_url": "https://github.com/richtabor", + "followers_url": "https://api.github.com/users/richtabor/followers", + "following_url": "https://api.github.com/users/richtabor/following{/other_user}", + "gists_url": "https://api.github.com/users/richtabor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/richtabor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/richtabor/subscriptions", + "organizations_url": "https://api.github.com/users/richtabor/orgs", + "repos_url": "https://api.github.com/users/richtabor/repos", + "events_url": "https://api.github.com/users/richtabor/events{/privacy}", + "received_events_url": "https://api.github.com/users/richtabor/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680825, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", - "name": "[Type] Enhancement", - "color": "3993a3", + "id": 783337752, + "node_id": "MDU6TGFiZWw3ODMzMzc3NTI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Synced%20Patterns", + "name": "[Feature] Synced Patterns", + "color": "fbca04", "default": false, - "description": "A suggestion for improvement." + "description": "Related to synced patterns (formerly reusable blocks)" }, { - "id": 997392122, - "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", - "name": "[Package] Components", - "color": "ed2572", + "id": 793903067, + "node_id": "MDU6TGFiZWw3OTM5MDMwNjc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Copy", + "name": "[Type] Copy", + "color": "e868f9", "default": false, - "description": "/packages/components" + "description": "Issues or PRs that need copy editing assistance" }, { - "id": 1298994603, - "node_id": "MDU6TGFiZWwxMjk4OTk0NjAz", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Edit%20Post", - "name": "[Package] Edit Post", - "color": "ed2572", + "id": 1882657161, + "node_id": "MDU6TGFiZWwxODgyNjU3MTYx", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Patterns", + "name": "[Feature] Patterns", + "color": "fbca04", "default": false, - "description": "packages/edit-post" + "description": "A collection of blocks that can be synced (previously reusable blocks) or unsynced" } ], "state": "closed", "locked": false, - "assignee": { - "login": "gwwar", - "id": 1270189, - "node_id": "MDQ6VXNlcjEyNzAxODk=", - "avatar_url": "https://avatars.githubusercontent.com/u/1270189?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/gwwar", - "html_url": "https://github.com/gwwar", - "followers_url": "https://api.github.com/users/gwwar/followers", - "following_url": "https://api.github.com/users/gwwar/following{/other_user}", - "gists_url": "https://api.github.com/users/gwwar/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gwwar/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gwwar/subscriptions", - "organizations_url": "https://api.github.com/users/gwwar/orgs", - "repos_url": "https://api.github.com/users/gwwar/repos", - "events_url": "https://api.github.com/users/gwwar/events{/privacy}", - "received_events_url": "https://api.github.com/users/gwwar/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "gwwar", - "id": 1270189, - "node_id": "MDQ6VXNlcjEyNzAxODk=", - "avatar_url": "https://avatars.githubusercontent.com/u/1270189?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/gwwar", - "html_url": "https://github.com/gwwar", - "followers_url": "https://api.github.com/users/gwwar/followers", - "following_url": "https://api.github.com/users/gwwar/following{/other_user}", - "gists_url": "https://api.github.com/users/gwwar/gists{/gist_id}", - "starred_url": "https://api.github.com/users/gwwar/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/gwwar/subscriptions", - "organizations_url": "https://api.github.com/users/gwwar/orgs", - "repos_url": "https://api.github.com/users/gwwar/repos", - "events_url": "https://api.github.com/users/gwwar/events{/privacy}", - "received_events_url": "https://api.github.com/users/gwwar/received_events", - "type": "User", - "site_admin": false - } - ], + "assignee": null, + "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -10689,118 +11651,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 18, - "created_at": "2021-07-27T22:08:50Z", - "updated_at": "2021-08-05T17:36:56Z", - "closed_at": "2021-08-05T16:25:27Z", - "author_association": "CONTRIBUTOR", + "comments": 5, + "created_at": "2023-09-26T18:32:07Z", + "updated_at": "2023-09-29T12:04:36Z", + "closed_at": "2023-09-27T11:35:21Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33717", - "html_url": "https://github.com/WordPress/gutenberg/pull/33717", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33717.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33717.patch" - }, - "body": "This PR experiments with using framer motion instead of react spring for the snackbar component. Since Framer Motion is ~30kb gzipped I also ~externalized it~ exported this from `@wordpress/components` once to avoid bloating each package that it's used in.\r\n\r\nOne benefit here is that framer motion supports `height: auto` which allows us to remove ref and component state management. 🤔 ~There's quite a bundle size jump here to consider for a single component, so I may explore trying to whittle down.~\r\n\r\nResults overall, are are encouraging. I'd like to see if we can update the Persistent List View to use drag and add animations for the drawers opening and closing next.\r\n\r\n| Size Impacts |\r\n|----|\r\n| \"Screen |\r\n\r\n#### After - Motion:\r\n\r\nhttps://user-images.githubusercontent.com/1270189/127399049-aa5a91fe-88e9-4783-857e-7531e9adcf8b.mp4\r\n\r\n#### After - Reduce Motion\r\n\r\nhttps://user-images.githubusercontent.com/1270189/127397712-3a733583-5e04-485c-bf2f-791e01950e4d.mp4\r\n\r\n#### Before - Motion\r\n\r\nhttps://user-images.githubusercontent.com/1270189/127397745-b6b3c29f-5952-4e1a-87c4-cc27564ad7f7.mp4\r\n\r\n#### Before - Reduce Motion\r\n\r\nhttps://user-images.githubusercontent.com/1270189/127397786-38325ff9-563c-4446-a2a7-a0b528d19b80.mp4\r\n \r\n\r\n### Testing Instructions\r\n\r\nIn console type:\r\n```\r\nwp.data.dispatch('core/notices').createNotice(\r\n\t\t'info',\r\n\t\t'Post published.',\r\n\t\t{\r\n\t\t\ttype: 'snackbar',\r\n\t\t\tactions: [\r\n\t\t\t\t{\r\n\t\t\t\t\tonClick: () => {},\r\n\t\t\t\t\tlabel: 'View post'\r\n\t\t\t\t}\r\n\t\t\t]\r\n\t\t}\r\n\t);\r\n```\r\nOr perform an action like publishing or updating a page.\r\n\r\nVerify that folks are happy with how framer motion is being exported.\r\n\r\n| Verify that there are no regressions in the preview panel |\r\n|-----|\r\n| \"Screen |\r\n\r\n\r\n\r\n\r\n\r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54839", + "html_url": "https://github.com/WordPress/gutenberg/pull/54839", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54839.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54839.patch", + "merged_at": "2023-09-27T11:35:21Z" + }, + "body": "\r\n\r\n## What?\r\nUses \"Not synced\" in place of \"Standard\" nomenclature for patterns that are not synced. This reduces potential confusion about the differences between patterns that are synced, and patterns that are not (currently called \"Standard\" patterns). I already made the change in `BlockPatternsSyncFilter` in https://github.com/WordPress/gutenberg/pull/54838.\r\n\r\n## How?\r\n\r\n\r\n## Testing Instructions\r\n\r\n 1. Open the site editor in the patterns view.\r\n2. See the ToggleGroup render Synced/Not synced.\r\n\r\n## Screenshots or screencast \r\n| Before | After |\r\n| ------------- | ------------- |\r\n|\"CleanShot|\"CleanShot|\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54839/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54839/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33714", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54838", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33714/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33714/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33714/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33714", - "id": 954094299, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk4MDQwNjEy", - "number": 33714, - "title": "components: Add new ColorPicker", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54838/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54838/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54838/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54838", + "id": 1914065955, + "node_id": "PR_kwDOBNHdeM5bQtkm", + "number": 54838, + "title": "Simplify BlockPatternsSyncFilter with clearer labels and additional context", "user": { - "login": "sarayourfriend", - "id": 24264157, - "node_id": "MDQ6VXNlcjI0MjY0MTU3", - "avatar_url": "https://avatars.githubusercontent.com/u/24264157?v=4", + "login": "richtabor", + "id": 1813435, + "node_id": "MDQ6VXNlcjE4MTM0MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/1813435?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/sarayourfriend", - "html_url": "https://github.com/sarayourfriend", - "followers_url": "https://api.github.com/users/sarayourfriend/followers", - "following_url": "https://api.github.com/users/sarayourfriend/following{/other_user}", - "gists_url": "https://api.github.com/users/sarayourfriend/gists{/gist_id}", - "starred_url": "https://api.github.com/users/sarayourfriend/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/sarayourfriend/subscriptions", - "organizations_url": "https://api.github.com/users/sarayourfriend/orgs", - "repos_url": "https://api.github.com/users/sarayourfriend/repos", - "events_url": "https://api.github.com/users/sarayourfriend/events{/privacy}", - "received_events_url": "https://api.github.com/users/sarayourfriend/received_events", + "url": "https://api.github.com/users/richtabor", + "html_url": "https://github.com/richtabor", + "followers_url": "https://api.github.com/users/richtabor/followers", + "following_url": "https://api.github.com/users/richtabor/following{/other_user}", + "gists_url": "https://api.github.com/users/richtabor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/richtabor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/richtabor/subscriptions", + "organizations_url": "https://api.github.com/users/richtabor/orgs", + "repos_url": "https://api.github.com/users/richtabor/repos", + "events_url": "https://api.github.com/users/richtabor/events{/privacy}", + "received_events_url": "https://api.github.com/users/richtabor/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680825, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", - "name": "[Type] Enhancement", - "color": "3993a3", + "id": 793903067, + "node_id": "MDU6TGFiZWw3OTM5MDMwNjc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Copy", + "name": "[Type] Copy", + "color": "e868f9", "default": false, - "description": "A suggestion for improvement." + "description": "Issues or PRs that need copy editing assistance" }, { - "id": 659839209, - "node_id": "MDU6TGFiZWw2NTk4MzkyMDk=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20UI%20Components", - "name": "[Feature] UI Components", - "color": "fbca04", - "default": false, - "description": "" - }, - { - "id": 997392122, - "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", - "name": "[Package] Components", + "id": 1248494790, + "node_id": "MDU6TGFiZWwxMjQ4NDk0Nzkw", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Block%20editor", + "name": "[Package] Block editor", "color": "ed2572", "default": false, - "description": "/packages/components" - }, - { - "id": 1607665481, - "node_id": "MDU6TGFiZWwxNjA3NjY1NDgx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Storybook", - "name": "Storybook", - "color": "81e2c7", - "default": false, - "description": "Storybook and its stories for components" - }, - { - "id": 2555015900, - "node_id": "MDU6TGFiZWwyNTU1MDE1OTAw", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Component%20System", - "name": "[Feature] Component System", - "color": "fbca04", - "default": false, - "description": "The next iteration on WordPress Components." + "description": "/packages/block-editor" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "richtabor", + "id": 1813435, + "node_id": "MDQ6VXNlcjE4MTM0MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/1813435?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/richtabor", + "html_url": "https://github.com/richtabor", + "followers_url": "https://api.github.com/users/richtabor/followers", + "following_url": "https://api.github.com/users/richtabor/following{/other_user}", + "gists_url": "https://api.github.com/users/richtabor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/richtabor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/richtabor/subscriptions", + "organizations_url": "https://api.github.com/users/richtabor/orgs", + "repos_url": "https://api.github.com/users/richtabor/repos", + "events_url": "https://api.github.com/users/richtabor/events{/privacy}", + "received_events_url": "https://api.github.com/users/richtabor/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "richtabor", + "id": 1813435, + "node_id": "MDQ6VXNlcjE4MTM0MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/1813435?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/richtabor", + "html_url": "https://github.com/richtabor", + "followers_url": "https://api.github.com/users/richtabor/followers", + "following_url": "https://api.github.com/users/richtabor/following{/other_user}", + "gists_url": "https://api.github.com/users/richtabor/gists{/gist_id}", + "starred_url": "https://api.github.com/users/richtabor/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/richtabor/subscriptions", + "organizations_url": "https://api.github.com/users/richtabor/orgs", + "repos_url": "https://api.github.com/users/richtabor/repos", + "events_url": "https://api.github.com/users/richtabor/events{/privacy}", + "received_events_url": "https://api.github.com/users/richtabor/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -10823,82 +11814,147 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 21, - "created_at": "2021-07-27T17:16:54Z", - "updated_at": "2021-08-12T13:12:16Z", - "closed_at": "2021-08-10T13:59:00Z", - "author_association": "CONTRIBUTOR", + "comments": 17, + "created_at": "2023-09-26T18:26:01Z", + "updated_at": "2023-10-04T21:58:09Z", + "closed_at": "2023-10-02T19:18:15Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33714", - "html_url": "https://github.com/WordPress/gutenberg/pull/33714", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33714.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33714.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\nAdds a new vastly simplified ColorPicker implementation based on `react-colorful`.\r\n\r\n## How has this been tested?\r\nStorybook.\r\n\r\n## Screenshots \r\n\r\n\r\nhttps://user-images.githubusercontent.com/24264157/127386106-606631ef-2d8e-4c5a-973f-c288bddb947d.mov\r\n\r\n\r\n\r\n## Types of changes\r\nNew feature.\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54838", + "html_url": "https://github.com/WordPress/gutenberg/pull/54838", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54838.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54838.patch", + "merged_at": "2023-10-02T19:18:15Z" + }, + "body": "\r\n\r\n## What?\r\nA follow-up to https://github.com/WordPress/gutenberg/pull/54681 that:\r\n\r\n- Reduces individual labeling and help text with more context below (similar to the \"Tools\" control in the block editor header). \r\n- Renames \"Standard\" to \"Not synced\", which adds more context to what these patterns are - and reduces nomenclature. \r\n\r\nProps @jasmussen. \r\n\r\n## Testing Instructions\r\n\r\n1. Open a post or page.\r\n2. Open the pattern inserter.\r\n3. Select the \"Filter patterns\" control.\r\n4. See changes.\r\n\r\n## Screenshots or screencast \r\n\r\n### Before\r\n\r\n\"CleanShot\r\n\r\n### After\r\n\r\n\"CleanShot\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54838/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54838/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33713", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54835", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33713/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33713/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33713/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33713", - "id": 954035586, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk3OTkwODk5", - "number": 33713, - "title": "Update bug issue template to use forms", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54835/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54835/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54835/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54835", + "id": 1913897482, + "node_id": "PR_kwDOBNHdeM5bQIj4", + "number": 54835, + "title": "Use instanceOf over property_exists.", "user": { - "login": "annezazu", - "id": 26996883, - "node_id": "MDQ6VXNlcjI2OTk2ODgz", - "avatar_url": "https://avatars.githubusercontent.com/u/26996883?v=4", + "login": "spacedmonkey", + "id": 237508, + "node_id": "MDQ6VXNlcjIzNzUwOA==", + "avatar_url": "https://avatars.githubusercontent.com/u/237508?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/annezazu", - "html_url": "https://github.com/annezazu", - "followers_url": "https://api.github.com/users/annezazu/followers", - "following_url": "https://api.github.com/users/annezazu/following{/other_user}", - "gists_url": "https://api.github.com/users/annezazu/gists{/gist_id}", - "starred_url": "https://api.github.com/users/annezazu/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/annezazu/subscriptions", - "organizations_url": "https://api.github.com/users/annezazu/orgs", - "repos_url": "https://api.github.com/users/annezazu/repos", - "events_url": "https://api.github.com/users/annezazu/events{/privacy}", - "received_events_url": "https://api.github.com/users/annezazu/received_events", + "url": "https://api.github.com/users/spacedmonkey", + "html_url": "https://github.com/spacedmonkey", + "followers_url": "https://api.github.com/users/spacedmonkey/followers", + "following_url": "https://api.github.com/users/spacedmonkey/following{/other_user}", + "gists_url": "https://api.github.com/users/spacedmonkey/gists{/gist_id}", + "starred_url": "https://api.github.com/users/spacedmonkey/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/spacedmonkey/subscriptions", + "organizations_url": "https://api.github.com/users/spacedmonkey/orgs", + "repos_url": "https://api.github.com/users/spacedmonkey/repos", + "events_url": "https://api.github.com/users/spacedmonkey/events{/privacy}", + "received_events_url": "https://api.github.com/users/spacedmonkey/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 1032028862, - "node_id": "MDU6TGFiZWwxMDMyMDI4ODYy", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Project%20Management", - "name": "[Type] Project Management", - "color": "e55ead", + "id": 731693674, + "node_id": "MDU6TGFiZWw3MzE2OTM2NzQ=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Performance", + "name": "[Type] Performance", + "color": "f3f4fe", "default": false, - "description": "Meta-issues related to project management of Gutenberg" + "description": "Related to performance efforts" + }, + { + "id": 4254348202, + "node_id": "LA_kwDOBNHdeM79lDOq", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20PHP%20backport", + "name": "Needs PHP backport", + "color": "64436E", + "default": false, + "description": "Needs PHP backport to Core" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "spacedmonkey", + "id": 237508, + "node_id": "MDQ6VXNlcjIzNzUwOA==", + "avatar_url": "https://avatars.githubusercontent.com/u/237508?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/spacedmonkey", + "html_url": "https://github.com/spacedmonkey", + "followers_url": "https://api.github.com/users/spacedmonkey/followers", + "following_url": "https://api.github.com/users/spacedmonkey/following{/other_user}", + "gists_url": "https://api.github.com/users/spacedmonkey/gists{/gist_id}", + "starred_url": "https://api.github.com/users/spacedmonkey/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/spacedmonkey/subscriptions", + "organizations_url": "https://api.github.com/users/spacedmonkey/orgs", + "repos_url": "https://api.github.com/users/spacedmonkey/repos", + "events_url": "https://api.github.com/users/spacedmonkey/events{/privacy}", + "received_events_url": "https://api.github.com/users/spacedmonkey/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "spacedmonkey", + "id": 237508, + "node_id": "MDQ6VXNlcjIzNzUwOA==", + "avatar_url": "https://avatars.githubusercontent.com/u/237508?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/spacedmonkey", + "html_url": "https://github.com/spacedmonkey", + "followers_url": "https://api.github.com/users/spacedmonkey/followers", + "following_url": "https://api.github.com/users/spacedmonkey/following{/other_user}", + "gists_url": "https://api.github.com/users/spacedmonkey/gists{/gist_id}", + "starred_url": "https://api.github.com/users/spacedmonkey/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/spacedmonkey/subscriptions", + "organizations_url": "https://api.github.com/users/spacedmonkey/orgs", + "repos_url": "https://api.github.com/users/spacedmonkey/repos", + "events_url": "https://api.github.com/users/spacedmonkey/events{/privacy}", + "received_events_url": "https://api.github.com/users/spacedmonkey/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -10921,100 +11977,174 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 4, - "created_at": "2021-07-27T16:02:51Z", - "updated_at": "2021-08-02T17:06:37Z", - "closed_at": "2021-07-29T14:48:58Z", - "author_association": "CONTRIBUTOR", + "comments": 5, + "created_at": "2023-09-26T16:34:27Z", + "updated_at": "2023-09-27T11:50:13Z", + "closed_at": "2023-09-27T11:12:45Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33713", - "html_url": "https://github.com/WordPress/gutenberg/pull/33713", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33713.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33713.patch" - }, - "body": "## Description\r\nThis will help address part of this open issue to move bug reports to forms: https://github.com/WordPress/gutenberg/issues/33394 I followed the documentation linked and tried to match it to the current issue template as closely as possible. I purposefully left out adding labels and customizing the title as I still believe both of those are too complex decisions to make in such a generalized way. \r\n\r\nOf note:\r\n\r\n> If you want to use the same file name for your YAML issue form, you must delete the Markdown issue template when you commit the new file to your repository.\r\n\r\nThis PR doesn't include that file being removed but can be if we'd like to keep the same file name. I've never created one of these issue template forms before so might have approached this incorrectly :) Guidance appreciated. \r\n\r\n## Types of changes\r\n\r\nEnhancement to project management\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54835", + "html_url": "https://github.com/WordPress/gutenberg/pull/54835", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54835.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54835.patch", + "merged_at": "2023-09-27T11:12:44Z" + }, + "body": "\r\n\r\n## What?\r\n\r\nTrac ticket: https://core.trac.wordpress.org/ticket/59453#ticket\r\n\r\n`instanceOf` is better performance than `property_exists`\r\n\r\n## Why?\r\n\r\n\r\n## How?\r\n\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54835/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54835/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33708", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54834", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33708/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33708/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33708/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33708", - "id": 953810575, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk3Nzk4MTc2", - "number": 33708, - "title": "Disable spellcheck and autocomplete in permalink slug field", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54834/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54834/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54834/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54834", + "id": 1913848459, + "node_id": "PR_kwDOBNHdeM5bP94x", + "number": 54834, + "title": "fix: Prevent crash from invalid media URLs", "user": { - "login": "walbo", - "id": 1415747, - "node_id": "MDQ6VXNlcjE0MTU3NDc=", - "avatar_url": "https://avatars.githubusercontent.com/u/1415747?v=4", + "login": "dcalhoun", + "id": 438664, + "node_id": "MDQ6VXNlcjQzODY2NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/walbo", - "html_url": "https://github.com/walbo", - "followers_url": "https://api.github.com/users/walbo/followers", - "following_url": "https://api.github.com/users/walbo/following{/other_user}", - "gists_url": "https://api.github.com/users/walbo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/walbo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/walbo/subscriptions", - "organizations_url": "https://api.github.com/users/walbo/orgs", - "repos_url": "https://api.github.com/users/walbo/repos", - "events_url": "https://api.github.com/users/walbo/events{/privacy}", - "received_events_url": "https://api.github.com/users/walbo/received_events", + "url": "https://api.github.com/users/dcalhoun", + "html_url": "https://github.com/dcalhoun", + "followers_url": "https://api.github.com/users/dcalhoun/followers", + "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", + "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", + "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", + "organizations_url": "https://api.github.com/users/dcalhoun/orgs", + "repos_url": "https://api.github.com/users/dcalhoun/repos", + "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", + "received_events_url": "https://api.github.com/users/dcalhoun/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680825, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", - "name": "[Type] Enhancement", - "color": "3993a3", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "A suggestion for improvement." + "description": "An existing feature does not function as intended" }, { - "id": 610403961, - "node_id": "MDU6TGFiZWw2MTA0MDM5NjE=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Document%20Settings", - "name": "[Feature] Document Settings", - "color": "fbca04", + "id": 982506020, + "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", + "name": "Mobile App - i.e. Android or iOS", + "color": "a3ef7a", "default": false, - "description": "" + "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" }, { - "id": 1118625183, - "node_id": "MDU6TGFiZWwxMTE4NjI1MTgz", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Permalink", - "name": "[Feature] Permalink", - "color": "fbca04", + "id": 1105650457, + "node_id": "MDU6TGFiZWwxMTA1NjUwNDU3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Video", + "name": "[Block] Video", + "color": "6767e5", "default": false, - "description": "" + "description": "Affects the Video Block" + }, + { + "id": 1114123398, + "node_id": "MDU6TGFiZWwxMTE0MTIzMzk4", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Audio", + "name": "[Block] Audio", + "color": "6767e5", + "default": false, + "description": "Affects the Audio Block" + }, + { + "id": 3639254262, + "node_id": "LA_kwDOBNHdeM7Y6pz2", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20Automation", + "name": "Mobile App - Automation", + "color": "669206", + "default": false, + "description": "Label used to initiate Mobile App PR Automation" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "dcalhoun", + "id": 438664, + "node_id": "MDQ6VXNlcjQzODY2NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/dcalhoun", + "html_url": "https://github.com/dcalhoun", + "followers_url": "https://api.github.com/users/dcalhoun/followers", + "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", + "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", + "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", + "organizations_url": "https://api.github.com/users/dcalhoun/orgs", + "repos_url": "https://api.github.com/users/dcalhoun/repos", + "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", + "received_events_url": "https://api.github.com/users/dcalhoun/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "dcalhoun", + "id": 438664, + "node_id": "MDQ6VXNlcjQzODY2NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/dcalhoun", + "html_url": "https://github.com/dcalhoun", + "followers_url": "https://api.github.com/users/dcalhoun/followers", + "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", + "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", + "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", + "organizations_url": "https://api.github.com/users/dcalhoun/orgs", + "repos_url": "https://api.github.com/users/dcalhoun/repos", + "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", + "received_events_url": "https://api.github.com/users/dcalhoun/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -11037,68 +12167,102 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 0, - "created_at": "2021-07-27T12:03:07Z", - "updated_at": "2021-07-28T12:08:41Z", - "closed_at": "2021-07-28T05:12:26Z", - "author_association": "CONTRIBUTOR", + "comments": 3, + "created_at": "2023-09-26T16:06:19Z", + "updated_at": "2023-09-27T13:02:55Z", + "closed_at": "2023-09-27T13:02:21Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33708", - "html_url": "https://github.com/WordPress/gutenberg/pull/33708", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33708.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33708.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\nPrevent unintended permalink slugs.\r\n\r\nFixes #33612\r\n\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\n## Screenshots \r\n\r\n## Types of changes\r\nEnhancement\r\n\r\n\r\n\r\n\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54834", + "html_url": "https://github.com/WordPress/gutenberg/pull/54834", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54834.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54834.patch", + "merged_at": "2023-09-27T13:02:21Z" + }, + "body": "\r\n\r\n## What?\r\n\r\nPrevent crashes resulting from attempts to set an invalid URL for a video or\r\naudio file, e.g. `h://domain.org/video.mp4`.\r\n\r\n## Why?\r\n\r\nFixes https://github.com/wordpress-mobile/gutenberg-mobile/issues/6233. The crash is disruptive for users.\r\n\r\n## How?\r\n\r\nDetect and avoid sending URLs that do not begin with `http:` or `http://` to the\r\n`react-native-video` package as it will attempt and fail to load the URL as a\r\nlocal app bundle resource. Instead, display a notice to the user that the\r\nprovided URL is invalid.\r\n\r\nThe `isURL` utility considers URLs using uncommon protocols to be valid,\r\nas constructing `URL` with, say, `h://a-path.com` is valid.\r\nContrastingly, the `react-native-video` package [only considers](https://github.com/react-native-video/react-native-video/blob/81ae785090f5ce3d5e45cc51f68a3360a85be853/Video.js#L277) a URL\r\nusing the `http:` or `https:` protocols to be a \"network\" asset. This\r\nleads to an attempt to load the URL as a local asset, which fails as the\r\nasset does not exist in the app bundle.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n1. Add a Video or Audio block.\r\n1. Select \"Insert from URL.\"\r\n1. Type an invalid URL, e.g. `h://wordpress.org/video.mp4`.\r\n1. Dismiss the bottom sheet.\r\n1. Verify the app does not crash and a helpful message is displayed.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\nn/a\r\n\r\n## Screenshots or screencast \r\nn/a\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54834/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54834/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33707", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54832", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33707/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33707/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33707/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33707", - "id": 953738028, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk3NzM0OTI5", - "number": 33707, - "title": "[Mobile] - Global styles: Check for undefined values and merge user colors", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54832/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54832/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54832/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54832", + "id": 1913745257, + "node_id": "PR_kwDOBNHdeM5bPnIv", + "number": 54832, + "title": "Font Library: syntax refactor repace strpos with str_contains", "user": { - "login": "geriux", - "id": 4885740, - "node_id": "MDQ6VXNlcjQ4ODU3NDA=", - "avatar_url": "https://avatars.githubusercontent.com/u/4885740?v=4", + "login": "matiasbenedetto", + "id": 1310626, + "node_id": "MDQ6VXNlcjEzMTA2MjY=", + "avatar_url": "https://avatars.githubusercontent.com/u/1310626?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/geriux", - "html_url": "https://github.com/geriux", - "followers_url": "https://api.github.com/users/geriux/followers", - "following_url": "https://api.github.com/users/geriux/following{/other_user}", - "gists_url": "https://api.github.com/users/geriux/gists{/gist_id}", - "starred_url": "https://api.github.com/users/geriux/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/geriux/subscriptions", - "organizations_url": "https://api.github.com/users/geriux/orgs", - "repos_url": "https://api.github.com/users/geriux/repos", - "events_url": "https://api.github.com/users/geriux/events{/privacy}", - "received_events_url": "https://api.github.com/users/geriux/received_events", + "url": "https://api.github.com/users/matiasbenedetto", + "html_url": "https://github.com/matiasbenedetto", + "followers_url": "https://api.github.com/users/matiasbenedetto/followers", + "following_url": "https://api.github.com/users/matiasbenedetto/following{/other_user}", + "gists_url": "https://api.github.com/users/matiasbenedetto/gists{/gist_id}", + "starred_url": "https://api.github.com/users/matiasbenedetto/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/matiasbenedetto/subscriptions", + "organizations_url": "https://api.github.com/users/matiasbenedetto/orgs", + "repos_url": "https://api.github.com/users/matiasbenedetto/repos", + "events_url": "https://api.github.com/users/matiasbenedetto/events{/privacy}", + "received_events_url": "https://api.github.com/users/matiasbenedetto/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 982506020, - "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", - "name": "Mobile App - i.e. Android or iOS", - "color": "a3ef7a", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + "description": "Issues or PRs that relate to code quality" + }, + { + "id": 4254348202, + "node_id": "LA_kwDOBNHdeM79lDOq", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20PHP%20backport", + "name": "Needs PHP backport", + "color": "64436E", + "default": false, + "description": "Needs PHP backport to Core" + }, + { + "id": 4366600186, + "node_id": "LA_kwDOBNHdeM8AAAABBEUH-g", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Typography", + "name": "[Feature] Typography", + "color": "fbca04", + "default": false, + "description": "Font and typography-related issues and PRs" } ], "state": "closed", @@ -11106,13 +12270,13 @@ "assignee": null, "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -11135,131 +12299,116 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, "comments": 3, - "created_at": "2021-07-27T10:28:27Z", - "updated_at": "2021-07-28T14:33:42Z", - "closed_at": "2021-07-28T14:33:16Z", - "author_association": "MEMBER", + "created_at": "2023-09-26T15:13:27Z", + "updated_at": "2023-09-29T12:04:11Z", + "closed_at": "2023-09-27T00:24:20Z", + "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33707", - "html_url": "https://github.com/WordPress/gutenberg/pull/33707", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33707.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33707.patch" - }, - "body": "## Description\r\nWhile testing the mobile editor an issue was found when one of the Global styles values was undefined, causing it to crash. This PR checks those values before parsing the variables.\r\n\r\n## How has this been tested?\r\n\r\n### Test case 1 \r\n\r\nWith a simple site\r\n\r\n- Open the WordPress iOS app with metro running\r\n- Open and close the editor a couple of times\r\n- **Expect** the editor to work correctly without crashing\r\n\r\n### Test case 2\r\n\r\nWith a self-hosted site with WordPress 5.8 and Gutenberg 11.1 and a theme.json theme activated\r\n\r\n- Open the WordPress iOS app with metro running\r\n- Open the editor\r\n- **Expect** to see the theme colors (background, text)\r\n\r\n## Screenshots \r\n\r\nTest case 1|Test case 2\r\n-|-\r\n | \r\n\r\n## Types of changes\r\nBug fix\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54832", + "html_url": "https://github.com/WordPress/gutenberg/pull/54832", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54832.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54832.patch", + "merged_at": "2023-09-27T00:24:20Z" + }, + "body": "## What?\r\nsyntax refactor repace strpos with str_contains\r\nFollow up of this @anton-vlasenko comment: https://github.com/WordPress/gutenberg/pull/54067#issuecomment-1731798079\r\n\r\n## Why?\r\nto improve code readeability\r\n\r\n## How?\r\nrepacing strpos with str_contains\r\n\r\n\r\n## Testing Instructions\r\nrun php unit tests", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54832/reactions", + "total_count": 1, + "+1": 1, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54832/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33703", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54829", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33703/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33703/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33703/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33703", - "id": 953194000, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk3MjczNzI1", - "number": 33703, - "title": "Template Part placeholder - Add title step to creation flow.", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54829/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54829/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54829/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54829", + "id": 1913579217, + "node_id": "PR_kwDOBNHdeM5bPCly", + "number": 54829, + "title": "Font Library: refactor endpoint permissions", "user": { - "login": "Addison-Stavlo", - "id": 28742426, - "node_id": "MDQ6VXNlcjI4NzQyNDI2", - "avatar_url": "https://avatars.githubusercontent.com/u/28742426?v=4", + "login": "matiasbenedetto", + "id": 1310626, + "node_id": "MDQ6VXNlcjEzMTA2MjY=", + "avatar_url": "https://avatars.githubusercontent.com/u/1310626?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Addison-Stavlo", - "html_url": "https://github.com/Addison-Stavlo", - "followers_url": "https://api.github.com/users/Addison-Stavlo/followers", - "following_url": "https://api.github.com/users/Addison-Stavlo/following{/other_user}", - "gists_url": "https://api.github.com/users/Addison-Stavlo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Addison-Stavlo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Addison-Stavlo/subscriptions", - "organizations_url": "https://api.github.com/users/Addison-Stavlo/orgs", - "repos_url": "https://api.github.com/users/Addison-Stavlo/repos", - "events_url": "https://api.github.com/users/Addison-Stavlo/events{/privacy}", - "received_events_url": "https://api.github.com/users/Addison-Stavlo/received_events", + "url": "https://api.github.com/users/matiasbenedetto", + "html_url": "https://github.com/matiasbenedetto", + "followers_url": "https://api.github.com/users/matiasbenedetto/followers", + "following_url": "https://api.github.com/users/matiasbenedetto/following{/other_user}", + "gists_url": "https://api.github.com/users/matiasbenedetto/gists{/gist_id}", + "starred_url": "https://api.github.com/users/matiasbenedetto/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/matiasbenedetto/subscriptions", + "organizations_url": "https://api.github.com/users/matiasbenedetto/orgs", + "repos_url": "https://api.github.com/users/matiasbenedetto/repos", + "events_url": "https://api.github.com/users/matiasbenedetto/events{/privacy}", + "received_events_url": "https://api.github.com/users/matiasbenedetto/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 1604715381, - "node_id": "MDU6TGFiZWwxNjA0NzE1Mzgx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Full%20Site%20Editing", - "name": "[Feature] Full Site Editing", - "color": "fbca04", + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", "default": false, - "description": "" + "description": "A suggestion for improvement." }, { - "id": 2373088071, - "node_id": "MDU6TGFiZWwyMzczMDg4MDcx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Template-Part", - "name": "[Block] Template-Part", - "color": "6767e5", + "id": 4254348202, + "node_id": "LA_kwDOBNHdeM79lDOq", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20PHP%20backport", + "name": "Needs PHP backport", + "color": "64436E", + "default": false, + "description": "Needs PHP backport to Core" + }, + { + "id": 4366600186, + "node_id": "LA_kwDOBNHdeM8AAAABBEUH-g", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Typography", + "name": "[Feature] Typography", + "color": "fbca04", "default": false, - "description": "" + "description": "Font and typography-related issues and PRs" } ], "state": "closed", "locked": false, - "assignee": { - "login": "Addison-Stavlo", - "id": 28742426, - "node_id": "MDQ6VXNlcjI4NzQyNDI2", - "avatar_url": "https://avatars.githubusercontent.com/u/28742426?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/Addison-Stavlo", - "html_url": "https://github.com/Addison-Stavlo", - "followers_url": "https://api.github.com/users/Addison-Stavlo/followers", - "following_url": "https://api.github.com/users/Addison-Stavlo/following{/other_user}", - "gists_url": "https://api.github.com/users/Addison-Stavlo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Addison-Stavlo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Addison-Stavlo/subscriptions", - "organizations_url": "https://api.github.com/users/Addison-Stavlo/orgs", - "repos_url": "https://api.github.com/users/Addison-Stavlo/repos", - "events_url": "https://api.github.com/users/Addison-Stavlo/events{/privacy}", - "received_events_url": "https://api.github.com/users/Addison-Stavlo/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "Addison-Stavlo", - "id": 28742426, - "node_id": "MDQ6VXNlcjI4NzQyNDI2", - "avatar_url": "https://avatars.githubusercontent.com/u/28742426?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/Addison-Stavlo", - "html_url": "https://github.com/Addison-Stavlo", - "followers_url": "https://api.github.com/users/Addison-Stavlo/followers", - "following_url": "https://api.github.com/users/Addison-Stavlo/following{/other_user}", - "gists_url": "https://api.github.com/users/Addison-Stavlo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Addison-Stavlo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Addison-Stavlo/subscriptions", - "organizations_url": "https://api.github.com/users/Addison-Stavlo/orgs", - "repos_url": "https://api.github.com/users/Addison-Stavlo/repos", - "events_url": "https://api.github.com/users/Addison-Stavlo/events{/privacy}", - "received_events_url": "https://api.github.com/users/Addison-Stavlo/received_events", - "type": "User", - "site_admin": false - } - ], + "assignee": null, + "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -11282,149 +12431,107 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 5, - "created_at": "2021-07-26T18:59:12Z", - "updated_at": "2021-07-30T16:42:33Z", - "closed_at": "2021-07-30T16:42:07Z", + "comments": 4, + "created_at": "2023-09-26T13:58:20Z", + "updated_at": "2023-10-02T09:39:54Z", + "closed_at": "2023-09-29T22:32:44Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33703", - "html_url": "https://github.com/WordPress/gutenberg/pull/33703", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33703.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33703.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nRelated to discussion on #29950 - Adds a title step to the creation flow from the Template Part placeholder. Here we prompt the user with a modal (similar to the \"make template part\" flow from the block settings ellipsis menu) to change the name of the title from \"Untitled Template Part\". If the modal is cancelled, we revert to the placeholder and the template part is not created.\r\n\r\n![Screen Shot 2021-07-26 at 2 47 41 PM](https://user-images.githubusercontent.com/28742426/127043576-2263a093-c1ab-44a8-859b-d299bd937820.png)\r\n\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\nWith FSE enabled, test the following in both the Site and Post editor:\r\n* Insert a template part block placeholder (Header, Footer, or Template Part).\r\n* Select the \"New %s\" option. \r\n* A naming input should appear.\r\n* Cancelling (or clicking outside) the modal should revert the block back to the placeholder state.\r\n* \"Create\" should create the new template part with the name that was given in the input field.\r\n\r\n## Screenshots \r\n\r\n## Types of changes\r\n\r\n\r\nNew feature (non-breaking change which adds functionality) \r\n\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54829", + "html_url": "https://github.com/WordPress/gutenberg/pull/54829", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54829.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54829.patch", + "merged_at": "2023-09-29T22:32:44Z" + }, + "body": "## What?\r\nFont Library:\r\n- Refactor endpoint permissions.\r\n- Standardize the output of the install and uninstall endpoints.\r\n- Display a success or error notice on the frontend for install and uninstall actions.\r\n\r\n## Why?\r\n- To have a standard output for the endpoints for success and error cases.\r\n\r\n## How?\r\nRefactoring the endpoint responses.\r\n\r\n## Testing Instructions\r\n- Use the font library to install local and Google fonts.\r\n- Remove fonts\r\nCheck that the result is expected and you get the success or error notices.\r\n\r\n\r\nProps to @pbking and @jffng for the big help implementing this :)\r\n\r\n\r\nCloses: https://github.com/WordPress/gutenberg/issues/54751\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54829/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54829/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33701", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54827", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33701/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33701/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33701/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33701", - "id": 953174654, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk3MjU3OTQy", - "number": 33701, - "title": "Components: promote `ItemGroup`", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54827/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54827/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54827/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54827", + "id": 1913500812, + "node_id": "PR_kwDOBNHdeM5bOxam", + "number": 54827, + "title": "Bump gradle/gradle-build-action from 2.8.0 to 2.8.1", "user": { - "login": "ciampo", - "id": 1083581, - "node_id": "MDQ6VXNlcjEwODM1ODE=", - "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "login": "dependabot[bot]", + "id": 49699333, + "node_id": "MDM6Qm90NDk2OTkzMzM=", + "avatar_url": "https://avatars.githubusercontent.com/in/29110?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/ciampo", - "html_url": "https://github.com/ciampo", - "followers_url": "https://api.github.com/users/ciampo/followers", - "following_url": "https://api.github.com/users/ciampo/following{/other_user}", - "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", - "organizations_url": "https://api.github.com/users/ciampo/orgs", - "repos_url": "https://api.github.com/users/ciampo/repos", - "events_url": "https://api.github.com/users/ciampo/events{/privacy}", - "received_events_url": "https://api.github.com/users/ciampo/received_events", - "type": "User", + "url": "https://api.github.com/users/dependabot%5Bbot%5D", + "html_url": "https://github.com/apps/dependabot", + "followers_url": "https://api.github.com/users/dependabot%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/dependabot%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/dependabot%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/dependabot%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/dependabot%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/dependabot%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/dependabot%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/dependabot%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/dependabot%5Bbot%5D/received_events", + "type": "Bot", "site_admin": false }, "labels": [ { - "id": 531680825, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", - "name": "[Type] Enhancement", - "color": "3993a3", - "default": false, - "description": "A suggestion for improvement." - }, - { - "id": 997392122, - "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", - "name": "[Package] Components", - "color": "ed2572", - "default": false, - "description": "/packages/components" - }, - { - "id": 1789345375, - "node_id": "MDU6TGFiZWwxNzg5MzQ1Mzc1", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Experimental", - "name": "[Type] Experimental", - "color": "4109a0", + "id": 596512821, + "node_id": "MDU6TGFiZWw1OTY1MTI4MjE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Build%20Tooling", + "name": "[Type] Build Tooling", + "color": "111111", "default": false, - "description": "Experimental feature or API." + "description": "Issues or PRs related to build tooling" }, { - "id": 2555015900, - "node_id": "MDU6TGFiZWwyNTU1MDE1OTAw", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Component%20System", - "name": "[Feature] Component System", - "color": "fbca04", + "id": 4662565393, + "node_id": "LA_kwDOBNHdeM8AAAABFekaEQ", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/GitHub%20Actions", + "name": "GitHub Actions", + "color": "000000", "default": false, - "description": "The next iteration on WordPress Components." + "description": "Pull requests that update GitHub Actions code" } ], "state": "closed", "locked": false, - "assignee": { - "login": "ciampo", - "id": 1083581, - "node_id": "MDQ6VXNlcjEwODM1ODE=", - "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/ciampo", - "html_url": "https://github.com/ciampo", - "followers_url": "https://api.github.com/users/ciampo/followers", - "following_url": "https://api.github.com/users/ciampo/following{/other_user}", - "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", - "organizations_url": "https://api.github.com/users/ciampo/orgs", - "repos_url": "https://api.github.com/users/ciampo/repos", - "events_url": "https://api.github.com/users/ciampo/events{/privacy}", - "received_events_url": "https://api.github.com/users/ciampo/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "ciampo", - "id": 1083581, - "node_id": "MDQ6VXNlcjEwODM1ODE=", - "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/ciampo", - "html_url": "https://github.com/ciampo", - "followers_url": "https://api.github.com/users/ciampo/followers", - "following_url": "https://api.github.com/users/ciampo/following{/other_user}", - "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", - "organizations_url": "https://api.github.com/users/ciampo/orgs", - "repos_url": "https://api.github.com/users/ciampo/repos", - "events_url": "https://api.github.com/users/ciampo/events{/privacy}", - "received_events_url": "https://api.github.com/users/ciampo/received_events", - "type": "User", - "site_admin": false - } - ], + "assignee": null, + "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -11447,131 +12554,156 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-07-26T18:31:43Z", - "updated_at": "2021-07-29T08:56:06Z", - "closed_at": "2021-07-29T08:55:47Z", + "comments": 0, + "created_at": "2023-09-26T13:20:21Z", + "updated_at": "2023-09-28T13:59:02Z", + "closed_at": "2023-09-28T13:58:35Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33701", - "html_url": "https://github.com/WordPress/gutenberg/pull/33701", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33701.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33701.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\n\r\n- Promote the `ItemGroup` and `Item` components from the `packages/components/src/ui` folder to the `packages/components/src` folder\r\n- Refactor the folder structure, so that each component has its own folder\r\n- Fix a bug with the CSS pseudo-elements selectors, where the `[first|last]-of-type` selectors where causing an issue when mixing and matching different HTML element types (e.g. when one item has `isAction={true}` and the rest of the elements don't). To fix this bug, every `Item` is now wrapped in a `div` component to make sure that all children of `ItemGroup` are of the same type\r\n- Add README and JSDocs comments to types\r\n- Add a few basic unit tests\r\n- Export component from the `@wordpress/components` package\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\n- All tests pass\r\n- Run storybook locally, and make sure that the components behaves in the same way as it does currently on [production storybook](https://wordpress.github.io/gutenberg/?path=/story/components-experimental-itemgroup--default)\r\n\r\n## Screenshots \r\n\r\n\"Screenshot\r\n\r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\n\r\nRefactor\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54827", + "html_url": "https://github.com/WordPress/gutenberg/pull/54827", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54827.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54827.patch", + "merged_at": "2023-09-28T13:58:35Z" + }, + "body": "Bumps [gradle/gradle-build-action](https://github.com/gradle/gradle-build-action) from 2.8.0 to 2.8.1.\n
\nRelease notes\n

Sourced from gradle/gradle-build-action's releases.

\n
\n

v2.8.1

\n

Fixes an issue that prevented Dependency Graph submission when running on GitHub Enterprise Server.

\n

Fixes

\n
    \n
  • Incorrect endpoint used to submit Dependency Graph on GitHub Enterprise #885
  • \n
\n

Changelog

\n

https://github.com/gradle/gradle-build-action/compare/v2.8.0...v2.8.1

\n
\n
\n
\nCommits\n
    \n
  • b5126f3 Use github.getOctokit() for compat with GitHub Enterprise
  • \n
  • d8615cc Document configuration to publish to scans.gradle.com
  • \n
  • 444c20b Test multiple dependency graphs on all os's
  • \n
  • aea76e1 Dependency updates
  • \n
  • 103e3a7 Build outputs
  • \n
  • 73e3fc2 Bump the npm-dependencies group with 12 updates
  • \n
  • b063df0 Bump GE plugin versions
  • \n
  • 5e3952d Bump the github-actions group with 2 updates
  • \n
  • ed940a3 Fix name of test dependency-graph workflow
  • \n
  • 3bfe3a4 Clarify documentation
  • \n
  • Additional commits viewable in compare view
  • \n
\n
\n
\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=gradle/gradle-build-action&package-manager=github_actions&previous-version=2.8.0&new-version=2.8.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n
\nDependabot commands and options\n
\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n
", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54827/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54827/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33696", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54825", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33696/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33696/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33696/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33696", - "id": 952995508, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk3MTA2MzEx", - "number": 33696, - "title": "components: InputControl to TypeScript", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54825/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54825/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54825/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54825", + "id": 1913485370, + "node_id": "PR_kwDOBNHdeM5bOuCc", + "number": 54825, + "title": "[RNMobile] Cover block: Avoid exception when adding media after setting the overlay color", "user": { - "login": "sarayourfriend", - "id": 24264157, - "node_id": "MDQ6VXNlcjI0MjY0MTU3", - "avatar_url": "https://avatars.githubusercontent.com/u/24264157?v=4", + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/sarayourfriend", - "html_url": "https://github.com/sarayourfriend", - "followers_url": "https://api.github.com/users/sarayourfriend/followers", - "following_url": "https://api.github.com/users/sarayourfriend/following{/other_user}", - "gists_url": "https://api.github.com/users/sarayourfriend/gists{/gist_id}", - "starred_url": "https://api.github.com/users/sarayourfriend/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/sarayourfriend/subscriptions", - "organizations_url": "https://api.github.com/users/sarayourfriend/orgs", - "repos_url": "https://api.github.com/users/sarayourfriend/repos", - "events_url": "https://api.github.com/users/sarayourfriend/events{/privacy}", - "received_events_url": "https://api.github.com/users/sarayourfriend/received_events", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 930001208, - "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", - "name": "[Type] Code Quality", - "color": "e5e04b", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", "default": false, - "description": "Gotta shave those yaks." + "description": "An existing feature does not function as intended" }, { - "id": 997392122, - "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", - "name": "[Package] Components", - "color": "ed2572", + "id": 982506020, + "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", + "name": "Mobile App - i.e. Android or iOS", + "color": "a3ef7a", "default": false, - "description": "/packages/components" + "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + }, + { + "id": 1101517892, + "node_id": "MDU6TGFiZWwxMTAxNTE3ODky", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Cover", + "name": "[Block] Cover", + "color": "6767e5", + "default": false, + "description": "Affects the Cover Block - used to display content laid over a background image" } ], "state": "closed", "locked": false, "assignee": { - "login": "sarayourfriend", - "id": 24264157, - "node_id": "MDQ6VXNlcjI0MjY0MTU3", - "avatar_url": "https://avatars.githubusercontent.com/u/24264157?v=4", + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/sarayourfriend", - "html_url": "https://github.com/sarayourfriend", - "followers_url": "https://api.github.com/users/sarayourfriend/followers", - "following_url": "https://api.github.com/users/sarayourfriend/following{/other_user}", - "gists_url": "https://api.github.com/users/sarayourfriend/gists{/gist_id}", - "starred_url": "https://api.github.com/users/sarayourfriend/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/sarayourfriend/subscriptions", - "organizations_url": "https://api.github.com/users/sarayourfriend/orgs", - "repos_url": "https://api.github.com/users/sarayourfriend/repos", - "events_url": "https://api.github.com/users/sarayourfriend/events{/privacy}", - "received_events_url": "https://api.github.com/users/sarayourfriend/received_events", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "sarayourfriend", - "id": 24264157, - "node_id": "MDQ6VXNlcjI0MjY0MTU3", - "avatar_url": "https://avatars.githubusercontent.com/u/24264157?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/sarayourfriend", - "html_url": "https://github.com/sarayourfriend", - "followers_url": "https://api.github.com/users/sarayourfriend/followers", - "following_url": "https://api.github.com/users/sarayourfriend/following{/other_user}", - "gists_url": "https://api.github.com/users/sarayourfriend/gists{/gist_id}", - "starred_url": "https://api.github.com/users/sarayourfriend/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/sarayourfriend/subscriptions", - "organizations_url": "https://api.github.com/users/sarayourfriend/orgs", - "repos_url": "https://api.github.com/users/sarayourfriend/repos", - "events_url": "https://api.github.com/users/sarayourfriend/events{/privacy}", - "received_events_url": "https://api.github.com/users/sarayourfriend/received_events", + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -11594,56 +12726,72 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-07-26T14:58:32Z", - "updated_at": "2021-08-06T13:04:52Z", - "closed_at": "2021-08-06T13:04:11Z", + "comments": 1, + "created_at": "2023-09-26T13:12:19Z", + "updated_at": "2023-09-26T14:58:29Z", + "closed_at": "2023-09-26T14:58:00Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33696", - "html_url": "https://github.com/WordPress/gutenberg/pull/33696", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33696.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33696.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\nI did this refactor while I was working on something else so I figured I might as well open a PR for it.\r\n\r\nIt just converts the InputControl to TypeScript and (I think) improves the way the reducer code is structured while we're at it.\r\n\r\n## How has this been tested?\r\nStorybook should work the same for InputControl, NumberControl and UnitControl, the last two depend on InputControl.\r\n\r\nTS build should pass as well.\r\n\r\n## Types of changes\r\nJanitorial\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [N/A] My code follows the accessibility standards. \r\n- [N/A] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54825", + "html_url": "https://github.com/WordPress/gutenberg/pull/54825", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54825.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54825.patch", + "merged_at": "2023-09-26T14:57:59Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nFixes an exception produced when adding media on a Cover block that already has an overlay color.\r\n\r\n## Why?\r\n\r\n\r\nThe exception addressed leads to a crash in the app.\r\n\r\n## How?\r\n\r\n\r\nThe exception is produced in the handler `onSelectMedia` due to a recent change in the shared function `attributesFromMedia` introduced in https://github.com/WordPress/gutenberg/pull/54054. Previous to the change, `attributesFromMedia` was returning a function that updated the attributes upon calling it, but now it just returns the attributes to update. The workaround for the native version is simply to collect the attributes from `attributesFromMedia` and update the attributes directly in the `onSelectMedia` handler.\r\n\r\nIdeally, we should update the native version of the block to match the logic of the web version. However, in the spirit of addressing the exception sooner than later, we could use this approach and work on the refactor in a separate PR.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n1. Open/create a post.\r\n2. Add a Cover block.\r\n3. Select one of the colors displayed in the placeholder.\r\n4. Select the Cover block.\r\n5. Open the block settings.\r\n6. Tap on the \"Add image or video\" option.\r\n7. Tap on the \"WordPress Media Library\" option.\r\n8. Select an image.\r\n9. Observe that no exception is thrown.\r\n10. Observe that the image is set as the background.\r\n11. Observe that the overlay color matches the color selected.\r\n12. Observe that the overlay has 50% transparency.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\nN/A\r\n\r\n## Screenshots or screencast \r\nN/A", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54825/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54825/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33680", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54823", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33680/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33680/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33680/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33680", - "id": 952571352, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk2NzQ1NzI3", - "number": 33680, - "title": "Global Styles: Avoid rendering duplicate elements stylesheet", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54823/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54823/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54823/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54823", + "id": 1913269746, + "node_id": "PR_kwDOBNHdeM5bN-r5", + "number": 54823, + "title": "Fix Search Block not updating in Nav block", "user": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "getdave", + "id": 444434, + "node_id": "MDQ6VXNlcjQ0NDQzNA==", + "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/getdave", + "html_url": "https://github.com/getdave", + "followers_url": "https://api.github.com/users/getdave/followers", + "following_url": "https://api.github.com/users/getdave/following{/other_user}", + "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", + "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", + "organizations_url": "https://api.github.com/users/getdave/orgs", + "repos_url": "https://api.github.com/users/getdave/repos", + "events_url": "https://api.github.com/users/getdave/events{/privacy}", + "received_events_url": "https://api.github.com/users/getdave/received_events", "type": "User", "site_admin": false }, @@ -11655,70 +12803,39 @@ "name": "[Type] Bug", "color": "d93f0b", "default": false, - "description": "An existing feature is broken." + "description": "An existing feature does not function as intended" }, { - "id": 1800807983, - "node_id": "MDU6TGFiZWwxODAwODA3OTgz", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Global%20Styles", - "name": "Global Styles", - "color": "2100b7", + "id": 1225853227, + "node_id": "MDU6TGFiZWwxMjI1ODUzMjI3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Navigation", + "name": "[Block] Navigation", + "color": "6767e5", + "default": false, + "description": "Affects the Navigation Block" + }, + { + "id": 1539734701, + "node_id": "MDU6TGFiZWwxNTM5NzM0NzAx", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Search", + "name": "[Block] Search", + "color": "6767e5", "default": false, - "description": "" + "description": "Affects the Search Block - used to display a search field" } ], "state": "closed", "locked": false, - "assignee": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", - "type": "User", - "site_admin": false - } - ], + "assignee": null, + "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -11741,46 +12858,225 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 0, - "created_at": "2021-07-26T07:00:39Z", - "updated_at": "2021-07-28T10:08:42Z", - "closed_at": "2021-07-28T10:08:15Z", - "author_association": "MEMBER", + "comments": 3, + "created_at": "2023-09-26T11:10:14Z", + "updated_at": "2023-10-02T15:05:32Z", + "closed_at": "2023-09-27T20:15:57Z", + "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33680", - "html_url": "https://github.com/WordPress/gutenberg/pull/33680", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33680.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33680.patch" - }, - "body": "## Description\r\nRemoves WP Core filter for \"elements support\" to avoid rendering duplicate stylesheet.\r\n\r\nFixes #33669.\r\n\r\nSimilar PRs - #33005 and #33233.\r\n\r\n## How has this been tested?\r\n1. Add the Paragraph block.\r\n2. Select text and add a link.\r\n3. Set link color for the paragraph.\r\n4. Save post.\r\n5. On the front-end, WP shouldn't render duplicated stylesheet for link color.\r\n\r\n## Screenshots \r\n![CleanShot 2021-07-26 at 10 58 36](https://user-images.githubusercontent.com/240569/126946197-0c76e6d3-6d7a-4aaa-bb0d-2c2608fc790c.png)\r\n\r\n## Types of changes\r\nBugfix\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54823", + "html_url": "https://github.com/WordPress/gutenberg/pull/54823", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54823.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54823.patch", + "merged_at": "2023-09-27T20:15:57Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nFixes Search blocks to allow them to have changes to their configuration when they are within a Navigation block.\r\n\r\nCloses https://github.com/WordPress/gutenberg/issues/53038\r\n\r\n## Why?\r\n\r\n\r\nBlocks should be configurable via their UI controls.\r\n\r\n## How?\r\n\r\n\r\nThere was a console error when inserting a Search block into Navigation block. This was referring to a `setState` in render.\r\n\r\nThe culprit was `setAttributes` called conditionally within the render method.\r\n\r\nMoving this code to an effect fixes the problem. This is likely because we cannot treat `setAttributes` like idiomatic React's \"setState\". `setAttributes` actually updates an external global store (Redux) and so it could caused other blocks to re-render. This is likely what triggers the console error.\r\n\r\nThe idea of attempting to derive the \"state\" of the block once it has been inserted seems to go against the React paradigm. The \"insert\" [is in fact an \"event\" and thus it might be better to handle this in a callback](https://react.dev/learn/you-might-not-need-an-effect) which inserts the block with a given state based on some context. Instead, we are inserting the block and _then_ trying to derive it's state which is problematic.\r\n\r\nHowever, we don't have such APIs available to us so moving to an effect is the best we can do for now.\r\n\r\n\r\n\r\n\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n- Add Nav block.\r\n- Add search block to the Nav block (you can find this at the bottom of the Link UI that appears).\r\n- Change configuration of the Search block.\r\n- Save the Navigation (top right \"Publish\" button in editor).\r\n- See that changes are persisted.\r\n- Reload editor.\r\n- See that changes are persisted.\r\n- Make some more changes.\r\n- Switch editor to \"Code\" view.\r\n- Switch back to \"Visual\" view.\r\n- See that changes are persisted.\r\n- Try anything listed in comments in https://github.com/WordPress/gutenberg/issues/53038 to try and replicate the original Issue.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n\r\nhttps://github.com/WordPress/gutenberg/assets/444434/40ac6056-d52f-4d85-bac5-aad463f3d95c\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54823/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54823/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33679", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54818", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33679/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33679/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33679/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33679", - "id": 952534040, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk2NzEzMjkw", - "number": 33679, - "title": "FontSizePicker: Use number values when the initial value is a number", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54818/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54818/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54818/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54818", + "id": 1913111756, + "node_id": "PR_kwDOBNHdeM5bNb4C", + "number": 54818, + "title": "Update ariakit to 0.3.3", "user": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "ciampo", + "id": 1083581, + "node_id": "MDQ6VXNlcjEwODM1ODE=", + "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", + "url": "https://api.github.com/users/ciampo", + "html_url": "https://github.com/ciampo", + "followers_url": "https://api.github.com/users/ciampo/followers", + "following_url": "https://api.github.com/users/ciampo/following{/other_user}", + "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", + "organizations_url": "https://api.github.com/users/ciampo/orgs", + "repos_url": "https://api.github.com/users/ciampo/repos", + "events_url": "https://api.github.com/users/ciampo/events{/privacy}", + "received_events_url": "https://api.github.com/users/ciampo/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 546517042, + "node_id": "MDU6TGFiZWw1NDY1MTcwNDI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Focus]%20Accessibility%20(a11y)", + "name": "[Focus] Accessibility (a11y)", + "color": "efde5d", + "default": false, + "description": "Changes that impact accessibility and need corresponding review (e.g. markup changes)." + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "ciampo", + "id": 1083581, + "node_id": "MDQ6VXNlcjEwODM1ODE=", + "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ciampo", + "html_url": "https://github.com/ciampo", + "followers_url": "https://api.github.com/users/ciampo/followers", + "following_url": "https://api.github.com/users/ciampo/following{/other_user}", + "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", + "organizations_url": "https://api.github.com/users/ciampo/orgs", + "repos_url": "https://api.github.com/users/ciampo/repos", + "events_url": "https://api.github.com/users/ciampo/events{/privacy}", + "received_events_url": "https://api.github.com/users/ciampo/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "ciampo", + "id": 1083581, + "node_id": "MDQ6VXNlcjEwODM1ODE=", + "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ciampo", + "html_url": "https://github.com/ciampo", + "followers_url": "https://api.github.com/users/ciampo/followers", + "following_url": "https://api.github.com/users/ciampo/following{/other_user}", + "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", + "organizations_url": "https://api.github.com/users/ciampo/orgs", + "repos_url": "https://api.github.com/users/ciampo/repos", + "events_url": "https://api.github.com/users/ciampo/events{/privacy}", + "received_events_url": "https://api.github.com/users/ciampo/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 3, + "created_at": "2023-09-26T09:38:28Z", + "updated_at": "2023-10-07T08:29:09Z", + "closed_at": "2023-09-26T13:20:33Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54818", + "html_url": "https://github.com/WordPress/gutenberg/pull/54818", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54818.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54818.patch", + "merged_at": "2023-09-26T13:20:33Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nUpdate `@ariakit/react` from version `0.2.12` to the (currently latest) version `0.3.3`\r\n\r\n## Why?\r\n\r\n\r\nTo benefit from the latest additions (eg. providers) and bug fixes (eg. better interactions between `Menu` and third-party modals)\r\n\r\n## How?\r\n\r\n\r\nI manually updated `packages/components/package.json`, and then ran `npm install`.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\nFrom the [release notes](https://github.com/ariakit/ariakit/blob/main/packages/ariakit-react/CHANGELOG.md), the only breaking changes affect the `useSelectStore`, `useMenuStore` and `useComboboxStore` hooks, none of which are currently used in the project.\r\n\r\nWe should make sure that components using ariakit are still working as expected in Storybook and the editor:\r\n\r\n- `TabPanel`\r\n- `ToggleGroupControl`\r\n- `Toolbar`\r\n- `Tooltip`", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54818/reactions", + "total_count": 1, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 1, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54818/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54812", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54812/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54812/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54812/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54812", + "id": 1912643345, + "node_id": "PR_kwDOBNHdeM5bL1tC", + "number": 54812, + "title": "Plugin: Remove legacy logic for '__unstableResolvedAssets' setting", + "user": { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", "html_url": "https://github.com/Mamaduka", "followers_url": "https://api.github.com/users/Mamaduka/followers", "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", @@ -11796,31 +13092,22 @@ }, "labels": [ { - "id": 949438185, - "node_id": "MDU6TGFiZWw5NDk0MzgxODU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Regression", - "name": "[Type] Regression", - "color": "d93f0b", - "default": false, - "description": "" - }, - { - "id": 997392122, - "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", - "name": "[Package] Components", - "color": "ed2572", + "id": 616662898, + "node_id": "MDU6TGFiZWw2MTY2NjI4OTg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Gutenberg%20Plugin", + "name": "Gutenberg Plugin", + "color": "578eed", "default": false, - "description": "/packages/components" + "description": "Issues or PRs related to Gutenberg Plugin management related efforts" }, { - "id": 2463256422, - "node_id": "MDU6TGFiZWwyNDYzMjU2NDIy", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Backport%20to%20WP%20Minor%20Release", - "name": "Backport to WP Minor Release", - "color": "491d8e", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "PRs to be back-ported to a WordPress minor release." + "description": "Issues or PRs that relate to code quality" } ], "state": "closed", @@ -11868,13 +13155,13 @@ } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -11897,86 +13184,102 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 25, - "created_at": "2021-07-26T06:02:26Z", - "updated_at": "2021-07-30T11:21:57Z", - "closed_at": "2021-07-30T11:21:33Z", + "comments": 2, + "created_at": "2023-09-26T04:13:27Z", + "updated_at": "2023-09-27T06:12:36Z", + "closed_at": "2023-09-27T06:12:11Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33679", - "html_url": "https://github.com/WordPress/gutenberg/pull/33679", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33679.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33679.patch" - }, - "body": "## Description\r\nUpdates `onChange` logic in FontSizePicker component. When the component detects that value or first object in `fonSizes` doesn't use units, it will pass the number value to the onChange callback.\r\n\r\nFixes #33651.\r\nFixes #33653.\r\n\r\n## How has this been tested?\r\nTested with plugin provided in original issue report - https://github.com/NasKadir123/textBlock\r\n\r\n## Types of changes\r\nBugfix \r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54812", + "html_url": "https://github.com/WordPress/gutenberg/pull/54812", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54812.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54812.patch", + "merged_at": "2023-09-27T06:12:11Z" + }, + "body": "## What?\r\nThis is similar to #51100.\r\n\r\nRemoves legacy logic from the `__unstableResolvedAssets` setting from the WP 6.3 compat folder.\r\n\r\n## Why?\r\nThe same logic is already handled by the `_gutenberg_get_iframed_editor_assets_6_4` in the `lib/compat/wordpress-6.4/script-loader.php` directory, which overrides legacy settings. There's no need to run asset generation twice.\r\n\r\nRef: #54254.\r\n\r\n## Testing Instructions\r\nVerify iframe-related test pass. Smoke test the editors and asset loading.\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54812/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54812/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33676", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54802", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33676/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33676/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33676/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33676", - "id": 952252078, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk2NDg0NDQ2", - "number": 33676, - "title": "Scripts: Webpack config update to minimize CSS", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54802/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54802/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54802/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54802", + "id": 1912094758, + "node_id": "PR_kwDOBNHdeM5bJ_wn", + "number": 54802, + "title": "Font Library: avoid deprected error in test", "user": { - "login": "christianztamayo", - "id": 2377217, - "node_id": "MDQ6VXNlcjIzNzcyMTc=", - "avatar_url": "https://avatars.githubusercontent.com/u/2377217?v=4", + "login": "matiasbenedetto", + "id": 1310626, + "node_id": "MDQ6VXNlcjEzMTA2MjY=", + "avatar_url": "https://avatars.githubusercontent.com/u/1310626?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/christianztamayo", - "html_url": "https://github.com/christianztamayo", - "followers_url": "https://api.github.com/users/christianztamayo/followers", - "following_url": "https://api.github.com/users/christianztamayo/following{/other_user}", - "gists_url": "https://api.github.com/users/christianztamayo/gists{/gist_id}", - "starred_url": "https://api.github.com/users/christianztamayo/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/christianztamayo/subscriptions", - "organizations_url": "https://api.github.com/users/christianztamayo/orgs", - "repos_url": "https://api.github.com/users/christianztamayo/repos", - "events_url": "https://api.github.com/users/christianztamayo/events{/privacy}", - "received_events_url": "https://api.github.com/users/christianztamayo/received_events", + "url": "https://api.github.com/users/matiasbenedetto", + "html_url": "https://github.com/matiasbenedetto", + "followers_url": "https://api.github.com/users/matiasbenedetto/followers", + "following_url": "https://api.github.com/users/matiasbenedetto/following{/other_user}", + "gists_url": "https://api.github.com/users/matiasbenedetto/gists{/gist_id}", + "starred_url": "https://api.github.com/users/matiasbenedetto/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/matiasbenedetto/subscriptions", + "organizations_url": "https://api.github.com/users/matiasbenedetto/orgs", + "repos_url": "https://api.github.com/users/matiasbenedetto/repos", + "events_url": "https://api.github.com/users/matiasbenedetto/events{/privacy}", + "received_events_url": "https://api.github.com/users/matiasbenedetto/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680825, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", - "name": "[Type] Enhancement", - "color": "3993a3", + "id": 615503111, + "node_id": "MDU6TGFiZWw2MTU1MDMxMTE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Automated%20Testing", + "name": "[Type] Automated Testing", + "color": "111111", "default": false, - "description": "A suggestion for improvement." + "description": "Testing infrastructure changes impacting the execution of end-to-end (E2E) and/or unit tests." }, { - "id": 978007737, - "node_id": "MDU6TGFiZWw5NzgwMDc3Mzc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Scripts", - "name": "[Package] Scripts", - "color": "ed2572", + "id": 4254348202, + "node_id": "LA_kwDOBNHdeM79lDOq", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20PHP%20backport", + "name": "Needs PHP backport", + "color": "64436E", "default": false, - "description": "/packages/scripts" + "description": "Needs PHP backport to Core" }, { - "id": 1388646432, - "node_id": "MDU6TGFiZWwxMzg4NjQ2NDMy", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/First-time%20Contributor", - "name": "First-time Contributor", - "color": "a0f762", + "id": 4366600186, + "node_id": "LA_kwDOBNHdeM8AAAABBEUH-g", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Typography", + "name": "[Feature] Typography", + "color": "fbca04", "default": false, - "description": "Pull request opened by a first-time contributor to Gutenberg repository" + "description": "Font and typography-related issues and PRs" } ], "state": "closed", @@ -11984,13 +13287,13 @@ "assignee": null, "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -12013,131 +13316,107 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 5, - "created_at": "2021-07-25T11:14:35Z", - "updated_at": "2021-07-29T10:44:46Z", - "closed_at": "2021-07-28T12:06:28Z", + "comments": 3, + "created_at": "2023-09-25T18:50:34Z", + "updated_at": "2023-09-29T12:04:17Z", + "closed_at": "2023-09-27T01:23:32Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33676", - "html_url": "https://github.com/WordPress/gutenberg/pull/33676", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33676.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33676.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nThe previous configuration does not have CSS minification included aside from the `sass-loader` built-in which only affects SCSS files. (Closes #33643, Related: #29624)\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n- Followed reproduction steps on #33643 and checked that regular CSS are now minified\r\n- Ran the build on Gutenberg and made sure it's still working as expected\r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\nAdded the optimize-css-assets-webpack-plugin to the minimizer config.\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [-] My code follows the accessibility standards. \r\n- [-] I've tested my changes with keyboard and screen readers. \r\n- [-] My code has proper inline documentation. \r\n- [-] I've included developer documentation if appropriate. \r\n- [-] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54802", + "html_url": "https://github.com/WordPress/gutenberg/pull/54802", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54802.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54802.patch", + "merged_at": "2023-09-27T01:23:32Z" + }, + "body": "\r\n## What?\r\navoid deprecation error while running test in PHP 8+\r\n\r\n## How?\r\ncalling the function with the missing parameter\r\n\r\n## Testing Instructions\r\n- Run PHP unit tests\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54802/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54802/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33660", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54793", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33660/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33660/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33660/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33660", - "id": 951727008, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk2MDY1NTQ4", - "number": 33660, - "title": "Only show rich preview for image and description if data is available", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54793/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54793/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54793/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54793", + "id": 1911800482, + "node_id": "PR_kwDOBNHdeM5bI_HR", + "number": 54793, + "title": "Update CODEOWNERS for `core/image` block", "user": { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", + "login": "michalczaplinski", + "id": 5417266, + "node_id": "MDQ6VXNlcjU0MTcyNjY=", + "avatar_url": "https://avatars.githubusercontent.com/u/5417266?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", + "url": "https://api.github.com/users/michalczaplinski", + "html_url": "https://github.com/michalczaplinski", + "followers_url": "https://api.github.com/users/michalczaplinski/followers", + "following_url": "https://api.github.com/users/michalczaplinski/following{/other_user}", + "gists_url": "https://api.github.com/users/michalczaplinski/gists{/gist_id}", + "starred_url": "https://api.github.com/users/michalczaplinski/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/michalczaplinski/subscriptions", + "organizations_url": "https://api.github.com/users/michalczaplinski/orgs", + "repos_url": "https://api.github.com/users/michalczaplinski/repos", + "events_url": "https://api.github.com/users/michalczaplinski/events{/privacy}", + "received_events_url": "https://api.github.com/users/michalczaplinski/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", "default": false, - "description": "An existing feature is broken." + "description": "Issues or PRs that relate to code quality" }, { - "id": 1838782557, - "node_id": "MDU6TGFiZWwxODM4NzgyNTU3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Link%20Editing", - "name": "[Feature] Link Editing", - "color": "fbca04", + "id": 1101518360, + "node_id": "MDU6TGFiZWwxMTAxNTE4MzYw", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Image", + "name": "[Block] Image", + "color": "6767e5", "default": false, - "description": "Link components (LinkControl, URLInput) and integrations (RichText link formatting)" + "description": "Affects the Image Block" } ], "state": "closed", "locked": false, - "assignee": { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", - "type": "User", - "site_admin": false - } - ], + "assignee": null, + "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -12160,60 +13439,85 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 4, - "created_at": "2021-07-23T16:35:12Z", - "updated_at": "2021-07-29T15:51:36Z", - "closed_at": "2021-07-29T15:51:10Z", + "comments": 0, + "created_at": "2023-09-25T15:44:27Z", + "updated_at": "2023-09-25T16:48:18Z", + "closed_at": "2023-09-25T16:47:56Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33660", - "html_url": "https://github.com/WordPress/gutenberg/pull/33660", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33660.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33660.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nThe Link UI's rich preview feature for remote URLs was showing placeholders for image and description even thought that data did not exist in the rich preview data.\r\n\r\nThis would allow you to arrive at states such as:\r\n\r\n![image](https://user-images.githubusercontent.com/444434/126812983-e606765b-8166-4aa4-aebf-2bfe20a90129.png)\r\n\r\nThis PR corrects that by only showing the lower half of the rich preview if the necessary data is available. It will also only show the description or image if they are available.\r\n\r\n@javierarce I think this was actually an intentional feature. I know that because we encoded the feature into the tests!\r\n\r\nhttps://github.com/WordPress/gutenberg/blob/40a511ec0e89ae401d799c66625b6fe0db00aea5/packages/block-editor/src/components/link-control/test/index.js#L1960-L1961\r\n\r\nTherefore I'm checking in with you to make sure you're aware that this change is being made. Essentially if the content doesn't exist then we won't see a placeholder.\r\n\r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\n* Create a link to a page which doesn't return a description or an image but which does return a title or an icon. Good example is https://twitter.com/.\r\n* Click on the link to show a link preview.\r\n* See that the placeholders for image and description are not shown once the fetching has finished.\r\n* Check another \"normal\" URL to make sure we haven't caused any regressions.\r\n\r\nNote we have quite a bit of test coverage here so it should 🤞 🤞 🤞 🤞 be safe.\r\n\r\n## Screenshots \r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\n\r\n## Checklist:\r\n- [ ] My code is tested.\r\n- [ ] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [ ] My code has proper inline documentation. \r\n- [ ] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54793", + "html_url": "https://github.com/WordPress/gutenberg/pull/54793", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54793.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54793.patch", + "merged_at": "2023-09-25T16:47:56Z" + }, + "body": "Just adding @artemiomorales and myself to the CODEOWNERS for the Image block to keep an eye on the Lightbox-related issues.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54793/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54793/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33657", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54792", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33657/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33657/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33657/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33657", - "id": 951670686, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk2MDE4ODMz", - "number": 33657, - "title": "RNMobile: Try unifying the unit test command on mobile", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54792/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54792/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54792/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54792", + "id": 1911696692, + "node_id": "PR_kwDOBNHdeM5bIoMB", + "number": 54792, + "title": "[RNMobile] Add optional chaining to `reusableBlock.title` and `reusableBlock.content`", "user": { - "login": "guarani", - "id": 1898325, - "node_id": "MDQ6VXNlcjE4OTgzMjU=", - "avatar_url": "https://avatars.githubusercontent.com/u/1898325?v=4", + "login": "SiobhyB", + "id": 2998162, + "node_id": "MDQ6VXNlcjI5OTgxNjI=", + "avatar_url": "https://avatars.githubusercontent.com/u/2998162?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/guarani", - "html_url": "https://github.com/guarani", - "followers_url": "https://api.github.com/users/guarani/followers", - "following_url": "https://api.github.com/users/guarani/following{/other_user}", - "gists_url": "https://api.github.com/users/guarani/gists{/gist_id}", - "starred_url": "https://api.github.com/users/guarani/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/guarani/subscriptions", - "organizations_url": "https://api.github.com/users/guarani/orgs", - "repos_url": "https://api.github.com/users/guarani/repos", - "events_url": "https://api.github.com/users/guarani/events{/privacy}", - "received_events_url": "https://api.github.com/users/guarani/received_events", - "type": "User", - "site_admin": false + "url": "https://api.github.com/users/SiobhyB", + "html_url": "https://github.com/SiobhyB", + "followers_url": "https://api.github.com/users/SiobhyB/followers", + "following_url": "https://api.github.com/users/SiobhyB/following{/other_user}", + "gists_url": "https://api.github.com/users/SiobhyB/gists{/gist_id}", + "starred_url": "https://api.github.com/users/SiobhyB/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/SiobhyB/subscriptions", + "organizations_url": "https://api.github.com/users/SiobhyB/orgs", + "repos_url": "https://api.github.com/users/SiobhyB/repos", + "events_url": "https://api.github.com/users/SiobhyB/events{/privacy}", + "received_events_url": "https://api.github.com/users/SiobhyB/received_events", + "type": "User", + "site_admin": false }, "labels": [ + { + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", + "default": false, + "description": "Issues or PRs that relate to code quality" + }, { "id": 982506020, "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", @@ -12222,20 +13526,69 @@ "color": "a3ef7a", "default": false, "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + }, + { + "id": 3639254262, + "node_id": "LA_kwDOBNHdeM7Y6pz2", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20Automation", + "name": "Mobile App - Automation", + "color": "669206", + "default": false, + "description": "Label used to initiate Mobile App PR Automation" } ], "state": "closed", "locked": false, - "assignee": null, - "assignees": [], + "assignee": { + "login": "SiobhyB", + "id": 2998162, + "node_id": "MDQ6VXNlcjI5OTgxNjI=", + "avatar_url": "https://avatars.githubusercontent.com/u/2998162?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/SiobhyB", + "html_url": "https://github.com/SiobhyB", + "followers_url": "https://api.github.com/users/SiobhyB/followers", + "following_url": "https://api.github.com/users/SiobhyB/following{/other_user}", + "gists_url": "https://api.github.com/users/SiobhyB/gists{/gist_id}", + "starred_url": "https://api.github.com/users/SiobhyB/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/SiobhyB/subscriptions", + "organizations_url": "https://api.github.com/users/SiobhyB/orgs", + "repos_url": "https://api.github.com/users/SiobhyB/repos", + "events_url": "https://api.github.com/users/SiobhyB/events{/privacy}", + "received_events_url": "https://api.github.com/users/SiobhyB/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "SiobhyB", + "id": 2998162, + "node_id": "MDQ6VXNlcjI5OTgxNjI=", + "avatar_url": "https://avatars.githubusercontent.com/u/2998162?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/SiobhyB", + "html_url": "https://github.com/SiobhyB", + "followers_url": "https://api.github.com/users/SiobhyB/followers", + "following_url": "https://api.github.com/users/SiobhyB/following{/other_user}", + "gists_url": "https://api.github.com/users/SiobhyB/gists{/gist_id}", + "starred_url": "https://api.github.com/users/SiobhyB/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/SiobhyB/subscriptions", + "organizations_url": "https://api.github.com/users/SiobhyB/orgs", + "repos_url": "https://api.github.com/users/SiobhyB/repos", + "events_url": "https://api.github.com/users/SiobhyB/events{/privacy}", + "received_events_url": "https://api.github.com/users/SiobhyB/received_events", + "type": "User", + "site_admin": false + } + ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -12258,77 +13611,93 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, "comments": 3, - "created_at": "2021-07-23T15:16:35Z", - "updated_at": "2021-08-03T17:28:10Z", - "closed_at": "2021-08-03T17:27:45Z", + "created_at": "2023-09-25T14:54:54Z", + "updated_at": "2023-09-27T10:45:51Z", + "closed_at": "2023-09-27T10:45:20Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33657", - "html_url": "https://github.com/WordPress/gutenberg/pull/33657", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33657.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33657.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\nUnify the the native unit test command.\r\n\r\nRelated https://github.com/wordpress-mobile/gutenberg-mobile/pull/3754\r\n\r\n## How has this been tested?\r\nRun the `npm run native test` command on a unit test:\r\n```\r\nnpm run native test packages/block-library/src/verse/test/edit.native.js\r\n```\r\nRun it on an integration test:\r\n```\r\nnpm run native test packages/block-library/src/cover/test/edit.native.js\r\n```\r\nRun it on any test and ensure the debugger connects properly:\r\n1. Put a `debugger;` statement in any unit test or integration test file e.g. `packages/block-library/src/verse/test/edit.native.js`\r\n2. Run the `:debug` variant of the command to run tests e.g. `npm run native test:debug packages/block-library/src/verse/test/edit.native.js`\r\n3. Open Google Chrome and enter `chrome://inspect`\r\n4. Click on the target\r\n5. Ensure that the debugger connects and stops at the `debugger;` statement\r\n\r\n## Types of changes\r\n- Updated unit test command and documentation\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54792", + "html_url": "https://github.com/WordPress/gutenberg/pull/54792", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54792.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54792.patch", + "merged_at": "2023-09-27T10:45:20Z" + }, + "body": "Potential fix for https://github.com/wordpress-mobile/gutenberg-mobile/issues/5496 and https://github.com/wordpress-mobile/WordPress-iOS/issues/21083\r\n\r\n* Gutenberg Mobile PR: https://github.com/wordpress-mobile/gutenberg-mobile/pull/6228\r\n\r\n## What?\r\n\r\nThis PR adds safety checks for the `title` and `content` properties within the `buildReusableBlockInserterItem` and `getUserPatterns` functions.\r\n\r\n## Why?\r\n\r\nWe've received multiple reports of Gutenberg Mobile crashing with the following error:\r\n\r\n```\r\nTypeError: Cannot read property 'raw' of undefined\r\n```\r\n\r\nEven after digging deeply into user reports and available logs, attempts to reproduce the crash have been unsuccessful. The main clues we have to go on are as follows:\r\n\r\n* The most recent logs vary, but usually reference `block-editor/src/store/selectors.js` or `block-editor/src/store/actions.js`.\r\n* The only reference of `raw` in those files is within `block-editor/src/store/selectors.js`.\r\n* While reviewing some logs, I noted that the crash occurs frequently while users are on pages with _unsynced_ patterns, so it feels logical that the reference to `raw` in `getUserPatterns` could be at fault.\r\n* A crash with a similar log went away after adding safety checks to one of those references in https://github.com/WordPress/gutenberg/pull/53721. Though, it's worth noting we're not clear if the crash was resolved or simply \"replaced\" with this newer crash.\r\n\r\nWith this PR, we're making another educated guess at the root cause of the crash in an attempt to fix it.\r\n\r\n## How?\r\n\r\nSimilar to https://github.com/WordPress/gutenberg/pull/53721, I'm proposing optional chaining be added in the three remaining places where `raw` appears without optional chaining in the `block-editor/src/store/selectors.js` file. Based on the code's logic, we can assume that `reusableBlock` will always be defined, so the chaining is added alongside `title` and `content`.\r\n\r\nBy using optional chaining, the code should gracefully handle scenarios where `title` or `content` might be undefined, potentially preventing a TypeError from being thrown.\r\n\r\n## Testing Instructions\r\n\r\n> **Note**\r\n> For testing on the web, Playground's PR previewer can be used: https://playground.wordpress.net/gutenberg.html\r\n\r\nAs the crash isn't easily reproducible, there isn't a straight forward way to ensure this PR fixes it. Instead, the logic of making these change should be verified.\r\n\r\nIn both the app and on the web, we should also ensure that there are no regressions related to both synced and unsynced patterns, especially those with no titles:\r\n\r\n* Publish a new synced or unsynced pattern with no title.\r\n* Begin a new post and add the synced or unsynced pattern to it.\r\n* Verify that there is no issue related to there being no title.\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54792/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54792/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33652", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54789", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33652/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33652/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33652/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33652", - "id": 951614964, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk1OTcxNTA5", - "number": 33652, - "title": "Improve display of LinkURL menu and fix spacing.", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54789/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54789/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54789/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54789", + "id": 1911577751, + "node_id": "PR_kwDOBNHdeM5bIOCa", + "number": 54789, + "title": "Bump tj-actions/changed-files from 39.1.2 to 39.2.0", "user": { - "login": "mtias", - "id": 548849, - "node_id": "MDQ6VXNlcjU0ODg0OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/548849?v=4", + "login": "dependabot[bot]", + "id": 49699333, + "node_id": "MDM6Qm90NDk2OTkzMzM=", + "avatar_url": "https://avatars.githubusercontent.com/in/29110?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/mtias", - "html_url": "https://github.com/mtias", - "followers_url": "https://api.github.com/users/mtias/followers", - "following_url": "https://api.github.com/users/mtias/following{/other_user}", - "gists_url": "https://api.github.com/users/mtias/gists{/gist_id}", - "starred_url": "https://api.github.com/users/mtias/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/mtias/subscriptions", - "organizations_url": "https://api.github.com/users/mtias/orgs", - "repos_url": "https://api.github.com/users/mtias/repos", - "events_url": "https://api.github.com/users/mtias/events{/privacy}", - "received_events_url": "https://api.github.com/users/mtias/received_events", - "type": "User", + "url": "https://api.github.com/users/dependabot%5Bbot%5D", + "html_url": "https://github.com/apps/dependabot", + "followers_url": "https://api.github.com/users/dependabot%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/dependabot%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/dependabot%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/dependabot%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/dependabot%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/dependabot%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/dependabot%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/dependabot%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/dependabot%5Bbot%5D/received_events", + "type": "Bot", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", + "id": 596512821, + "node_id": "MDU6TGFiZWw1OTY1MTI4MjE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Build%20Tooling", + "name": "[Type] Build Tooling", + "color": "111111", "default": false, - "description": "An existing feature is broken." + "description": "Issues or PRs related to build tooling" }, { - "id": 1838782557, - "node_id": "MDU6TGFiZWwxODM4NzgyNTU3", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Link%20Editing", - "name": "[Feature] Link Editing", - "color": "fbca04", + "id": 4662565393, + "node_id": "LA_kwDOBNHdeM8AAAABFekaEQ", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/GitHub%20Actions", + "name": "GitHub Actions", + "color": "000000", "default": false, - "description": "Link components (LinkControl, URLInput) and integrations (RichText link formatting)" + "description": "Pull requests that update GitHub Actions code" } ], "state": "closed", @@ -12336,13 +13705,13 @@ "assignee": null, "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -12365,131 +13734,107 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 6, - "created_at": "2021-07-23T14:09:31Z", - "updated_at": "2021-07-30T14:06:43Z", - "closed_at": "2021-07-30T13:16:01Z", + "comments": 0, + "created_at": "2023-09-25T13:59:32Z", + "updated_at": "2023-09-28T14:02:18Z", + "closed_at": "2023-09-28T14:01:55Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33652", - "html_url": "https://github.com/WordPress/gutenberg/pull/33652", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33652.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33652.patch" - }, - "body": "There were some spacing issues on the Link URL menu that would make the icon shrink:\r\n\r\n\"Screenshot\r\n\r\nWhich is corrected here. It also restores the true width of the icon (24px which was assumed to be 32 before?):\r\n\r\n\"Screenshot\r\n\r\nThere's also some alignment issues that this corrects (note the bottom part with the toggle is now aligned):\r\n\r\n\"Screenshot\r\n\r\ncc @javierarce \r\n\r\n(The middle one still seems like it has spacing issues on the result list, but given it's there to accommodate the hover effect I think we can leave it be for now.)", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54789", + "html_url": "https://github.com/WordPress/gutenberg/pull/54789", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54789.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54789.patch", + "merged_at": "2023-09-28T14:01:55Z" + }, + "body": "Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 39.1.2 to 39.2.0.\n
\nRelease notes\n

Sourced from tj-actions/changed-files's releases.

\n
\n

v39.2.0

\n

What's Changed

\n\n

Full Changelog: https://github.com/tj-actions/changed-files/compare/v39...v39.2.0

\n
\n
\n
\nChangelog\n

Sourced from tj-actions/changed-files's changelog.

\n
\n

Changelog

\n

39.2.0 - (2023-09-22)

\n

🚀 Features

\n
    \n
  • Add support for restricting the deleted files output to only deleted directories (e6ce728) - (Tonye Jack)
  • \n
\n

🐛 Bug Fixes

\n
    \n
  • Fixed test for windows\n(e94da5a) - (Tonye Jack)
  • \n
  • Fixed the test\n(a721d00) - (Tonye Jack)
  • \n
\n

➕ Add

\n
    \n
  • Added missing changes and modified dist assets.\n(8af3110) - (GitHub Action)
  • \n
  • Added a test files\n(920856c) - (Tonye Jack)
  • \n
  • Added missing changes and modified dist assets.\n(8296c33) - (GitHub Action)
  • \n
  • Added missing changes and modified dist assets.\n(2398551) - (GitHub Action)
  • \n
  • Added missing changes and modified dist assets.\n(ff65504) - (GitHub Action)
  • \n
  • Added missing changes and modified dist assets.\n(2325baa) - (GitHub Action)
  • \n
\n

➖ Remove

\n
    \n
  • Deleted the test3 directory\n(cd1e384) - (Tonye Jack)
  • \n
  • Deleted a single test file\n(a52f862) - (Tonye Jack)
  • \n
  • Removed unused code\n(c98e6d2) - (Tonye Jack)
  • \n
  • Removed unused code\n(060b3b9) - (Tonye Jack)
  • \n
\n

🔄 Update

\n
    \n
  • Updated README.md (#1602)
  • \n
\n

Co-authored-by: jackton1 jackton1@users.noreply.github.com (8238a41) - (tj-actions[bot])

\n
    \n
  • Update test\n(d2486b4) - (Tonye Jack)
  • \n
  • Updated test\n(e7fd9e5) - (Tonye Jack)
  • \n
\n\n
\n

... (truncated)

\n
\n
\nCommits\n
    \n
  • 8238a41 Updated README.md (#1602)
  • \n
  • aaf4339 Merge pull request #1601 from tj-actions/feat/add-support-for-restricting-the...
  • \n
  • d2486b4 Update test
  • \n
  • e7fd9e5 Updated test
  • \n
  • e3cc088 Merge branch 'main' into feat/add-support-for-restricting-the-deleted-files-o...
  • \n
  • 72d7089 chore(deps): update actions/checkout digest to 8ade135
  • \n
  • e94da5a Fixed test for windows
  • \n
  • a721d00 Fixed the test
  • \n
  • 8af3110 Added missing changes and modified dist assets.
  • \n
  • a351a30 Merge 62a23f82b163be6455968457151fa0094ec92a63 into 0b947ed818f8a396b19a26354...
  • \n
  • Additional commits viewable in compare view
  • \n
\n
\n
\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tj-actions/changed-files&package-manager=github_actions&previous-version=39.1.2&new-version=39.2.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n
\nDependabot commands and options\n
\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n
", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54789/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54789/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33629", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54788", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33629/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33629/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33629/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33629", - "id": 950551877, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk1MDgxMzQ4", - "number": 33629, - "title": "[Block Library - Query Pagination Numbers]: Fix first page's link", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54788/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54788/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54788/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54788", + "id": 1911577311, + "node_id": "PR_kwDOBNHdeM5bIN8K", + "number": 54788, + "title": "Bump actions/checkout from 4.0.0 to 4.1.0", "user": { - "login": "ntsekouras", - "id": 16275880, - "node_id": "MDQ6VXNlcjE2Mjc1ODgw", - "avatar_url": "https://avatars.githubusercontent.com/u/16275880?v=4", + "login": "dependabot[bot]", + "id": 49699333, + "node_id": "MDM6Qm90NDk2OTkzMzM=", + "avatar_url": "https://avatars.githubusercontent.com/in/29110?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/ntsekouras", - "html_url": "https://github.com/ntsekouras", - "followers_url": "https://api.github.com/users/ntsekouras/followers", - "following_url": "https://api.github.com/users/ntsekouras/following{/other_user}", - "gists_url": "https://api.github.com/users/ntsekouras/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ntsekouras/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ntsekouras/subscriptions", - "organizations_url": "https://api.github.com/users/ntsekouras/orgs", - "repos_url": "https://api.github.com/users/ntsekouras/repos", - "events_url": "https://api.github.com/users/ntsekouras/events{/privacy}", - "received_events_url": "https://api.github.com/users/ntsekouras/received_events", - "type": "User", + "url": "https://api.github.com/users/dependabot%5Bbot%5D", + "html_url": "https://github.com/apps/dependabot", + "followers_url": "https://api.github.com/users/dependabot%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/dependabot%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/dependabot%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/dependabot%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/dependabot%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/dependabot%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/dependabot%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/dependabot%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/dependabot%5Bbot%5D/received_events", + "type": "Bot", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", + "id": 596512821, + "node_id": "MDU6TGFiZWw1OTY1MTI4MjE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Build%20Tooling", + "name": "[Type] Build Tooling", + "color": "111111", "default": false, - "description": "An existing feature is broken." + "description": "Issues or PRs related to build tooling" }, { - "id": 2479589311, - "node_id": "MDU6TGFiZWwyNDc5NTg5MzEx", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Query%20Pagination", - "name": "[Block] Query Pagination", - "color": "6767e5", + "id": 4662565393, + "node_id": "LA_kwDOBNHdeM8AAAABFekaEQ", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/GitHub%20Actions", + "name": "GitHub Actions", + "color": "000000", "default": false, - "description": "" + "description": "Pull requests that update GitHub Actions code" } ], "state": "closed", "locked": false, - "assignee": { - "login": "ntsekouras", - "id": 16275880, - "node_id": "MDQ6VXNlcjE2Mjc1ODgw", - "avatar_url": "https://avatars.githubusercontent.com/u/16275880?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/ntsekouras", - "html_url": "https://github.com/ntsekouras", - "followers_url": "https://api.github.com/users/ntsekouras/followers", - "following_url": "https://api.github.com/users/ntsekouras/following{/other_user}", - "gists_url": "https://api.github.com/users/ntsekouras/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ntsekouras/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ntsekouras/subscriptions", - "organizations_url": "https://api.github.com/users/ntsekouras/orgs", - "repos_url": "https://api.github.com/users/ntsekouras/repos", - "events_url": "https://api.github.com/users/ntsekouras/events{/privacy}", - "received_events_url": "https://api.github.com/users/ntsekouras/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "ntsekouras", - "id": 16275880, - "node_id": "MDQ6VXNlcjE2Mjc1ODgw", - "avatar_url": "https://avatars.githubusercontent.com/u/16275880?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/ntsekouras", - "html_url": "https://github.com/ntsekouras", - "followers_url": "https://api.github.com/users/ntsekouras/followers", - "following_url": "https://api.github.com/users/ntsekouras/following{/other_user}", - "gists_url": "https://api.github.com/users/ntsekouras/gists{/gist_id}", - "starred_url": "https://api.github.com/users/ntsekouras/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/ntsekouras/subscriptions", - "organizations_url": "https://api.github.com/users/ntsekouras/orgs", - "repos_url": "https://api.github.com/users/ntsekouras/repos", - "events_url": "https://api.github.com/users/ntsekouras/events{/privacy}", - "received_events_url": "https://api.github.com/users/ntsekouras/received_events", - "type": "User", - "site_admin": false - } - ], + "assignee": null, + "assignees": [], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -12512,56 +13857,72 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-07-22T11:17:15Z", - "updated_at": "2021-08-09T11:27:46Z", - "closed_at": "2021-08-09T11:27:23Z", + "comments": 0, + "created_at": "2023-09-25T13:59:20Z", + "updated_at": "2023-09-28T14:02:41Z", + "closed_at": "2023-09-28T14:02:18Z", "author_association": "CONTRIBUTOR", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33629", - "html_url": "https://github.com/WordPress/gutenberg/pull/33629", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33629.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33629.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\nFixes: https://github.com/WordPress/gutenberg/issues/32792\r\n\r\n`paginate_links` doesn't use the provided `format` when the page is `1`. This is great for the main query as it removes the extra query params making the URL shorter, but in the case of multiple custom queries is problematic. It results in returning an empty link which ends up with a link to the current page.\r\n\r\nA way to address this is to add a `fake` query arg with no value that is the same for all custom queries. This way the link is not empty and preserves all the other existent query args.\r\n\r\n\r\nReference: https://developer.wordpress.org/reference/functions/paginate_links/\r\n`$link = str_replace( '%_%', 1 == $n ? '' : $args['format'], $args['base'] );\r\n $link = str_replace( '%#%', $n, $link );`\r\n\r\n\r\n## How has this been tested?\r\n1. In page with many `Query Loop` blocks with `QueryPaginationNumbers` blocks check that by clicking another page number first, the pagination link for the first page (`1`), works as expected.\r\n2. This can be tested with a single custom `Query` in a page as well, but it's better to have multiple `Query Loop` blocks which can be both `custom` and ones that `inherit the global query`.\r\n\r\n## Notes\r\n1. The issue can be replicated only when we have no other query args, because in that case the `link` is not empty - thus the `hacky` approach here to add an empty `query arg`.\r\n\r\nI couldn't find any better alternative so a more elegant solution would be more than welcomed. We could also look at making some changes in core `paginate_links` but needs more exploration there. For example we could extend the `paginate_links` filter by passing the current `page number ($n)` and use this filter in the block??(🤔 ).\r\n\r\n\r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54788", + "html_url": "https://github.com/WordPress/gutenberg/pull/54788", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54788.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54788.patch", + "merged_at": "2023-09-28T14:02:18Z" + }, + "body": "Bumps [actions/checkout](https://github.com/actions/checkout) from 4.0.0 to 4.1.0.\n
\nRelease notes\n

Sourced from actions/checkout's releases.

\n
\n

v4.1.0

\n

What's Changed

\n\n

New Contributors

\n\n

Full Changelog: https://github.com/actions/checkout/compare/v4.0.0...v4.1.0

\n
\n
\n
\nChangelog\n

Sourced from actions/checkout's changelog.

\n
\n

Changelog

\n

v4.1.0

\n\n

v4.0.0

\n\n

v3.6.0

\n\n

v3.5.3

\n\n

v3.5.2

\n\n

v3.5.1

\n\n

v3.5.0

\n\n

v3.4.0

\n\n

v3.3.0

\n\n

v3.2.0

\n\n

v3.1.0

\n\n

v3.0.2

\n\n
\n

... (truncated)

\n
\n
\nCommits\n\n
\n
\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/checkout&package-manager=github_actions&previous-version=4.0.0&new-version=4.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n
\nDependabot commands and options\n
\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n
", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54788/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54788/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33627", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54785", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33627/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33627/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33627/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33627", - "id": 950476171, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk1MDE2NTU3", - "number": 33627, - "title": "Fix some JAWS bugs", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54785/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54785/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54785/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54785", + "id": 1911450976, + "node_id": "PR_kwDOBNHdeM5bHyWq", + "number": 54785, + "title": "Try fixing the flaky 'Toolbar roving tabindex' e2e test", "user": { - "login": "alexstine", - "id": 13755480, - "node_id": "MDQ6VXNlcjEzNzU1NDgw", - "avatar_url": "https://avatars.githubusercontent.com/u/13755480?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/alexstine", - "html_url": "https://github.com/alexstine", - "followers_url": "https://api.github.com/users/alexstine/followers", - "following_url": "https://api.github.com/users/alexstine/following{/other_user}", - "gists_url": "https://api.github.com/users/alexstine/gists{/gist_id}", - "starred_url": "https://api.github.com/users/alexstine/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/alexstine/subscriptions", - "organizations_url": "https://api.github.com/users/alexstine/orgs", - "repos_url": "https://api.github.com/users/alexstine/repos", - "events_url": "https://api.github.com/users/alexstine/events{/privacy}", - "received_events_url": "https://api.github.com/users/alexstine/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, @@ -12573,97 +13934,70 @@ "name": "[Type] Bug", "color": "d93f0b", "default": false, - "description": "An existing feature is broken." - }, - { - "id": 546517042, - "node_id": "MDU6TGFiZWw1NDY1MTcwNDI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Accessibility%20(a11y)", - "name": "Accessibility (a11y)", - "color": "655104", - "default": false, - "description": "Changes that impact accessibility and need corresponding review (e.g. markup changes)." - }, - { - "id": 587343997, - "node_id": "MDU6TGFiZWw1ODczNDM5OTc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Status]%20In%20Progress", - "name": "[Status] In Progress", - "color": "0052cc", - "default": false, - "description": "Tracking issues with work in progress" - }, - { - "id": 1086171268, - "node_id": "MDU6TGFiZWwxMDg2MTcxMjY4", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20Accessibility%20Feedback", - "name": "Needs Accessibility Feedback", - "color": "ffbcbd", - "default": false, - "description": "" + "description": "An existing feature does not function as intended" }, { - "id": 1388646432, - "node_id": "MDU6TGFiZWwxMzg4NjQ2NDMy", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/First-time%20Contributor", - "name": "First-time Contributor", - "color": "a0f762", + "id": 1699237849, + "node_id": "MDU6TGFiZWwxNjk5MjM3ODQ5", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20E2E%20Tests", + "name": "[Package] E2E Tests", + "color": "ed2572", "default": false, - "description": "Pull request opened by a first-time contributor to Gutenberg repository" + "description": "/packages/e2e-tests" } ], "state": "closed", "locked": false, "assignee": { - "login": "alexstine", - "id": 13755480, - "node_id": "MDQ6VXNlcjEzNzU1NDgw", - "avatar_url": "https://avatars.githubusercontent.com/u/13755480?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/alexstine", - "html_url": "https://github.com/alexstine", - "followers_url": "https://api.github.com/users/alexstine/followers", - "following_url": "https://api.github.com/users/alexstine/following{/other_user}", - "gists_url": "https://api.github.com/users/alexstine/gists{/gist_id}", - "starred_url": "https://api.github.com/users/alexstine/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/alexstine/subscriptions", - "organizations_url": "https://api.github.com/users/alexstine/orgs", - "repos_url": "https://api.github.com/users/alexstine/repos", - "events_url": "https://api.github.com/users/alexstine/events{/privacy}", - "received_events_url": "https://api.github.com/users/alexstine/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "alexstine", - "id": 13755480, - "node_id": "MDQ6VXNlcjEzNzU1NDgw", - "avatar_url": "https://avatars.githubusercontent.com/u/13755480?v=4", + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/alexstine", - "html_url": "https://github.com/alexstine", - "followers_url": "https://api.github.com/users/alexstine/followers", - "following_url": "https://api.github.com/users/alexstine/following{/other_user}", - "gists_url": "https://api.github.com/users/alexstine/gists{/gist_id}", - "starred_url": "https://api.github.com/users/alexstine/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/alexstine/subscriptions", - "organizations_url": "https://api.github.com/users/alexstine/orgs", - "repos_url": "https://api.github.com/users/alexstine/repos", - "events_url": "https://api.github.com/users/alexstine/events{/privacy}", - "received_events_url": "https://api.github.com/users/alexstine/received_events", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -12686,140 +14020,138 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 6, - "created_at": "2021-07-22T09:39:23Z", - "updated_at": "2021-08-04T07:28:10Z", - "closed_at": "2021-08-04T07:27:41Z", - "author_association": "CONTRIBUTOR", + "comments": 4, + "created_at": "2023-09-25T12:54:06Z", + "updated_at": "2023-10-04T14:18:40Z", + "closed_at": "2023-09-26T06:50:32Z", + "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33627", - "html_url": "https://github.com/WordPress/gutenberg/pull/33627", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33627.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33627.patch" - }, - "body": "\r\n\r\n\r\n\r\n## Description\r\n\r\n\r\nFixes #29526\r\n\r\n1. JAWS will now have the ability to use Gutenberg navigation mode and here the blocks announced via Tab.\r\n2.Removed broken speak() function call that was only working part of the time.\r\n3. Remove the wordpress/a11y package. No longer needed.\r\n4.Replace `role=\"group\"` with `role=\"document\"` for better block editing experience in earlier versions of JAWS. \r\n \r\n## How has this been tested?\r\n\r\n\r\n\r\n\r\nI have tested using NVDA and JAWS on Windows 10. I tested using Voiceover on Mac. All seems to be in working order.\r\n\r\n## Screenshots \r\n\r\n## Types of changes\r\n\r\n\r\n\r\n\r\n\r\nHopefully some much needed Bug fixes.\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [x] My code follows the accessibility standards. \r\n- [x] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [x] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54785", + "html_url": "https://github.com/WordPress/gutenberg/pull/54785", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54785.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54785.patch", + "merged_at": "2023-09-26T06:50:32Z" + }, + "body": "## What?\r\nPR tries to fix the flaky e2e test - `ensures base block toolbars use roving tabindex`, which has been failing recently.\r\n\r\nFailure reports:\r\n\r\n* https://github.com/WordPress/gutenberg/actions/runs/6257434872/job/16989799230\r\n* https://github.com/WordPress/gutenberg/actions/runs/6263647737/job/17008506615?pr=54695#step:7:21\r\n* https://github.com/WordPress/gutenberg/actions/runs/6264468875/job/17011238781?pr=54695\r\n* https://github.com/WordPress/gutenberg/actions/runs/6298998901/job/17098912446\r\n\r\n## Why?\r\nThe [previous attempt](https://github.com/WordPress/gutenberg/pull/51600) wasn't enough; the user preferences sometimes still leak between e2e tests.\r\n\r\n## How?\r\nExplicitly turn off 'fixedToolbar' before running the tests.\r\n\r\n## Testing Instructions\r\n```\r\nnpm run test:e2e:playwright -- test/e2e/specs/editor/various/toolbar-roving-tabindex.spec.js\r\n```\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54785/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54785/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33623", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54784", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33623/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33623/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33623/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33623", - "id": 950451600, - "node_id": "MDExOlB1bGxSZXF1ZXN0Njk0OTk1OTUy", - "number": 33623, - "title": "FormTokenField: Avoid error when maxLength value is hit", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54784/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54784/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54784/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54784", + "id": 1911445934, + "node_id": "PR_kwDOBNHdeM5bHxPY", + "number": 54784, + "title": "Performance Tests: Support the Site Editor's legacy spinner", "user": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "WunderBart", + "id": 1451471, + "node_id": "MDQ6VXNlcjE0NTE0NzE=", + "avatar_url": "https://avatars.githubusercontent.com/u/1451471?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/WunderBart", + "html_url": "https://github.com/WunderBart", + "followers_url": "https://api.github.com/users/WunderBart/followers", + "following_url": "https://api.github.com/users/WunderBart/following{/other_user}", + "gists_url": "https://api.github.com/users/WunderBart/gists{/gist_id}", + "starred_url": "https://api.github.com/users/WunderBart/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/WunderBart/subscriptions", + "organizations_url": "https://api.github.com/users/WunderBart/orgs", + "repos_url": "https://api.github.com/users/WunderBart/repos", + "events_url": "https://api.github.com/users/WunderBart/events{/privacy}", + "received_events_url": "https://api.github.com/users/WunderBart/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 531680823, - "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", - "name": "[Type] Bug", - "color": "d93f0b", - "default": false, - "description": "An existing feature is broken." - }, - { - "id": 659839209, - "node_id": "MDU6TGFiZWw2NTk4MzkyMDk=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20UI%20Components", - "name": "[Feature] UI Components", - "color": "fbca04", - "default": false, - "description": "" - }, - { - "id": 997392122, - "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", - "name": "[Package] Components", - "color": "ed2572", + "id": 731693674, + "node_id": "MDU6TGFiZWw3MzE2OTM2NzQ=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Performance", + "name": "[Type] Performance", + "color": "f3f4fe", "default": false, - "description": "/packages/components" + "description": "Related to performance efforts" } ], "state": "closed", "locked": false, "assignee": { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "WunderBart", + "id": 1451471, + "node_id": "MDQ6VXNlcjE0NTE0NzE=", + "avatar_url": "https://avatars.githubusercontent.com/u/1451471?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/WunderBart", + "html_url": "https://github.com/WunderBart", + "followers_url": "https://api.github.com/users/WunderBart/followers", + "following_url": "https://api.github.com/users/WunderBart/following{/other_user}", + "gists_url": "https://api.github.com/users/WunderBart/gists{/gist_id}", + "starred_url": "https://api.github.com/users/WunderBart/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/WunderBart/subscriptions", + "organizations_url": "https://api.github.com/users/WunderBart/orgs", + "repos_url": "https://api.github.com/users/WunderBart/repos", + "events_url": "https://api.github.com/users/WunderBart/events{/privacy}", + "received_events_url": "https://api.github.com/users/WunderBart/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "Mamaduka", - "id": 240569, - "node_id": "MDQ6VXNlcjI0MDU2OQ==", - "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "login": "WunderBart", + "id": 1451471, + "node_id": "MDQ6VXNlcjE0NTE0NzE=", + "avatar_url": "https://avatars.githubusercontent.com/u/1451471?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/Mamaduka", - "html_url": "https://github.com/Mamaduka", - "followers_url": "https://api.github.com/users/Mamaduka/followers", - "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", - "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", - "organizations_url": "https://api.github.com/users/Mamaduka/orgs", - "repos_url": "https://api.github.com/users/Mamaduka/repos", - "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", - "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "url": "https://api.github.com/users/WunderBart", + "html_url": "https://github.com/WunderBart", + "followers_url": "https://api.github.com/users/WunderBart/followers", + "following_url": "https://api.github.com/users/WunderBart/following{/other_user}", + "gists_url": "https://api.github.com/users/WunderBart/gists{/gist_id}", + "starred_url": "https://api.github.com/users/WunderBart/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/WunderBart/subscriptions", + "organizations_url": "https://api.github.com/users/WunderBart/orgs", + "repos_url": "https://api.github.com/users/WunderBart/repos", + "events_url": "https://api.github.com/users/WunderBart/events{/privacy}", + "received_events_url": "https://api.github.com/users/WunderBart/received_events", "type": "User", "site_admin": false } ], "milestone": { - "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156", - "html_url": "https://github.com/WordPress/gutenberg/milestone/156", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/156/labels", - "id": 7010087, - "node_id": "MI_kwDOBNHdeM4Aavcn", - "number": 156, - "title": "Gutenberg 11.3", + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", "description": null, "creator": { "login": "github-actions[bot]", @@ -12842,69 +14174,199 @@ "site_admin": false }, "open_issues": 0, - "closed_issues": 113, + "closed_issues": 160, "state": "open", - "created_at": "2021-07-28T05:12:51Z", - "updated_at": "2021-08-11T14:18:41Z", - "due_on": "2021-08-11T07:00:00Z", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", "closed_at": null }, - "comments": 2, - "created_at": "2021-07-22T09:08:55Z", - "updated_at": "2021-07-28T14:45:54Z", - "closed_at": "2021-07-28T14:45:29Z", + "comments": 4, + "created_at": "2023-09-25T12:51:18Z", + "updated_at": "2023-09-25T14:35:13Z", + "closed_at": "2023-09-25T14:34:48Z", "author_association": "MEMBER", "active_lock_reason": null, + "draft": false, "pull_request": { - "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/33623", - "html_url": "https://github.com/WordPress/gutenberg/pull/33623", - "diff_url": "https://github.com/WordPress/gutenberg/pull/33623.diff", - "patch_url": "https://github.com/WordPress/gutenberg/pull/33623.patch" - }, - "body": "## Description\r\nSets no-operation function as a `onChange` default for the `TokenInput` component.\r\n\r\nCodeSandbox showcasing the issue - https://codesandbox.io/s/formtokenfield-dv9nb\r\n\r\nFixes #18463.\r\n\r\n## How has this been tested?\r\nTemporarily added `maxLength` to the `FlatTermSelector` component for testings, but probably there's a better way to do it.\r\n\r\n## Types of changes\r\nBugfix\r\n\r\n## Checklist:\r\n- [x] My code is tested.\r\n- [x] My code follows the WordPress code style. \r\n- [ ] My code follows the accessibility standards. \r\n- [ ] I've tested my changes with keyboard and screen readers. \r\n- [x] My code has proper inline documentation. \r\n- [x] I've included developer documentation if appropriate. \r\n- [ ] I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all `*.native.js` files for terms that need renaming or removal). \r\n", - "performed_via_github_app": null + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54784", + "html_url": "https://github.com/WordPress/gutenberg/pull/54784", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54784.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54784.patch", + "merged_at": "2023-09-25T14:34:48Z" + }, + "body": "## What?\r\n\r\nThis is needed for older branches where the current `loader` element is referred to as `spinner`. We need to be able to compare the current code to the older one (e.g. iframed vs legacy canvas) so some elements that are now legacy still need support in the performance tests. \r\n\r\nWithout this selector, this locator resolves immediately because it doesn't find a spinner element. This can cause the consequent canvas body click to timeout (flaky). See the attached trace as an example (taken from a failed CI job):\r\n\r\n👉 [trace.zip](https://github.com/WordPress/gutenberg/files/12715138/trace.zip) (_open via https://trace.playwright.dev/_)", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54784/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54784/timeline", + "performed_via_github_app": null, + "state_reason": null }, { - "url": "https://api.github.com/repos/WordPress/gutenberg/issues/33573", + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54782", "repository_url": "https://api.github.com/repos/WordPress/gutenberg", - "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33573/labels{/name}", - "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33573/comments", - "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/33573/events", - "html_url": "https://github.com/WordPress/gutenberg/pull/33573", - "id": 948722800, - "node_id": "MDExOlB1bGxSZXF1ZXN0NjkzNTI0NDk3", - "number": 33573, - "title": "Update docs to reflect new automated process for feature grouping", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54782/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54782/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54782/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54782", + "id": 1911176810, + "node_id": "PR_kwDOBNHdeM5bG1f8", + "number": 54782, + "title": "Update pattern import menu item", "user": { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", + "login": "jameskoster", + "id": 846565, + "node_id": "MDQ6VXNlcjg0NjU2NQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/846565?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", + "url": "https://api.github.com/users/jameskoster", + "html_url": "https://github.com/jameskoster", + "followers_url": "https://api.github.com/users/jameskoster/followers", + "following_url": "https://api.github.com/users/jameskoster/following{/other_user}", + "gists_url": "https://api.github.com/users/jameskoster/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jameskoster/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jameskoster/subscriptions", + "organizations_url": "https://api.github.com/users/jameskoster/orgs", + "repos_url": "https://api.github.com/users/jameskoster/repos", + "events_url": "https://api.github.com/users/jameskoster/events{/privacy}", + "received_events_url": "https://api.github.com/users/jameskoster/received_events", "type": "User", "site_admin": false }, "labels": [ { - "id": 567484057, - "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Documentation", - "name": "[Type] Developer Documentation", - "color": "bfd4f2", + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 3500693107, + "node_id": "LA_kwDOBNHdeM7QqFZz", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Pattern", + "name": "[Block] Pattern", + "color": "6767e5", "default": false, - "description": "" + "description": "Affects the Patterns Block" + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 9, + "created_at": "2023-09-25T10:28:52Z", + "updated_at": "2023-10-05T11:16:35Z", + "closed_at": "2023-09-26T09:39:37Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54782", + "html_url": "https://github.com/WordPress/gutenberg/pull/54782", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54782.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54782.patch", + "merged_at": "2023-09-26T09:39:37Z" + }, + "body": "Follow-up to https://github.com/WordPress/gutenberg/pull/54337.\r\n\r\n## What?\r\nUpdate the appearance / label of the pattern import menu item.\r\n\r\n### Before\r\n\"Screenshot\r\n\r\n\r\n### After\r\n\"Screenshot\r\n\r\n## Why?\r\nThe `upload` icon is more indicative of the action. The shorter label is less noisy and a bit easier to interpret at a glance. ", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54782/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54782/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54775", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54775/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54775/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54775/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54775", + "id": 1910951375, + "node_id": "PR_kwDOBNHdeM5bGFNj", + "number": 54775, + "title": "Upgrade wp-prettier to v3.0.3 (final)", + "user": { + "login": "jsnajdr", + "id": 664258, + "node_id": "MDQ6VXNlcjY2NDI1OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/664258?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/jsnajdr", + "html_url": "https://github.com/jsnajdr", + "followers_url": "https://api.github.com/users/jsnajdr/followers", + "following_url": "https://api.github.com/users/jsnajdr/following{/other_user}", + "gists_url": "https://api.github.com/users/jsnajdr/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jsnajdr/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jsnajdr/subscriptions", + "organizations_url": "https://api.github.com/users/jsnajdr/orgs", + "repos_url": "https://api.github.com/users/jsnajdr/repos", + "events_url": "https://api.github.com/users/jsnajdr/events{/privacy}", + "received_events_url": "https://api.github.com/users/jsnajdr/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ { "id": 596512821, "node_id": "MDU6TGFiZWw1OTY1MTI4MjE=", @@ -12912,70 +14374,7524 @@ "name": "[Type] Build Tooling", "color": "111111", "default": false, - "description": "" - }, - { - "id": 2551400612, - "node_id": "MDU6TGFiZWwyNTUxNDAwNjEy", - "url": "https://api.github.com/repos/WordPress/gutenberg/labels/developer-docs", - "name": "developer-docs", - "color": "1d76db", - "default": false, - "description": "Issues that impact the block editor developer documentation site" + "description": "Issues or PRs related to build tooling" } ], "state": "closed", "locked": false, "assignee": { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", + "login": "jsnajdr", + "id": 664258, + "node_id": "MDQ6VXNlcjY2NDI1OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/664258?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", + "url": "https://api.github.com/users/jsnajdr", + "html_url": "https://github.com/jsnajdr", + "followers_url": "https://api.github.com/users/jsnajdr/followers", + "following_url": "https://api.github.com/users/jsnajdr/following{/other_user}", + "gists_url": "https://api.github.com/users/jsnajdr/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jsnajdr/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jsnajdr/subscriptions", + "organizations_url": "https://api.github.com/users/jsnajdr/orgs", + "repos_url": "https://api.github.com/users/jsnajdr/repos", + "events_url": "https://api.github.com/users/jsnajdr/events{/privacy}", + "received_events_url": "https://api.github.com/users/jsnajdr/received_events", "type": "User", "site_admin": false }, "assignees": [ { - "login": "getdave", - "id": 444434, - "node_id": "MDQ6VXNlcjQ0NDQzNA==", - "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", + "login": "jsnajdr", + "id": 664258, + "node_id": "MDQ6VXNlcjY2NDI1OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/664258?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/getdave", - "html_url": "https://github.com/getdave", - "followers_url": "https://api.github.com/users/getdave/followers", - "following_url": "https://api.github.com/users/getdave/following{/other_user}", - "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", - "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", - "organizations_url": "https://api.github.com/users/getdave/orgs", - "repos_url": "https://api.github.com/users/getdave/repos", - "events_url": "https://api.github.com/users/getdave/events{/privacy}", - "received_events_url": "https://api.github.com/users/getdave/received_events", + "url": "https://api.github.com/users/jsnajdr", + "html_url": "https://github.com/jsnajdr", + "followers_url": "https://api.github.com/users/jsnajdr/followers", + "following_url": "https://api.github.com/users/jsnajdr/following{/other_user}", + "gists_url": "https://api.github.com/users/jsnajdr/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jsnajdr/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jsnajdr/subscriptions", + "organizations_url": "https://api.github.com/users/jsnajdr/orgs", + "repos_url": "https://api.github.com/users/jsnajdr/repos", + "events_url": "https://api.github.com/users/jsnajdr/events{/privacy}", + "received_events_url": "https://api.github.com/users/jsnajdr/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 4, + "created_at": "2023-09-25T08:23:47Z", + "updated_at": "2023-09-25T11:41:13Z", + "closed_at": "2023-09-25T11:40:46Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54775", + "html_url": "https://github.com/WordPress/gutenberg/pull/54775", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54775.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54775.patch", + "merged_at": "2023-09-25T11:40:46Z" + }, + "body": "Fixes https://github.com/WordPress/gutenberg/issues/54749.\r\n\r\nFinalizes the Prettier upgrade to 3.0.3. After a week without discovering any new bugs, I released final 3.0.3 version of `wp-prettier` (previous releases were betas), and updated Gutenberg's `package.json` files to use the final version.\r\n\r\nI also added the reformatting commits for 3.0.3 (#54539) and 2.8.5 (#49258) to the `.git-blame-ignore-revs` file.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54775/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54775/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54773", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54773/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54773/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54773/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54773", + "id": 1910571897, + "node_id": "PR_kwDOBNHdeM5bEzDo", + "number": 54773, + "title": "Search block: update alignment and icon button width", + "user": { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 1539734701, + "node_id": "MDU6TGFiZWwxNTM5NzM0NzAx", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Search", + "name": "[Block] Search", + "color": "6767e5", + "default": false, + "description": "Affects the Search Block - used to display a search field" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-25T03:09:55Z", + "updated_at": "2023-09-26T03:16:56Z", + "closed_at": "2023-09-26T03:16:33Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54773", + "html_url": "https://github.com/WordPress/gutenberg/pull/54773", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54773.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54773.patch", + "merged_at": "2023-09-26T03:16:33Z" + }, + "body": "## What?\r\n1. Give the rich text button a CSS declaration of `text:center`\r\n2. Remove max-width change for buttons with icons only so that it doesn't affect search button icons in the header or in narrow widths\r\n\r\n\r\n## Why?\r\n1. In the editor, the button text was aligned left because it was being rendered as a text field (and not a button). In the frontend the text is centered because it's a button 😄 \r\n2. For search buttons with icons only, the `-100px` in the `calc()` formula was causing the button to be a bit squished\r\n\r\n## Testing Instructions\r\nI'm using 2023 to test, though this should work in other block themes.\r\n\r\nAdd a search block to a page. Use text for the button label and add a break point so you can see how the text is aligned.\r\n\r\nSave the page. The search block button text alignment in the editor should match the frontend.\r\n\r\n\"Screenshot\r\n\"Screenshot\r\n\r\nAdd a search block to a navigation block or in the header, or elsewhere where space is constricted.\r\n\r\nSelect button with icon and button only options for the search block. Save and check the frontend:\r\n\r\n| Before | After |\r\n| ------------- | ------------- |\r\n| \"Screenshot | \"Screenshot |\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54773/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54773/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54772", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54772/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54772/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54772/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54772", + "id": 1910567289, + "node_id": "PR_kwDOBNHdeM5bEyEC", + "number": 54772, + "title": "Fix a broken MD link in callout", + "user": { + "login": "leemyongpakvn", + "id": 3759923, + "node_id": "MDQ6VXNlcjM3NTk5MjM=", + "avatar_url": "https://avatars.githubusercontent.com/u/3759923?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/leemyongpakvn", + "html_url": "https://github.com/leemyongpakvn", + "followers_url": "https://api.github.com/users/leemyongpakvn/followers", + "following_url": "https://api.github.com/users/leemyongpakvn/following{/other_user}", + "gists_url": "https://api.github.com/users/leemyongpakvn/gists{/gist_id}", + "starred_url": "https://api.github.com/users/leemyongpakvn/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/leemyongpakvn/subscriptions", + "organizations_url": "https://api.github.com/users/leemyongpakvn/orgs", + "repos_url": "https://api.github.com/users/leemyongpakvn/repos", + "events_url": "https://api.github.com/users/leemyongpakvn/events{/privacy}", + "received_events_url": "https://api.github.com/users/leemyongpakvn/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 567484057, + "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Developer%20Documentation", + "name": "[Type] Developer Documentation", + "color": "bfd4f2", + "default": false, + "description": "Documentation for developers" + }, + { + "id": 1388646432, + "node_id": "MDU6TGFiZWwxMzg4NjQ2NDMy", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/First-time%20Contributor", + "name": "First-time Contributor", + "color": "a0f762", + "default": false, + "description": "Pull request opened by a first-time contributor to Gutenberg repository" + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-25T03:03:58Z", + "updated_at": "2023-09-25T11:58:31Z", + "closed_at": "2023-09-25T11:58:01Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54772", + "html_url": "https://github.com/WordPress/gutenberg/pull/54772", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54772.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54772.patch", + "merged_at": "2023-09-25T11:58:01Z" + }, + "body": "\r\n\r\n## What?\r\n\r\nMarkDown link broken in callout div. Use pure HTML link to solve it.\r\n\r\n## Why?\r\n\r\n\r\n## How?\r\n\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\nUse MD editor Preview or Open https://developer.wordpress.org/block-editor/how-to-guides/block-tutorial/writing-your-first-block-type/ to see how MD link broken.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n![MD_link_broken_in_Callout](https://github.com/WordPress/gutenberg/assets/3759923/e7c40259-758b-47b1-a839-1c0a42544309)\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54772/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54772/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54769", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54769/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54769/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54769/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54769", + "id": 1910481291, + "node_id": "PR_kwDOBNHdeM5bEf7l", + "number": 54769, + "title": "Site Editor: remove `overflow: hidden` from the entity title in the site editor sidebar", + "user": { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 2706102777, + "node_id": "MDU6TGFiZWwyNzA2MTAyNzc3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Site%20Editor", + "name": "[Feature] Site Editor", + "color": "fbca04", + "default": false, + "description": "Related to the overarching Site Editor (formerly \"full site editing\")" + }, + { + "id": 5999214352, + "node_id": "LA_kwDOBNHdeM8AAAABZZS_EA", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/OS%20Issues", + "name": "OS Issues", + "color": "0052cc", + "default": false, + "description": "Issues or PRs that are related to OS specific problems" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 4, + "created_at": "2023-09-25T01:09:59Z", + "updated_at": "2023-10-03T23:36:38Z", + "closed_at": "2023-09-25T06:04:13Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54769", + "html_url": "https://github.com/WordPress/gutenberg/pull/54769", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54769.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54769.patch", + "merged_at": "2023-09-25T06:04:13Z" + }, + "body": "## What?\r\nResolves https://github.com/WordPress/gutenberg/issues/52218\r\n\r\nRemoving `overflow: hidden` from `.edit-site-sidebar-navigation-screen__title`, which is the entity title in the site editor sidebar.\r\n\r\n## Why?\r\n1. It doesn't appear to be required to hide text overflow in general (checked in modern browsers)\r\n2. In Windows Edge the descender segment of letters are cut off, e.g., for \"g\", \"p\", \"y\" and so on.\r\n\r\n\r\n\r\n## Testing Instructions\r\n1. In Windows Edge, head on over to `/wp-admin/site-editor.php` and view a single entity (page, template, pattern etc) that has characters with descenders. \r\n2. Check those descenders are not cut off.\r\n3. Try with a long entity title and in narrow viewport widths\r\n4. Ensure there are no side-effects for other major browsers.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n\r\n| Before | After |\r\n| ------------- | ------------- |\r\n| \"Screenshot | \"Screenshot |\r\n| \"Screenshot | \"Screenshot |\r\n\r\n\r\nAlso check long entity titles:\r\n\r\n\"Screenshot\r\n\r\nAnd in mobile view:\r\n\r\n\r\nhttps://github.com/WordPress/gutenberg/assets/6458278/a061b3fa-b4c3-43f2-bb89-bd1adb65c26f\r\n\r\n\r\n\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54769/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54769/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54765", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54765/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54765/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54765/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54765", + "id": 1910168419, + "node_id": "PR_kwDOBNHdeM5bDh5X", + "number": 54765, + "title": "`SlotFill`: Pass `Component` instance to unregisterSlot.", + "user": { + "login": "torounit", + "id": 1908815, + "node_id": "MDQ6VXNlcjE5MDg4MTU=", + "avatar_url": "https://avatars.githubusercontent.com/u/1908815?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/torounit", + "html_url": "https://github.com/torounit", + "followers_url": "https://api.github.com/users/torounit/followers", + "following_url": "https://api.github.com/users/torounit/following{/other_user}", + "gists_url": "https://api.github.com/users/torounit/gists{/gist_id}", + "starred_url": "https://api.github.com/users/torounit/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/torounit/subscriptions", + "organizations_url": "https://api.github.com/users/torounit/orgs", + "repos_url": "https://api.github.com/users/torounit/repos", + "events_url": "https://api.github.com/users/torounit/events{/privacy}", + "received_events_url": "https://api.github.com/users/torounit/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "torounit", + "id": 1908815, + "node_id": "MDQ6VXNlcjE5MDg4MTU=", + "avatar_url": "https://avatars.githubusercontent.com/u/1908815?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/torounit", + "html_url": "https://github.com/torounit", + "followers_url": "https://api.github.com/users/torounit/followers", + "following_url": "https://api.github.com/users/torounit/following{/other_user}", + "gists_url": "https://api.github.com/users/torounit/gists{/gist_id}", + "starred_url": "https://api.github.com/users/torounit/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/torounit/subscriptions", + "organizations_url": "https://api.github.com/users/torounit/orgs", + "repos_url": "https://api.github.com/users/torounit/repos", + "events_url": "https://api.github.com/users/torounit/events{/privacy}", + "received_events_url": "https://api.github.com/users/torounit/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "torounit", + "id": 1908815, + "node_id": "MDQ6VXNlcjE5MDg4MTU=", + "avatar_url": "https://avatars.githubusercontent.com/u/1908815?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/torounit", + "html_url": "https://github.com/torounit", + "followers_url": "https://api.github.com/users/torounit/followers", + "following_url": "https://api.github.com/users/torounit/following{/other_user}", + "gists_url": "https://api.github.com/users/torounit/gists{/gist_id}", + "starred_url": "https://api.github.com/users/torounit/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/torounit/subscriptions", + "organizations_url": "https://api.github.com/users/torounit/orgs", + "repos_url": "https://api.github.com/users/torounit/repos", + "events_url": "https://api.github.com/users/torounit/events{/privacy}", + "received_events_url": "https://api.github.com/users/torounit/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-24T09:29:14Z", + "updated_at": "2023-09-28T02:48:57Z", + "closed_at": "2023-09-28T02:48:29Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54765", + "html_url": "https://github.com/WordPress/gutenberg/pull/54765", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54765.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54765.patch", + "merged_at": "2023-09-28T02:48:29Z" + }, + "body": "\r\n\r\n## What?\r\n\r\npart of https://github.com/WordPress/gutenberg/pull/51350.\r\n\r\nhttps://github.com/WordPress/gutenberg/pull/51350#discussion_r1239378390\r\n\r\nWhen the slot name is updated, unregisterSlot is executed and the instance is unregistered, but it is not working correctly because the component instance is not passed. Fix this issue.\r\n\r\n## Why?\r\n\r\n\r\nbug fix.\r\n\r\n## How?\r\n\r\n\r\nadd `this` .\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n```\r\nnpm run test:unit -- --testPathPattern packages/components/src/slot-fill\r\n```\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54765/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54765/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54760", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54760/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54760/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54760/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54760", + "id": 1909956841, + "node_id": "PR_kwDOBNHdeM5bC4p7", + "number": 54760, + "title": "test: E2E tests require supported iOS version", + "user": { + "login": "dcalhoun", + "id": 438664, + "node_id": "MDQ6VXNlcjQzODY2NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/dcalhoun", + "html_url": "https://github.com/dcalhoun", + "followers_url": "https://api.github.com/users/dcalhoun/followers", + "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", + "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", + "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", + "organizations_url": "https://api.github.com/users/dcalhoun/orgs", + "repos_url": "https://api.github.com/users/dcalhoun/repos", + "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", + "received_events_url": "https://api.github.com/users/dcalhoun/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 615503111, + "node_id": "MDU6TGFiZWw2MTU1MDMxMTE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Automated%20Testing", + "name": "[Type] Automated Testing", + "color": "111111", + "default": false, + "description": "Testing infrastructure changes impacting the execution of end-to-end (E2E) and/or unit tests." + }, + { + "id": 982506020, + "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", + "name": "Mobile App - i.e. Android or iOS", + "color": "a3ef7a", + "default": false, + "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + }, + { + "id": 3639254262, + "node_id": "LA_kwDOBNHdeM7Y6pz2", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20Automation", + "name": "Mobile App - Automation", + "color": "669206", + "default": false, + "description": "Label used to initiate Mobile App PR Automation" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "dcalhoun", + "id": 438664, + "node_id": "MDQ6VXNlcjQzODY2NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/dcalhoun", + "html_url": "https://github.com/dcalhoun", + "followers_url": "https://api.github.com/users/dcalhoun/followers", + "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", + "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", + "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", + "organizations_url": "https://api.github.com/users/dcalhoun/orgs", + "repos_url": "https://api.github.com/users/dcalhoun/repos", + "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", + "received_events_url": "https://api.github.com/users/dcalhoun/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "dcalhoun", + "id": 438664, + "node_id": "MDQ6VXNlcjQzODY2NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/438664?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/dcalhoun", + "html_url": "https://github.com/dcalhoun", + "followers_url": "https://api.github.com/users/dcalhoun/followers", + "following_url": "https://api.github.com/users/dcalhoun/following{/other_user}", + "gists_url": "https://api.github.com/users/dcalhoun/gists{/gist_id}", + "starred_url": "https://api.github.com/users/dcalhoun/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/dcalhoun/subscriptions", + "organizations_url": "https://api.github.com/users/dcalhoun/orgs", + "repos_url": "https://api.github.com/users/dcalhoun/repos", + "events_url": "https://api.github.com/users/dcalhoun/events{/privacy}", + "received_events_url": "https://api.github.com/users/dcalhoun/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-23T18:15:03Z", + "updated_at": "2023-09-25T17:12:49Z", + "closed_at": "2023-09-25T17:12:23Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54760", + "html_url": "https://github.com/WordPress/gutenberg/pull/54760", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54760.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54760.patch", + "merged_at": "2023-09-25T17:12:23Z" + }, + "body": "\n\n## What?\n\nUpdate local Appium capabilities utilities to require a simulator with a\nsupported iOS version.\n\n## Why?\n\nAppium 1 does not support newer versions of iOS. This improves automatic\nsimulator selection logic to avoid loading incompatible iOS simulators\nand provide helpful error messages during compatibility failures.\n\nThis logic can be removed or simplified once we upgrade to Appium 2.\n\n\n## How?\n\nLimit automatic iOS simulator selection to compatible OS versions, e.g. iOS 15.\n\n## Testing Instructions\n\n\n\n\n1. Ensure a compatible iOS 15 simulator is installed on your machine.\n1. Check out this branch.\n1. `npm run native test:e2e:ios:local -- gutenberg-editor-heading-@canary.test.js`\n1. Verify the tests succeed on an iOS simulator.\n\n### Testing Instructions for Keyboard\n\nn/a\n\n## Screenshots or screencast \nn/a\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54760/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54760/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54744", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54744/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54744/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54744/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54744", + "id": 1909391762, + "node_id": "PR_kwDOBNHdeM5bBEqR", + "number": 54744, + "title": "(chore) Revert the 16.7 RC2 release in order to release it again due to wrong changelog", + "user": { + "login": "fullofcaffeine", + "id": 81248, + "node_id": "MDQ6VXNlcjgxMjQ4", + "avatar_url": "https://avatars.githubusercontent.com/u/81248?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/fullofcaffeine", + "html_url": "https://github.com/fullofcaffeine", + "followers_url": "https://api.github.com/users/fullofcaffeine/followers", + "following_url": "https://api.github.com/users/fullofcaffeine/following{/other_user}", + "gists_url": "https://api.github.com/users/fullofcaffeine/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fullofcaffeine/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fullofcaffeine/subscriptions", + "organizations_url": "https://api.github.com/users/fullofcaffeine/orgs", + "repos_url": "https://api.github.com/users/fullofcaffeine/repos", + "events_url": "https://api.github.com/users/fullofcaffeine/events{/privacy}", + "received_events_url": "https://api.github.com/users/fullofcaffeine/received_events", + "type": "User", + "site_admin": false + }, + "labels": [], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 3, + "created_at": "2023-09-22T19:03:43Z", + "updated_at": "2023-09-22T19:43:49Z", + "closed_at": "2023-09-22T19:30:09Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54744", + "html_url": "https://github.com/WordPress/gutenberg/pull/54744", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54744.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54744.patch", + "merged_at": "2023-09-22T19:30:08Z" + }, + "body": "## What?\r\n\r\nRevert the changelog and version bump commits in trunk.\r\n\r\n## Why?\r\n\r\nI released 16.7 RC2 today, but the changelog generated was wrong due to two commits listed there not being included in the release branch:\r\n\r\nhttps://github.com/WordPress/gutenberg/pull/52674 and https://github.com/WordPress/gutenberg/pull/54720., but they were still listed in the changelog.\r\n\r\nSince it's an RC, I think the cleanest way to go is to revert and release it again, or the asset s attached in the release will still contain the wrong changelog.\r\n\r\n## How?\r\n\r\n- Revert the changelog and bump commits for 16.7 RC2 in the `trunk` branch (this PR)\r\n- Revert the equivalent commits in the release/16.7 branch (already done, see linked commits below)\r\n- Remove the 16.7.2-rc.2 tag (done)\r\n- Remove the 16.7.2-rc.2 release (done)\r\n- Release again (Build Plugin Zip) (todo)\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54744/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54744/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54743", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54743/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54743/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54743/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54743", + "id": 1909274603, + "node_id": "PR_kwDOBNHdeM5bAsBl", + "number": 54743, + "title": "`Modal`: Accessibly hide/show outer modal when nested", + "user": { + "login": "stokesman", + "id": 9000376, + "node_id": "MDQ6VXNlcjkwMDAzNzY=", + "avatar_url": "https://avatars.githubusercontent.com/u/9000376?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/stokesman", + "html_url": "https://github.com/stokesman", + "followers_url": "https://api.github.com/users/stokesman/followers", + "following_url": "https://api.github.com/users/stokesman/following{/other_user}", + "gists_url": "https://api.github.com/users/stokesman/gists{/gist_id}", + "starred_url": "https://api.github.com/users/stokesman/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/stokesman/subscriptions", + "organizations_url": "https://api.github.com/users/stokesman/orgs", + "repos_url": "https://api.github.com/users/stokesman/repos", + "events_url": "https://api.github.com/users/stokesman/events{/privacy}", + "received_events_url": "https://api.github.com/users/stokesman/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 546517042, + "node_id": "MDU6TGFiZWw1NDY1MTcwNDI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Focus]%20Accessibility%20(a11y)", + "name": "[Focus] Accessibility (a11y)", + "color": "efde5d", + "default": false, + "description": "Changes that impact accessibility and need corresponding review (e.g. markup changes)." + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "stokesman", + "id": 9000376, + "node_id": "MDQ6VXNlcjkwMDAzNzY=", + "avatar_url": "https://avatars.githubusercontent.com/u/9000376?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/stokesman", + "html_url": "https://github.com/stokesman", + "followers_url": "https://api.github.com/users/stokesman/followers", + "following_url": "https://api.github.com/users/stokesman/following{/other_user}", + "gists_url": "https://api.github.com/users/stokesman/gists{/gist_id}", + "starred_url": "https://api.github.com/users/stokesman/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/stokesman/subscriptions", + "organizations_url": "https://api.github.com/users/stokesman/orgs", + "repos_url": "https://api.github.com/users/stokesman/repos", + "events_url": "https://api.github.com/users/stokesman/events{/privacy}", + "received_events_url": "https://api.github.com/users/stokesman/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "stokesman", + "id": 9000376, + "node_id": "MDQ6VXNlcjkwMDAzNzY=", + "avatar_url": "https://avatars.githubusercontent.com/u/9000376?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/stokesman", + "html_url": "https://github.com/stokesman", + "followers_url": "https://api.github.com/users/stokesman/followers", + "following_url": "https://api.github.com/users/stokesman/following{/other_user}", + "gists_url": "https://api.github.com/users/stokesman/gists{/gist_id}", + "starred_url": "https://api.github.com/users/stokesman/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/stokesman/subscriptions", + "organizations_url": "https://api.github.com/users/stokesman/orgs", + "repos_url": "https://api.github.com/users/stokesman/repos", + "events_url": "https://api.github.com/users/stokesman/events{/privacy}", + "received_events_url": "https://api.github.com/users/stokesman/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-22T17:25:31Z", + "updated_at": "2023-09-28T16:22:21Z", + "closed_at": "2023-09-28T16:21:58Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54743", + "html_url": "https://github.com/WordPress/gutenberg/pull/54743", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54743.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54743.patch", + "merged_at": "2023-09-28T16:21:58Z" + }, + "body": "## What?\r\nUpdates the existing logic for accessibly isolating the `Modal` component so that it works for nested modals. More specifically, when the nested modal is opened the \"opener\" modal has its `aria-hidden` attribute set to `\"true\"`.\r\n\r\n## Why?\r\nIt seems like how it’s supposed to work and we added a test for it in #54569.\r\n\r\n## How?\r\n- Executes the isolation logic every time a `Modal` mounts/unmounts instead of only for the first/final modal.\r\n- Revises tracking of hidden elements to use a 2d array to support levels of isolation.\r\n\r\n## Testing Instructions\r\n1. Open a post or page.\r\n2. Paste and execute the following snippet in the javascript console.\r\n```javascript\r\n( ( {\r\n\tcomponents: { Button, Modal },\r\n\teditPost: { PluginDocumentSettingPanel },\r\n\telement: { createElement: el, Fragment, useState },\r\n\tplugins: { registerPlugin }\r\n} ) => {\r\n\tregisterPlugin( 'modal-nesting-demo', {\r\n\t\trender: () => el( PluginDocumentSettingPanel, {\r\n\t\t\tname: 'modal-nesting-demo',\r\n\t\t\ttitle: 'Modal nesting demo',\r\n\t\t\tchildren: el( ModalNesting )\r\n\t\t} ),\r\n\t} );\r\n\r\n\tfunction ModalNesting() {\r\n\t\tconst [ isOpen, setOpen ] = useState( false );\r\n\t\tconst [ isInnerOpen, setIsInnerOpen ] = useState( false );\r\n\t\treturn (\r\n\t\t\tel( Fragment, null,\r\n\t\t\t\tel( Button, { variant: \"primary\", onClick: () => setOpen( true ) }, \"Open Modal\" ),\r\n\t\t\t\tisOpen && (\r\n\t\t\t\t\tel( Modal, {\r\n\t\t\t\t\t\tonRequestClose: () => setOpen( false ),\r\n\t\t\t\t\t\tstyle: { maxWidth: '600px' },\r\n\t\t\t\t\t\ttitle: 'Nested modals vs. a11y isolation',\r\n\t\t\t\t\t},\r\n\t\t\t\t\t\tel( 'p', null, 'This modal should be accessibly hidden when the nested modal is open. When the nested modal is closed this modal should again be accessible while the rest of the tree remains inaccessible until this modal is closed.' ),\r\n\r\n\t\t\t\t\t\tisInnerOpen && el(\r\n\t\t\t\t\t\t\tModal,\r\n\t\t\t\t\t\t\t{ onRequestClose: () => setIsInnerOpen( false ), title: '🪧 Nested' },\r\n\t\t\t\t\t\t\tel( 'p', null, 'Nothing to see here.' ),\r\n\t\t\t\t\t\t),\r\n\r\n\t\t\t\t\t\tel( Button, { variant: \"secondary\", onClick: () => setIsInnerOpen( true ) }, 'Open Nested'),\r\n\t\t\t\t\t)\r\n\t\t\t\t)\r\n\t\t\t)\r\n\t\t);\r\n\t}\r\n} )( wp );\r\n```\r\n3. Press the \"Open Modal\" button added to the post settings (\"Editor Settings\" > \"Modal nesting demo\").\r\n4. Note the Modal is opened and verify the rest of the page is no longer in the accessibility tree.\r\n5. Press the \"Open Nested\" button.\r\n6. Note the nested modal is opened and verify the outer modal is no longer in the accessibility tree.\r\n7. Close the nested modal.\r\n8. Verify the original modal is returned to the accessibility tree while the rest of the page is not.\r\n9. Close the modal.\r\n10. Verify the rest of the page is returned to the accessibility tree.\r\n\r\n### Testing Instructions for Keyboard\r\nI tried to make the instructions above applicable for keyboard use.\r\n\r\n## Screenshots or screencast \r\n\r\nhttps://github.com/WordPress/gutenberg/assets/9000376/7041978b-0155-4fc3-8ca6-03db7479716f\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54743/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54743/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54740", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54740/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54740/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54740/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54740", + "id": 1909190458, + "node_id": "PR_kwDOBNHdeM5bAaMl", + "number": 54740, + "title": "Deprecating `isPressed` in `Button` component", + "user": { + "login": "andrewhayward", + "id": 159848, + "node_id": "MDQ6VXNlcjE1OTg0OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/159848?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/andrewhayward", + "html_url": "https://github.com/andrewhayward", + "followers_url": "https://api.github.com/users/andrewhayward/followers", + "following_url": "https://api.github.com/users/andrewhayward/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewhayward/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewhayward/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewhayward/subscriptions", + "organizations_url": "https://api.github.com/users/andrewhayward/orgs", + "repos_url": "https://api.github.com/users/andrewhayward/repos", + "events_url": "https://api.github.com/users/andrewhayward/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewhayward/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "andrewhayward", + "id": 159848, + "node_id": "MDQ6VXNlcjE1OTg0OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/159848?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/andrewhayward", + "html_url": "https://github.com/andrewhayward", + "followers_url": "https://api.github.com/users/andrewhayward/followers", + "following_url": "https://api.github.com/users/andrewhayward/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewhayward/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewhayward/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewhayward/subscriptions", + "organizations_url": "https://api.github.com/users/andrewhayward/orgs", + "repos_url": "https://api.github.com/users/andrewhayward/repos", + "events_url": "https://api.github.com/users/andrewhayward/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewhayward/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "andrewhayward", + "id": 159848, + "node_id": "MDQ6VXNlcjE1OTg0OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/159848?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/andrewhayward", + "html_url": "https://github.com/andrewhayward", + "followers_url": "https://api.github.com/users/andrewhayward/followers", + "following_url": "https://api.github.com/users/andrewhayward/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewhayward/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewhayward/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewhayward/subscriptions", + "organizations_url": "https://api.github.com/users/andrewhayward/orgs", + "repos_url": "https://api.github.com/users/andrewhayward/repos", + "events_url": "https://api.github.com/users/andrewhayward/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewhayward/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 4, + "created_at": "2023-09-22T16:16:36Z", + "updated_at": "2023-10-03T12:25:04Z", + "closed_at": "2023-09-27T11:55:15Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54740", + "html_url": "https://github.com/WordPress/gutenberg/pull/54740", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54740.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54740.patch", + "merged_at": "2023-09-27T11:55:15Z" + }, + "body": "## What?\r\nThis PR starts the deprecation of `isPressed` on the `Button` component, deferring to the native `aria-pressed` attribute instead. While it does not externally change the API, internally it converts `isPressed` into `aria-pressed`, such that using the latter is equivalent to the former. As such, `aria-pressed` can be used instead of `isPressed` should a consumer so desire.\r\n\r\n## Why?\r\nWhen the `isPressed` prop is used on `Button`, `aria-pressed` is explicitly set accordingly. But sometimes `Button` is used for roles other than `button`, such as `option` and `checkbox`, where `aria-pressed` is not appropriate. Instead consumers should be able to decide for themselves the appropriate semantics.\r\n\r\n## How?\r\nThe `isPressed` prop is marked as deprecated, and transformed into `aria-pressed`. The value of `aria-pressed` is then used instead to determine how the component should be styled.\r\n\r\n## Testing Instructions\r\nUnit tests have been added to confirm that the legacy `isPressed` behaviour continues, and that using `aria-pressed` directly behaves in the same way.\r\n\r\nThe only potential scope for issues is where a consumer has already set `aria-pressed` on a `Button`, but not `isPressed`, as this could affect the visual appearance due to the added `is-pressed` class.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54740/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54740/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54736", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54736/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54736/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54736/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54736", + "id": 1908928247, + "node_id": "PR_kwDOBNHdeM5a_h2F", + "number": 54736, + "title": "Format Library: Try to fix highlight popover jumping", + "user": { + "login": "t-hamano", + "id": 54422211, + "node_id": "MDQ6VXNlcjU0NDIyMjEx", + "avatar_url": "https://avatars.githubusercontent.com/u/54422211?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/t-hamano", + "html_url": "https://github.com/t-hamano", + "followers_url": "https://api.github.com/users/t-hamano/followers", + "following_url": "https://api.github.com/users/t-hamano/following{/other_user}", + "gists_url": "https://api.github.com/users/t-hamano/gists{/gist_id}", + "starred_url": "https://api.github.com/users/t-hamano/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/t-hamano/subscriptions", + "organizations_url": "https://api.github.com/users/t-hamano/orgs", + "repos_url": "https://api.github.com/users/t-hamano/repos", + "events_url": "https://api.github.com/users/t-hamano/events{/privacy}", + "received_events_url": "https://api.github.com/users/t-hamano/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 1140833299, + "node_id": "MDU6TGFiZWwxMTQwODMzMjk5", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Format%20library", + "name": "[Package] Format library", + "color": "ed2572", + "default": false, + "description": "/packages/format-library" + }, + { + "id": 3553027981, + "node_id": "LA_kwDOBNHdeM7TxueN", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Colors", + "name": "[Feature] Colors", + "color": "fbca04", + "default": false, + "description": "Color management" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "t-hamano", + "id": 54422211, + "node_id": "MDQ6VXNlcjU0NDIyMjEx", + "avatar_url": "https://avatars.githubusercontent.com/u/54422211?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/t-hamano", + "html_url": "https://github.com/t-hamano", + "followers_url": "https://api.github.com/users/t-hamano/followers", + "following_url": "https://api.github.com/users/t-hamano/following{/other_user}", + "gists_url": "https://api.github.com/users/t-hamano/gists{/gist_id}", + "starred_url": "https://api.github.com/users/t-hamano/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/t-hamano/subscriptions", + "organizations_url": "https://api.github.com/users/t-hamano/orgs", + "repos_url": "https://api.github.com/users/t-hamano/repos", + "events_url": "https://api.github.com/users/t-hamano/events{/privacy}", + "received_events_url": "https://api.github.com/users/t-hamano/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "t-hamano", + "id": 54422211, + "node_id": "MDQ6VXNlcjU0NDIyMjEx", + "avatar_url": "https://avatars.githubusercontent.com/u/54422211?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/t-hamano", + "html_url": "https://github.com/t-hamano", + "followers_url": "https://api.github.com/users/t-hamano/followers", + "following_url": "https://api.github.com/users/t-hamano/following{/other_user}", + "gists_url": "https://api.github.com/users/t-hamano/gists{/gist_id}", + "starred_url": "https://api.github.com/users/t-hamano/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/t-hamano/subscriptions", + "organizations_url": "https://api.github.com/users/t-hamano/orgs", + "repos_url": "https://api.github.com/users/t-hamano/repos", + "events_url": "https://api.github.com/users/t-hamano/events{/privacy}", + "received_events_url": "https://api.github.com/users/t-hamano/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 11, + "created_at": "2023-09-22T13:37:25Z", + "updated_at": "2023-09-29T12:04:42Z", + "closed_at": "2023-09-27T11:42:49Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54736", + "html_url": "https://github.com/WordPress/gutenberg/pull/54736", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54736.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54736.patch", + "merged_at": "2023-09-27T11:42:49Z" + }, + "body": "Fixes: #49286\r\n\r\n## What?\r\n\r\nThis PR attempts to resolve an issue where popovers jump when applying inline highlighting to text.\r\n\r\n## Why?\r\n\r\nThis popover caches the `popoverAnchor` to maintain its position and prevent \"jumping\" when the inline highlight is applied.\r\n\r\nHowever, as mentioned in [this comment](https://github.com/WordPress/gutenberg/issues/49286#issuecomment-1497592542) by @ciampo, when text is surrounded by the `mark` element, the position seems to be out of sync for some reason.\r\n\r\n## How?\r\n\r\nI'm not sure if this approach is ideal, but caching only `getBoundingClientRect()` seems to solve the problem. If you have a more ideal approach, please let me know.\r\n\r\n## Testing Instructions\r\n\r\n- Enter text on the block editor.\r\n- Select some text and choose \"Highlight\" from the block toolbar.\r\n- Choose a palette, select a custom color, or enter a HEX color in the color popover.\r\n- The popover should be in the same position.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54736/reactions", + "total_count": 1, + "+1": 1, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54736/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54734", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54734/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54734/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54734/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54734", + "id": 1908876899, + "node_id": "PR_kwDOBNHdeM5a_Wuo", + "number": 54734, + "title": "FormTokenField: Add `box-sizing` reset style and reset default padding", + "user": { + "login": "t-hamano", + "id": 54422211, + "node_id": "MDQ6VXNlcjU0NDIyMjEx", + "avatar_url": "https://avatars.githubusercontent.com/u/54422211?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/t-hamano", + "html_url": "https://github.com/t-hamano", + "followers_url": "https://api.github.com/users/t-hamano/followers", + "following_url": "https://api.github.com/users/t-hamano/following{/other_user}", + "gists_url": "https://api.github.com/users/t-hamano/gists{/gist_id}", + "starred_url": "https://api.github.com/users/t-hamano/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/t-hamano/subscriptions", + "organizations_url": "https://api.github.com/users/t-hamano/orgs", + "repos_url": "https://api.github.com/users/t-hamano/repos", + "events_url": "https://api.github.com/users/t-hamano/events{/privacy}", + "received_events_url": "https://api.github.com/users/t-hamano/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "t-hamano", + "id": 54422211, + "node_id": "MDQ6VXNlcjU0NDIyMjEx", + "avatar_url": "https://avatars.githubusercontent.com/u/54422211?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/t-hamano", + "html_url": "https://github.com/t-hamano", + "followers_url": "https://api.github.com/users/t-hamano/followers", + "following_url": "https://api.github.com/users/t-hamano/following{/other_user}", + "gists_url": "https://api.github.com/users/t-hamano/gists{/gist_id}", + "starred_url": "https://api.github.com/users/t-hamano/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/t-hamano/subscriptions", + "organizations_url": "https://api.github.com/users/t-hamano/orgs", + "repos_url": "https://api.github.com/users/t-hamano/repos", + "events_url": "https://api.github.com/users/t-hamano/events{/privacy}", + "received_events_url": "https://api.github.com/users/t-hamano/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "t-hamano", + "id": 54422211, + "node_id": "MDQ6VXNlcjU0NDIyMjEx", + "avatar_url": "https://avatars.githubusercontent.com/u/54422211?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/t-hamano", + "html_url": "https://github.com/t-hamano", + "followers_url": "https://api.github.com/users/t-hamano/followers", + "following_url": "https://api.github.com/users/t-hamano/following{/other_user}", + "gists_url": "https://api.github.com/users/t-hamano/gists{/gist_id}", + "starred_url": "https://api.github.com/users/t-hamano/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/t-hamano/subscriptions", + "organizations_url": "https://api.github.com/users/t-hamano/orgs", + "repos_url": "https://api.github.com/users/t-hamano/repos", + "events_url": "https://api.github.com/users/t-hamano/events{/privacy}", + "received_events_url": "https://api.github.com/users/t-hamano/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-22T13:07:03Z", + "updated_at": "2023-09-22T15:05:10Z", + "closed_at": "2023-09-22T15:04:45Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54734", + "html_url": "https://github.com/WordPress/gutenberg/pull/54734", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54734.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54734.patch", + "merged_at": "2023-09-22T15:04:45Z" + }, + "body": "## What?\r\n\r\nThis PR resolves the following three issues in the `FormTokenField` component:\r\n\r\n- The suggestion list has default padding of `ul` element on the left side\r\n- The suggestion list items are not as high as expected.\r\n\r\nAs a result, the same problem is resolved for the `ComboBoxControl` that includes this component.\r\n\r\n| Before | After |\r\n|--------|--------|\r\n| ![form-token-field-before](https://github.com/WordPress/gutenberg/assets/54422211/a8795ac1-d02b-4d55-9b34-025c18ee39a2) | ![form-token-field-after](https://github.com/WordPress/gutenberg/assets/54422211/6b1270ae-65ff-43db-9b37-9edb1cd51eab) |\r\n| ![combo-box-control-before](https://github.com/WordPress/gutenberg/assets/54422211/6104fb5b-c238-458d-a5be-3f6321b86f5b) | ![combo-box-control-after](https://github.com/WordPress/gutenberg/assets/54422211/ac4c0411-7240-4827-a085-aeae8722d461) | \r\n\r\n## Why?\r\n\r\nThis issue does not occur on the block editor. Because reset styles such as post editor and WP-Admin are applied to these elements.\r\n\r\n## How?\r\n\r\nAdded styles to fix unintended appearance.\r\n\r\n## Testing Instructions\r\n\r\n- Run Storybook.\r\n- In the `FormTokenField` and `ComboBoxControl` components, enter characters that match the suggestion list.\r\n- Confirm that the suggestion list is displayed as you intended.\r\n- Inject WordPress style from the top toolbar.\r\n- There should be no change in the appearance of the component.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54734/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54734/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54733", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54733/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54733/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54733/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54733", + "id": 1908871072, + "node_id": "PR_kwDOBNHdeM5a_Vd6", + "number": 54733, + "title": "createResolversCacheMiddleware: remove dependency on core/data store", + "user": { + "login": "jsnajdr", + "id": 664258, + "node_id": "MDQ6VXNlcjY2NDI1OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/664258?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/jsnajdr", + "html_url": "https://github.com/jsnajdr", + "followers_url": "https://api.github.com/users/jsnajdr/followers", + "following_url": "https://api.github.com/users/jsnajdr/following{/other_user}", + "gists_url": "https://api.github.com/users/jsnajdr/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jsnajdr/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jsnajdr/subscriptions", + "organizations_url": "https://api.github.com/users/jsnajdr/orgs", + "repos_url": "https://api.github.com/users/jsnajdr/repos", + "events_url": "https://api.github.com/users/jsnajdr/events{/privacy}", + "received_events_url": "https://api.github.com/users/jsnajdr/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", + "default": false, + "description": "Issues or PRs that relate to code quality" + }, + { + "id": 937321166, + "node_id": "MDU6TGFiZWw5MzczMjExNjY=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Data", + "name": "[Package] Data", + "color": "ed2572", + "default": false, + "description": "/packages/data" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "jsnajdr", + "id": 664258, + "node_id": "MDQ6VXNlcjY2NDI1OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/664258?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/jsnajdr", + "html_url": "https://github.com/jsnajdr", + "followers_url": "https://api.github.com/users/jsnajdr/followers", + "following_url": "https://api.github.com/users/jsnajdr/following{/other_user}", + "gists_url": "https://api.github.com/users/jsnajdr/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jsnajdr/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jsnajdr/subscriptions", + "organizations_url": "https://api.github.com/users/jsnajdr/orgs", + "repos_url": "https://api.github.com/users/jsnajdr/repos", + "events_url": "https://api.github.com/users/jsnajdr/events{/privacy}", + "received_events_url": "https://api.github.com/users/jsnajdr/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "jsnajdr", + "id": 664258, + "node_id": "MDQ6VXNlcjY2NDI1OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/664258?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/jsnajdr", + "html_url": "https://github.com/jsnajdr", + "followers_url": "https://api.github.com/users/jsnajdr/followers", + "following_url": "https://api.github.com/users/jsnajdr/following{/other_user}", + "gists_url": "https://api.github.com/users/jsnajdr/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jsnajdr/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jsnajdr/subscriptions", + "organizations_url": "https://api.github.com/users/jsnajdr/orgs", + "repos_url": "https://api.github.com/users/jsnajdr/repos", + "events_url": "https://api.github.com/users/jsnajdr/events{/privacy}", + "received_events_url": "https://api.github.com/users/jsnajdr/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 4, + "created_at": "2023-09-22T13:03:20Z", + "updated_at": "2023-09-25T12:57:31Z", + "closed_at": "2023-09-25T12:57:05Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54733", + "html_url": "https://github.com/WordPress/gutenberg/pull/54733", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54733.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54733.patch", + "merged_at": "2023-09-25T12:57:05Z" + }, + "body": "The `core/data` store is a legacy store that provides access to \"resolution state\" of other stores' resolvers, and exists only to provide backward compatibility. The supported way to access store's \"resolution state\" is to use its metadata selectors like `hasFinishedResolution`.\r\n\r\nThis PR removes the `core/data` dependency from the resolvers cache middleware, which is used by all stores, and select directly from related stores instead.\r\n\r\nI'm also changing the code slightly to reduce one level of indentation, and removing unneeded optional chaining when looking at `value.status`.\r\n\r\n**How to test:**\r\nSufficiently covered by existing unit tests.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54733/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54733/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54728", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54728/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54728/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54728/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54728", + "id": 1908745994, + "node_id": "PR_kwDOBNHdeM5a-6NH", + "number": 54728, + "title": "[Site Editor]: Update copy of using the default template in a page", + "user": { + "login": "ntsekouras", + "id": 16275880, + "node_id": "MDQ6VXNlcjE2Mjc1ODgw", + "avatar_url": "https://avatars.githubusercontent.com/u/16275880?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ntsekouras", + "html_url": "https://github.com/ntsekouras", + "followers_url": "https://api.github.com/users/ntsekouras/followers", + "following_url": "https://api.github.com/users/ntsekouras/following{/other_user}", + "gists_url": "https://api.github.com/users/ntsekouras/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ntsekouras/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ntsekouras/subscriptions", + "organizations_url": "https://api.github.com/users/ntsekouras/orgs", + "repos_url": "https://api.github.com/users/ntsekouras/repos", + "events_url": "https://api.github.com/users/ntsekouras/events{/privacy}", + "received_events_url": "https://api.github.com/users/ntsekouras/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 2706102777, + "node_id": "MDU6TGFiZWwyNzA2MTAyNzc3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Site%20Editor", + "name": "[Feature] Site Editor", + "color": "fbca04", + "default": false, + "description": "Related to the overarching Site Editor (formerly \"full site editing\")" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "ntsekouras", + "id": 16275880, + "node_id": "MDQ6VXNlcjE2Mjc1ODgw", + "avatar_url": "https://avatars.githubusercontent.com/u/16275880?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ntsekouras", + "html_url": "https://github.com/ntsekouras", + "followers_url": "https://api.github.com/users/ntsekouras/followers", + "following_url": "https://api.github.com/users/ntsekouras/following{/other_user}", + "gists_url": "https://api.github.com/users/ntsekouras/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ntsekouras/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ntsekouras/subscriptions", + "organizations_url": "https://api.github.com/users/ntsekouras/orgs", + "repos_url": "https://api.github.com/users/ntsekouras/repos", + "events_url": "https://api.github.com/users/ntsekouras/events{/privacy}", + "received_events_url": "https://api.github.com/users/ntsekouras/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "ntsekouras", + "id": 16275880, + "node_id": "MDQ6VXNlcjE2Mjc1ODgw", + "avatar_url": "https://avatars.githubusercontent.com/u/16275880?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ntsekouras", + "html_url": "https://github.com/ntsekouras", + "followers_url": "https://api.github.com/users/ntsekouras/followers", + "following_url": "https://api.github.com/users/ntsekouras/following{/other_user}", + "gists_url": "https://api.github.com/users/ntsekouras/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ntsekouras/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ntsekouras/subscriptions", + "organizations_url": "https://api.github.com/users/ntsekouras/orgs", + "repos_url": "https://api.github.com/users/ntsekouras/repos", + "events_url": "https://api.github.com/users/ntsekouras/events{/privacy}", + "received_events_url": "https://api.github.com/users/ntsekouras/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 4, + "created_at": "2023-09-22T11:38:35Z", + "updated_at": "2023-10-05T10:44:53Z", + "closed_at": "2023-09-22T13:54:48Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54728", + "html_url": "https://github.com/WordPress/gutenberg/pull/54728", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54728.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54728.patch", + "merged_at": "2023-09-22T13:54:48Z" + }, + "body": "\r\n\r\n## What?\r\nResolves: https://github.com/WordPress/gutenberg/issues/54572\r\n\r\nThis PR just updates the copy of the `reset` button that results in using the default template of a page, based on the template hierarchy.\r\n\r\n\r\n\r\n\r\n## Testing Instructions\r\nIn site editor go to a page that has not the default template assigned(or just use the `swap template` button) and observe that the copy to use the default template has been changed from `Reset` to `Use default template`.\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54728/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54728/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54722", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54722/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54722/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54722/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54722", + "id": 1908593506, + "node_id": "PR_kwDOBNHdeM5a-Yxv", + "number": 54722, + "title": "Editor: Always render the 'Switch to Draft' button to avoid focus loss", + "user": { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 546517042, + "node_id": "MDU6TGFiZWw1NDY1MTcwNDI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Focus]%20Accessibility%20(a11y)", + "name": "[Focus] Accessibility (a11y)", + "color": "efde5d", + "default": false, + "description": "Changes that impact accessibility and need corresponding review (e.g. markup changes)." + }, + { + "id": 644027893, + "node_id": "MDU6TGFiZWw2NDQwMjc4OTM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20Design%20Feedback", + "name": "Needs Design Feedback", + "color": "0e8a16", + "default": false, + "description": "Needs general design feedback." + }, + { + "id": 1013395453, + "node_id": "MDU6TGFiZWwxMDEzMzk1NDUz", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Editor", + "name": "[Package] Editor", + "color": "ed2572", + "default": false, + "description": "/packages/editor" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 34, + "created_at": "2023-09-22T09:55:09Z", + "updated_at": "2023-10-06T10:17:19Z", + "closed_at": "2023-09-26T09:33:24Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54722", + "html_url": "https://github.com/WordPress/gutenberg/pull/54722", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54722.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54722.patch", + "merged_at": "2023-09-26T09:33:24Z" + }, + "body": "## What?\r\nFixes #51901.\r\n\r\nPR updates the `PostSwitchToDraftButton` component always to render to button, but using a disabled state when switching to draft isn't possible.\r\n\r\n## Why?\r\nSee #51901.\r\n\r\n> Instead, with the new placement of the Switch to Draft button in the settings panel, users are now forced to navigate almost the entire editor UI to go back where they were.\r\n\r\n> The expected behavior is that focus is returned to the UI control that opened the modal dialog. As such, the 'Switch to Draft' button should not be removed from the DOM. Ideally, it shoul dstay in the DOM, be still focusable, use an aria-disabled attribute and 'noop'. See: ARIA Authoring Practices: [Focusability of disabled controls](https://www.w3.org/WAI/ARIA/apg/practices/keyboard-interface/#focusabilityofdisabledcontrols).\r\n\r\n## How?\r\n* Updates button to use `aria-disabled` instead of `disabled` prop.\r\n* Noops the `onClick` callback when the button is disabled.\r\n\r\n## Testing Instructions\r\n1. Open a published or scheduled post.\r\n2. Navigate to the \"Switch to Draft\" button in document settings.\r\n3. Switch the post to draft.\r\n4. Verify that the button is visible, but has a disabled state.\r\n\r\n### Testing Instructions for Keyboard\r\nSame\r\n\r\n## Screenshots or screencast \r\n\r\nhttps://github.com/WordPress/gutenberg/assets/240569/e830a441-7d75-4ea6-bd3d-5e37e4d99d05\r\n\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54722/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54722/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54709", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54709/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54709/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54709/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54709", + "id": 1908050987, + "node_id": "PR_kwDOBNHdeM5a8j9H", + "number": 54709, + "title": "Use consistent capitalization for template parts in Site Editor constants", + "user": { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 793903067, + "node_id": "MDU6TGFiZWw3OTM5MDMwNjc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Copy", + "name": "[Type] Copy", + "color": "e868f9", + "default": false, + "description": "Issues or PRs that need copy editing assistance" + }, + { + "id": 2409818939, + "node_id": "MDU6TGFiZWwyNDA5ODE4OTM5", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Edit%20Site", + "name": "[Package] Edit Site", + "color": "ed2572", + "default": false, + "description": "/packages/edit-site" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 3, + "created_at": "2023-09-22T01:47:52Z", + "updated_at": "2023-10-05T11:16:29Z", + "closed_at": "2023-09-22T02:37:37Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54709", + "html_url": "https://github.com/WordPress/gutenberg/pull/54709", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54709.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54709.patch", + "merged_at": "2023-09-22T02:37:37Z" + }, + "body": "\r\n\r\n\r\n\r\n## What?\r\nBased on the efforts in https://github.com/WordPress/gutenberg/pull/51761, remove caps case from Template Part and prefer sentence case. As all instances of this string are stand alone, it's okay to have Template capitalized as it's the start of a sentence.\r\n\r\n\r\n## Testing Instructions\r\nInstances where the constant `POST_TYPE_LABELS[ TEMPLATE_PART_POST_TYPE ]` is used, the output should be \"Template part\" and not \"Template Part\".\r\n\r\nThank you!\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54709/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54709/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54707", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54707/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54707/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54707/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54707", + "id": 1907926577, + "node_id": "PR_kwDOBNHdeM5a8J1e", + "number": 54707, + "title": "Docs: Remove outdated info ", + "user": { + "login": "brookewp", + "id": 35543432, + "node_id": "MDQ6VXNlcjM1NTQzNDMy", + "avatar_url": "https://avatars.githubusercontent.com/u/35543432?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/brookewp", + "html_url": "https://github.com/brookewp", + "followers_url": "https://api.github.com/users/brookewp/followers", + "following_url": "https://api.github.com/users/brookewp/following{/other_user}", + "gists_url": "https://api.github.com/users/brookewp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/brookewp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/brookewp/subscriptions", + "organizations_url": "https://api.github.com/users/brookewp/orgs", + "repos_url": "https://api.github.com/users/brookewp/repos", + "events_url": "https://api.github.com/users/brookewp/events{/privacy}", + "received_events_url": "https://api.github.com/users/brookewp/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 567484057, + "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Developer%20Documentation", + "name": "[Type] Developer Documentation", + "color": "bfd4f2", + "default": false, + "description": "Documentation for developers" + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-21T23:45:26Z", + "updated_at": "2023-09-26T21:03:28Z", + "closed_at": "2023-09-26T21:03:05Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54707", + "html_url": "https://github.com/WordPress/gutenberg/pull/54707", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54707.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54707.patch", + "merged_at": "2023-09-26T21:03:05Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nTooltip no longer uses our Popover component since the refactor in #48440, so this removes the info on our legacy tooltip in the Popover section of the components package README. \r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54707/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54707/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54705", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54705/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54705/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54705/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54705", + "id": 1907739065, + "node_id": "PR_kwDOBNHdeM5a7iOO", + "number": 54705, + "title": "Site editor: use constants rather than hard coded template strings (round 3)", + "user": { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", + "default": false, + "description": "Issues or PRs that relate to code quality" + }, + { + "id": 2706102777, + "node_id": "MDU6TGFiZWwyNzA2MTAyNzc3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Site%20Editor", + "name": "[Feature] Site Editor", + "color": "fbca04", + "default": false, + "description": "Related to the overarching Site Editor (formerly \"full site editing\")" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 3, + "created_at": "2023-09-21T20:51:21Z", + "updated_at": "2023-09-25T08:44:11Z", + "closed_at": "2023-09-22T01:25:27Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54705", + "html_url": "https://github.com/WordPress/gutenberg/pull/54705", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54705.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54705.patch", + "merged_at": "2023-09-22T01:25:27Z" + }, + "body": "\r\n\r\n## What?\r\nThis is a follow up to:\r\n- https://github.com/WordPress/gutenberg/pull/54586\r\n- https://github.com/WordPress/gutenberg/pull/54484\r\n\r\n## Why?\r\nTo centralize names for post types and so on. Ease of management. Giving search and replace a well-deserved rest.\r\n\r\n## How?\r\nReplacing the following strings with constants\r\n\r\n| String | Constant |\r\n| ------------- | ------------- |\r\n| 'wp_navigation' | `NAVIGATION_POST_TYPE` |\r\n| 'wp_template' | `TEMPLATE_POST_TYPE` |\r\n| 'wp_template_part' | `TEMPLATE_PART_POST_TYPE` |\r\n| 'wp_block' | `PATTERN_TYPES.user` |\r\n\r\n## Testing Instructions\r\n- CI tests should pass.\r\n- Check that the replaced strings match a constant.\r\n- Smoke test site editor, e.g., create and edit some templates. Rename them, delete them. All should work as expecte", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54705/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54705/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54696", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54696/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54696/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54696/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54696", + "id": 1907254306, + "node_id": "PR_kwDOBNHdeM5a54TS", + "number": 54696, + "title": "Follow ariakit best practices", + "user": { + "login": "ciampo", + "id": 1083581, + "node_id": "MDQ6VXNlcjEwODM1ODE=", + "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ciampo", + "html_url": "https://github.com/ciampo", + "followers_url": "https://api.github.com/users/ciampo/followers", + "following_url": "https://api.github.com/users/ciampo/following{/other_user}", + "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", + "organizations_url": "https://api.github.com/users/ciampo/orgs", + "repos_url": "https://api.github.com/users/ciampo/repos", + "events_url": "https://api.github.com/users/ciampo/events{/privacy}", + "received_events_url": "https://api.github.com/users/ciampo/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 546517042, + "node_id": "MDU6TGFiZWw1NDY1MTcwNDI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Focus]%20Accessibility%20(a11y)", + "name": "[Focus] Accessibility (a11y)", + "color": "efde5d", + "default": false, + "description": "Changes that impact accessibility and need corresponding review (e.g. markup changes)." + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "ciampo", + "id": 1083581, + "node_id": "MDQ6VXNlcjEwODM1ODE=", + "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ciampo", + "html_url": "https://github.com/ciampo", + "followers_url": "https://api.github.com/users/ciampo/followers", + "following_url": "https://api.github.com/users/ciampo/following{/other_user}", + "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", + "organizations_url": "https://api.github.com/users/ciampo/orgs", + "repos_url": "https://api.github.com/users/ciampo/repos", + "events_url": "https://api.github.com/users/ciampo/events{/privacy}", + "received_events_url": "https://api.github.com/users/ciampo/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "ciampo", + "id": 1083581, + "node_id": "MDQ6VXNlcjEwODM1ODE=", + "avatar_url": "https://avatars.githubusercontent.com/u/1083581?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ciampo", + "html_url": "https://github.com/ciampo", + "followers_url": "https://api.github.com/users/ciampo/followers", + "following_url": "https://api.github.com/users/ciampo/following{/other_user}", + "gists_url": "https://api.github.com/users/ciampo/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ciampo/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ciampo/subscriptions", + "organizations_url": "https://api.github.com/users/ciampo/orgs", + "repos_url": "https://api.github.com/users/ciampo/repos", + "events_url": "https://api.github.com/users/ciampo/events{/privacy}", + "received_events_url": "https://api.github.com/users/ciampo/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-21T15:31:09Z", + "updated_at": "2023-10-07T08:28:45Z", + "closed_at": "2023-09-22T13:23:33Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54696", + "html_url": "https://github.com/WordPress/gutenberg/pull/54696", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54696.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54696.patch", + "merged_at": "2023-09-22T13:23:33Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nRefactor the code to follow ariakit best practices\r\n\r\n## Why?\r\n\r\n\r\nWe should aim at using third-party dependencies the way they are intended.\r\n\r\nWhile working on #54612 I stumbled upon some console warning — this PR aims at fixing them so that when we upgrade to a more recent version of ariakit, those warnings will be gone.\r\n\r\n## How?\r\n\r\n\r\n- use the `render` prop instead of the `as` prop (which has been deprecated in one of the latest release) ([docs](https://ariakit.org/guide/composition))\r\n- use the `import * as Ariakit from '@ariakit/react'` statement for all imports, instead of importing the specific sub-folder ([docs](https://ariakit.org/guide/coding-guidelines#import-namespace))\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\nNo changes are expected at runtime, all affected components should continue to work as previously.\r\n\r\nAll tests keep passing.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54696/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54696/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54695", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54695/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54695/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54695/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54695", + "id": 1907219861, + "node_id": "PR_kwDOBNHdeM5a5wuq", + "number": 54695, + "title": "Editor: Use hooks instead of HoCs in 'PostSwitchToDraftButton'", + "user": { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 593977130, + "node_id": "MDU6TGFiZWw1OTM5NzcxMzA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Priority]%20Low", + "name": "[Priority] Low", + "color": "f9d0c4", + "default": false, + "description": "Used to indicate that the issue at hand isn't a top priority to address and can be handled later" + }, + { + "id": 1013395453, + "node_id": "MDU6TGFiZWwxMDEzMzk1NDUz", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Editor", + "name": "[Package] Editor", + "color": "ed2572", + "default": false, + "description": "/packages/editor" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 1, + "created_at": "2023-09-21T15:13:33Z", + "updated_at": "2023-09-21T20:09:46Z", + "closed_at": "2023-09-21T20:09:21Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54695", + "html_url": "https://github.com/WordPress/gutenberg/pull/54695", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54695.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54695.patch", + "merged_at": "2023-09-21T20:09:21Z" + }, + "body": "## What?\r\nPR updates the `PostSwitchToDraftButton` component to use `data` hooks instead of HoCs.\r\n\r\n## Why?\r\nA micro-optimization makes the rendered component tree smaller.\r\n\r\nThis is similar to #53773.\r\n\r\n## Testing Instructions\r\n1. Open a post or page.\r\n2. Verify \"Switch to Draft\" action works as before.\r\n\r\n### Testing Instructions for Keyboard\r\nSame\r\n\r\n## Screenshots or screencast \r\n\r\n**Before**\r\n![CleanShot 2023-09-21 at 18 52 33](https://github.com/WordPress/gutenberg/assets/240569/a574c5a2-b35b-4b07-907b-f294aa683a1a)\r\n\r\n**After**\r\n![CleanShot 2023-09-21 at 19 08 30](https://github.com/WordPress/gutenberg/assets/240569/3292b12e-9f7b-4f8d-9705-db429963dcdf)\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54695/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54695/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54692", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54692/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54692/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54692/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54692", + "id": 1907160862, + "node_id": "PR_kwDOBNHdeM5a5jug", + "number": 54692, + "title": "Block Switcher: Use a different label for multi-selection", + "user": { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 546517042, + "node_id": "MDU6TGFiZWw1NDY1MTcwNDI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Focus]%20Accessibility%20(a11y)", + "name": "[Focus] Accessibility (a11y)", + "color": "efde5d", + "default": false, + "description": "Changes that impact accessibility and need corresponding review (e.g. markup changes)." + }, + { + "id": 1248494790, + "node_id": "MDU6TGFiZWwxMjQ4NDk0Nzkw", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Block%20editor", + "name": "[Package] Block editor", + "color": "ed2572", + "default": false, + "description": "/packages/block-editor" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "Mamaduka", + "id": 240569, + "node_id": "MDQ6VXNlcjI0MDU2OQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/240569?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/Mamaduka", + "html_url": "https://github.com/Mamaduka", + "followers_url": "https://api.github.com/users/Mamaduka/followers", + "following_url": "https://api.github.com/users/Mamaduka/following{/other_user}", + "gists_url": "https://api.github.com/users/Mamaduka/gists{/gist_id}", + "starred_url": "https://api.github.com/users/Mamaduka/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/Mamaduka/subscriptions", + "organizations_url": "https://api.github.com/users/Mamaduka/orgs", + "repos_url": "https://api.github.com/users/Mamaduka/repos", + "events_url": "https://api.github.com/users/Mamaduka/events{/privacy}", + "received_events_url": "https://api.github.com/users/Mamaduka/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-21T14:46:32Z", + "updated_at": "2023-09-21T20:09:28Z", + "closed_at": "2023-09-21T20:09:00Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54692", + "html_url": "https://github.com/WordPress/gutenberg/pull/54692", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54692.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54692.patch", + "merged_at": "2023-09-21T20:09:00Z" + }, + "body": "## What?\r\nCloses #51917.\r\n\r\nPR updates the Block Switcher label for multi-selection and removes a redundant block title in the description for single blocks.\r\n\r\n## Why?\r\nSee #51917.\r\n\r\n## Testing Instructions\r\n\r\n1. Create a new post.\r\n2. Add a few blocks of different types.\r\n3. Click in a Paragraph block.\r\n4. Select all the blocks by pressing Cmd/Ctrl + A twice.\r\n5. The block toolbar appears.\r\n6. Hover the Block Switcher button in the toolbar (the first button).\r\n7. Observe the tooltip text; it should be \"Multiple blocks selected\"\r\n\r\n### Testing Instructions for Keyboard\r\nSame\r\n\r\n## Screenshots or screencast \r\n![CleanShot 2023-09-21 at 18 27 16](https://github.com/WordPress/gutenberg/assets/240569/5de8f034-15e7-4f7a-91d7-9c43a321023e)\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54692/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54692/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54686", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54686/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54686/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54686/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54686", + "id": 1906980256, + "node_id": "PR_kwDOBNHdeM5a47-9", + "number": 54686, + "title": "Bump tj-actions/changed-files from 39.0.0 to 39.1.2", + "user": { + "login": "dependabot[bot]", + "id": 49699333, + "node_id": "MDM6Qm90NDk2OTkzMzM=", + "avatar_url": "https://avatars.githubusercontent.com/in/29110?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/dependabot%5Bbot%5D", + "html_url": "https://github.com/apps/dependabot", + "followers_url": "https://api.github.com/users/dependabot%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/dependabot%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/dependabot%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/dependabot%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/dependabot%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/dependabot%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/dependabot%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/dependabot%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/dependabot%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "labels": [ + { + "id": 596512821, + "node_id": "MDU6TGFiZWw1OTY1MTI4MjE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Build%20Tooling", + "name": "[Type] Build Tooling", + "color": "111111", + "default": false, + "description": "Issues or PRs related to build tooling" + }, + { + "id": 4662565393, + "node_id": "LA_kwDOBNHdeM8AAAABFekaEQ", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/GitHub%20Actions", + "name": "GitHub Actions", + "color": "000000", + "default": false, + "description": "Pull requests that update GitHub Actions code" + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 1, + "created_at": "2023-09-21T13:23:32Z", + "updated_at": "2023-09-22T15:10:20Z", + "closed_at": "2023-09-22T15:09:57Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54686", + "html_url": "https://github.com/WordPress/gutenberg/pull/54686", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54686.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54686.patch", + "merged_at": "2023-09-22T15:09:57Z" + }, + "body": "Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 39.0.0 to 39.1.2.\n
\nRelease notes\n

Sourced from tj-actions/changed-files's releases.

\n
\n

v39.1.2

\n

What's Changed

\n\n

Full Changelog: https://github.com/tj-actions/changed-files/compare/v39...v39.1.2

\n

v39.1.1

\n

What's Changed

\n\n

New Contributors

\n\n

Full Changelog: https://github.com/tj-actions/changed-files/compare/v39...v39.1.1

\n

v39.1.0

\n

What's Changed

\n\n

Full Changelog: https://github.com/tj-actions/changed-files/compare/v39...v39.1.0

\n

v39.0.3

\n

What's Changed

\n\n\n
\n

... (truncated)

\n
\n
\nChangelog\n

Sourced from tj-actions/changed-files's changelog.

\n
\n

Changelog

\n

39.1.2 - (2023-09-20)

\n

⚙️ Miscellaneous Tasks

\n
    \n
  • Add warrning message to diff error (#1593) (4196030) - (Tonye Jack)
  • \n
  • deps: Update dependency @​types/node to v20.6.3 (bbe7960) - (renovate[bot])
  • \n
\n

⬆️ Upgrades

\n
    \n
  • Upgraded to v39.1.1 (#1591)
  • \n
\n

Co-authored-by: jackton1 jackton1@users.noreply.github.com (159562d) - (tj-actions[bot])

\n

39.1.1 - (2023-09-19)

\n

🐛 Bug Fixes

\n
    \n
  • Changed_keys and modified_keys output to handle json and escape_json inputs (#1585) (951140b) - (Arthur)
  • \n
  • Error with test (#1589) (dbf0700) - (Tonye Jack)
  • \n
\n

🔄 Update

\n
    \n
  • Update test.yml (a21a533) - (Tonye Jack)
  • \n
  • Updated README.md (#1588)
  • \n
\n

Co-authored-by: jackton1 jackton1@users.noreply.github.com (dacbaeb) - (tj-actions[bot])

\n

📚 Documentation

\n
    \n
  • Add V0lantis as a contributor for bug (#1587) (36ab2fe) - (allcontributors[bot])
  • \n
\n

⚙️ Miscellaneous Tasks

\n\n

⬆️ Upgrades

\n
    \n
  • Upgraded to v39.1.0 (#1583)
  • \n
\n

Co-authored-by: jackton1 jackton1@users.noreply.github.com (fd73c12) - (tj-actions[bot])

\n

39.1.0 - (2023-09-18)

\n

🚀 Features

\n
    \n
  • Add support for returning YAML keys for paths that have changed (#1581) (5db7b57) - (Tonye Jack)
  • \n
\n\n
\n

... (truncated)

\n
\n
\nCommits\n\n
\n
\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tj-actions/changed-files&package-manager=github_actions&previous-version=39.0.0&new-version=39.1.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n
\nDependabot commands and options\n
\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n
", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54686/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54686/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54679", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54679/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54679/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54679/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54679", + "id": 1905915171, + "node_id": "PR_kwDOBNHdeM5a1UeG", + "number": 54679, + "title": "Site Editor: Reset 'Show template' toggle when leaving edit mode", + "user": { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 2706102777, + "node_id": "MDU6TGFiZWwyNzA2MTAyNzc3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Site%20Editor", + "name": "[Feature] Site Editor", + "color": "fbca04", + "default": false, + "description": "Related to the overarching Site Editor (formerly \"full site editing\")" + }, + { + "id": 5663509033, + "node_id": "LA_kwDOBNHdeM8AAAABUZJKKQ", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Page%20Content%20Focus", + "name": "[Feature] Page Content Focus", + "color": "FBCA04", + "default": false, + "description": "Ability to toggle between focusing on editing the page and editing the template in the site editor." + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "ramonjd", + "id": 6458278, + "node_id": "MDQ6VXNlcjY0NTgyNzg=", + "avatar_url": "https://avatars.githubusercontent.com/u/6458278?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ramonjd", + "html_url": "https://github.com/ramonjd", + "followers_url": "https://api.github.com/users/ramonjd/followers", + "following_url": "https://api.github.com/users/ramonjd/following{/other_user}", + "gists_url": "https://api.github.com/users/ramonjd/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ramonjd/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ramonjd/subscriptions", + "organizations_url": "https://api.github.com/users/ramonjd/orgs", + "repos_url": "https://api.github.com/users/ramonjd/repos", + "events_url": "https://api.github.com/users/ramonjd/events{/privacy}", + "received_events_url": "https://api.github.com/users/ramonjd/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-21T01:12:52Z", + "updated_at": "2023-09-21T04:08:22Z", + "closed_at": "2023-09-21T04:07:54Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54679", + "html_url": "https://github.com/WordPress/gutenberg/pull/54679", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54679.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54679.patch", + "merged_at": "2023-09-21T04:07:54Z" + }, + "body": "\r\n\r\n\r\n## What?\r\nFollow up to:\r\n\r\n- https://github.com/WordPress/gutenberg/pull/52674\r\n\r\nThis commit:\r\n\r\n1. Resets the page content focus type if the canvas switches from edit mode. \r\n2. Refactors `use-page-content-blocks.js` to accept an object as an argument so that we can check in the editor if there are any page content blocks in the editor. If not, we do not render the show/hide template.\r\n\r\nNote: 1 is more glaring than 2. Happy to roll it back so we're only fixing the reset aspect. \r\n\r\n## Why?\r\n1. Previously, if the template was hidden it would display again when leaving canvas edit mode, but hide again when returning to edit mode.\r\n2. If there are no content blocks in the editor it doesn't make sense to show a toggle that does nothing.\r\n\r\n\r\n\r\n## Testing Instructions\r\n\r\n1. Go to Appearance → Editor → Pages, select or create a page, then edit it.\r\n2. In the Page settings sidebar, click on the Template dropdown and hide the template using the \"Template preview\" item. Navigate away from edit mode in the site editor by clicking on the WP logo. The template should reappear in view mode.\r\n4. Reenter the page. The template should still be visible and the \"Template preview\" item should be checked.\r\n5. Now create a new Page template with a paragraph block only. \r\n6. Apply that template to your page.\r\n7. Edit the page. The \"Template preview\" item should not be rendered since there are no post-title, post-content, or post-featured-image blocks in your template.\r\n\r\nRun the tests!\r\n\r\n```\r\nnpm run test:unit packages/edit-site/src/components/block-editor/block-editor-provider/test/use-page-content-blocks.js\r\n```\r\n\r\nhttps://github.com/WordPress/gutenberg/assets/6458278/03032218-8b88-4d91-9fc9-113f2c5f191b\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54679/reactions", + "total_count": 1, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 1, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54679/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54670", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54670/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54670/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54670/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54670", + "id": 1905421983, + "node_id": "PR_kwDOBNHdeM5azqeI", + "number": 54670, + "title": "Image: Fix duotone not being applied to lightbox image", + "user": { + "login": "artemiomorales", + "id": 5360536, + "node_id": "MDQ6VXNlcjUzNjA1MzY=", + "avatar_url": "https://avatars.githubusercontent.com/u/5360536?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/artemiomorales", + "html_url": "https://github.com/artemiomorales", + "followers_url": "https://api.github.com/users/artemiomorales/followers", + "following_url": "https://api.github.com/users/artemiomorales/following{/other_user}", + "gists_url": "https://api.github.com/users/artemiomorales/gists{/gist_id}", + "starred_url": "https://api.github.com/users/artemiomorales/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/artemiomorales/subscriptions", + "organizations_url": "https://api.github.com/users/artemiomorales/orgs", + "repos_url": "https://api.github.com/users/artemiomorales/repos", + "events_url": "https://api.github.com/users/artemiomorales/events{/privacy}", + "received_events_url": "https://api.github.com/users/artemiomorales/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 1101518360, + "node_id": "MDU6TGFiZWwxMTAxNTE4MzYw", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Image", + "name": "[Block] Image", + "color": "6767e5", + "default": false, + "description": "Affects the Image Block" + }, + { + "id": 5324461665, + "node_id": "LA_kwDOBNHdeM8AAAABPVzWYQ", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Interactivity%20API", + "name": "[Feature] Interactivity API", + "color": "fbca04", + "default": false, + "description": "Experimental API to add frontend interactivity to blocks." + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 1, + "created_at": "2023-09-20T17:18:55Z", + "updated_at": "2023-09-29T12:04:05Z", + "closed_at": "2023-09-25T17:04:23Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54670", + "html_url": "https://github.com/WordPress/gutenberg/pull/54670", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54670.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54670.patch", + "merged_at": "2023-09-25T17:04:23Z" + }, + "body": "\r\n\r\n## What?\r\n\r\nThe duotone filter was not being applied to the lightbox image. This PR fixes that.\r\n\r\n## Why?\r\n\r\nThe duotone compatibility was broken with the [recent lightbox changes](https://github.com/WordPress/gutenberg/pull/54071), and the lightbox should be compatible with all of the image's normal features.\r\n\r\n## How?\r\n\r\nIt moves the code to render the lightbox inside of a filter that will run after the duotone effects have been applied.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n1. Insert an image in a post.\r\n2. Apply a duotone filter.\r\n3. Enable the lightbox using the block settings.\r\n4. Publish and view the post.\r\n5. Click on the image and see that the duotone has been applied to the image in the lightbox.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54670/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54670/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54663", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54663/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54663/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54663/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54663", + "id": 1905040815, + "node_id": "PR_kwDOBNHdeM5ayXoB", + "number": 54663, + "title": "Update compact search control metrics", + "user": { + "login": "jameskoster", + "id": 846565, + "node_id": "MDQ6VXNlcjg0NjU2NQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/846565?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/jameskoster", + "html_url": "https://github.com/jameskoster", + "followers_url": "https://api.github.com/users/jameskoster/followers", + "following_url": "https://api.github.com/users/jameskoster/following{/other_user}", + "gists_url": "https://api.github.com/users/jameskoster/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jameskoster/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jameskoster/subscriptions", + "organizations_url": "https://api.github.com/users/jameskoster/orgs", + "repos_url": "https://api.github.com/users/jameskoster/repos", + "events_url": "https://api.github.com/users/jameskoster/events{/privacy}", + "received_events_url": "https://api.github.com/users/jameskoster/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-20T13:45:54Z", + "updated_at": "2023-09-21T12:47:51Z", + "closed_at": "2023-09-21T12:47:20Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54663", + "html_url": "https://github.com/WordPress/gutenberg/pull/54663", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54663.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54663.patch", + "merged_at": "2023-09-21T12:47:20Z" + }, + "body": "Follow-up to https://github.com/WordPress/gutenberg/pull/54548.\r\n\r\n## What?\r\nUpdate `SizeControl` metrics when size is `compact`.\r\n\r\n## Why?\r\nBetter visual balance. The current spacing works well at 40/48px, but at the smaller 32px size it's a bit much.\r\n\r\n## Testing Instructions\r\n1. Run `npm run storybook:dev`, open `SearchControl` and set size to `compact`\r\n2. Observe the updated spacing\r\n\r\n### Before\r\n\"Screenshot\r\n\r\n\r\n### After\r\n\"Screenshot\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54663/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54663/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54661", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54661/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54661/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54661/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54661", + "id": 1904979933, + "node_id": "PR_kwDOBNHdeM5ayKf-", + "number": 54661, + "title": "Bump actions/setup-java from 3.12.0 to 3.13.0", + "user": { + "login": "dependabot[bot]", + "id": 49699333, + "node_id": "MDM6Qm90NDk2OTkzMzM=", + "avatar_url": "https://avatars.githubusercontent.com/in/29110?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/dependabot%5Bbot%5D", + "html_url": "https://github.com/apps/dependabot", + "followers_url": "https://api.github.com/users/dependabot%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/dependabot%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/dependabot%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/dependabot%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/dependabot%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/dependabot%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/dependabot%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/dependabot%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/dependabot%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "labels": [ + { + "id": 596512821, + "node_id": "MDU6TGFiZWw1OTY1MTI4MjE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Build%20Tooling", + "name": "[Type] Build Tooling", + "color": "111111", + "default": false, + "description": "Issues or PRs related to build tooling" + }, + { + "id": 4662565393, + "node_id": "LA_kwDOBNHdeM8AAAABFekaEQ", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/GitHub%20Actions", + "name": "GitHub Actions", + "color": "000000", + "default": false, + "description": "Pull requests that update GitHub Actions code" + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 0, + "created_at": "2023-09-20T13:16:42Z", + "updated_at": "2023-09-22T00:18:14Z", + "closed_at": "2023-09-22T00:17:39Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54661", + "html_url": "https://github.com/WordPress/gutenberg/pull/54661", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54661.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54661.patch", + "merged_at": "2023-09-22T00:17:39Z" + }, + "body": "Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3.12.0 to 3.13.0.\n
\nRelease notes\n

Sourced from actions/setup-java's releases.

\n
\n

v3.13.0

\n

What's changed

\n

In the scope of this release, support for Dragonwell JDK was added by @​Accelerator1996 in actions/setup-java#532

\n
steps:\n - name: Checkout\n   uses: actions/checkout@v3\n - name: Setup-java\n   uses: actions/setup-java@v3\n   with:\n     distribution: 'dragonwell'\n     java-version: '17'\n
\n

Several inaccuracies were also fixed:

\n\n

New Contributors

\n\n

Full Changelog: https://github.com/actions/setup-java/compare/v3...v3.13.0

\n
\n
\n
\nCommits\n\n
\n
\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-java&package-manager=github_actions&previous-version=3.12.0&new-version=3.13.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n
\nDependabot commands and options\n
\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n
", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54661/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54661/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54657", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54657/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54657/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54657/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54657", + "id": 1904604184, + "node_id": "PR_kwDOBNHdeM5aw4_U", + "number": 54657, + "title": "Scripts: Update webpack and related dependencies to the latest version", + "user": { + "login": "gziolo", + "id": 699132, + "node_id": "MDQ6VXNlcjY5OTEzMg==", + "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/gziolo", + "html_url": "https://github.com/gziolo", + "followers_url": "https://api.github.com/users/gziolo/followers", + "following_url": "https://api.github.com/users/gziolo/following{/other_user}", + "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", + "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", + "organizations_url": "https://api.github.com/users/gziolo/orgs", + "repos_url": "https://api.github.com/users/gziolo/repos", + "events_url": "https://api.github.com/users/gziolo/events{/privacy}", + "received_events_url": "https://api.github.com/users/gziolo/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 978007737, + "node_id": "MDU6TGFiZWw5NzgwMDc3Mzc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Scripts", + "name": "[Package] Scripts", + "color": "ed2572", + "default": false, + "description": "/packages/scripts" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "gziolo", + "id": 699132, + "node_id": "MDQ6VXNlcjY5OTEzMg==", + "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/gziolo", + "html_url": "https://github.com/gziolo", + "followers_url": "https://api.github.com/users/gziolo/followers", + "following_url": "https://api.github.com/users/gziolo/following{/other_user}", + "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", + "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", + "organizations_url": "https://api.github.com/users/gziolo/orgs", + "repos_url": "https://api.github.com/users/gziolo/repos", + "events_url": "https://api.github.com/users/gziolo/events{/privacy}", + "received_events_url": "https://api.github.com/users/gziolo/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "gziolo", + "id": 699132, + "node_id": "MDQ6VXNlcjY5OTEzMg==", + "avatar_url": "https://avatars.githubusercontent.com/u/699132?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/gziolo", + "html_url": "https://github.com/gziolo", + "followers_url": "https://api.github.com/users/gziolo/followers", + "following_url": "https://api.github.com/users/gziolo/following{/other_user}", + "gists_url": "https://api.github.com/users/gziolo/gists{/gist_id}", + "starred_url": "https://api.github.com/users/gziolo/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/gziolo/subscriptions", + "organizations_url": "https://api.github.com/users/gziolo/orgs", + "repos_url": "https://api.github.com/users/gziolo/repos", + "events_url": "https://api.github.com/users/gziolo/events{/privacy}", + "received_events_url": "https://api.github.com/users/gziolo/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 4, + "created_at": "2023-09-20T09:42:16Z", + "updated_at": "2023-09-21T11:20:38Z", + "closed_at": "2023-09-21T11:17:43Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54657", + "html_url": "https://github.com/WordPress/gutenberg/pull/54657", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54657.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54657.patch", + "merged_at": "2023-09-21T11:17:43Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nLet's bring webpack and related dependencies to the latest version and apply them to WordPress core around 6.4 Beta 1:\r\n\r\n- `webpack` updated to the latest version\r\n- `browserslist` and `caniuse-lite` updated to the latest version\r\n- `react-refresh` updated to the latest version\r\n\r\nIn addition, it tries to fix https://github.com/WordPress/gutenberg/issues/53552 caused by the outdated version of `webpack-cli`:\r\n\r\n> When ncu was executed, @wordpress/scripts was displayed as ^26.9.0 → ^26.10.0, so ncu -u npm install was executed in sequence.\r\n> As a result, several npm modules were shown as deprecated as follows:\r\n> \r\n> npm WARN deprecated debuglog@1.0.1: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.\r\n> npm WARN deprecated readdir-scoped-modules@1.1.0: This functionality has been moved to @npmcli/fs\r\n> npm WARN deprecated @npmcli/move-file@1.1.2: This functionality has been moved to @npmcli/fs\r\n> npm WARN deprecated @npmcli/move-file@2.0.1: This functionality has been moved to @npmcli/fs\r\n\r\n## Why?\r\n\r\n\r\n> These issues has been resolved in https://github.com/webpack/webpack-cli/issues/3891, https://github.com/webpack/webpack-cli/issues/3892, and https://github.com/webpack/webpack-cli/issues/3893 reported in webpack-cli, so it is appropriate to replace it with the latest version.\r\n\r\n## How?\r\n\r\n\r\nIt brings `webpack-cli` to the latest version. There were some breaking changes in [v5.0.0](https://github.com/webpack/webpack-cli/releases/tag/webpack-cli%405.0.0), but they don't seem to have impact like:\r\n- remove the `--hot` option in favor of directly using the `HotModuleReplacement` plugin (only for build command, for serve it will work). I don't see the listed deprecated packages in the lock file anymore.\r\n\r\nThere was a recent version bump enforced for the `webpack` in the repository with https://github.com/WordPress/gutenberg/pull/49075, so here we follow-up with another version bump that also gets applied to `@wordpress/scripts`.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n1. Run `nvm use` to switch to the currently supported Node.js and npm versions.\r\n2. Run `npm install` to install the latest version of dependencies.\r\n3. Run `npm run build` and confirm the the build finishes correctly.\r\n4. Run `npx wp-create-block example-static --no-wp-scripts` to confirm that Create Block still works.\r\n5. Run `cd example-statice` to enter the newly created project.\r\n6. Run `../node_modules/.bin/wp-scripts start --hot` to confirm that you can develop blocks with the dev server.\r\n7. Open the site at https://localhost:8888/wp-admin, go to the post editor and confirm that you can insert Example Static block.\r\n8. Edit the JS code of the block in the editor. It must be something controlled by React, for example `edit` function. See that the block gets automatically updated in the post editor after saving changes locally.\r\n\r\n## Screenshots or screencast \r\n\r\nI confirmed that React Fast Refresh still works with the updated `webpack-cli` and other dependencies:\r\n\r\n\"Screenshot\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54657/reactions", + "total_count": 1, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 1, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54657/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54655", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54655/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54655/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54655/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54655", + "id": 1904534595, + "node_id": "PR_kwDOBNHdeM5awp_T", + "number": 54655, + "title": "Font Library: move font uploads to a new tab", + "user": { + "login": "madhusudhand", + "id": 1935113, + "node_id": "MDQ6VXNlcjE5MzUxMTM=", + "avatar_url": "https://avatars.githubusercontent.com/u/1935113?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/madhusudhand", + "html_url": "https://github.com/madhusudhand", + "followers_url": "https://api.github.com/users/madhusudhand/followers", + "following_url": "https://api.github.com/users/madhusudhand/following{/other_user}", + "gists_url": "https://api.github.com/users/madhusudhand/gists{/gist_id}", + "starred_url": "https://api.github.com/users/madhusudhand/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/madhusudhand/subscriptions", + "organizations_url": "https://api.github.com/users/madhusudhand/orgs", + "repos_url": "https://api.github.com/users/madhusudhand/repos", + "events_url": "https://api.github.com/users/madhusudhand/events{/privacy}", + "received_events_url": "https://api.github.com/users/madhusudhand/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 4366600186, + "node_id": "LA_kwDOBNHdeM8AAAABBEUH-g", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Typography", + "name": "[Feature] Typography", + "color": "fbca04", + "default": false, + "description": "Font and typography-related issues and PRs" + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 10, + "created_at": "2023-09-20T09:04:26Z", + "updated_at": "2023-09-29T12:05:25Z", + "closed_at": "2023-09-28T17:56:40Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54655", + "html_url": "https://github.com/WordPress/gutenberg/pull/54655", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54655.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54655.patch", + "merged_at": "2023-09-28T17:56:40Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nAs suggested by the design, this change moves the font uploads section to a new tab and provides appropriate error messages when upload fails.\r\n\r\nIt also removes the use of snackbar.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n1. Open font library modal from global style -> typography.\r\n2. Observe that the uploads section is now moved to a new tab.\r\n3. Try uploading fonts.\r\n4. Upon error, it should show an error in the same tab and should not invoke snackbar.\r\n\r\n## Screenshots or screencast \r\n\r\n\"image\"\r\n\r\n## Related issues:\r\n\r\nFixes: #54504\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54655/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54655/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54654", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54654/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54654/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54654/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54654", + "id": 1904522215, + "node_id": "PR_kwDOBNHdeM5awnYE", + "number": 54654, + "title": "Removed unwanted space from the string", + "user": { + "login": "mujuonly", + "id": 459367, + "node_id": "MDQ6VXNlcjQ1OTM2Nw==", + "avatar_url": "https://avatars.githubusercontent.com/u/459367?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/mujuonly", + "html_url": "https://github.com/mujuonly", + "followers_url": "https://api.github.com/users/mujuonly/followers", + "following_url": "https://api.github.com/users/mujuonly/following{/other_user}", + "gists_url": "https://api.github.com/users/mujuonly/gists{/gist_id}", + "starred_url": "https://api.github.com/users/mujuonly/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/mujuonly/subscriptions", + "organizations_url": "https://api.github.com/users/mujuonly/orgs", + "repos_url": "https://api.github.com/users/mujuonly/repos", + "events_url": "https://api.github.com/users/mujuonly/events{/privacy}", + "received_events_url": "https://api.github.com/users/mujuonly/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", + "default": false, + "description": "Issues or PRs that relate to code quality" + }, + { + "id": 1101517892, + "node_id": "MDU6TGFiZWwxMTAxNTE3ODky", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Cover", + "name": "[Block] Cover", + "color": "6767e5", + "default": false, + "description": "Affects the Cover Block - used to display content laid over a background image" + }, + { + "id": 1225853227, + "node_id": "MDU6TGFiZWwxMjI1ODUzMjI3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Navigation", + "name": "[Block] Navigation", + "color": "6767e5", + "default": false, + "description": "Affects the Navigation Block" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "alexstine", + "id": 13755480, + "node_id": "MDQ6VXNlcjEzNzU1NDgw", + "avatar_url": "https://avatars.githubusercontent.com/u/13755480?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/alexstine", + "html_url": "https://github.com/alexstine", + "followers_url": "https://api.github.com/users/alexstine/followers", + "following_url": "https://api.github.com/users/alexstine/following{/other_user}", + "gists_url": "https://api.github.com/users/alexstine/gists{/gist_id}", + "starred_url": "https://api.github.com/users/alexstine/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/alexstine/subscriptions", + "organizations_url": "https://api.github.com/users/alexstine/orgs", + "repos_url": "https://api.github.com/users/alexstine/repos", + "events_url": "https://api.github.com/users/alexstine/events{/privacy}", + "received_events_url": "https://api.github.com/users/alexstine/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "alexstine", + "id": 13755480, + "node_id": "MDQ6VXNlcjEzNzU1NDgw", + "avatar_url": "https://avatars.githubusercontent.com/u/13755480?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/alexstine", + "html_url": "https://github.com/alexstine", + "followers_url": "https://api.github.com/users/alexstine/followers", + "following_url": "https://api.github.com/users/alexstine/following{/other_user}", + "gists_url": "https://api.github.com/users/alexstine/gists{/gist_id}", + "starred_url": "https://api.github.com/users/alexstine/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/alexstine/subscriptions", + "organizations_url": "https://api.github.com/users/alexstine/orgs", + "repos_url": "https://api.github.com/users/alexstine/repos", + "events_url": "https://api.github.com/users/alexstine/events{/privacy}", + "received_events_url": "https://api.github.com/users/alexstine/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 5, + "created_at": "2023-09-20T08:57:57Z", + "updated_at": "2023-10-04T11:05:25Z", + "closed_at": "2023-09-23T02:30:34Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54654", + "html_url": "https://github.com/WordPress/gutenberg/pull/54654", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54654.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54654.patch", + "merged_at": "2023-09-23T02:30:34Z" + }, + "body": "\r\n## What?\r\nRemoved unwanted space in the string\r\n\r\n\r\n## Why?\r\nUnwanted space at the end of the string shows warning at translation.\r\n\r\n## How?\r\nRemoved unwanted space in the string\r\n\r\n## Testing Instructions\r\nText correction only\r\n\r\n\r\n### Testing Instructions for Keyboard\r\nText correction only\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54654/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54654/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54639", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54639/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54639/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54639/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54639", + "id": 1903879155, + "node_id": "PR_kwDOBNHdeM5aubqB", + "number": 54639, + "title": "Image: Ensure `false` values are preserved in memory when defined in `theme.json`", + "user": { + "login": "artemiomorales", + "id": 5360536, + "node_id": "MDQ6VXNlcjUzNjA1MzY=", + "avatar_url": "https://avatars.githubusercontent.com/u/5360536?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/artemiomorales", + "html_url": "https://github.com/artemiomorales", + "followers_url": "https://api.github.com/users/artemiomorales/followers", + "following_url": "https://api.github.com/users/artemiomorales/following{/other_user}", + "gists_url": "https://api.github.com/users/artemiomorales/gists{/gist_id}", + "starred_url": "https://api.github.com/users/artemiomorales/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/artemiomorales/subscriptions", + "organizations_url": "https://api.github.com/users/artemiomorales/orgs", + "repos_url": "https://api.github.com/users/artemiomorales/repos", + "events_url": "https://api.github.com/users/artemiomorales/events{/privacy}", + "received_events_url": "https://api.github.com/users/artemiomorales/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 1101518360, + "node_id": "MDU6TGFiZWwxMTAxNTE4MzYw", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Image", + "name": "[Block] Image", + "color": "6767e5", + "default": false, + "description": "Affects the Image Block" + }, + { + "id": 1800807983, + "node_id": "MDU6TGFiZWwxODAwODA3OTgz", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Global%20Styles", + "name": "Global Styles", + "color": "2100b7", + "default": false, + "description": "Anything related to the broader Global Styles efforts, including Styles Engine and theme.json" + }, + { + "id": 5324461665, + "node_id": "LA_kwDOBNHdeM8AAAABPVzWYQ", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Interactivity%20API", + "name": "[Feature] Interactivity API", + "color": "fbca04", + "default": false, + "description": "Experimental API to add frontend interactivity to blocks." + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 4, + "created_at": "2023-09-20T00:08:25Z", + "updated_at": "2023-09-29T12:04:30Z", + "closed_at": "2023-09-27T11:19:12Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54639", + "html_url": "https://github.com/WordPress/gutenberg/pull/54639", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54639.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54639.patch", + "merged_at": "2023-09-27T11:19:12Z" + }, + "body": "\r\n\r\n## What?\r\n\r\nThis PR ensures `false` values are preserved in our in-memory representation of `theme.json` settings when constructing the Global Styles UI.\r\n\r\n## Why?\r\n\r\nAddresses https://github.com/WordPress/gutenberg/issues/54638\r\n\r\nBy making the in-memory settings match the settings provided in the `theme.json`, I believe this will help us achieve consistency in https://github.com/WordPress/gutenberg/issues/54544 and https://github.com/WordPress/gutenberg/issues/54635.\r\n\r\nLargely I'm opening this PR to discuss what the expected behavior should be, and to see if this is an appropriate change.\r\n\r\n## How?\r\n\r\nIt modifies the conditional in `useGlobalSetting` of [packages/block-editor/src/components/global-styles/hooks.js](https://github.com/WordPress/gutenberg/blob/23bb9301902bb5825480240bd5aaec9d3cc3c380/packages/block-editor/src/components/global-styles/hooks.js#L91).\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n1. In the [screen-block.js file](https://github.com/WordPress/gutenberg/blob/23bb9301902bb5825480240bd5aaec9d3cc3c380/packages/edit-site/src/components/global-styles/screen-block.js#L95), add a console.log for `rawSettings` around line 95.\r\n2. Open your web inspector and go to the Image settings in the Global Styles.\r\n3. See that the `lightbox.allowEditing: true` from the default Gutenberg `theme.json` is visible in the logged statement as expected.\r\n\r\n\"Screenshot\r\n\r\n4. Modify your theme's `theme.json` to include the following setting to overwrite the default `allowEditing` value:\r\n```\r\n\"settings\": {\r\n \"blocks\": {\r\n \"core/image\": {\r\n \"lightbox\": {\r\n \"allowEditing\" false\r\n }\r\n }\r\n }\r\n}\r\n```\r\n5. Revisit the Image settings in the Global Styles, and see that the `rawSettings` value is preserved.\r\n\r\n\"Screenshot\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54639/reactions", + "total_count": 2, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 2, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54639/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54637", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54637/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54637/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54637/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54637", + "id": 1903854433, + "node_id": "PR_kwDOBNHdeM5auWbY", + "number": 54637, + "title": "Use `wp_get_inline_script_tag()` in `build_dropdown_script_block_core_categories()`", + "user": { + "login": "westonruter", + "id": 134745, + "node_id": "MDQ6VXNlcjEzNDc0NQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/134745?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/westonruter", + "html_url": "https://github.com/westonruter", + "followers_url": "https://api.github.com/users/westonruter/followers", + "following_url": "https://api.github.com/users/westonruter/following{/other_user}", + "gists_url": "https://api.github.com/users/westonruter/gists{/gist_id}", + "starred_url": "https://api.github.com/users/westonruter/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/westonruter/subscriptions", + "organizations_url": "https://api.github.com/users/westonruter/orgs", + "repos_url": "https://api.github.com/users/westonruter/repos", + "events_url": "https://api.github.com/users/westonruter/events{/privacy}", + "received_events_url": "https://api.github.com/users/westonruter/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 1113238583, + "node_id": "MDU6TGFiZWwxMTEzMjM4NTgz", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Categories", + "name": "[Block] Categories", + "color": "6767e5", + "default": false, + "description": "Affects the Categories Block" + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-19T23:30:07Z", + "updated_at": "2023-09-21T17:53:36Z", + "closed_at": "2023-09-21T17:50:09Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54637", + "html_url": "https://github.com/WordPress/gutenberg/pull/54637", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54637.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54637.patch", + "merged_at": "2023-09-21T17:50:09Z" + }, + "body": "See Core-58664. By using `wp_get_inline_script_tag()` instead of manually constructing `script` tags, key benefits can be gained, for example being able to use Strict CSP. This change was originally in https://github.com/WordPress/wordpress-develop/pull/4773 but it needed to be upstreamed in Gutenberg.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54637/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54637/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54622", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54622/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54622/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54622/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54622", + "id": 1903645061, + "node_id": "PR_kwDOBNHdeM5atoz3", + "number": 54622, + "title": "Default suggested links to pages", + "user": { + "login": "draganescu", + "id": 107534, + "node_id": "MDQ6VXNlcjEwNzUzNA==", + "avatar_url": "https://avatars.githubusercontent.com/u/107534?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/draganescu", + "html_url": "https://github.com/draganescu", + "followers_url": "https://api.github.com/users/draganescu/followers", + "following_url": "https://api.github.com/users/draganescu/following{/other_user}", + "gists_url": "https://api.github.com/users/draganescu/gists{/gist_id}", + "starred_url": "https://api.github.com/users/draganescu/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/draganescu/subscriptions", + "organizations_url": "https://api.github.com/users/draganescu/orgs", + "repos_url": "https://api.github.com/users/draganescu/repos", + "events_url": "https://api.github.com/users/draganescu/events{/privacy}", + "received_events_url": "https://api.github.com/users/draganescu/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 644027893, + "node_id": "MDU6TGFiZWw2NDQwMjc4OTM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20Design%20Feedback", + "name": "Needs Design Feedback", + "color": "0e8a16", + "default": false, + "description": "Needs general design feedback." + }, + { + "id": 1225853227, + "node_id": "MDU6TGFiZWwxMjI1ODUzMjI3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Navigation", + "name": "[Block] Navigation", + "color": "6767e5", + "default": false, + "description": "Affects the Navigation Block" + }, + { + "id": 1838782557, + "node_id": "MDU6TGFiZWwxODM4NzgyNTU3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Link%20Editing", + "name": "[Feature] Link Editing", + "color": "fbca04", + "default": false, + "description": "Link components (LinkControl, URLInput) and integrations (RichText link formatting)" + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 20, + "created_at": "2023-09-19T19:59:22Z", + "updated_at": "2023-10-02T11:30:06Z", + "closed_at": "2023-10-02T11:24:13Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54622", + "html_url": "https://github.com/WordPress/gutenberg/pull/54622", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54622.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54622.patch", + "merged_at": "2023-10-02T11:24:13Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nCloses #53904 - defaults suggestions in LinkUI to pages.\r\n\r\n~~This change applies in all linking instances where linking UI shows suggestions, not only in the navigation block as the original issue asks.\r\n\r\nI think this is good for consistency and also because the mixed suggestions seem less likely to be helpful.~~\r\n\r\n## Why?\r\n\r\n\r\nBecause most linking is either towards pages or external links. ~~For taxonomy links or posts it is far more likely to need to filter by search term.~~\r\n\r\nPages are generally few in number and therefore it makes sense to always default to suggesting existing pages.\r\n\r\n## How?\r\n\r\n\r\nThis is how the suggestions are setup and shown in the navigation link block, part of the navigation block:\r\n\r\n![Untitled-2023-09-28-1158(1)](https://github.com/WordPress/gutenberg/assets/107534/c9497cae-9a77-4029-a1d8-3da32a936f24)\r\n\r\n~~This exploration changes how the core data (!) `fetchLinkSuggestions` ... util? works. This currently searches through everything and tries to show _something_.\r\n\r\nThe change defaults to always showing pages if the call is for \"initial suggestions\" - which also means:\r\n\r\n- if there are no pages there are no suggestions\r\n- there will always be the same suggestions~~\r\n\r\nThe PR introduces a new member of the search options object that gets eventually used by `fetchLinkSuggestions`. This new `initialSuggestionsSearchOptions` member overrides all the options in `searchOptions;` for the initial suggestions.\r\n\r\nThe navigation link block now uses this to default to suggesting a max of 20 pages initially for the custom link variation.\r\n\r\n\r\n## Testing Instructions\r\n\r\n0. Make sure you have some published pages, then\r\n1. In a post \r\n2. Add a navigation block\r\n3. Notice when adding items the suggestions are only pages\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\nN/A\r\n\r\n## Screenshots or screencast \r\n\r\nhttps://github.com/WordPress/gutenberg/assets/107534/052de3bb-a75b-48a4-b3f6-d1f2dc615ff0\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54622/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54622/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54613", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54613/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54613/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54613/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54613", + "id": 1903321813, + "node_id": "PR_kwDOBNHdeM5asjCB", + "number": 54613, + "title": "Add a brief description to the Footnotes block", + "user": { + "login": "aurooba", + "id": 6925260, + "node_id": "MDQ6VXNlcjY5MjUyNjA=", + "avatar_url": "https://avatars.githubusercontent.com/u/6925260?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/aurooba", + "html_url": "https://github.com/aurooba", + "followers_url": "https://api.github.com/users/aurooba/followers", + "following_url": "https://api.github.com/users/aurooba/following{/other_user}", + "gists_url": "https://api.github.com/users/aurooba/gists{/gist_id}", + "starred_url": "https://api.github.com/users/aurooba/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/aurooba/subscriptions", + "organizations_url": "https://api.github.com/users/aurooba/orgs", + "repos_url": "https://api.github.com/users/aurooba/repos", + "events_url": "https://api.github.com/users/aurooba/events{/privacy}", + "received_events_url": "https://api.github.com/users/aurooba/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 5654261232, + "node_id": "LA_kwDOBNHdeM8AAAABUQUt8A", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Footnotes", + "name": "[Block] Footnotes", + "color": "6767e5", + "default": false, + "description": "Affects the Footnotes Block" + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 3, + "created_at": "2023-09-19T16:12:11Z", + "updated_at": "2023-10-07T20:55:36Z", + "closed_at": "2023-09-27T01:52:50Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54613", + "html_url": "https://github.com/WordPress/gutenberg/pull/54613", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54613.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54613.patch", + "merged_at": "2023-09-27T01:52:50Z" + }, + "body": "\r\n\r\n## What and Why?\r\n\r\nI noticed there was no description for the Footnotes block. This PR adds a brief one in a similar style to other Core Block descriptions: `Display footnotes added to the page.`. Happy to adjust based on feedback!\r\n\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54613/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54613/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54609", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54609/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54609/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54609/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54609", + "id": 1903191219, + "node_id": "PR_kwDOBNHdeM5asG2a", + "number": 54609, + "title": "Add template replace flow to template inspector", + "user": { + "login": "scruffian", + "id": 275961, + "node_id": "MDQ6VXNlcjI3NTk2MQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/275961?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/scruffian", + "html_url": "https://github.com/scruffian", + "followers_url": "https://api.github.com/users/scruffian/followers", + "following_url": "https://api.github.com/users/scruffian/following{/other_user}", + "gists_url": "https://api.github.com/users/scruffian/gists{/gist_id}", + "starred_url": "https://api.github.com/users/scruffian/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/scruffian/subscriptions", + "organizations_url": "https://api.github.com/users/scruffian/orgs", + "repos_url": "https://api.github.com/users/scruffian/repos", + "events_url": "https://api.github.com/users/scruffian/events{/privacy}", + "received_events_url": "https://api.github.com/users/scruffian/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 2706102777, + "node_id": "MDU6TGFiZWwyNzA2MTAyNzc3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Site%20Editor", + "name": "[Feature] Site Editor", + "color": "fbca04", + "default": false, + "description": "Related to the overarching Site Editor (formerly \"full site editing\")" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "scruffian", + "id": 275961, + "node_id": "MDQ6VXNlcjI3NTk2MQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/275961?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/scruffian", + "html_url": "https://github.com/scruffian", + "followers_url": "https://api.github.com/users/scruffian/followers", + "following_url": "https://api.github.com/users/scruffian/following{/other_user}", + "gists_url": "https://api.github.com/users/scruffian/gists{/gist_id}", + "starred_url": "https://api.github.com/users/scruffian/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/scruffian/subscriptions", + "organizations_url": "https://api.github.com/users/scruffian/orgs", + "repos_url": "https://api.github.com/users/scruffian/repos", + "events_url": "https://api.github.com/users/scruffian/events{/privacy}", + "received_events_url": "https://api.github.com/users/scruffian/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "scruffian", + "id": 275961, + "node_id": "MDQ6VXNlcjI3NTk2MQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/275961?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/scruffian", + "html_url": "https://github.com/scruffian", + "followers_url": "https://api.github.com/users/scruffian/followers", + "following_url": "https://api.github.com/users/scruffian/following{/other_user}", + "gists_url": "https://api.github.com/users/scruffian/gists{/gist_id}", + "starred_url": "https://api.github.com/users/scruffian/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/scruffian/subscriptions", + "organizations_url": "https://api.github.com/users/scruffian/orgs", + "repos_url": "https://api.github.com/users/scruffian/repos", + "events_url": "https://api.github.com/users/scruffian/events{/privacy}", + "received_events_url": "https://api.github.com/users/scruffian/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 11, + "created_at": "2023-09-19T15:01:58Z", + "updated_at": "2023-10-04T09:37:57Z", + "closed_at": "2023-10-03T20:13:49Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54609", + "html_url": "https://github.com/WordPress/gutenberg/pull/54609", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54609.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54609.patch", + "merged_at": "2023-10-03T20:13:49Z" + }, + "body": "\r\n\r\n## What?\r\nAdd template replace flow to template inspector - fixes https://github.com/WordPress/gutenberg/issues/54562\r\n\r\n## Why?\r\nTwenty Twenty-Four is exploring adding alternate template types for the home, index, single and page templates. While the effort in https://github.com/WordPress/gutenberg/pull/51477 brings alternate template selection to pages, templates still do not have this capability.\r\n\r\nThere's currently not a method for someone to swap a template directly with another templateType.\r\n\r\n## How?\r\nAdd a new ReplaceTemplateButton component which opens a modal of available templates and lets a user pick the correct on.\r\n\r\n## Testing Instructions\r\n1. Open the Site Editor and go to the template inspector.\r\n2. You should see a button that allows you to replace your current template\r\n3. This button should open a modal allowing you to select a different template\r\n4. When you select a different template, the contents of your old template should be replace with the one you selected and the entity should be dirty.\r\n\r\n## Screenshots or screencast \r\n\r\n\r\n\r\nhttps://github.com/WordPress/gutenberg/assets/107534/391a3c24-4b5d-4754-b51b-4c99851097b2\r\n\r\n\r\n\r\n\r\nThis work is heavily based on https://github.com/WordPress/gutenberg/pull/51477", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54609/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54609/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54606", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54606/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54606/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54606/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54606", + "id": 1903085418, + "node_id": "PR_kwDOBNHdeM5arv4p", + "number": 54606, + "title": "Replace turbo-combine-reducers with combineReducers from Redux", + "user": { + "login": "jsnajdr", + "id": 664258, + "node_id": "MDQ6VXNlcjY2NDI1OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/664258?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/jsnajdr", + "html_url": "https://github.com/jsnajdr", + "followers_url": "https://api.github.com/users/jsnajdr/followers", + "following_url": "https://api.github.com/users/jsnajdr/following{/other_user}", + "gists_url": "https://api.github.com/users/jsnajdr/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jsnajdr/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jsnajdr/subscriptions", + "organizations_url": "https://api.github.com/users/jsnajdr/orgs", + "repos_url": "https://api.github.com/users/jsnajdr/repos", + "events_url": "https://api.github.com/users/jsnajdr/events{/privacy}", + "received_events_url": "https://api.github.com/users/jsnajdr/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 937321166, + "node_id": "MDU6TGFiZWw5MzczMjExNjY=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Data", + "name": "[Package] Data", + "color": "ed2572", + "default": false, + "description": "/packages/data" + }, + { + "id": 2427431264, + "node_id": "MDU6TGFiZWwyNDI3NDMxMjY0", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Security", + "name": "[Type] Security", + "color": "dd6c0f", + "default": false, + "description": "Related to security concerns or efforts" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "jsnajdr", + "id": 664258, + "node_id": "MDQ6VXNlcjY2NDI1OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/664258?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/jsnajdr", + "html_url": "https://github.com/jsnajdr", + "followers_url": "https://api.github.com/users/jsnajdr/followers", + "following_url": "https://api.github.com/users/jsnajdr/following{/other_user}", + "gists_url": "https://api.github.com/users/jsnajdr/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jsnajdr/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jsnajdr/subscriptions", + "organizations_url": "https://api.github.com/users/jsnajdr/orgs", + "repos_url": "https://api.github.com/users/jsnajdr/repos", + "events_url": "https://api.github.com/users/jsnajdr/events{/privacy}", + "received_events_url": "https://api.github.com/users/jsnajdr/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "jsnajdr", + "id": 664258, + "node_id": "MDQ6VXNlcjY2NDI1OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/664258?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/jsnajdr", + "html_url": "https://github.com/jsnajdr", + "followers_url": "https://api.github.com/users/jsnajdr/followers", + "following_url": "https://api.github.com/users/jsnajdr/following{/other_user}", + "gists_url": "https://api.github.com/users/jsnajdr/gists{/gist_id}", + "starred_url": "https://api.github.com/users/jsnajdr/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/jsnajdr/subscriptions", + "organizations_url": "https://api.github.com/users/jsnajdr/orgs", + "repos_url": "https://api.github.com/users/jsnajdr/repos", + "events_url": "https://api.github.com/users/jsnajdr/events{/privacy}", + "received_events_url": "https://api.github.com/users/jsnajdr/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 5, + "created_at": "2023-09-19T14:10:19Z", + "updated_at": "2023-09-29T18:38:38Z", + "closed_at": "2023-09-29T18:38:10Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54606", + "html_url": "https://github.com/WordPress/gutenberg/pull/54606", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54606.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54606.patch", + "merged_at": "2023-09-29T18:38:09Z" + }, + "body": "This is still an experiment, I'm opening a PR mainly to get performance test results.\r\n\r\nThere are two major problems with `combineReducers` in Redux.\r\n\r\nFirst, it doesn't allow slice reducers to ever return `undefined` state. `undefined` means uninitialized and every reducer is supposed to return an \"initialized\" inital state when `undefined` state is passed. We have many reducers that use `undefined`, and this PR has to modify them to use `null` instead. Otherwise, `combineReducers` will throw an exception and the app will crash. The prohibition on `undefined` will be a breaking change that we probably can't afford to do.\r\n\r\nSecond, it logs a warning when the combined reducer function is called with a state that contains unknown keys, with no reducer for them. For example, consider combining `foo` and `bar` reducers with `combineReducers( { foo, bar } )`. Then, when you pass an object with shape `{ foo, bar, baz }` as `state`, `combineReducers` doesn't like the `baz` field, because there is no sub-reducer to pass it to. The warning is:\r\n```\r\nUnexpected key \"baz\" found in preloadedState argument passed to createStore.\r\nExpected to find one of the known reducer keys instead: \"foo\", \"bar\".\r\nUnexpected keys will be ignored.\r\n```\r\n\r\nThe `core/blocks` store very often uses an enhancer pattern that leads to these \"unexpected key\" warnings:\r\n```js\r\nfunction withIgnoredBlockChange( reducer ) {\r\n return ( state, action ) => {\r\n const nextState = reducer( state, action );\r\n if ( nextState !== state ) {\r\n nextState.isIgnoredChange = action.type === 'RECEIVE_BLOCKS';\r\n }\r\n return nextState;\r\n };\r\n}\r\n```\r\nThis enhancer calls the inner reducer and then adds the `isIgnoredChange` field to the existing ones. If the inner reducer is a result of `combineReducers`, it will complain about the unknown key. Although everything works, there's nothing really wrong with this pattern.\r\n\r\nFor these two reasons, we'll probably have to write our own version of `combineReducers`.\r\n\r\nFixes #42513.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54606/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54606/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54597", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54597/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54597/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54597/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54597", + "id": 1902793171, + "node_id": "PR_kwDOBNHdeM5aqwIe", + "number": 54597, + "title": "Move dependencies to the right place", + "user": { + "login": "scruffian", + "id": 275961, + "node_id": "MDQ6VXNlcjI3NTk2MQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/275961?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/scruffian", + "html_url": "https://github.com/scruffian", + "followers_url": "https://api.github.com/users/scruffian/followers", + "following_url": "https://api.github.com/users/scruffian/following{/other_user}", + "gists_url": "https://api.github.com/users/scruffian/gists{/gist_id}", + "starred_url": "https://api.github.com/users/scruffian/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/scruffian/subscriptions", + "organizations_url": "https://api.github.com/users/scruffian/orgs", + "repos_url": "https://api.github.com/users/scruffian/repos", + "events_url": "https://api.github.com/users/scruffian/events{/privacy}", + "received_events_url": "https://api.github.com/users/scruffian/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", + "default": false, + "description": "Issues or PRs that relate to code quality" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "scruffian", + "id": 275961, + "node_id": "MDQ6VXNlcjI3NTk2MQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/275961?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/scruffian", + "html_url": "https://github.com/scruffian", + "followers_url": "https://api.github.com/users/scruffian/followers", + "following_url": "https://api.github.com/users/scruffian/following{/other_user}", + "gists_url": "https://api.github.com/users/scruffian/gists{/gist_id}", + "starred_url": "https://api.github.com/users/scruffian/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/scruffian/subscriptions", + "organizations_url": "https://api.github.com/users/scruffian/orgs", + "repos_url": "https://api.github.com/users/scruffian/repos", + "events_url": "https://api.github.com/users/scruffian/events{/privacy}", + "received_events_url": "https://api.github.com/users/scruffian/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "scruffian", + "id": 275961, + "node_id": "MDQ6VXNlcjI3NTk2MQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/275961?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/scruffian", + "html_url": "https://github.com/scruffian", + "followers_url": "https://api.github.com/users/scruffian/followers", + "following_url": "https://api.github.com/users/scruffian/following{/other_user}", + "gists_url": "https://api.github.com/users/scruffian/gists{/gist_id}", + "starred_url": "https://api.github.com/users/scruffian/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/scruffian/subscriptions", + "organizations_url": "https://api.github.com/users/scruffian/orgs", + "repos_url": "https://api.github.com/users/scruffian/repos", + "events_url": "https://api.github.com/users/scruffian/events{/privacy}", + "received_events_url": "https://api.github.com/users/scruffian/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-19T11:46:09Z", + "updated_at": "2023-09-26T13:00:55Z", + "closed_at": "2023-09-26T13:00:24Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54597", + "html_url": "https://github.com/WordPress/gutenberg/pull/54597", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54597.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54597.patch", + "merged_at": "2023-09-26T13:00:24Z" + }, + "body": "\r\n\r\n## What?\r\nMoving the dependency declarations to the right place.\r\n\r\n## Why?\r\nCode quality\r\n\r\n## How?\r\nRefactor\r\n\r\n## Testing Instructions\r\nEverything should work as before.\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54597/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54597/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54573", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54573/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54573/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54573/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54573", + "id": 1901569913, + "node_id": "PR_kwDOBNHdeM5amm8F", + "number": 54573, + "title": "Remove unused components from `ui/`", + "user": { + "login": "brookewp", + "id": 35543432, + "node_id": "MDQ6VXNlcjM1NTQzNDMy", + "avatar_url": "https://avatars.githubusercontent.com/u/35543432?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/brookewp", + "html_url": "https://github.com/brookewp", + "followers_url": "https://api.github.com/users/brookewp/followers", + "following_url": "https://api.github.com/users/brookewp/following{/other_user}", + "gists_url": "https://api.github.com/users/brookewp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/brookewp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/brookewp/subscriptions", + "organizations_url": "https://api.github.com/users/brookewp/orgs", + "repos_url": "https://api.github.com/users/brookewp/repos", + "events_url": "https://api.github.com/users/brookewp/events{/privacy}", + "received_events_url": "https://api.github.com/users/brookewp/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "brookewp", + "id": 35543432, + "node_id": "MDQ6VXNlcjM1NTQzNDMy", + "avatar_url": "https://avatars.githubusercontent.com/u/35543432?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/brookewp", + "html_url": "https://github.com/brookewp", + "followers_url": "https://api.github.com/users/brookewp/followers", + "following_url": "https://api.github.com/users/brookewp/following{/other_user}", + "gists_url": "https://api.github.com/users/brookewp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/brookewp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/brookewp/subscriptions", + "organizations_url": "https://api.github.com/users/brookewp/orgs", + "repos_url": "https://api.github.com/users/brookewp/repos", + "events_url": "https://api.github.com/users/brookewp/events{/privacy}", + "received_events_url": "https://api.github.com/users/brookewp/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "brookewp", + "id": 35543432, + "node_id": "MDQ6VXNlcjM1NTQzNDMy", + "avatar_url": "https://avatars.githubusercontent.com/u/35543432?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/brookewp", + "html_url": "https://github.com/brookewp", + "followers_url": "https://api.github.com/users/brookewp/followers", + "following_url": "https://api.github.com/users/brookewp/following{/other_user}", + "gists_url": "https://api.github.com/users/brookewp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/brookewp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/brookewp/subscriptions", + "organizations_url": "https://api.github.com/users/brookewp/orgs", + "repos_url": "https://api.github.com/users/brookewp/repos", + "events_url": "https://api.github.com/users/brookewp/events{/privacy}", + "received_events_url": "https://api.github.com/users/brookewp/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-18T19:04:04Z", + "updated_at": "2023-09-21T20:06:53Z", + "closed_at": "2023-09-21T20:06:19Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54573", + "html_url": "https://github.com/WordPress/gutenberg/pull/54573", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54573.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54573.patch", + "merged_at": "2023-09-21T20:06:19Z" + }, + "body": "## What?\r\n\r\n\r\nThis expands on the work started in #52953 to remove unused components from the `packages/components/src/ui` folder. \r\n\r\n## Why?\r\n\r\n\r\nThese components (`ui/tooltip` and `ui/shortcut`) are not publicly exported and are relatively unused. There was one internal use of `ui/tooltip`, which is replaced in this PR. \r\n\r\n## How?\r\n\r\n\r\nBy replacing the only internal usage of `ui/tooltip` with our Tooltip component and deleting the unused components. \r\n\r\n## Testing Instructions\r\n\r\n`npm run build` without errors \r\n\r\n### Colorpicker: \r\n\r\n1. `npm run storybook:dev` \r\n2. Navigate to the `ColorPicker` component \r\n3. Ensure the tooltip for the copy button appears* and behaves the same as trunk\r\n\r\n*The placement will look off in Storybook unless the sidebar is hidden (key-down `S` to hide) or the story is opened in isolation. The tooltip background is also black instead of grey, but that reflects a design change made earlier: #50792", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54573/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54573/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54553", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54553/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54553/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54553/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54553", + "id": 1900781960, + "node_id": "PR_kwDOBNHdeM5aj6lU", + "number": 54553, + "title": "Remove base url from link control search results ", + "user": { + "login": "getdave", + "id": 444434, + "node_id": "MDQ6VXNlcjQ0NDQzNA==", + "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/getdave", + "html_url": "https://github.com/getdave", + "followers_url": "https://api.github.com/users/getdave/followers", + "following_url": "https://api.github.com/users/getdave/following{/other_user}", + "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", + "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", + "organizations_url": "https://api.github.com/users/getdave/orgs", + "repos_url": "https://api.github.com/users/getdave/repos", + "events_url": "https://api.github.com/users/getdave/events{/privacy}", + "received_events_url": "https://api.github.com/users/getdave/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 1838782557, + "node_id": "MDU6TGFiZWwxODM4NzgyNTU3", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Link%20Editing", + "name": "[Feature] Link Editing", + "color": "fbca04", + "default": false, + "description": "Link components (LinkControl, URLInput) and integrations (RichText link formatting)" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "getdave", + "id": 444434, + "node_id": "MDQ6VXNlcjQ0NDQzNA==", + "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/getdave", + "html_url": "https://github.com/getdave", + "followers_url": "https://api.github.com/users/getdave/followers", + "following_url": "https://api.github.com/users/getdave/following{/other_user}", + "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", + "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", + "organizations_url": "https://api.github.com/users/getdave/orgs", + "repos_url": "https://api.github.com/users/getdave/repos", + "events_url": "https://api.github.com/users/getdave/events{/privacy}", + "received_events_url": "https://api.github.com/users/getdave/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "getdave", + "id": 444434, + "node_id": "MDQ6VXNlcjQ0NDQzNA==", + "avatar_url": "https://avatars.githubusercontent.com/u/444434?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/getdave", + "html_url": "https://github.com/getdave", + "followers_url": "https://api.github.com/users/getdave/followers", + "following_url": "https://api.github.com/users/getdave/following{/other_user}", + "gists_url": "https://api.github.com/users/getdave/gists{/gist_id}", + "starred_url": "https://api.github.com/users/getdave/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/getdave/subscriptions", + "organizations_url": "https://api.github.com/users/getdave/orgs", + "repos_url": "https://api.github.com/users/getdave/repos", + "events_url": "https://api.github.com/users/getdave/events{/privacy}", + "received_events_url": "https://api.github.com/users/getdave/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 14, + "created_at": "2023-09-18T12:00:19Z", + "updated_at": "2023-10-02T09:39:24Z", + "closed_at": "2023-09-21T10:28:41Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54553", + "html_url": "https://github.com/WordPress/gutenberg/pull/54553", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54553.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54553.patch", + "merged_at": "2023-09-21T10:28:41Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nRemoves the site's `baseURL` (if available) from the Link Control search results:\r\n\r\nCloses https://github.com/WordPress/gutenberg/issues/52572\r\n\r\n## Why?\r\n\r\n\r\nPolish to limit UI noise. See Issue.\r\n\r\n## How?\r\n\r\n\r\nDisplay only the _path_ of the search result URL if the type is anything other than a manually entered URL.\r\n\r\nProps to @Mamaduka for this suggested approach.\r\n\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n- Repeat the below in Post, Widget and Site editors\r\n- Make sure you have some Posts and Pages\r\n- Open Editor\r\n- Add text block.\r\n- Create a link and search for one of the Pages/Posts\r\n- See results with the site's base URL stripped off (i.e. `localhost:8888/sample-page` becomes `/sample-page/`).\r\n- Verify that manually entering a URL such as `https://wordpress.org/hello-world` does _not_ strip the site URL.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n\r\n\"Screenshot\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54553/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54553/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54516", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54516/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54516/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54516/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54516", + "id": 1899016673, + "node_id": "PR_kwDOBNHdeM5aeOUd", + "number": 54516, + "title": "Docs: Remove the Full Site Editing doc.", + "user": { + "login": "ndiego", + "id": 4832319, + "node_id": "MDQ6VXNlcjQ4MzIzMTk=", + "avatar_url": "https://avatars.githubusercontent.com/u/4832319?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ndiego", + "html_url": "https://github.com/ndiego", + "followers_url": "https://api.github.com/users/ndiego/followers", + "following_url": "https://api.github.com/users/ndiego/following{/other_user}", + "gists_url": "https://api.github.com/users/ndiego/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ndiego/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ndiego/subscriptions", + "organizations_url": "https://api.github.com/users/ndiego/orgs", + "repos_url": "https://api.github.com/users/ndiego/repos", + "events_url": "https://api.github.com/users/ndiego/events{/privacy}", + "received_events_url": "https://api.github.com/users/ndiego/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 567484057, + "node_id": "MDU6TGFiZWw1Njc0ODQwNTc=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Developer%20Documentation", + "name": "[Type] Developer Documentation", + "color": "bfd4f2", + "default": false, + "description": "Documentation for developers" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "ndiego", + "id": 4832319, + "node_id": "MDQ6VXNlcjQ4MzIzMTk=", + "avatar_url": "https://avatars.githubusercontent.com/u/4832319?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ndiego", + "html_url": "https://github.com/ndiego", + "followers_url": "https://api.github.com/users/ndiego/followers", + "following_url": "https://api.github.com/users/ndiego/following{/other_user}", + "gists_url": "https://api.github.com/users/ndiego/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ndiego/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ndiego/subscriptions", + "organizations_url": "https://api.github.com/users/ndiego/orgs", + "repos_url": "https://api.github.com/users/ndiego/repos", + "events_url": "https://api.github.com/users/ndiego/events{/privacy}", + "received_events_url": "https://api.github.com/users/ndiego/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "ndiego", + "id": 4832319, + "node_id": "MDQ6VXNlcjQ4MzIzMTk=", + "avatar_url": "https://avatars.githubusercontent.com/u/4832319?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ndiego", + "html_url": "https://github.com/ndiego", + "followers_url": "https://api.github.com/users/ndiego/followers", + "following_url": "https://api.github.com/users/ndiego/following{/other_user}", + "gists_url": "https://api.github.com/users/ndiego/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ndiego/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ndiego/subscriptions", + "organizations_url": "https://api.github.com/users/ndiego/orgs", + "repos_url": "https://api.github.com/users/ndiego/repos", + "events_url": "https://api.github.com/users/ndiego/events{/privacy}", + "received_events_url": "https://api.github.com/users/ndiego/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 0, + "created_at": "2023-09-15T20:06:54Z", + "updated_at": "2023-09-22T15:51:13Z", + "closed_at": "2023-09-22T15:50:49Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54516", + "html_url": "https://github.com/WordPress/gutenberg/pull/54516", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54516.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54516.patch", + "merged_at": "2023-09-22T15:50:49Z" + }, + "body": "\r\n\r\n## What?\r\nThis PR removes the [Full Site Editing doc](https://developer.wordpress.org/block-editor/getting-started/full-site-editing/) from the Block Editor Handbook. \r\n\r\n## Why?\r\nThis doc is extremely out-of-date, and the term \"Full Site Editing\" is [being loosely deprecated](https://make.wordpress.org/updates/2022/11/04/site-editor-a-more-user-friendly-name/) now that the Site Editor has evolved and Phase 2 is complete. Furthermore, the FSE Outreach Program is [also being phased out](https://make.wordpress.org/core/2023/09/07/evolving-the-fse-outreach-program/). \r\n\r\nWith the [other improvements](https://github.com/WordPress/gutenberg/issues/54124) being made to the Getting Started section of the BEH, it makes sense to remove this page finally.\r\n\r\n## How?\r\nRemove the doc and update the manifest and toc.\r\n\r\nAlso, changes made to the `/docs` here on GitHub are \"non-destructive\", meaning that if a page is removed here, it still needs to be manually removed from the site. Therefore, once this PR is merged, a PR will be created in https://github.com/WordPress/wporg-mu-plugins/ to handle redirects. Once that is in place, the [Full Site Editing doc](https://developer.wordpress.org/block-editor/getting-started/full-site-editing/) will then be manually removed from https://developer.wordpress.org/block-editor\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54516/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54516/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54505", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54505/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54505/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54505/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54505", + "id": 1898557392, + "node_id": "PR_kwDOBNHdeM5acqap", + "number": 54505, + "title": "Footnotes: avoid regexes in entity provider", + "user": { + "login": "ellatrix", + "id": 4710635, + "node_id": "MDQ6VXNlcjQ3MTA2MzU=", + "avatar_url": "https://avatars.githubusercontent.com/u/4710635?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ellatrix", + "html_url": "https://github.com/ellatrix", + "followers_url": "https://api.github.com/users/ellatrix/followers", + "following_url": "https://api.github.com/users/ellatrix/following{/other_user}", + "gists_url": "https://api.github.com/users/ellatrix/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ellatrix/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ellatrix/subscriptions", + "organizations_url": "https://api.github.com/users/ellatrix/orgs", + "repos_url": "https://api.github.com/users/ellatrix/repos", + "events_url": "https://api.github.com/users/ellatrix/events{/privacy}", + "received_events_url": "https://api.github.com/users/ellatrix/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 930001208, + "node_id": "MDU6TGFiZWw5MzAwMDEyMDg=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Code%20Quality", + "name": "[Type] Code Quality", + "color": "e5e04b", + "default": false, + "description": "Issues or PRs that relate to code quality" + }, + { + "id": 5654261232, + "node_id": "LA_kwDOBNHdeM8AAAABUQUt8A", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20Footnotes", + "name": "[Block] Footnotes", + "color": "6767e5", + "default": false, + "description": "Affects the Footnotes Block" + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-15T14:37:16Z", + "updated_at": "2023-09-20T13:32:27Z", + "closed_at": "2023-09-20T13:31:59Z", + "author_association": "MEMBER", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54505", + "html_url": "https://github.com/WordPress/gutenberg/pull/54505", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54505.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54505.patch", + "merged_at": "2023-09-20T13:31:59Z" + }, + "body": "\r\n\r\n## What?\r\n\r\nThis can be done better with rich text values.\r\n\r\nWe need to check performance but it might not be too bad with the block caching. I did leave the `indexOf( 'data-fn' )` checks in place though, so it should be the same if no footnotes are present.\r\n\r\nIdeally this value would be in the store and we wouldn't have to parse and serialise...\r\n\r\n## Why?\r\n\r\nRegexes are fragile.\r\n\r\n## How?\r\n\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54505/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54505/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54494", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54494/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54494/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54494/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54494", + "id": 1898041643, + "node_id": "PR_kwDOBNHdeM5aa59I", + "number": 54494, + "title": "Update the default JSX pragma to React instead of @wordpress/element", + "user": { + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 596512821, + "node_id": "MDU6TGFiZWw1OTY1MTI4MjE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Build%20Tooling", + "name": "[Type] Build Tooling", + "color": "111111", + "default": false, + "description": "Issues or PRs related to build tooling" + }, + { + "id": 1293579839, + "node_id": "MDU6TGFiZWwxMjkzNTc5ODM5", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20Dev%20Note", + "name": "Needs Dev Note", + "color": "b910f2", + "default": false, + "description": "Requires a developer note for a major WordPress release cycle" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "youknowriad", + "id": 272444, + "node_id": "MDQ6VXNlcjI3MjQ0NA==", + "avatar_url": "https://avatars.githubusercontent.com/u/272444?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/youknowriad", + "html_url": "https://github.com/youknowriad", + "followers_url": "https://api.github.com/users/youknowriad/followers", + "following_url": "https://api.github.com/users/youknowriad/following{/other_user}", + "gists_url": "https://api.github.com/users/youknowriad/gists{/gist_id}", + "starred_url": "https://api.github.com/users/youknowriad/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/youknowriad/subscriptions", + "organizations_url": "https://api.github.com/users/youknowriad/orgs", + "repos_url": "https://api.github.com/users/youknowriad/repos", + "events_url": "https://api.github.com/users/youknowriad/events{/privacy}", + "received_events_url": "https://api.github.com/users/youknowriad/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 10, + "created_at": "2023-09-15T09:19:37Z", + "updated_at": "2023-09-28T11:56:22Z", + "closed_at": "2023-09-28T09:46:18Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54494", + "html_url": "https://github.com/WordPress/gutenberg/pull/54494", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54494.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54494.patch", + "merged_at": "2023-09-28T09:46:18Z" + }, + "body": "See #54074 for the reasoning/discussions\r\n\r\nThis PR implements the change proposed in #54074 to switch the default JSX pragma from @wordpress/element to React. In addition to the current changes, we may want to update our documentation and the files where we currently import `@wordpress/element` and might not need to. I decided to not update these in the same PR to ensure/clarify that with this change, everything continues to work exactly the same without any change to the code base. Also updating documentation and code will quickly result in conflicts unless we merge those PRs quickly, so I'm leaving them separate until the decision is made to merge the current PR.\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54494/reactions", + "total_count": 2, + "+1": 2, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54494/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54489", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54489/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54489/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54489/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54489", + "id": 1897751694, + "node_id": "PR_kwDOBNHdeM5aZ7i-", + "number": 54489, + "title": "Background image block support: Add tests, adjust injection logic slightly", + "user": { + "login": "andrewserong", + "id": 14988353, + "node_id": "MDQ6VXNlcjE0OTg4MzUz", + "avatar_url": "https://avatars.githubusercontent.com/u/14988353?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/andrewserong", + "html_url": "https://github.com/andrewserong", + "followers_url": "https://api.github.com/users/andrewserong/followers", + "following_url": "https://api.github.com/users/andrewserong/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewserong/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewserong/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewserong/subscriptions", + "organizations_url": "https://api.github.com/users/andrewserong/orgs", + "repos_url": "https://api.github.com/users/andrewserong/repos", + "events_url": "https://api.github.com/users/andrewserong/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewserong/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 1894493554, + "node_id": "MDU6TGFiZWwxODk0NDkzNTU0", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Feature]%20Design%20Tools", + "name": "[Feature] Design Tools", + "color": "fbca04", + "default": false, + "description": "Tools that impact the appearance of blocks both to expand the number of tools and improve the experi" + }, + { + "id": 3659584252, + "node_id": "LA_kwDOBNHdeM7aINL8", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Backport%20from%20WordPress%20Core", + "name": "Backport from WordPress Core", + "color": "6FCDF3", + "default": false, + "description": "Pull request that needs to be backported to the a Gutenberg release from WordPress Core" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "andrewserong", + "id": 14988353, + "node_id": "MDQ6VXNlcjE0OTg4MzUz", + "avatar_url": "https://avatars.githubusercontent.com/u/14988353?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/andrewserong", + "html_url": "https://github.com/andrewserong", + "followers_url": "https://api.github.com/users/andrewserong/followers", + "following_url": "https://api.github.com/users/andrewserong/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewserong/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewserong/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewserong/subscriptions", + "organizations_url": "https://api.github.com/users/andrewserong/orgs", + "repos_url": "https://api.github.com/users/andrewserong/repos", + "events_url": "https://api.github.com/users/andrewserong/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewserong/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "andrewserong", + "id": 14988353, + "node_id": "MDQ6VXNlcjE0OTg4MzUz", + "avatar_url": "https://avatars.githubusercontent.com/u/14988353?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/andrewserong", + "html_url": "https://github.com/andrewserong", + "followers_url": "https://api.github.com/users/andrewserong/followers", + "following_url": "https://api.github.com/users/andrewserong/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewserong/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewserong/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewserong/subscriptions", + "organizations_url": "https://api.github.com/users/andrewserong/orgs", + "repos_url": "https://api.github.com/users/andrewserong/repos", + "events_url": "https://api.github.com/users/andrewserong/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewserong/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 3, + "created_at": "2023-09-15T05:52:10Z", + "updated_at": "2023-09-25T23:55:59Z", + "closed_at": "2023-09-25T23:55:38Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54489", + "html_url": "https://github.com/WordPress/gutenberg/pull/54489", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54489.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54489.patch", + "merged_at": "2023-09-25T23:55:38Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nPart of: https://github.com/WordPress/gutenberg/issues/54336\r\n\r\nAdd PHP tests for the background image block support.\r\n\r\nAlso, adjust the style injection slightly, so that if the existing style attribute ends in a semi-colon, we still inject the newly created styles.\r\n\r\n## Why?\r\n\r\n\r\nWhile working on the backport for the background image block support over in https://github.com/WordPress/wordpress-develop/pull/5209, I added some tests, and noticed the logic for injecting the style tag needed adjusting slightly. While in Gutenberg, inline styles don't include a trailing semi-colon, I thought it'd be good to factor it in, just in case, for the future reliability of the support and interacting with other styles.\r\n\r\nAlso, it's good to add tests for features!\r\n\r\n## How?\r\n\r\n\r\n* Ensure that we append to the style attribute irrespective of whether or not a semi-colon already exists at the end of the current value.\r\n* Add PHP tests for the background image support to cover injecting when no style tag exists, when a style tag exists with a single rule in it, and when there are multiple rules with a trailing semi-colon. Also check that the background image will not be output if the block does not have support for it.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n1. Smoke test that the background image support still works as expected in the block editor (Add a Group block, add a background image to it, save the post, and view on the site frontend — then add some styles to the Group block, like text color, and repeat).\r\n2. Check that tests pass, or to run `npm run test:unit:php:base -- --filter WP_Block_Supports_Background_Test` locally to confirm.", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54489/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54489/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54473", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54473/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54473/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54473/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54473", + "id": 1897152368, + "node_id": "PR_kwDOBNHdeM5aX8MR", + "number": 54473, + "title": "Adding label/description to `BlockEditor/DuotoneControl`", + "user": { + "login": "andrewhayward", + "id": 159848, + "node_id": "MDQ6VXNlcjE1OTg0OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/159848?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/andrewhayward", + "html_url": "https://github.com/andrewhayward", + "followers_url": "https://api.github.com/users/andrewhayward/followers", + "following_url": "https://api.github.com/users/andrewhayward/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewhayward/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewhayward/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewhayward/subscriptions", + "organizations_url": "https://api.github.com/users/andrewhayward/orgs", + "repos_url": "https://api.github.com/users/andrewhayward/repos", + "events_url": "https://api.github.com/users/andrewhayward/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewhayward/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "andrewhayward", + "id": 159848, + "node_id": "MDQ6VXNlcjE1OTg0OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/159848?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/andrewhayward", + "html_url": "https://github.com/andrewhayward", + "followers_url": "https://api.github.com/users/andrewhayward/followers", + "following_url": "https://api.github.com/users/andrewhayward/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewhayward/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewhayward/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewhayward/subscriptions", + "organizations_url": "https://api.github.com/users/andrewhayward/orgs", + "repos_url": "https://api.github.com/users/andrewhayward/repos", + "events_url": "https://api.github.com/users/andrewhayward/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewhayward/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "andrewhayward", + "id": 159848, + "node_id": "MDQ6VXNlcjE1OTg0OA==", + "avatar_url": "https://avatars.githubusercontent.com/u/159848?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/andrewhayward", + "html_url": "https://github.com/andrewhayward", + "followers_url": "https://api.github.com/users/andrewhayward/followers", + "following_url": "https://api.github.com/users/andrewhayward/following{/other_user}", + "gists_url": "https://api.github.com/users/andrewhayward/gists{/gist_id}", + "starred_url": "https://api.github.com/users/andrewhayward/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/andrewhayward/subscriptions", + "organizations_url": "https://api.github.com/users/andrewhayward/orgs", + "repos_url": "https://api.github.com/users/andrewhayward/repos", + "events_url": "https://api.github.com/users/andrewhayward/events{/privacy}", + "received_events_url": "https://api.github.com/users/andrewhayward/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 2, + "created_at": "2023-09-14T19:11:03Z", + "updated_at": "2023-09-28T09:55:53Z", + "closed_at": "2023-09-28T09:55:23Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54473", + "html_url": "https://github.com/WordPress/gutenberg/pull/54473", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54473.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54473.patch", + "merged_at": "2023-09-28T09:55:23Z" + }, + "body": "## What?\r\nThis PR ensures that the main duotone picker found in the image duotone filter panel has an identifying label and relevant description.\r\n\r\n\"Screenshot\r\n\r\n## Why?\r\nAs per #54055, every `DuotonePicker` needs to have an appropriate contextual label.\r\n\r\n## How?\r\nAn ID is generated and assigned to the node containing the popup description. This is linked to the `DuotonePicker` with an `aria-describedby` props. Additionally, an `aria-label` is applied to the `DuotonePicker` matching the tooltip display value.\r\n\r\nThe `DuotonePicker` component is updated to accept the additional `aria-describedby` prop. (And, as a bonus, the 'unset' option gets a label.)\r\n\r\n## Testing Instructions\r\n* Add an image in the editor\r\n* Open the 'Apply duotone filter' popup\r\n* Confirm that the duotone picker has an `aria-describedby` attribute, and that this points to the description\r\n* Confirm that the duotone picker has an `aria-label` attribute\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54473/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54473/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54471", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54471/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54471/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54471/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54471", + "id": 1897032936, + "node_id": "PR_kwDOBNHdeM5aXiZR", + "number": 54471, + "title": "Modal: add `contentWidth` prop to support a selection of preset modal sizes", + "user": { + "login": "chad1008", + "id": 13856531, + "node_id": "MDQ6VXNlcjEzODU2NTMx", + "avatar_url": "https://avatars.githubusercontent.com/u/13856531?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/chad1008", + "html_url": "https://github.com/chad1008", + "followers_url": "https://api.github.com/users/chad1008/followers", + "following_url": "https://api.github.com/users/chad1008/following{/other_user}", + "gists_url": "https://api.github.com/users/chad1008/gists{/gist_id}", + "starred_url": "https://api.github.com/users/chad1008/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/chad1008/subscriptions", + "organizations_url": "https://api.github.com/users/chad1008/orgs", + "repos_url": "https://api.github.com/users/chad1008/repos", + "events_url": "https://api.github.com/users/chad1008/events{/privacy}", + "received_events_url": "https://api.github.com/users/chad1008/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680825, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjU=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Enhancement", + "name": "[Type] Enhancement", + "color": "FEF2C0", + "default": false, + "description": "A suggestion for improvement." + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "chad1008", + "id": 13856531, + "node_id": "MDQ6VXNlcjEzODU2NTMx", + "avatar_url": "https://avatars.githubusercontent.com/u/13856531?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/chad1008", + "html_url": "https://github.com/chad1008", + "followers_url": "https://api.github.com/users/chad1008/followers", + "following_url": "https://api.github.com/users/chad1008/following{/other_user}", + "gists_url": "https://api.github.com/users/chad1008/gists{/gist_id}", + "starred_url": "https://api.github.com/users/chad1008/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/chad1008/subscriptions", + "organizations_url": "https://api.github.com/users/chad1008/orgs", + "repos_url": "https://api.github.com/users/chad1008/repos", + "events_url": "https://api.github.com/users/chad1008/events{/privacy}", + "received_events_url": "https://api.github.com/users/chad1008/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "chad1008", + "id": 13856531, + "node_id": "MDQ6VXNlcjEzODU2NTMx", + "avatar_url": "https://avatars.githubusercontent.com/u/13856531?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/chad1008", + "html_url": "https://github.com/chad1008", + "followers_url": "https://api.github.com/users/chad1008/followers", + "following_url": "https://api.github.com/users/chad1008/following{/other_user}", + "gists_url": "https://api.github.com/users/chad1008/gists{/gist_id}", + "starred_url": "https://api.github.com/users/chad1008/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/chad1008/subscriptions", + "organizations_url": "https://api.github.com/users/chad1008/orgs", + "repos_url": "https://api.github.com/users/chad1008/repos", + "events_url": "https://api.github.com/users/chad1008/events{/privacy}", + "received_events_url": "https://api.github.com/users/chad1008/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 18, + "created_at": "2023-09-14T17:43:21Z", + "updated_at": "2023-09-29T20:38:24Z", + "closed_at": "2023-09-29T20:37:59Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54471", + "html_url": "https://github.com/WordPress/gutenberg/pull/54471", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54471.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54471.patch", + "merged_at": "2023-09-29T20:37:59Z" + }, + "body": "\r\n\r\n## What?\r\nImplements a new prop for `Modal` that constrains the content width to one of a selection of preset sizes.\r\n\r\n## Why?\r\nConsumers were finding they often needed to manually set a max width on the child elements they provided to `Modal` to prevent them from pushing `Modal`'s size to the full with of the viewport.\r\n\r\n## How?\r\nThe optional new prop accepts values of `small`, `medium`, and `large`. If provided, the width of the `Modal`'s contents will be limited to `300px`, `600px`, or `900px`, respectively. (Note: these are just my initial values, and can most certainly be changed as needed when this PR is reviewed).\r\n\r\nThe value provided to the prop is used to add an additional class name to the relevant DOM element, but this class is only added if `isFullscreen` is `false`, so full screen modals will not be affected. Further, the styles implementing this change are limited to larger screens, so the automatically full screen `Modal` rendering on mobile devices should not be affected either.\r\n\r\n\r\n- [ ] TODO: rebase and refactor changes in #54518 to use the new APIs proposed in this PR\r\n---\r\n\r\ndropping a ping for some folks who may want to weigh in on any design considerations for this one: @jordesign @koster @SaxonF\r\n\r\n## Testing Instructions\r\n`npm run storybook:dev`\r\n\r\n- Open `Modal`'s new `With contentWidth: small` story and test the `contentWidth` control.\r\n- Confirm that both `isFullScreen` behaves as expected with the new prop applied\r\n- Confirm smaller viewports still render the modal in full screen, regardless of the new prop's value\r\n\r\n### Testing Instructions for Keyboard\r\nn/a\r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54471/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54471/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54464", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54464/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54464/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54464/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54464", + "id": 1896554647, + "node_id": "PR_kwDOBNHdeM5aV66-", + "number": 54464, + "title": "Bump shivammathur/setup-php from 2.25.5 to 2.26.0", + "user": { + "login": "dependabot[bot]", + "id": 49699333, + "node_id": "MDM6Qm90NDk2OTkzMzM=", + "avatar_url": "https://avatars.githubusercontent.com/in/29110?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/dependabot%5Bbot%5D", + "html_url": "https://github.com/apps/dependabot", + "followers_url": "https://api.github.com/users/dependabot%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/dependabot%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/dependabot%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/dependabot%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/dependabot%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/dependabot%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/dependabot%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/dependabot%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/dependabot%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "labels": [ + { + "id": 596512821, + "node_id": "MDU6TGFiZWw1OTY1MTI4MjE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Build%20Tooling", + "name": "[Type] Build Tooling", + "color": "111111", + "default": false, + "description": "Issues or PRs related to build tooling" + }, + { + "id": 4662565393, + "node_id": "LA_kwDOBNHdeM8AAAABFekaEQ", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/GitHub%20Actions", + "name": "GitHub Actions", + "color": "000000", + "default": false, + "description": "Pull requests that update GitHub Actions code" + } + ], + "state": "closed", + "locked": false, + "assignee": null, + "assignees": [], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 1, + "created_at": "2023-09-14T13:14:57Z", + "updated_at": "2023-09-22T00:17:47Z", + "closed_at": "2023-09-22T00:17:15Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54464", + "html_url": "https://github.com/WordPress/gutenberg/pull/54464", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54464.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54464.patch", + "merged_at": "2023-09-22T00:17:15Z" + }, + "body": "Bumps [shivammathur/setup-php](https://github.com/shivammathur/setup-php) from 2.25.5 to 2.26.0.\n
\nRelease notes\n

Sourced from shivammathur/setup-php's releases.

\n
\n

2.26.0

\n

Changelog

\n

Microsoft SQL Server extensions. (#758, #766)

\n

The latest supported version of sqlsrv and pdo_sqlsrv for the PHP version will be installed.\nAlso, on Windows, these extensions will be installed from microsoft/msphpsql GitHub releases and will fallback to pecl.

\n
- name: Setup PHP\n  uses: shivammathur/setup-php@v2\n  with:\n    php-version: '8.2'\n    extensions: sqlsrv, pdo_sqlsrv\n
\n

PHP 8.4 Support (#762)

\n

Added support for PHP 8.4.0-dev from the master branch of php/php-src for all supported OS.\nNote: PHP 8.3.0-dev is now built from the new PHP-8.3 branch.

\n
- name: Setup PHP\n  uses: shivammathur/setup-php@v2\n  with:\n    php-version: '8.4'\n
\n

Fixes

\n

Blackfire Player

\n

Resolved issues affecting the blackfire-player on Linux and macOS. It now installs the uuid extension that is required for the tool.\nDropped support for it on Windows as uuid extension is not available for the OS.

\n
- name: Setup PHP\n  uses: shivammathur/setup-php@v2\n  with:\n    tools: blackfire-player\n
\n

Updates

\n

Update actions/checkout

\n

Updated the use of actions/checkout to v4 in the documentation and workflows.

\n
- name: Checkout\n  uses: actions/checkout@v4\n
\n

Update Node.js Version

\n

Note: Node.js 16 reached End-of-Life on 2023-09-11 (Ref).

\n

Updated action.yml to use the node20 binary. If you use setup-php on a self-hosted runner, please make sure it is v2.308.0 or newer to use this release or the major version tag v2.

\n

Node.js Dependencies

\n\n
\n

... (truncated)

\n
\n
\nCommits\n
    \n
  • 7fdd3ec Fix blackfire-player on Linux and macOS
  • \n
  • 0de5aa9 Bump version to 2.26.0
  • \n
  • a6e0b14 Bump Node.js dependencies
  • \n
  • 5d259c6 Bump node version to 20 in action.yml
  • \n
  • 6207829 Update use of actions/checkout to v4
  • \n
  • 319feb8 Add support to install sqlsrv and pdo_sqlsrv from GitHub releases
  • \n
  • 661ad4b Fix enabling latest pecl extensions
  • \n
  • 04c15e2 Remove hardcoded latest version for sqlsrv and pdo_sqlsrv
  • \n
  • 5aa416d Merge pull request #766 from GrahamCampbell/patch-1
  • \n
  • a9a661c Use sqlsvr 5.11.1 on PHP 8
  • \n
  • Additional commits viewable in compare view
  • \n
\n
\n
\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=shivammathur/setup-php&package-manager=github_actions&previous-version=2.25.5&new-version=2.26.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n
\nDependabot commands and options\n
\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n
", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54464/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54464/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54437", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54437/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54437/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54437/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54437", + "id": 1894957653, + "node_id": "PR_kwDOBNHdeM5aQhZz", + "number": 54437, + "title": "[RNMobile] Upgrade `compileSdkVersion` to 34 (Android)", + "user": { + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 596512821, + "node_id": "MDU6TGFiZWw1OTY1MTI4MjE=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Build%20Tooling", + "name": "[Type] Build Tooling", + "color": "111111", + "default": false, + "description": "Issues or PRs related to build tooling" + }, + { + "id": 982506020, + "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", + "name": "Mobile App - i.e. Android or iOS", + "color": "a3ef7a", + "default": false, + "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + }, + { + "id": 3639254262, + "node_id": "LA_kwDOBNHdeM7Y6pz2", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20Automation", + "name": "Mobile App - Automation", + "color": "669206", + "default": false, + "description": "Label used to initiate Mobile App PR Automation" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 1, + "created_at": "2023-09-13T17:26:56Z", + "updated_at": "2023-09-25T12:06:57Z", + "closed_at": "2023-09-25T12:06:29Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54437", + "html_url": "https://github.com/WordPress/gutenberg/pull/54437", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54437.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54437.patch", + "merged_at": "2023-09-25T12:06:29Z" + }, + "body": "Related PRs:\r\n* https://github.com/wordpress-mobile/gutenberg-mobile/pull/6196\r\n* https://github.com/wordpress-mobile/WordPress-Android/pull/19182\r\n\r\n\r\n\r\n## What?\r\n\r\n\r\nUpgrades the `compileSdkVersion` to 34 as part of the support for Android 14.\r\n\r\n## Why?\r\n\r\n\r\nCloses https://github.com/wordpress-mobile/gutenberg-mobile/issues/6142.\r\n\r\n## How?\r\n\r\n\r\nUpdates the value in all references of `compileSdkVersion`:\r\n- `react-native-aztec`\r\n- `react-native-bridge`\r\n- `react-native-editor`\r\n\r\nBump `AztecEditor-Android` version to `1.8.0`, which also uses version 34 of `compileSdkVersion`.\r\n\r\n**⚠️ NOTE:** In past PRs where we upgraded Android ([example](https://github.com/WordPress/gutenberg/pull/50731)), we also updated the React Native third-party libraries:\r\n- Libraries published via [react-native-libraries-publisher](https://github.com/wordpress-mobile/react-native-libraries-publisher/blob/2746ac55f78dd540efb2fa8089f1e05a2f7899a0/package.json#L3-L12)\r\n- [react-native-slider](https://github.com/wordpress-mobile/react-native-slider)\r\n- [react-native-video](https://github.com/wordpress-mobile/react-native-video)\r\n\r\nI assume that since we are only updating the `compileSdkVersion` and not `targetSdkVersion`, it's safe to leave them with an older version. But once we fully upgrade to Android 14, we'd need to update them.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n* Observe that all CI jobs pass.\r\n* Smoke test the editor on Android.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\nN/A\r\n\r\n## Screenshots or screencast \r\nN/A", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54437/reactions", + "total_count": 2, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 2, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54437/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54408", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54408/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54408/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54408/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54408", + "id": 1893604996, + "node_id": "PR_kwDOBNHdeM5aL6kq", + "number": 54408, + "title": "HTML block: Fix accessibility issues on back-end", + "user": { + "login": "alexstine", + "id": 13755480, + "node_id": "MDQ6VXNlcjEzNzU1NDgw", + "avatar_url": "https://avatars.githubusercontent.com/u/13755480?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/alexstine", + "html_url": "https://github.com/alexstine", + "followers_url": "https://api.github.com/users/alexstine/followers", + "following_url": "https://api.github.com/users/alexstine/following{/other_user}", + "gists_url": "https://api.github.com/users/alexstine/gists{/gist_id}", + "starred_url": "https://api.github.com/users/alexstine/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/alexstine/subscriptions", + "organizations_url": "https://api.github.com/users/alexstine/orgs", + "repos_url": "https://api.github.com/users/alexstine/repos", + "events_url": "https://api.github.com/users/alexstine/events{/privacy}", + "received_events_url": "https://api.github.com/users/alexstine/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 546517042, + "node_id": "MDU6TGFiZWw1NDY1MTcwNDI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Focus]%20Accessibility%20(a11y)", + "name": "[Focus] Accessibility (a11y)", + "color": "efde5d", + "default": false, + "description": "Changes that impact accessibility and need corresponding review (e.g. markup changes)." + }, + { + "id": 997392122, + "node_id": "MDU6TGFiZWw5OTczOTIxMjI=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Package]%20Components", + "name": "[Package] Components", + "color": "ed2572", + "default": false, + "description": "/packages/components" + }, + { + "id": 1086171268, + "node_id": "MDU6TGFiZWwxMDg2MTcxMjY4", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Needs%20Accessibility%20Feedback", + "name": "Needs Accessibility Feedback", + "color": "ffbcbd", + "default": false, + "description": "Need input from accessibility" + }, + { + "id": 1101519982, + "node_id": "MDU6TGFiZWwxMTAxNTE5OTgy", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Block]%20HTML", + "name": "[Block] HTML", + "color": "6767e5", + "default": false, + "description": "Affects the the HTML Block" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "alexstine", + "id": 13755480, + "node_id": "MDQ6VXNlcjEzNzU1NDgw", + "avatar_url": "https://avatars.githubusercontent.com/u/13755480?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/alexstine", + "html_url": "https://github.com/alexstine", + "followers_url": "https://api.github.com/users/alexstine/followers", + "following_url": "https://api.github.com/users/alexstine/following{/other_user}", + "gists_url": "https://api.github.com/users/alexstine/gists{/gist_id}", + "starred_url": "https://api.github.com/users/alexstine/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/alexstine/subscriptions", + "organizations_url": "https://api.github.com/users/alexstine/orgs", + "repos_url": "https://api.github.com/users/alexstine/repos", + "events_url": "https://api.github.com/users/alexstine/events{/privacy}", + "received_events_url": "https://api.github.com/users/alexstine/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "alexstine", + "id": 13755480, + "node_id": "MDQ6VXNlcjEzNzU1NDgw", + "avatar_url": "https://avatars.githubusercontent.com/u/13755480?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/alexstine", + "html_url": "https://github.com/alexstine", + "followers_url": "https://api.github.com/users/alexstine/followers", + "following_url": "https://api.github.com/users/alexstine/following{/other_user}", + "gists_url": "https://api.github.com/users/alexstine/gists{/gist_id}", + "starred_url": "https://api.github.com/users/alexstine/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/alexstine/subscriptions", + "organizations_url": "https://api.github.com/users/alexstine/orgs", + "repos_url": "https://api.github.com/users/alexstine/repos", + "events_url": "https://api.github.com/users/alexstine/events{/privacy}", + "received_events_url": "https://api.github.com/users/alexstine/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 3, + "created_at": "2023-09-13T02:18:36Z", + "updated_at": "2023-09-20T14:46:27Z", + "closed_at": "2023-09-20T14:45:59Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54408", + "html_url": "https://github.com/WordPress/gutenberg/pull/54408", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54408.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54408.patch", + "merged_at": "2023-09-20T14:45:59Z" + }, + "body": "\r\n\r\n## What?\r\n\r\n\r\nFixes back-end accessibility of the HTML block.\r\n\r\n## Why?\r\n\r\n\r\nMy PR does not fully fix this issue but I make good progress.\r\n\r\nhttps://github.com/WordPress/gutenberg/issues/46846\r\n\r\n## How?\r\n\r\n\r\n- Manage focus when HTML toolbar button is selected.\r\n- Manage focus when Preview button is selected.\r\n- Announce via description instructions on how to use the preview when it is selected.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n1. Insert a HTML block.\r\n2. Type some code.\r\n3. Press Alt+F10 to focus the toolbar.\r\n4. Select Preview.\r\n5. Notice how focus moves to the block wrapper and you should be able to see the `aria-describedby` attribute which matches the ID of the block description.\r\n6. Press Alt+F10.\r\n7. Select HTML.\r\n8. Focus should now be placed in the HTML text area.\r\n\r\n### Notes\r\n\r\nWondering why the focus return from toolbar does not work for this block. Might be worth investigating this so focus does not need to be managed in the block itself.\r\n\r\n### Testing Instructions for Keyboard\r\n\r\n\r\n## Screenshots or screencast \r\n", + "reactions": { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54408/reactions", + "total_count": 0, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 0, + "eyes": 0 + }, + "timeline_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54408/timeline", + "performed_via_github_app": null, + "state_reason": null + }, + { + "url": "https://api.github.com/repos/WordPress/gutenberg/issues/54382", + "repository_url": "https://api.github.com/repos/WordPress/gutenberg", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54382/labels{/name}", + "comments_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54382/comments", + "events_url": "https://api.github.com/repos/WordPress/gutenberg/issues/54382/events", + "html_url": "https://github.com/WordPress/gutenberg/pull/54382", + "id": 1892520419, + "node_id": "PR_kwDOBNHdeM5aIUs_", + "number": 54382, + "title": "[RNMobile] Limit inner blocks nesting depth to avoid call stack size exceeded crash", + "user": { + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "id": 531680823, + "node_id": "MDU6TGFiZWw1MzE2ODA4MjM=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/[Type]%20Bug", + "name": "[Type] Bug", + "color": "d93f0b", + "default": false, + "description": "An existing feature does not function as intended" + }, + { + "id": 982506020, + "node_id": "MDU6TGFiZWw5ODI1MDYwMjA=", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20i.e.%20Android%20or%20iOS", + "name": "Mobile App - i.e. Android or iOS", + "color": "a3ef7a", + "default": false, + "description": "Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)" + }, + { + "id": 3639254262, + "node_id": "LA_kwDOBNHdeM7Y6pz2", + "url": "https://api.github.com/repos/WordPress/gutenberg/labels/Mobile%20App%20-%20Automation", + "name": "Mobile App - Automation", + "color": "669206", + "default": false, + "description": "Label used to initiate Mobile App PR Automation" + } + ], + "state": "closed", + "locked": false, + "assignee": { + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "fluiddot", + "id": 14905380, + "node_id": "MDQ6VXNlcjE0OTA1Mzgw", + "avatar_url": "https://avatars.githubusercontent.com/u/14905380?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/fluiddot", + "html_url": "https://github.com/fluiddot", + "followers_url": "https://api.github.com/users/fluiddot/followers", + "following_url": "https://api.github.com/users/fluiddot/following{/other_user}", + "gists_url": "https://api.github.com/users/fluiddot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fluiddot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fluiddot/subscriptions", + "organizations_url": "https://api.github.com/users/fluiddot/orgs", + "repos_url": "https://api.github.com/users/fluiddot/repos", + "events_url": "https://api.github.com/users/fluiddot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fluiddot/received_events", + "type": "User", + "site_admin": false + } + ], + "milestone": { + "url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215", + "html_url": "https://github.com/WordPress/gutenberg/milestone/215", + "labels_url": "https://api.github.com/repos/WordPress/gutenberg/milestones/215/labels", + "id": 9943059, + "node_id": "MI_kwDOBNHdeM4Al7gT", + "number": 215, + "title": "Gutenberg 16.8", + "description": null, + "creator": { + "login": "github-actions[bot]", + "id": 41898282, + "node_id": "MDM6Qm90NDE4OTgyODI=", + "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github-actions%5Bbot%5D", + "html_url": "https://github.com/apps/github-actions", + "followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers", + "following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}", + "gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions", + "organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs", + "repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos", + "events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}", + "received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events", + "type": "Bot", + "site_admin": false + }, + "open_issues": 0, + "closed_issues": 160, + "state": "open", + "created_at": "2023-09-20T13:32:26Z", + "updated_at": "2023-10-04T20:47:35Z", + "due_on": "2023-10-02T07:00:00Z", + "closed_at": null + }, + "comments": 9, + "created_at": "2023-09-12T13:24:15Z", + "updated_at": "2023-10-06T14:24:11Z", + "closed_at": "2023-09-26T08:30:51Z", + "author_association": "CONTRIBUTOR", + "active_lock_reason": null, + "draft": false, + "pull_request": { + "url": "https://api.github.com/repos/WordPress/gutenberg/pulls/54382", + "html_url": "https://github.com/WordPress/gutenberg/pull/54382", + "diff_url": "https://github.com/WordPress/gutenberg/pull/54382.diff", + "patch_url": "https://github.com/WordPress/gutenberg/pull/54382.patch", + "merged_at": "2023-09-26T08:30:51Z" + }, + "body": "**Related PRs:**\r\n* https://github.com/wordpress-mobile/gutenberg-mobile/pull/6191\r\n* https://github.com/wordpress-mobile/WordPress-Android/pull/19163\r\n* https://github.com/wordpress-mobile/WordPress-iOS/pull/21553\r\n\r\n\r\n\r\n## What?\r\n\r\n\r\nLimits `InnerBlock` component to render blocks that are deeply nested, in order to prevent a crash related to exceeding the maximum call stack trace set by the Hermes engine.\r\n\r\n## Why?\r\n\r\nFixes https://github.com/wordpress-mobile/WordPress-Android/issues/18750.\r\nFixes https://github.com/wordpress-mobile/gutenberg-mobile/issues/6123\r\n\r\n## How?\r\n\r\n\r\nIn the `InnerBlocks` component we check the number of parent blocks associated with the block, this determines the nesting depth level. If it exceeds a threshold defined [here](https://github.com/WordPress/gutenberg/blob/e028e9ada1c06cb8e31e9b848e492ad37422ba65/packages/block-editor/src/components/inner-blocks/warning-max-depth-exceeded.native.js#L78-L82), we render a warning message box instead of rendering the inner blocks.\r\n\r\nhttps://github.com/WordPress/gutenberg/blob/e028e9ada1c06cb8e31e9b848e492ad37422ba65/packages/block-editor/src/components/inner-blocks/index.native.js#L130-L139\r\n\r\nAdditionally, I extracted the UI elements used in [the \"missing\" block](https://github.com/WordPress/gutenberg/blob/trunk/packages/block-library/src/missing/edit.native.js) (i.e. the block used to render unsupported blocks) into a separate component (`BlockFallbackWebVersion`). In a separate PR, I'll update that block to use this new component.\r\n\r\n## Testing Instructions\r\n\r\n\r\n\r\n\r\n\r\n#### The warning IS NOT displayed when NOT exceeding the threshold\r\n1. In the web version of the editor, create a post with the following HTML:\r\n\r\n
Deeply nested block structure (8 levels)\r\n\r\n```\r\n\r\n

Group block

\r\n\r\n\r\n\r\n
\r\n

Level 1

\r\n\r\n\r\n\r\n
\r\n

Level 2

\r\n\r\n\r\n\r\n
\r\n

Level 3

\r\n\r\n\r\n\r\n
\r\n

Level 4

\r\n\r\n\r\n\r\n
\r\n

Level 5

\r\n\r\n\r\n\r\n
\r\n

Level 6

\r\n\r\n\r\n\r\n
\r\n

Level 7

\r\n\r\n\r\n\r\n
\r\n

Level 8

\r\n
\r\n
\r\n\r\n\r\n\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n```\r\n\r\n
\r\n\r\n2. Open the post in the app.\r\n3. Scroll down the content.\r\n4. Observe that all blocks are rendered and that no warning message box is displayed.\r\n\r\n#### The warning IS displayed when exceeding the limit\r\n1. In the web version of the editor, create a post with the following HTML in a WPCOM site:\r\n\r\n
Deeply nested block structure (20 levels)\r\n\r\n```\r\n\r\n
\r\n

Level 1

\r\n\r\n\r\n\r\n
\r\n

Level 2

\r\n\r\n\r\n\r\n
\r\n

Level 3

\r\n\r\n\r\n\r\n
\r\n

Level 4

\r\n\r\n\r\n\r\n
\r\n

Level 5

\r\n\r\n\r\n\r\n
\r\n

Level 6

\r\n\r\n\r\n\r\n
\r\n

Level 7

\r\n\r\n\r\n\r\n
\r\n

Level 8

\r\n\r\n\r\n\r\n
\r\n

Level 9

\r\n\r\n\r\n\r\n
\r\n

Level 10

\r\n\r\n\r\n\r\n
\r\n

Level 11

\r\n\r\n\r\n\r\n
\r\n

Level 12

\r\n\r\n\r\n\r\n
\r\n

Level 13

\r\n\r\n\r\n\r\n
\r\n

Level 14

\r\n\r\n\r\n\r\n
\r\n

Level 15

\r\n\r\n\r\n\r\n
\r\n

Level 16

\r\n\r\n\r\n\r\n
\r\n

Level 17

\r\n\r\n\r\n\r\n
\r\n

Level 18

\r\n\r\n\r\n\r\n
\r\n

Level 19

\r\n\r\n\r\n\r\n
\r\n

Level 20

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n```\r\n\r\n
\r\n\r\n2. Open the post in the app.\r\n3. Observe that no crash is produced.\r\n4. Scroll down the content.\r\n5. Observe that starting at level 10, a warning message box is displayed within the block list.\r\n6. Tap on the warning twice.\r\n7. Observe that a bottom sheet is displayed explaining the problem.\r\n8. Observe that two options are presented, one for editing using the web editor and another one for ungrouping the block.\r\n9. Tap on the \"Edit using web editor\" option.\r\n10. Observe that UBE (Unsupported Block Editor) opens with the content that is not rendered in the native editor.\r\n11. Modify the content and tap on \"Continue\".\r\n12. Preview the post and observe the post reflects recent modifications.\r\n13. Back in the editor tap on the warning message box again.\r\n14. Tap on the \"Ungroup block\" option.\r\n15. Observe that a new block appears in the block list. This block should be the one that wasn't previously rendered due to being below level 10.\r\n16. Observe that the warning message box is still present.\r\n17. Tap on the warning message box and then the \"Dismiss\" option.\r\n18. Observe that the bottom sheet closes.\r\n19. Save the post.\r\n20. Observe that no crash is produced.\r\n\r\n#### Option for editing using the web editor is not present in self-hosted sites without Jetpack\r\n1. In the web version of the editor, create a post with the following HTML in a self-hosted site without Jetpack:\r\n\r\n
Deeply nested block structure (20 levels)\r\n\r\n```\r\n\r\n
\r\n

Level 1

\r\n\r\n\r\n\r\n
\r\n

Level 2

\r\n\r\n\r\n\r\n
\r\n

Level 3

\r\n\r\n\r\n\r\n
\r\n

Level 4

\r\n\r\n\r\n\r\n
\r\n

Level 5

\r\n\r\n\r\n\r\n
\r\n

Level 6

\r\n\r\n\r\n\r\n
\r\n

Level 7

\r\n\r\n\r\n\r\n
\r\n

Level 8

\r\n\r\n\r\n\r\n
\r\n

Level 9

\r\n\r\n\r\n\r\n
\r\n

Level 10

\r\n\r\n\r\n\r\n
\r\n

Level 11

\r\n\r\n\r\n\r\n
\r\n

Level 12

\r\n\r\n\r\n\r\n
\r\n

Level 13

\r\n\r\n\r\n\r\n
\r\n

Level 14

\r\n\r\n\r\n\r\n
\r\n

Level 15

\r\n\r\n\r\n\r\n
\r\n

Level 16

\r\n\r\n\r\n\r\n
\r\n

Level 17

\r\n\r\n\r\n\r\n
\r\n

Level 18

\r\n\r\n\r\n\r\n
\r\n

Level 19

\r\n\r\n\r\n\r\n
\r\n

Level 20

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n```\r\n\r\n
\r\n\r\n2. Open the post in the app.\r\n3. Observe that no crash is produced.\r\n4. Scroll down the content.\r\n5. Observe that starting at level 10, a warning message box is displayed within the block list.\r\n6. Tap on the warning twice.\r\n7. Observe that a bottom sheet is displayed explaining the problem.\r\n8. Observe that the message doesn't mention the web editor.\r\n9. Observe that only the \"Ungroup block\" option is presented.\r\n10. Tap on the \"Ungroup block\" option.\r\n11. Observe that a new block appears in the block list. This block should be the one that wasn't previously rendered due to being below level 10.\r\n12. Observe that the warning message box is still present.\r\n13. Tap on the warning message box and then the \"Dismiss\" option.\r\n14. Observe that the bottom sheet closes.\r\n15. Save the post.\r\n16. Observe that no crash is produced.\r\n\r\n#### Self-hosted site with Jetpack\r\n\r\n1. In the web version of the editor, create a post with the following HTML in a self-hosted site with Jetpack:\r\n\r\n
Deeply nested block structure (20 levels)\r\n\r\n```\r\n\r\n
\r\n

Level 1

\r\n\r\n\r\n\r\n
\r\n

Level 2

\r\n\r\n\r\n\r\n
\r\n

Level 3

\r\n\r\n\r\n\r\n
\r\n

Level 4

\r\n\r\n\r\n\r\n
\r\n

Level 5

\r\n\r\n\r\n\r\n
\r\n

Level 6

\r\n\r\n\r\n\r\n
\r\n

Level 7

\r\n\r\n\r\n\r\n
\r\n

Level 8

\r\n\r\n\r\n\r\n
\r\n

Level 9

\r\n\r\n\r\n\r\n
\r\n

Level 10

\r\n\r\n\r\n\r\n
\r\n

Level 11

\r\n\r\n\r\n\r\n
\r\n

Level 12

\r\n\r\n\r\n\r\n
\r\n

Level 13

\r\n\r\n\r\n\r\n
\r\n

Level 14

\r\n\r\n\r\n\r\n
\r\n

Level 15

\r\n\r\n\r\n\r\n
\r\n

Level 16

\r\n\r\n\r\n\r\n
\r\n

Level 17

\r\n\r\n\r\n\r\n
\r\n

Level 18

\r\n\r\n\r\n\r\n
\r\n

Level 19

\r\n\r\n\r\n\r\n
\r\n

Level 20

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n```\r\n\r\n
\r\n\r\n2. Go to Jetpack/Settings and uncheck the option \"Allow users to log in to this site using WordPress.com accounts\" under the \"WordPress.com login\" section.\r\n3. Open the post in the app.\r\n4. Observe that no crash is produced.\r\n5. Scroll down the content.\r\n6. Observe that starting at level 10, a warning message box is displayed within the block list.\r\n7. Tap on the warning twice.\r\n8. Observe that a bottom sheet is displayed explaining the problem.\r\n9. Observe that a note is included mentioning to allow `WordPress.com` login to edit using UBE.\r\n10. Tap on the \"Open Jetpack Security settings\" option.\r\n11. Enable \"Allow `WordPress.com` login\".\r\n12. Tap on the warning message box again.\r\n13. Observe that the option \"Edit using web editor\" is now presented.\r\n14. Tap on the \"Edit using web editor\" option.\r\n15. Observe that UBE (Unsupported Block Editor) opens with the content that is not rendered in the native editor.\r\n16. Modify the content and tap on \"Continue\".\r\n17. Preview the post and observe the post reflects recent modifications.\r\n18. Back in the editor tap on the warning message box again.\r\n19. Tap on the \"Ungroup block\" option.\r\n20. Observe that a new block appears in the block list. This block should be the one that wasn't previously rendered due to being below level 10.\r\n21. Observe that the warning message box is still present.\r\n22. Tap on the warning message box and then the \"Dismiss\" option.\r\n23. Observe that the bottom sheet closes.\r\n24. Save the post.\r\n25. Observe that no crash is produced.\r\n\r\n#### Unsupported Block Editing\r\n\r\nSince we are using UBE in the warning message box, it would be great to cover [some of the test cases of that feature](https://github.com/wordpress-mobile/test-cases/blob/trunk/test-cases/gutenberg/unsupported-block-editing.md).\r\n\r\n### Testing Instructions for Keyboard\r\n\r\nN/A\r\n\r\n## Screenshots or screencast \r\n\r\n| Light mode | Dark mode |\r\n|--------|--------|\r\n| | |\r\n| | | \r\n\r\n| WPCOM site | Self-hosted site without Jetpack |\r\n|--------|--------|\r\n|