[oximeter] Use fmt::Display
for TOML errors
#6365
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently, the
oximeter::use_timeseries!
macro usesfmt::Debug
to display errors generating timeseries types, such as errors parsing the TOML schema. This results in kind of hard to interpret error output. For example:Note that the
toml
crate very kindly tries to give us a nice ASCII graphic pointing at the location where the parse error occurred, but because the strings are formatted usingfmt::Debug
, it's not particularly comprehensible.This commit changes the macro to use
fmt::Display
, instead, so that the multi-line diagnostic output from the TOML parser is more readable. Now, it looks like this:I cherry-picked this change from #6354, since it seemed like a self-contained change that could easily land on its own.