Commit Graph

140 Commits

Author SHA1 Message Date
Kat Marchán 0a4cf4ad24
fix(tests): add Display impl to diagnostic_source example 2022-05-05 12:44:49 -07:00
Kat Marchán a03bfe2e1b
docs: document new diagnostic_source feature 2022-05-05 08:56:27 -07:00
Matthias Beyer bc449c8426
feat(diagnostic_source): add protocol method for Diagnostic-aware source chaining (#165)
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2022-05-05 08:32:37 -07:00
Matthias Beyer 33c8903313
fix: cargo fmt (#168)
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2022-05-05 08:30:13 -07:00
Marcel Müller 2451ad6a96
docs(IntoDiagnostic): Warn of potential data loss (#161)
Fixes: https://github.com/zkat/miette/issues/160

This patch expands on the effects of using IntoDiagnostic and warns
users of potential loss of information when using it on `Diagnostic`
types.
2022-04-23 11:35:39 -07:00
Kat Marchán 1a36fa7ec8
fix(graphical): fix issue with duplicate labels when span len is 0 (#159)
Fixes: https://github.com/zkat/miette/issues/130
2022-04-22 19:31:51 -07:00
Kat Marchán 084ed138b7
feat(related): print related prefixes according to severity (#158)
Fixes: https://github.com/zkat/miette/issues/139
2022-04-22 18:55:45 -07:00
Kat Marchán 1e1d615253 feat(spans): add From shorthand for zero-length SourceSpans 2022-04-22 18:44:09 -07:00
Kat Marchán 9da62cd05d feat(label): use macro magic instead of optional flag for optional labels 2022-04-17 22:43:01 -07:00
Kat Marchán ea55f458fa feat(help): allow non-option values in #[help] fields 2022-04-17 22:43:01 -07:00
Kat Marchán 23ee3642d1
feat(labels): allow optional labels in derive macro (#153)
Fixes: https://github.com/zkat/miette/issues/110
2022-04-17 19:41:10 -07:00
Kat Marchán 45093c2f58
feat(help): update macro to allow optional help text (#152)
Fixes: https://github.com/zkat/miette/issues/148
2022-04-17 18:19:28 -07:00
Rain 5e54b29acf
feat(spans): make SourceSpan implement Copy (#151)
SourceSpan is just a pair of usizes, so it's cheap to copy.
2022-04-17 15:27:11 -07:00
Rain 97197601ee
fix(theme): set correct field in MietteHandlerOpts::ansi_colors (#150) 2022-04-13 17:21:22 -07:00
Kat Marchán 37cda4a3a4
fix(fmt): cargo fmt 2022-04-03 20:31:18 -07:00
Kat Marchán b98b098282
fix(clippy): misc clippy fixes 2022-04-03 18:33:51 -07:00
Finomnis b4a9d4cd9b
feat(report): Add conversion from Report to Box<dyn Error> (#149) 2022-04-03 13:10:32 -07:00
Bartek Iwańczuk 5151411ebb
feat: add fancy-no-backtrace feature (#144) 2022-03-22 12:30:52 -07:00
Christopher Durham 70e84f9a01
fix(handler): Apply MietteHandlerOpts::graphical_theme (#138)
Fixes: https://github.com/zkat/miette/issues/134
2022-03-18 16:30:00 -07:00
Christopher Durham b6a6cc9e75
feat(reporter): Allow GraphicalReportHandler to disable url display (#137) 2022-03-18 16:28:54 -07:00
Christopher Durham 209275d437
fix(colors): handler_opts.color(false) should disable color (#133) 2022-03-17 20:35:45 -07:00
Moritz Mœller 5d23c0d61d
fix(docs): Docs overhaul (#124)
* Fixed/formatted all intradoc links. Various other small doc fixes/typography/etc.

* Clarified semantic similarity with anyhow/eyre types/macros.

* Removed unused MietteError::SetPrinterFailure.

* README now generaed from lib.rs via `cargo readme`.

* More doc fixes, made ErrorHook type public.

* Indentation (docs).
2022-02-25 08:39:18 -08:00
Paul Colomiets 50bcec909a
fix(handlers): source code propagation for JSON handler (#122)
A part of fix of #99, follow up of #117
2022-02-22 16:06:29 -08:00
Paul Colomiets 75d4505e7d
feat(derive): allow `Report` in `related` (#121)
Fixes: #119
2022-02-21 19:12:37 -08:00
Paul Colomiets 3a17fceabb feat(handlers): propagate source code to related errors
Fixes #99
2022-02-19 16:58:48 -08:00
Paul Colomiets 50519264d4 feat(report): add `with_source_code`
Fixes #64
2022-02-19 16:58:48 -08:00
Kat Marchán 5c085b39e2
fix(graphical): boolean was messing up graphical display 2022-02-17 22:25:05 -08:00
Kyle Brown 5b8b5478b6
feat(derive): Make derive macro `diagnostic` attribute more flexible. (#115)
Fixes: #114 

* Improved defaulting

* Added correct combining logic
Added variable number of diagnostic attributes

* Error handling, testing, and docs improvements

Co-authored-by: Kyle Brown <kyleb@liquidrocketry.com>
2022-02-17 22:04:03 -08:00
Paul Colomiets 2649fd27c4
feat(Report): adds `.context()` method to the `Report` (#109)
Techically there was a hidden undocumented `context` method. But it was
just copied from the `eyre` and there is no evidence that it was used by
any user in miette (the method was an alias for `.handler()`).

Fixes #108
2022-01-17 17:16:08 -08:00
Paul Colomiets f158f4e370
fix(handlers): Fix label position (#107)
Fixes #106

While fixing the bug I've also extended the handler to print not just
where label starts but also where label ends.

Also implements #97, but for narratabble handler only.

This adds dependency on `unicode-width`, but it was already in the
dependency chain (`textwidth` depends on it). Although, previously it
was only for `"fancy"` feature, now it always required since narratable
handler is supported without `"fancy"`.
2022-01-17 11:07:29 -08:00
Kat Marchán 9dcce5f1bd
fix(colors): treat no-color mode as no-color instead of narratable (#94)
Fixes: https://github.com/zkat/miette/issues/93

BREAKING CHANGE: NO_COLOR no longer triggers the narrated handler. Use
NO_GRAPHICS instead.
2022-01-08 09:11:19 -08:00
Kat Marchán 51146535f5
fix(deps): switch to terminal_size 2022-01-07 17:47:56 -08:00
Paul Colomiets c205d2e71b
docs: fix mentions of eyre and DiagnosticError (#100)
Note: `DiagnosticError` is a private type, `Report` returned from
`into_diagnostic()` instead.
2022-01-07 17:35:48 -08:00
Paul Colomiets 645ef6a1b6
fix(json): proper escapes for JSON strings (#101)
Includes two fixes:
1. Things like `\n` are not doubly-escaped any more
2. The backslash `\` itself in the source is escaped
2022-01-07 17:35:24 -08:00
Paul Colomiets 52e5ec8064
fix(chain): correct `Chain` structure exported (#102)
This fixes all current complier and clippy warnings.
2022-01-07 17:34:39 -08:00
dvermd 53b246829a
feat(handlers): Add JSON handler (#90) 2021-11-15 08:49:22 -08:00
Kirill Vasiltsov 1f70140c2e
feat(tabs): Add replace tabs with spaces option (#82)
Fixes: https://github.com/zkat/miette/issues/73
2021-10-05 21:05:57 -07:00
Antoine Muller cb5a919deb
fix(read_span): prevent multilines MietteSpanContents from skipping lines (#81)
Fixes: https://github.com/zkat/miette/issues/76
2021-10-05 21:05:50 -07:00
Coenen Benjamin 0169fe20e7
feat(SourceSpan): add impl From<Range> (#78)
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2021-10-01 12:02:39 -07:00
Kat Marchán bb25edf019
docs: fix doctests 2021-09-26 13:00:39 -07:00
Kat Marchán 47e4d4d05c
docs: add docs for handler options 2021-09-26 12:45:18 -07:00
Kat Marchán 3213fa610a feat(narrated): global footer and related diagnostics support 2021-09-22 16:34:21 -07:00
Kat Marchán 612967d381 fix(deps): remove dep on itertools 2021-09-22 16:34:21 -07:00
Kat Marchán fbf6664ef5 feat(narrated): updated narrated handler 2021-09-22 16:34:21 -07:00
Kat Marchán b33084bdbf feat(handler): context lines config support 2021-09-22 16:34:21 -07:00
Kat Marchán b10693a91c tests: fix doctests and such 2021-09-22 16:34:21 -07:00
Kat Marchán eea5c29935 fix(read_span): fix off-by-one issue 2021-09-22 16:34:21 -07:00
Kat Marchán 77c5899bbd fix(graphical): render URLs even without a code 2021-09-22 16:34:21 -07:00
Kat Marchán ce0dea541a fix(theme): remove code styling 2021-09-22 16:34:21 -07:00
Kat Marchán 717f8e3d88 feat(graphical): add theming customization for linums 2021-09-22 16:34:21 -07:00