mirror of
https://github.com/nushell/nushell.git
synced 2025-08-09 06:55:36 +02:00
Better generic errors for plugins (and perhaps scripts) (#12236)
# Description This makes `LabeledError` much more capable of representing close to everything a `miette::Diagnostic` can, including `ShellError`, and allows plugins to generate multiple error spans, codes, help, etc. `LabeledError` is now embeddable within `ShellError` as a transparent variant. This could also be used to improve `error make` and `try/catch` to reflect `LabeledError` exactly in the future. Also cleaned up some errors in existing plugins. # User-Facing Changes Breaking change for plugins. Nicer errors for users.
This commit is contained in:
@ -1,7 +1,8 @@
|
||||
use eml_parser::eml::*;
|
||||
use eml_parser::EmlParser;
|
||||
use indexmap::map::IndexMap;
|
||||
use nu_plugin::{EngineInterface, EvaluatedCall, LabeledError, SimplePluginCommand};
|
||||
use nu_plugin::{EngineInterface, EvaluatedCall, SimplePluginCommand};
|
||||
use nu_protocol::LabeledError;
|
||||
use nu_protocol::{
|
||||
record, Category, PluginExample, PluginSignature, ShellError, Span, SyntaxShape, Type, Value,
|
||||
};
|
||||
|
@ -1,9 +1,9 @@
|
||||
use ical::parser::ical::component::*;
|
||||
use ical::property::Property;
|
||||
use indexmap::map::IndexMap;
|
||||
use nu_plugin::{EngineInterface, EvaluatedCall, LabeledError, SimplePluginCommand};
|
||||
use nu_plugin::{EngineInterface, EvaluatedCall, SimplePluginCommand};
|
||||
use nu_protocol::{
|
||||
record, Category, PluginExample, PluginSignature, ShellError, Span, Type, Value,
|
||||
record, Category, LabeledError, PluginExample, PluginSignature, ShellError, Span, Type, Value,
|
||||
};
|
||||
use std::io::BufReader;
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
use nu_plugin::{EngineInterface, EvaluatedCall, LabeledError, SimplePluginCommand};
|
||||
use nu_plugin::{EngineInterface, EvaluatedCall, SimplePluginCommand};
|
||||
use nu_protocol::{
|
||||
record, Category, PluginExample, PluginSignature, Record, ShellError, Type, Value,
|
||||
record, Category, LabeledError, PluginExample, PluginSignature, Record, ShellError, Type, Value,
|
||||
};
|
||||
|
||||
use crate::FromCmds;
|
||||
|
@ -1,9 +1,9 @@
|
||||
use ical::parser::vcard::component::*;
|
||||
use ical::property::Property;
|
||||
use indexmap::map::IndexMap;
|
||||
use nu_plugin::{EngineInterface, EvaluatedCall, LabeledError, SimplePluginCommand};
|
||||
use nu_plugin::{EngineInterface, EvaluatedCall, SimplePluginCommand};
|
||||
use nu_protocol::{
|
||||
record, Category, PluginExample, PluginSignature, ShellError, Span, Type, Value,
|
||||
record, Category, LabeledError, PluginExample, PluginSignature, ShellError, Span, Type, Value,
|
||||
};
|
||||
|
||||
use crate::FromCmds;
|
||||
|
Reference in New Issue
Block a user