mirror of
https://github.com/nushell/nushell.git
synced 2025-02-18 03:21:05 +01:00
# Description I noticed recently these timing discrepancies. I was thinking they would be nearly identical but they were not. ``` > nu --no-std-lib -n -c "$nu.startup-time" 13ms 686µs 209ns > nu --no-std-lib -n > $nu.startup-time 2ms 520µs 416ns ``` My research showed that if `-n` was passed with `-c`, then the `-n` was essentially being ignored. This PR corrects that. Also worthy of understanding, if `nu -c "some command"` is passed, the default env file is always loaded. I believe that's on purpose so that a NU_LIB_DIRS env is available. ## After this PR (on a different system) ``` > nu --no-std-lib -n -c "$nu.startup-time" 6ms 688µs 600ns > nu -n --no-std-lib > $nu.startup-time 6ms 661µs 800ns ``` # 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 -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 -- crates/nu-std/tests/run.nu` 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. --> |
||
---|---|---|
.. | ||
tests | ||
command.rs | ||
config_files.rs | ||
ide.rs | ||
logger.rs | ||
main.rs | ||
README.md | ||
run.rs | ||
signals.rs | ||
terminal.rs | ||
test_bins.rs | ||
tests.rs |
Nushell REPL
This directory contains the main Nushell REPL (read eval print loop) as part of the CLI portion of Nushell, which creates the nu
binary itself.
Current versions of the nu
binary will use the Nu argument parsing logic to parse the commandline arguments passed to nu
, leaving the logic here to be a thin layer around what the core libraries.