Skip to content

Revert diff_match_patch upgrade#16168

Merged
seanbudd merged 2 commits intobetafrom
revert_pr15514
Feb 13, 2024
Merged

Revert diff_match_patch upgrade#16168
seanbudd merged 2 commits intobetafrom
revert_pr15514

Conversation

@michaelDCurran
Copy link
Copy Markdown
Member

Link to issue number:

Fixes #16027
Reverts #15514
This reverts commit 69a16cc.

Summary of the issue:

PR #15514 upgraded diff_match_patch from 1.0.2 to fast_diff_match_patch 2.0.1.
However, the newer version cannot handle particular unicode characters such as 🍰. The diff_match_patch process dies, NvDA can no longer report text changes, and NvDA hangs on exit.

Description of user facing changes

Printing unicode characters such as 🍰 in a terminal withn using diff_match_patch for speaking changes no longer causes NvDA to no longer report text changes and lock up on exit.

Description of development approach

Downgrade back to diff_match_patch 1.0.2.

Testing strategy:

Followed steps in #16027 and ensured that NVDA spoke the 🍰 character when printed, that it continued to speak further text changes, and that NvDA did not lock up when exiting / restarting.

Known issues with pull request:

An alternative approach was shown in #16027 where NVDA could filter bad characters from diff_match_patch. this may be necessary in future if we do need to upgrade again eventually. But as this broke in the current (2024.1) cycle, there was no critical reason for the upgrade originally that I could see, and downgrading was clean, then this is the most appropriate solution at this late stage in the 2024.1 cycle.
@codeofdusk was there any other motivation to upgrade other than just keeping up to date with the latest version?

Code Review Checklist:

  • Documentation:
    • Change log entry
    • User Documentation
    • Developer / Technical Documentation
    • Context sensitive help for GUI changes
  • Testing:
    • Unit tests
    • System (end to end) tests
    • Manual testing
  • UX of all users considered:
    • Speech
    • Braille
    • Low Vision
    • Different web browsers
    • Localization in other languages / culture than English
  • API is compatible with existing add-ons.
  • Security precautions taken.

@michaelDCurran michaelDCurran requested a review from a team as a code owner February 12, 2024 06:48
@michaelDCurran michaelDCurran requested review from SaschaCowley and removed request for a team February 12, 2024 06:48
@codeofdusk
Copy link
Copy Markdown
Contributor

I upgraded the package as part of other dependency updates. If downgrading restores full functionality with Unicode characters, I see no reason not to.

@seanbudd seanbudd added the conceptApproved Similar 'triaged' for issues, PR accepted in theory, implementation needs review. label Feb 12, 2024
@seanbudd seanbudd added this to the 2024.1 milestone Feb 13, 2024
Comment on lines +195 to +196
- Updated Comtypes to version 1.2.0. (#15513)
- Added extension point: ``treeInterceptorHandler.post_browseModeStateChange``. (#14969)
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I'm not sure why these items are in the diff

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
- Updated Comtypes to version 1.2.0. (#15513)
- Added extension point: ``treeInterceptorHandler.post_browseModeStateChange``. (#14969)

@michaelDCurran
Copy link
Copy Markdown
Member Author

michaelDCurran commented Feb 13, 2024 via email

@seanbudd seanbudd merged commit 1c783d2 into beta Feb 13, 2024
@seanbudd seanbudd deleted the revert_pr15514 branch February 13, 2024 03:01
@Danstiv
Copy link
Copy Markdown
Contributor

Danstiv commented Feb 13, 2024

Hello @codeofdusk
I created pull request in the dmp repo, could you review it please?

Adriani90 pushed a commit to Adriani90/nvda that referenced this pull request Mar 13, 2024
Fixes nvaccess#16027
Reverts nvaccess#15514
This reverts commit 69a16cc.

Summary of the issue:
PR nvaccess#15514 upgraded diff_match_patch from 1.0.2 to fast_diff_match_patch 2.0.1.
However, the newer version cannot handle particular unicode characters such as 🍰. The diff_match_patch process dies, NvDA can no longer report text changes, and NvDA hangs on exit.

Description of user facing changes
Printing unicode characters such as 🍰 in a terminal withn using diff_match_patch for speaking changes no longer causes NvDA to no longer report text changes and lock up on exit.

Description of development approach
Downgrade back to diff_match_patch 1.0.2.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

conceptApproved Similar 'triaged' for issues, PR accepted in theory, implementation needs review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants