HomePhorge

Extract scope line selection logic from the diff rendering engine so it can…

Description

Extract scope line selection logic from the diff rendering engine so it can reasonably be iterated on

Summary:
Ref T13249. Ref T11738. See PHI985. Currently, we have a crude heuristic for guessing what line in a source file provides the best context.

We get it wrong in a lot of cases, sometimes selecting very silly lines like "{". Although we can't always pick the same line a human would pick, we can pile on heuristics until this is less frequently completely wrong and perhaps eventually get it to work fairly well most of the time.

Pull the logic for this into a separate standalone class and make it testable to prepare for adding heuristics.

Test Plan: Ran unit tests, browsed various files in the web UI and saw as-good-or-better context selection.

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T13249, T11738

Differential Revision: https://secure.phabricator.com/D20171

Details

Provenance
epriestleyAuthored on Feb 14 2019, 9:54 AM
themackabuPushed on Mar 25 2025, 8:07 PM
Parents
rP8d348e2eebbe: Clean up a couple of %Q issues in "Has Parents" task queries
Branches
Unknown
Tags
Unknown

Event Timeline