Skip to content

Commit 415f5b0

Browse files
committed
deps: Update annotate-snippets
1 parent 95dfb4c commit 415f5b0

3 files changed

Lines changed: 23 additions & 27 deletions

File tree

Cargo.lock

Lines changed: 5 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ rustfmt-format-diff = []
3535
generic-simd = []
3636

3737
[dependencies]
38-
annotate-snippets = { version = "0.11" }
38+
annotate-snippets = { version = "0.12" }
3939
anyhow = "1.0"
4040
bytecount = "0.6.9"
4141
cargo_metadata = "0.23"

src/format_report_formatter.rs

Lines changed: 17 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
use crate::formatting::FormattingError;
22
use crate::{ErrorKind, FormatReport};
3-
use annotate_snippets::{Annotation, Level, Renderer, Snippet};
3+
use annotate_snippets::{Annotation, AnnotationKind, Group, Level, Renderer, Snippet};
44
use std::fmt::{self, Display};
55

66
/// A builder for [`FormatReportFormatter`].
@@ -57,26 +57,22 @@ impl<'a> Display for FormatReportFormatter<'a> {
5757
for (file, errors) in errors_by_file {
5858
for error in errors {
5959
let error_kind = error.kind.to_string();
60-
let mut message =
61-
error_kind_to_snippet_annotation_level(&error.kind).title(&error_kind);
60+
let mut title =
61+
error_kind_to_snippet_annotation_level(&error.kind).primary_title(error_kind);
6262
if error.is_internal() {
63-
message = message.id("internal");
63+
title = title.id("internal");
6464
}
65-
66-
let message_suffix = error.msg_suffix();
67-
if !message_suffix.is_empty() {
68-
message = message.footer(Level::Note.title(&message_suffix));
69-
}
70-
71-
let origin = format!("{}:{}", file, error.line);
7265
let snippet = Snippet::source(&error.line_buffer)
7366
.line_start(error.line)
74-
.origin(&origin)
67+
.path(format!("{file}:{}", error.line))
7568
.fold(false)
7669
.annotations(annotation(error));
77-
message = message.snippet(snippet);
78-
79-
writeln!(f, "{}\n", renderer.render(message))?;
70+
let mut group = title.element(snippet);
71+
let message_suffix = error.msg_suffix();
72+
if !message_suffix.is_empty() {
73+
group = group.element(Level::NOTE.message(message_suffix));
74+
}
75+
writeln!(f, "{}\n", renderer.render(&[group]))?;
8076
}
8177
}
8278

@@ -85,10 +81,9 @@ impl<'a> Display for FormatReportFormatter<'a> {
8581
"rustfmt has failed to format. See previous {} errors.",
8682
self.report.warning_count()
8783
);
88-
let message = Level::Warning.title(&label);
89-
writeln!(f, "{}", renderer.render(message))?;
84+
let group = Group::with_title(Level::WARNING.primary_title(label));
85+
writeln!(f, "{}", renderer.render(&[group]))?;
9086
}
91-
9287
Ok(())
9388
}
9489
}
@@ -98,13 +93,13 @@ fn annotation(error: &FormattingError) -> Option<Annotation<'_>> {
9893
let range_end = range_start + range_length;
9994

10095
if range_length > 0 {
101-
Some(Level::Error.span(range_start..range_end))
96+
Some(AnnotationKind::Primary.span(range_start..range_end))
10297
} else {
10398
None
10499
}
105100
}
106101

107-
fn error_kind_to_snippet_annotation_level(error_kind: &ErrorKind) -> Level {
102+
fn error_kind_to_snippet_annotation_level(error_kind: &ErrorKind) -> Level<'_> {
108103
match error_kind {
109104
ErrorKind::LineOverflow(..)
110105
| ErrorKind::TrailingWhitespace
@@ -114,7 +109,7 @@ fn error_kind_to_snippet_annotation_level(error_kind: &ErrorKind) -> Level {
114109
| ErrorKind::LostComment
115110
| ErrorKind::BadAttr
116111
| ErrorKind::InvalidGlobPattern(_)
117-
| ErrorKind::VersionMismatch => Level::Error,
118-
ErrorKind::DeprecatedAttr => Level::Warning,
112+
| ErrorKind::VersionMismatch => Level::ERROR,
113+
ErrorKind::DeprecatedAttr => Level::WARNING,
119114
}
120115
}

0 commit comments

Comments
 (0)