Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: Upgrade to React Native 0.73 #6590

Merged

Conversation

wpmobilebot
Copy link
Collaborator

@wpmobilebot wpmobilebot commented Jan 30, 2024

wpmobilebot and others added 11 commits January 30, 2024 14:52
Result of running the following:

```
npx @rnx-kit/align-deps@latest --write --requirements [email protected]
```
Revert changes that are incompatible with the Gutenberg project because
they are a undesired downgrade or erroneously modify usage of the `^`
version annotation.

Specifically for Jest, this sets the version to match the version used
in Gutenberg core.
The result of `npm install` after update React Native-related
dependencies for 0.73.
  These packages were renamed, the old names are deprecated.
The previous lock file was incorrect, as it was the result of running
`npm install` after merely bumping package version numbers. In order to
capture the correct lock file results, one must follow the Gutenberg
project's guidelines for updating dependencies, which involves removing
and re-adding each dependency. This now captures the result of `npm
install` after following that process.

https://github.com/WordPress/gutenberg/tree/c7cf2f74f38ae4c1f325e3238e61270a801f183c/packages#updating-existing-dependencies
@dcalhoun dcalhoun self-assigned this Jan 31, 2024
@dcalhoun dcalhoun marked this pull request as draft February 6, 2024 19:53
Gerardo and others added 16 commits February 8, 2024 20:49
…-native-0.73-metro-changes

Update Metro config
Required for compatibility with React Native 0.73.
This method no longer exists after the React Native 0.73 upgrade. It is
also no longer necessary.
This is the result of running the following command.

```
npm run xcframework:build
```

It also required deleting the `Podfile.lock` entirely, as installing
pods failed due a loop of errors and requests to update individual pods
in search of compatible versions between pods.
Without wrapping this in `act` an error is thrown in the test.
Some CLI commands were hoisted from the dedicated CLI package into
React Native core. Without React Native installed in the top level of
this project, scripts will fail due to missing commands.

This is considered a workaround currently. It would be ideal to avoid
the need to duplicate this dependency that is already within the
Gutenberg core project, but it may be unavoidable due to the CLI changes
in core.
@dcalhoun dcalhoun marked this pull request as ready for review February 16, 2024 00:06
@dcalhoun dcalhoun requested a review from geriux February 16, 2024 00:06
@geriux
Copy link
Contributor

geriux commented Feb 16, 2024

⚠️ Basic Test Suite Checklist (Android)

Build: jetpack-prototype-build-pr20167-0a4fe24.apk
Device: Samsung A23 5G (Android 14)

Writing Flow

Rich Text Format

  • TC007 - Test format detection under the cursor
  • TC009 - Test autocorrection doesn't apply formatting to Heading
  • TC010 - Test autocorrection doesn't remove formatting from Heading
Splitting and merging
  • TC001 - Merge after writing
    • Paragraph
    • Heading
  • TC002 - Merge after selection
    • Paragraph
    • Heading
  • TC003 - Merge after deleting text
    • Paragraph
    • Heading
  • TC004 - Merge after deleting all
    • Paragraph
    • Heading
  • TC005 - Merge multiple blocks
    • Paragraph
    • Heading

Unsupported Block

  • TC001 - User can edit unsupported blocks on Simple WP.com sites
  • TC002 - User can discard edits to an unsupported block on Simple WP.com sites
  • TC003 - Editing unsupported blocks is allowed on Gutenberg-enabled Atomic sites
  • TC004 - Editing unsupported blocks is disallowed on Classic-enabled Atomic sites
  • TC005 - Editing unsupported blocks is enabled on self-hosted sites accessed via Jetpack
  • TC006 - Editing unsupported blocks is disallowed on self-hosted sites access via their own username and password

Gallery Block

  • TC005 - Choose from device (stay in editor) - Successful upload
    ⚠️ The images don't get the full opacity after finishing uploading:

@geriux
Copy link
Contributor

geriux commented Feb 16, 2024

🟢 Accessibility (Android)

Build: jetpack-prototype-build-pr20167-0a4fe24.apk
Device: Samsung A23 5G (Android 14)

  • TalkBack braille keyboard
  • Editor Navigation
  • Android Voice Access

@geriux
Copy link
Contributor

geriux commented Feb 16, 2024

