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

Release 1.112.0 #6597

Merged
merged 8 commits into from
Feb 2, 2024
Merged

Release 1.112.0 #6597

merged 8 commits into from
Feb 2, 2024

Conversation

derekblank
Copy link
Contributor

@derekblank derekblank commented Feb 1, 2024

Release for Gutenberg Mobile 1.112.0

Related PRs

Changes

  • Change 1: Fix crash occurring on large post on Android
  • Change 2: Upgrade React Native to version 0.71.15
  • Change 3: Prevent images from temporarily disappearing when uploading media

Test plan

Once the installable builds of the main apps are ready, perform a quick smoke test of the editor on both iOS and Android to verify it launches without crashing. We will perform additional testing after the main apps cut their releases.

Release Submission Checklist

  • Verify Items from test plan have been completed
  • Check if RELEASE-NOTES.txt is updated with all the changes that made it to the release. Replace Unreleased section with the release version and create a new Unreleased section.
  • Check if gutenberg/packages/react-native-editor/CHANGELOG.md is updated with all the changes that made it to the release. Replace ## Unreleased with the release version and create a new ## Unreleased.
  • Bundle package of the release is updated.

@fluiddot
Copy link
Contributor

fluiddot commented Feb 1, 2024

Release Submission Checklist
Verify Items from test plan have been completed

@derekblank we usually perform the testing plan the week after the release. Not sure if you already covered this, although I don't see comments in this PR related to testing. Let me know if we should leave it unchecked. Thanks 🙇 !

@fluiddot
Copy link
Contributor

fluiddot commented Feb 1, 2024

In 5d9a47f, I noticed that some E2E tests failed:

Test iOS on Device – Full iPhone

  • Gutenberg Editor Visual test for Gallery Block › should be able to render a gallery correctly
    • There are visual differences

Test iOS on Device – Full iPad

  • Gutenberg Editor iPad Visual test for Horizontal layouts should show the right columns placeholders and alignments case 1
    • The scroll positions don't match by some pixels.

case 1

  • Gutenberg Editor iPad Visual test for Horizontal layouts should show the right columns placeholders and alignments case 2
    • The device didn't rotate.

case 2


I'm going to retry the tests but if they fail again, it would be great to investigate them further.

@fluiddot
Copy link
Contributor

fluiddot commented Feb 1, 2024

I'm going to retry the tests but if they fail again, it would be great to investigate them further.

They keep failing, so I'm going to take a deeper look.

@fluiddot
Copy link
Contributor

fluiddot commented Feb 1, 2024

Test iOS on Device – Full iPhone

  • Gutenberg Editor Visual test for Gallery Block › should be able to render a gallery correctly

    • There are visual differences

It's a bit subtle but I noticed that the images seem one pixel taller, this seems causing the first failure. I wonder if #6550 has impacted somehow the size.

UPDATE: I confirmed that #6550 added 1 pixel.

Left (old) | Right (new):
Screenshot 2024-02-01 at 19 29 08

@fluiddot
Copy link
Contributor

fluiddot commented Feb 1, 2024

It's a bit subtle but I noticed that the images seem one pixel taller, this seems causing the first failure. I wonder if #6550 has impacted somehow the size.

UPDATE: I confirmed that #6550 added 1 pixel.

I presume that the extra pixel was unintended. However, since it doesn't produce a critical change to the editor, I'll proceed with updating the screenshots. @derekblank let me know if you'd rather remove the extra pixel. If so, we could update the screenshots again. Thanks 🙇 !

This is needed to reflect a minor change in the size of the image frame.
This is needed to reflect a minor change in the size of the image frame.
@fluiddot
Copy link
Contributor

fluiddot commented Feb 1, 2024

Test iOS on Device – Full iPad

  • Gutenberg Editor iPad Visual test for Horizontal layouts should show the right columns placeholders and alignments case 1

    • The scroll positions don't match by some pixels.

case 1

  • Gutenberg Editor iPad Visual test for Horizontal layouts should show the right columns placeholders and alignments case 2

    • The device didn't rotate.

case 2

This case is the same as the one shared in #6597 (comment). The one-pixel size difference in the image frame makes the visual check to fail. I'll proceed to update the screenshots.

Copy link
Contributor

@fluiddot fluiddot left a comment

Choose a reason for hiding this comment

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

LGTM 🎊 !

Pre-approving the PR upon waiting E2E tests to pass after the following fixes:

@derekblank derekblank merged commit 51f84e6 into trunk Feb 2, 2024
23 checks passed
@derekblank derekblank deleted the release/1.112.0 branch February 2, 2024 05:38
@derekblank
Copy link
Contributor Author

derekblank commented Feb 2, 2024

I presume that the extra pixel was unintended. However, since it doesn't produce a critical change to the editor, I'll proceed with updating the screenshots. @derekblank let me know if you'd rather remove the extra pixel.

@fluiddot The extra pixel is actually intended, but I didn't realize that the E2E screenshots would be that sensitive to detect such a small visual change. It makes sense, however, so thanks for updating the screenshots. We can keep them as-is.

To provide more technical detail on the 1 pixel change, the extra pixel comes from a non-visible FastImage instance that acts as a preloader using its onLoad method to download the network image data and smoothly transition between the local and network image states when the network image data is ready. This non-visible image is a workaround due to the FastImage preload method not returning a Promise or callback to hook into. There is more discussion and explanation on this change in the iOS section of the internal ref p2-p9ugOq-4lR. It's worth noting that the onLoad behavior from this non-visible image does not fire if the image does not have a width/height of at least 1. We did try using 0 as the dimension value, and the onLoad method did not work as intended (ref).

Also noting that @dcalhoun and I consider this change a progressive-enhancement interim fix while we explore longer-term solutions for the Image component as a group, and potentially moving away from FastImage due to lack of maintenance.

@derekblank
Copy link
Contributor Author

derekblank commented Feb 6, 2024

🟢 Writing Flow checklist - Android

General

  • TC001 - Paste formatted text copied from website

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

@derekblank
Copy link
Contributor Author

derekblank commented Feb 6, 2024

🟢 Unsupported Block Editor - Android

  • 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

@derekblank
Copy link
Contributor Author

derekblank commented Feb 6, 2024

🟢 Functionality Test Suite 2 - Android

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

@derekblank
Copy link
Contributor Author

🟢 Writing Flow checklist - iOS

General

  • TC001 - Paste formatted text copied from website

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

@derekblank
Copy link
Contributor Author

🟢 Unsupported Block Editor - iOS

  • 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

@derekblank
Copy link
Contributor Author

derekblank commented Feb 6, 2024

🟡 Functionality Test Suite 3 - iOS

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

⚠️ I could not get video uploads to succeed on iOS. Retested, and succeeded.

Video Example
Video.mov

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

⚠️ I could not get video to insert from WordPress Media Library into the Cover block. Nothing happens. Retested, and succeeded.

Video Example
RPReplay_Final1707198268.MP4
  • Cover - Replace media - TC005 *only succeeded with Images, see above Retested, and succeeded.
  • 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

I believe the Story tests are no longer relevant due to Stories being removed from the mobile apps. I added a Story block from web and confirmed it shows up as Unsupported in the mobile app:

Story block - 1

  • Story block - Verify is available in Block Picker - TC001
  • Story block - Verify is not available in Block Picker- TC002
  • Story block - Add media to empty Story block - TC003
  • Story block - Add media to non-empty Story block - TC004
  • Story block - Close/Re-open post with an ongoing Story upload - TC005

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants