Commit Graph

13 Commits

Author SHA1 Message Date
Kat Marchán 93374173e3 feat(footer): add footer support to graphical and narrated
Fixes: https://github.com/zkat/miette/issues/34
2021-09-22 16:34:21 -07:00
Kat Marchán 4c2463f9ae feat(report): make a single big MietteHandler that can switch modes
BREAKING CHANGE: linkification option method on GraphicalReportHandler has been changed to .with_links(bool)
2021-09-22 16:34:21 -07:00
Kat Marchán 80036781cd fix(report): miscellaneous, hacky tweaks to graphical rendering 2021-09-22 16:34:21 -07:00
Robin Appelman d994add912
fix(report): Fix end of previous line wrongly being included in highlight (#52) 2021-09-13 09:57:54 -07:00
Kat Marchán eb07d5bd66
fix(report): fix wrapping for header and add wrapping for footer 2021-09-11 00:57:53 -07:00
Kat Marchán eaebde92cf
feat(report): make header line as wide as terminal 2021-09-10 17:09:52 -07:00
Kat Marchán bc72532465
feat(report): take terminal width into account for wrapping text 2021-09-10 12:39:10 -07:00
Kat Marchán f482dcec6a
feat(report): wrap multiline messages to keep formatting
Fixes: https://github.com/zkat/miette/issues/51
2021-09-10 08:16:40 -07:00
Kat Marchán 1ba3f2f5d2
fix(report): get rid of the weird arrow thing. it does not look good 2021-09-10 07:36:09 -07:00
Kat Marchán 533ff5f348
fix(reporter): improve color situation and style things a little nicer 2021-09-08 20:59:19 -07:00
Kat Marchán 6422f82174
fix(report): don't color error message text to draw eyes back to it 2021-09-08 18:29:41 -07:00
Kat Marchán 824cd8bebe
feat(printer): use uparrow for empty highlights and fix 0-offset display bug 2021-09-07 17:41:28 -07:00
Kat Marchán 3f9da04b86
feat(report): anyhow-ify DiagnosticReport (#35)
This PR overhauls the toplevel/main experience for `miette`. It adds a new `Report` type based on `eyre::Report` and overhauls various types to fit into this model, as well as prepare for some [future changes in Rust](https://github.com/nrc/rfcs/pull/1) that will make it possible to integrate `miette` directly with crates like `eyre` instead of having to use this specific `Report`.

As such, this PR is a major breaking change, especially for anyone using `DiagnosticReport` and company.

BREAKING CHANGES:
* `DiagnosticReport` is now just `Report`, and is a different, `eyre::Report`-like type.
* `DiagnosticResult` is now just `Result`.
* `.into_diagnostic()` now just transforms the error into a `Report`.
* `DiagnosticReportPrinter` has been replaced with `ReportHandler`
* `set_printer` has been replaced by `set_hook`
* `code` is now optional.
* `.into_diagnostic()` no longer takes a `code` argument.
* `#[diagnostic]` is now optional when deriving `Diagnostic`.
2021-09-04 21:22:46 -07:00