nushell/crates/nu-protocol/src
Darren Schroeder 8c8f795e9e add rendered and json error messages in try/catch (#14082)
# Description

This PR adds a couple more options for dealing with try/catch errors. It
adds a `json` version of the error and a `rendered` version of the
error. It also respects the error_style configuration point.

![image](https://github.com/user-attachments/assets/32574f07-f511-40c0-8b57-de5f6f13a9c4)


# User-Facing Changes
<!-- List of all changes that impact the user experience here. This
helps us keep track of breaking changes. -->

# Tests + Formatting
<!--
Don't forget to add tests that cover your changes.

Make sure you've run and fixed any issues with these commands:

- `cargo fmt --all -- --check` to check standard code formatting (`cargo
fmt --all` applies these changes)
- `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used` to
check that you're using the standard code style
- `cargo test --workspace` to check that all tests pass (on Windows make
sure to [enable developer
mode](https://learn.microsoft.com/en-us/windows/apps/get-started/developer-mode-features-and-debugging))
- `cargo run -- -c "use toolkit.nu; toolkit test stdlib"` to run the
tests for the standard library

> **Note**
> from `nushell` you can also use the `toolkit` as follows
> ```bash
> use toolkit.nu # or use an `env_change` hook to activate it
automatically
> toolkit check pr
> ```
-->

# After Submitting
<!-- If your PR had any user-facing changes, update [the
documentation](https://github.com/nushell/nushell.github.io) after the
PR is merged, if necessary. This will help us keep the docs up to date.
-->
2024-10-20 23:14:11 +02:00
..
ast add like and not-like operators as synonyms for the regex operators =~ and !~ (#14072) 2024-10-20 23:12:57 +02:00
config change display_error.exit_code to false (#13873) 2024-10-14 09:57:30 -05:00
debugger Make SpanId and RegId also use new ID struct (#13963) 2024-10-01 13:23:27 +02:00
engine Fix return setting last exit code (#14120) 2024-10-18 03:05:58 +00:00
errors add rendered and json error messages in try/catch (#14082) 2024-10-20 23:14:11 +02:00
ir Fix try printing when it is not the last pipeline element (#13992) 2024-10-12 14:37:10 +08:00
pipeline Fix try printing when it is not the last pipeline element (#13992) 2024-10-12 14:37:10 +08:00
plugin Change the usage misnomer to "description" (#13598) 2024-08-22 12:02:08 +02:00
process Fix non-zero exit code errors in middle of pipeline (#13899) 2024-10-02 06:04:18 -05:00
value Rework sorting and add cell path and closure comparators to sort-by (#13154) 2024-10-09 19:18:16 -07:00
alias.rs Change the usage misnomer to "description" (#13598) 2024-08-22 12:02:08 +02:00
did_you_mean.rs Improve case insensitivity consistency (#10884) 2023-11-08 23:58:54 +01:00
eval_base.rs Replace raw usize IDs with new types (#13832) 2024-09-30 13:20:15 +02:00
eval_const.rs Reduce duplication in history path construction (#13475) 2024-10-11 07:51:50 -05:00
example.rs Overhaul the plugin cache file with a new msgpack+brotli format (#12579) 2024-04-21 07:36:26 -05:00
id.rs Make SpanId and RegId also use new ID struct (#13963) 2024-10-01 13:23:27 +02:00
lev_distance.rs Rework for new clippy lints (#12736) 2024-05-02 19:29:03 +02:00
lib.rs Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
module.rs use command: Don't create a variable with empty record if it doesn't define any constants (#14051) 2024-10-20 23:12:57 +02:00
parser_path.rs Replace raw usize IDs with new types (#13832) 2024-09-30 13:20:15 +02:00
signature.rs Fix panic on too few arguments for custom function (#10395) 2024-09-27 23:39:45 +08:00
span.rs fix --ide-ast when there are errors (#13737) 2024-09-06 07:17:40 +08:00
syntax_shape.rs Make parsing for unknown args in known externals like normal external calls (#13414) 2024-07-21 01:32:36 -07:00
ty.rs Refactor config updates (#13802) 2024-10-11 18:40:32 +02:00