🟢 Functionality Tests (Android)

Build: jetpack-prototype-build-pr20167-0a4fe24.apk
Device: Samsung A23 5G (Android 14)

🟢 Test Suite 1

Gallery - 1

  • Gallery block - Close/Re-open post with an ongoing image upload - TC001
  • Gallery block - Close post with an ongoing image upload - TC002

Gallery - 2

  • Gallery block - Insert image from device (failing) - TC006
  • Gallery block - Insert image from device (cancel) - TC009

MediaText - 1

  • Media Text block - Insert image from device (failing) - TC001
  • Media Text block - Close/Re-open post with an ongoing image upload - TC003

MediaText - 2

  • Media Text block - Insert video from device - TC002-v
  • Media Text block - Insert image from device - TC002-i

MultipleUpload - 1

  • Simultaneous uploads - TC001

Cover - 1

  • Cover - Add image background from WordPress Media library - TC001
  • Cover - Image focal point is rendered properly - TC002
  • Cover - Custom color is rendered properly - TC002

Editor Theme - 1

  • Default Colors - Check that default colors still load - TC001
  • Default Gradients - Check that default gradients still load - TC002
  • Custom Colors - Check that custom colors load in the editor - TC003
🟢 Test Suite 2

DarkMode - 1

  • Gallery block - Dark mode - TC001
  • Shortcode block - Dark mode - TC002
  • Media Text block - Dark mode - TC003

Group - 1

  • Group - Deep nesting is possible (verify iOS does not crash) - TC001
  • Group - Check if Group placeholder is visible for the unselected state - TC002
  • Group - Check if Group placeholder is render in nested structure - TC003
  • Group - Nested block have proper border styling - TC004
  • Group - Breadcrumbs on FloatingToolbar is properly displayed - TC005

Buttons-1

  • Buttons block - Button's wrapper grows properly - TC019
  • Buttons block - Removing exactly one Button (when Buttons contain more of them) - TC002
  • Buttons block - Wrapping Buttons - TC003

Button-2

  • Buttons block - Buttons alignment options - TC004
  • Buttons block - Settings: Open in new tab - TC007
  • Buttons block - Settings: Link rel - TC008

Button-3

  • Buttons block - Settings: Link URL - TC006
  • Buttons block - Settings: Remove link - TC010
  • Buttons block - Settings: Synchronize with button options - TC009

Color Settings - 1

  • Scroll color palette to start - TC002
  • Scroll color palette to the end - TC003

Image - 1

  • Image block - Insert image from device (failing) - TC001
  • Image block - Insert image from device (cancel) - TC002
  • Image block - Add Caption - TC003
  • Image block - Close/Re-open post with an ongoing image upload - TC004
  • Image block - Close post with an ongoing image upload - TC005

Drag and Drop Blocks - 1

  • Drag and Drop Blocks - Drag block to the top of the content - TC001
  • Drag and Drop Blocks - Drag block to the bottom of the content - TC002

VideoPress - 2

  • VideoPress block - Player - TC003
  • VideoPress block - Private video - TC005
  • VideoPress block - Upload limit for Free users - TC006
🟢 Test Suite 3

Gallery - 2

  • Gallery block - Insert image from device (failing) - TC006
  • Gallery block - Insert image from device (cancel) - TC009

Gallery - 3

  • Gallery block - Settings: Column number - TC013
  • Gallery block - Settings: Crop images - TC014

MediaText - 3

  • Media Text block - Insert video from device (failing) - TC001-v
  • Media Text block - Close/Re-open post with an ongoing video upload - TC003-v

MediaText - 4

  • Media Text block - Media & Text alignment - TC006
  • Media Text block - Vertical alignment - TC007

Shortcode-1

  • Shortcode block - Add a youtube link - TC001

Cover - 2

  • Cover - Add Video Background from WordPress Media library - TC004
  • Cover - Replace media - TC005
  • Cover - Gradient background is rendered properly - TC006
  • Cover - Gradient overlay is rendered properly - TC007

Image - 2

  • Image block - Border style setting - TC006
  • Image block - Image size setting - TC007
  • Image block - Link to setting - TC008
🟢 Test Suite 4

Group - 2

  • Group - Check if nested Placeholder block can be replaced - TC010

Buttons - 4

  • Buttons block - The newly created Buttons has set background color to the theme-default color in preview - TC017

Buttons - 5

  • Buttons block - Render theme colors - TC015
  • Buttons block - Settings: Change Button border radius - TC011

Buttons - 7

  • Buttons block - Toolbar link button is active when Button has link - TC018

Editor Theme - 2

  • Custom Gradients - Check that custom gradients load in the editor - TC004
  • Offline Support - TC005

Color Settings - 2

  • Customize gradient color - TC005
  • Custom color picker - TC006

VideoPress - 1

  • VideoPress block - Upload a video - TC001
  • VideoPress block - Close post with an ongoing video upload - TC004
🟢 Test Suite 5

Video block - 1

  • Video block - Insert video from device (failing) - TC001
  • Video block - Close/Re-open post with an ongoing video upload - TC004

Video block - 2

  • Video block - Insert video from device (cancel) - TC002
  • Video block - Close post with an ongoing video upload - TC005
  • Video block - Add Caption - TC003

File block - 1

  • File block - Upload completes successfully from the device library - TC001
  • File block - Insert completes successfully from the WordPress Media library - TC002
  • File block - Upload fails from the device library - TC003
  • File block - Stop the file upload before it completes - TC004

File block - 2

  • File block - Close the post with an ongoing file upload - TC005
  • File block - Replace the selected files - TC006
  • File block - Change the alignment in the File Block - TC007
  • File block - The Link To Block Setting should open - TC008

File block - 3

  • File block - Open link in new tab - TC009
  • File block - Show/hide download button (Block Settings only) - TC010
  • File block - Copy file URL - TC011
  • File block - Close/Re-open post with an ongoing file upload - TC012

Audio block - 1

  • Audio block - Upload completes successfully from the device library - TC001
  • Audio block - Insert completes successfully from the WordPress Media library - TC002

Audio block - 2

  • Audio block - Upload fails from the device library - TC003
  • Audio block - Stop the audio file upload before it completes - TC004

Audio block - 3

  • Audio block - Close the post with an ongoing audio file upload - TC005
  • Audio block - Replace the selected files - TC006
  • Audio block - Change the alignment in the Audio Block - TC007

Audio block - 4

  • Audio block - Close/Re-open post with an ongoing audio file upload - TC010

Synced patterns - 1

  • Synced patterns - Add pattern - TC001
  • Synced patterns - Detach pattern - TC002

Synced patterns - 2

  • Synced patterns - Deleted pattern - TC003
  • Synced patterns - Recursive block rendering - TC004

Embed block - 1

  • Embed block - Inline previews are rendered correctly for the top 5 most-used providers - TC001

Embed block - 2

  • Embed block - Inline previews are rendered accordingly for each alignment option - TC002
🟢 Drag & Drop
  •  Test the Drag & Drop functionality in portrait mode (try multiple touches)
  •  Test the Drag & Drop functionality in landscape mode

@dcalhoun
Copy link
Member

dcalhoun commented Feb 19, 2024

🟡 Basic Test Suite Checklist (iOS)

Build: pr22588-68c1ea9
Device: iPhone SE (iOS 17.3)

Writing Flow

Rich Text Format

  • TC007 - Test format detection under the cursor
  • TC009 - Test autocorrection doesn't apply formatting to Heading
  • TC010 - Test autocorrection doesn't remove formatting from Heading
Splitting and merging
  • TC001 - Merge after writing
    • Paragraph
    • Heading
  • TC002 - Merge after selection
    • Paragraph
    • Heading
  • TC003 - Merge after deleting text
    • Paragraph
    • Heading
  • TC004 - Merge after deleting all
    • Paragraph
    • Heading
  • TC005 - Merge multiple blocks
    • Paragraph
    • Heading

Unsupported Block

  • TC001 - User can edit unsupported blocks on Simple WP.com sites
  • TC002 - User can discard edits to an unsupported block on Simple WP.com sites
  • TC003 - Editing unsupported blocks is allowed on Gutenberg-enabled Atomic sites
  • TC004 - Editing unsupported blocks is disallowed on Classic-enabled Atomic sites
  • TC005 - Editing unsupported blocks is enabled on self-hosted sites accessed via Jetpack
  • TC006 - Editing unsupported blocks is disallowed on self-hosted sites access via their own username and password

