Page MenuHomePhabricator

In prose diffs, use hash-and-diff for coarse "level 0" diffing to scale better
ClosedPublic

Authored by epriestley on Sep 25 2019, 10:12 PM.
Tags
None
Referenced Files
Unknown Object (File)
Jan 10 2024, 10:15 AM
Unknown Object (File)
Jan 6 2024, 3:34 PM
Unknown Object (File)
Dec 26 2023, 8:52 PM
Unknown Object (File)
Dec 25 2023, 7:00 AM
Unknown Object (File)
Dec 23 2023, 7:10 PM
Unknown Object (File)
Nov 30 2023, 4:39 AM
Unknown Object (File)
Nov 17 2023, 1:52 PM
Unknown Object (File)
Nov 13 2023, 3:21 PM
Subscribers
None

Details

Summary

Depends on D20838. Fixes T13414. Instead of doing coarse diffing with "PhutilEditDistanceMatrix", use hash-and-diff with "DocumentEngine".

Test Plan
  • On a large document (~3K top level blocks), saw a more sensible diff, instead of the whole thing falling back to "everything changed" mode.
  • On a small document, still saw a sensible granular diff.

Screen Shot 2019-09-25 at 2.55.12 PM.png (699×849 px, 190 KB)

Diff Detail

Repository
rP Phabricator
Branch
jupyter10
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 23497
Build 32295: Run Core Tests
Build 32294: arc lint + arc unit

Event Timeline

This revision was not accepted when it landed; it landed in state Needs Review.Sep 25 2019, 11:50 PM
This revision was automatically updated to reflect the committed changes.