mirror of
https://github.com/nushell/nushell.git
synced 2024-11-25 09:53:43 +01:00
19beafa865
# 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. |
||
---|---|---|
.. | ||
src | ||
tests | ||
Cargo.toml | ||
LICENSE | ||
README.md |
nu-protocol
The nu-protocol crate holds the definitions of structs/traits that are used throughout Nushell. This gives us one way to expose them to many other crates, as well as make these definitions available to each other, without causing mutually recursive dependencies.