Release syntax aware heuristic expansion of diagnostic excerpts (#22858)

Implementation PR was #21942

Release Notes:

- Improved diagnostic excerpts by using syntactic info to determine the
context lines to show.
This commit is contained in:
Michael Sloan 2025-01-08 13:53:52 -07:00 committed by GitHub
parent 9ef454d7eb
commit fe35695b13
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 10 additions and 15 deletions

1
Cargo.lock generated
View file

@ -3690,7 +3690,6 @@ dependencies = [
"ctor",
"editor",
"env_logger 0.11.6",
"feature_flags",
"gpui",
"language",
"log",

View file

@ -18,7 +18,6 @@ collections.workspace = true
ctor.workspace = true
editor.workspace = true
env_logger.workspace = true
feature_flags.workspace = true
gpui.workspace = true
language.workspace = true
log.workspace = true

View file

@ -14,7 +14,6 @@ use editor::{
scroll::Autoscroll,
Editor, EditorEvent, ExcerptId, ExcerptRange, MultiBuffer, ToOffset,
};
use feature_flags::FeatureFlagAppExt;
use gpui::{
actions, div, svg, AnyElement, AnyView, AppContext, Context, EventEmitter, FocusHandle,
FocusableView, Global, HighlightStyle, InteractiveElement, IntoElement, Model, ParentElement,
@ -933,18 +932,16 @@ fn context_range_for_entry(
snapshot: &BufferSnapshot,
cx: &AppContext,
) -> Range<Point> {
if cx.is_staff() {
if let Some(rows) = heuristic_syntactic_expand(
entry.range.clone(),
DIAGNOSTIC_EXPANSION_ROW_LIMIT,
snapshot,
cx,
) {
return Range {
start: Point::new(*rows.start(), 0),
end: snapshot.clip_point(Point::new(*rows.end(), u32::MAX), Bias::Left),
};
}
if let Some(rows) = heuristic_syntactic_expand(
entry.range.clone(),
DIAGNOSTIC_EXPANSION_ROW_LIMIT,
snapshot,
cx,
) {
return Range {
start: Point::new(*rows.start(), 0),
end: snapshot.clip_point(Point::new(*rows.end(), u32::MAX), Bias::Left),
};
}
Range {
start: Point::new(entry.range.start.row.saturating_sub(context), 0),