Gallery Block

  • TC005 - Choose from device (stay in editor) - Successful upload
    • ⚠️ Sporadically encountered the same unexpected translucent overlay for Gallery uploads noted for Android.

@dcalhoun
Copy link
Member

dcalhoun commented Feb 19, 2024

🟢 Accessibility (iOS)

Build: pr22588-68c1ea9
Device: iPhone SE (iOS 17.3)

  • Navigating with iOS Voice Over
    • No regressions discovered, encountered known focus management issues.
  • Typing with screen readers and braille keyboard input.
  • iOS Voice Control

@dcalhoun
Copy link
Member

dcalhoun commented Feb 19, 2024

🟢 Functionality Tests (iOS)

Build: wordpress-mobile/WordPress-iOS#22588 (comment)
Device: iPhone SE (iOS 17.3)

🟢 Test Suite 1

Gallery - 1

  • Gallery block - Close/Re-open post with an ongoing image upload - TC001
  • Gallery block - Close post with an ongoing image upload - TC002

Gallery - 2

  • Gallery block - Insert image from device (failing) - TC006
  • Gallery block - Insert image from device (cancel) - TC009

MediaText - 1

  • Media Text block - Insert image from device (failing) - TC001
  • Media Text block - Close/Re-open post with an ongoing image upload - TC003

MediaText - 2

  • Media Text block - Insert video from device - TC002-v
  • Media Text block - Insert image from device - TC002-i

MultipleUpload - 1

  • Simultaneous uploads - TC001

Cover - 1

  • Cover - Add image background from WordPress Media library - TC001
  • Cover - Image focal point is rendered properly - TC002
  • Cover - Custom color is rendered properly - TC002

Editor Theme - 1

  • Default Colors - Check that default colors still load - TC001
  • Default Gradients - Check that default gradients still load - TC002
  • Custom Colors - Check that custom colors load in the editor - TC003
🟢 Test Suite 2

DarkMode - 1

  • Gallery block - Dark mode - TC001
  • Shortcode block - Dark mode - TC002
  • Media Text block - Dark mode - TC003

Group - 1

  • Group - Deep nesting is possible (verify iOS does not crash) - TC001
  • Group - Check if Group placeholder is visible for the unselected state - TC002
  • Group - Check if Group placeholder is render in nested structure - TC003
  • Group - Nested block have proper border styling - TC004
  • Group - Breadcrumbs on FloatingToolbar is properly displayed - TC005

Buttons-1

  • Buttons block - Button's wrapper grows properly - TC019
  • Buttons block - Removing exactly one Button (when Buttons contain more of them) - TC002
  • Buttons block - Wrapping Buttons - TC003

Button-2

  • Buttons block - Buttons alignment options - TC004
  • Buttons block - Settings: Open in new tab - TC007
  • Buttons block - Settings: Link rel - TC008

Button-3

  • Buttons block - Settings: Link URL - TC006
  • Buttons block - Settings: Remove link - TC010
  • Buttons block - Settings: Synchronize with button options - TC009

Color Settings - 1

  • Scroll color palette to start - TC002
  • Scroll color palette to the end - TC003

Image - 1

  • Image block - Insert image from device (failing) - TC001
  • Image block - Insert image from device (cancel) - TC002
  • Image block - Add Caption - TC003
  • Image block - Close/Re-open post with an ongoing image upload - TC004
  • Image block - Close post with an ongoing image upload - TC005

Drag and Drop Blocks - 1

  • Drag and Drop Blocks - Drag block to the top of the content - TC001
  • Drag and Drop Blocks - Drag block to the bottom of the content - TC002

VideoPress - 2

  • VideoPress block - Player - TC003
  • VideoPress block - Private video - TC005
  • VideoPress block - Upload limit for Free users - TC006
🟢 Test Suite 3

Gallery - 2

  • Gallery block - Insert image from device (failing) - TC006
  • Gallery block - Insert image from device (cancel) - TC009

Gallery - 3

  • Gallery block - Settings: Column number - TC013
  • Gallery block - Settings: Crop images - TC014

MediaText - 3

  • Media Text block - Insert video from device (failing) - TC001-v
    • ⚠️ Encountered a pre-existing regression unrelated to the changes in this PR.
  • Media Text block - Close/Re-open post with an ongoing video upload - TC003-v

