nushell/crates
JT 786ba3bf91
Input output checking (#9680)
# Description

This PR tights input/output type-checking a bit more. There are a lot of
commands that don't have correct input/output types, so part of the
effort is updating them.

This PR now contains updates to commands that had wrong input/output
signatures. It doesn't add examples for these new signatures, but that
can be follow-up work.

# User-Facing Changes

BREAKING CHANGE BREAKING CHANGE

This work enforces many more checks on pipeline type correctness than
previous nushell versions. This strictness may uncover incompatibilities
in existing scripts or shortcomings in the type information for internal
commands.

# 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 -A
clippy::needless_collect -A clippy::result_large_err` to check that
you're using the standard code style
- `cargo test --workspace` to check that all tests pass
- `cargo run -- -c "use std testing; testing run-tests --path
crates/nu-std"` 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.
-->
2023-07-14 15:20:35 +12:00
..
nu-cli Remove broken compile-time overload system (#9677) 2023-07-14 07:05:03 +12:00
nu-cmd-base Bump indexmap to 2.0 (#9643) 2023-07-10 10:30:01 +02:00
nu-cmd-dataframe Apply nightly clippy lints (#9654) 2023-07-12 00:00:31 +02:00
nu-cmd-extra Input output checking (#9680) 2023-07-14 15:20:35 +12:00
nu-cmd-lang Input output checking (#9680) 2023-07-14 15:20:35 +12:00
nu-color-config remove let-env, focus on mutating $env (#9574) 2023-07-01 07:57:51 +12:00
nu-command Input output checking (#9680) 2023-07-14 15:20:35 +12:00
nu-engine Fix broken constants in scopes (#9679) 2023-07-14 00:02:05 +03:00
nu-explore nu-explore/ Add handlers for HOME/END keys (#9666) 2023-07-12 14:13:35 -05:00
nu-glob Bump to 0.82.1 dev version (#9543) 2023-06-27 21:33:53 +02:00
nu-json Bump to 0.82.1 dev version (#9543) 2023-06-27 21:33:53 +02:00
nu-parser Input output checking (#9680) 2023-07-14 15:20:35 +12:00
nu-path Bump to 0.82.1 dev version (#9543) 2023-06-27 21:33:53 +02:00
nu-plugin Improve type hovers (#9515) 2023-06-29 05:19:48 +12:00
nu-pretty-hex Bump to 0.82.1 dev version (#9543) 2023-06-27 21:33:53 +02:00
nu-protocol Input output checking (#9680) 2023-07-14 15:20:35 +12:00
nu-std fix the std test commands calls in dev documents (#9535) 2023-07-12 18:26:47 +02:00
nu-system Use is-terminal crate for now (#9670) 2023-07-12 18:15:54 +02:00
nu-table Fix #9548 (#9552) 2023-06-28 17:52:04 -05:00
nu-term-grid Bump to 0.82.1 dev version (#9543) 2023-06-27 21:33:53 +02:00
nu-test-support Document fn pipeline() used with nu! tests (#9609) 2023-07-05 13:19:54 +02:00
nu-utils Move to using a safer shell integration default setting (#9600) 2023-07-04 06:26:49 +12:00
nu_plugin_custom_values Bump to 0.82.1 dev version (#9543) 2023-06-27 21:33:53 +02:00
nu_plugin_example Bump to 0.82.1 dev version (#9543) 2023-06-27 21:33:53 +02:00
nu_plugin_formats Bump indexmap to 2.0 (#9643) 2023-07-10 10:30:01 +02:00
nu_plugin_gstat Bump to 0.82.1 dev version (#9543) 2023-06-27 21:33:53 +02:00
nu_plugin_inc Bump to 0.82.1 dev version (#9543) 2023-06-27 21:33:53 +02:00
nu_plugin_python update nu_plugin_python due to signature changes (#8107) 2023-02-18 13:27:24 +00:00
nu_plugin_query Bump scraper from 0.16.0 to 0.17.1 (#9638) 2023-07-10 05:28:36 +00:00
README.md Remove old nushell/merge engine-q 2022-02-07 14:54:06 -05:00

Nushell core libraries and plugins

These sub-crates form both the foundation for Nu and a set of plugins which extend Nu with additional functionality.

Foundational libraries are split into two kinds of crates:

  • Core crates - those crates that work together to build the Nushell language engine
  • Support crates - a set of crates that support the engine with additional features like JSON support, ANSI support, and more.

Plugins are likewise also split into two types:

  • Core plugins - plugins that provide part of the default experience of Nu, including access to the system properties, processes, and web-connectivity features.
  • Extra plugins - these plugins run a wide range of different capabilities like working with different file types, charting, viewing binary data, and more.