nushell/crates
Artemiy 19beafa865
Disable pipeline echo (#8292)
# Description

Change behavior of block evaluation to not print result of intermediate
commands.
Previously result of every but last pipeline in a block was printed to
stdout, and last one was returned

![image](https://user-images.githubusercontent.com/17511668/222550110-3f62fbed-432c-4b46-b9b1-4cb45a1f893e.png)
With this change results of intermediate pipelines are discarded after
they finish and the last one is returned as before:

![image](https://user-images.githubusercontent.com/17511668/222550346-f1e74f80-f6b6-4aa3-98d6-888ea4cb4915.png)
Now one should use `print` explicitly to print something to stdout

![image](https://user-images.githubusercontent.com/17511668/222923955-fda0d77b-41b4-4f91-a80f-12b0a1880c05.png)

**Note, that this behavior is not limited to functions!** The scope of
this change are all blocks. All of the below are executed as blocks and
thus exibited this behavior in the same way:

![image](https://user-images.githubusercontent.com/17511668/222924062-342c15de-4273-4bf5-8b39-fe6e3aa96076.png)

With this change outputs for all types of blocks are cleaned:

![image](https://user-images.githubusercontent.com/17511668/222924118-7d51c27e-04bb-43e5-8efe-38b484683bfe.png)


# User-Facing Changes

All types of blocks (function bodies, closures, `if` branches, `for` and
`loop` bodies e.t.c.) no longer print result of intermediate pipelines.

# 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` to check that you're using the standard code
style
- `cargo test --workspace` to check that all tests pass

# 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-03-17 11:53:46 +13:00
..
nu_plugin_custom_values Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu_plugin_example Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu_plugin_formats Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu_plugin_gstat Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu_plugin_inc Optional members in cell paths: Attempt 2 (#8379) 2023-03-15 20:50:58 -07:00
nu_plugin_python update nu_plugin_python due to signature changes (#8107) 2023-02-18 13:27:24 +00:00
nu_plugin_query Fix docs building error caused by missing end tag (#8477) 2023-03-16 19:41:19 +08:00
nu-cli fix: fix commandline when called with no arguments (#8207) 2023-03-16 17:45:35 -05:00
nu-cmd-lang fix: fix commandline when called with no arguments (#8207) 2023-03-16 17:45:35 -05:00
nu-color-config Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu-command Disable pipeline echo (#8292) 2023-03-17 11:53:46 +13:00
nu-engine Disable pipeline echo (#8292) 2023-03-17 11:53:46 +13:00
nu-explore Optional members in cell paths: Attempt 2 (#8379) 2023-03-15 20:50:58 -07:00
nu-glob Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu-json Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu-parser Fix parse of def with paren params (#8490) 2023-03-17 09:08:41 +13:00
nu-path Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu-plugin Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu-pretty-hex Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu-protocol Disable pipeline echo (#8292) 2023-03-17 11:53:46 +13:00
nu-system Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu-table Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu-term-grid Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu-test-support Bump to 0.77.1 development version (#8453) 2023-03-14 23:26:08 +01:00
nu-utils enable error reporting from enable_vt_processing (#8373) 2023-03-16 17:48:21 -05: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.