MediaText - 4

  • Media Text block - Media & Text alignment - TC006
  • Media Text block - Vertical alignment - TC007

Shortcode-1

  • Shortcode block - Add a youtube link - TC001

Cover - 2

  • Cover - Add Video Background from WordPress Media library - TC004
  • Cover - Replace media - TC005
  • Cover - Gradient background is rendered properly - TC006
  • Cover - Gradient overlay is rendered properly - TC007

Image - 2

  • Image block - Border style setting - TC006
  • Image block - Image size setting - TC007
  • Image block - Link to setting - TC008
🟢 Test Suite 4

Group - 2

  • Group - Check if nested Placeholder block can be replaced - TC010

Buttons - 4

  • Buttons block - The newly created Buttons has set background color to the theme-default color in preview - TC017

Buttons - 5

  • Buttons block - Render theme colors - TC015
  • Buttons block - Settings: Change Button border radius - TC011

Buttons - 7

  • Buttons block - Toolbar link button is active when Button has link - TC018

Editor Theme - 2

  • Custom Gradients - Check that custom gradients load in the editor - TC004
  • Offline Support - TC005

Color Settings - 2

  • Customize gradient color - TC005
  • Custom color picker - TC006

VideoPress - 1

  • VideoPress block - Upload a video - TC001
  • VideoPress block - Close post with an ongoing video upload - TC004
🟢 Test Suite 5

Video block - 1

  • Video block - Insert video from device (failing) - TC001
  • Video block - Close/Re-open post with an ongoing video upload - TC004

Video block - 2

  • Video block - Insert video from device (cancel) - TC002
  • Video block - Close post with an ongoing video upload - TC005
  • Video block - Add Caption - TC003

File block - 1

  • File block - Upload completes successfully from the device library - TC001
  • File block - Insert completes successfully from the WordPress Media library - TC002
  • File block - Upload fails from the device library - TC003
  • File block - Stop the file upload before it completes - TC004

File block - 2

  • File block - Close the post with an ongoing file upload - TC005
  • File block - Replace the selected files - TC006
  • File block - Change the alignment in the File Block - TC007
  • File block - The Link To Block Setting should open - TC008

File block - 3

  • File block - Open link in new tab - TC009
  • File block - Show/hide download button (Block Settings only) - TC010
  • File block - Copy file URL - TC011
  • File block - Close/Re-open post with an ongoing file upload - TC012

Audio block - 1

  • Audio block - Upload completes successfully from the device library - TC001
  • Audio block - Insert completes successfully from the WordPress Media library - TC002

Audio block - 2

  • Audio block - Upload fails from the device library - TC003
  • Audio block - Stop the audio file upload before it completes - TC004

Audio block - 3

  • Audio block - Close the post with an ongoing audio file upload - TC005
  • Audio block - Replace the selected files - TC006
  • Audio block - Change the alignment in the Audio Block - TC007

Audio block - 4

  • Audio block - Close/Re-open post with an ongoing audio file upload - TC010

Synced patterns - 1

  • Synced patterns - Add pattern - TC001
  • Synced patterns - Detach pattern - TC002

Synced patterns - 2

  • Synced patterns - Deleted pattern - TC003
  • Synced patterns - Recursive block rendering - TC004

Embed block - 1

  • Embed block - Inline previews are rendered correctly for the top 5 most-used providers - TC001

Embed block - 2

  • Embed block - Inline previews are rendered accordingly for each alignment option - TC002
🟢 Drag & Drop
  •  Test the Drag & Drop functionality in portrait mode (try multiple touches)
  •  Test the Drag & Drop functionality in landscape mode

@geriux geriux added the dependencies Pull requests that update a dependency file label Feb 23, 2024
Copy link
Contributor

@geriux geriux left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! 🚀 🚀

Copy link
Member

@dcalhoun dcalhoun left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All the changes LGTM. 🚀

@dcalhoun dcalhoun enabled auto-merge March 5, 2024 15:46
@dcalhoun dcalhoun merged commit c6a4713 into trunk Mar 5, 2024
19 of 23 checks passed
@dcalhoun dcalhoun deleted the version-toolkit/gutenberg/build/upgrade-to-react-native-0.73 branch March 5, 2024 16:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants