nushell/crates/nu-cli/src
Darren Schroeder d64e381085
add some startup performance metrics (#7851)
# Description

This PR changes the old performance logging with `Instant` timers. I'm
not sure if this is the best way to do it but it does help reveal where
time is being spent on startup. This is what it looks like when you
launch nushell with `cargo run -- --log-level info`. I'm using the
`info` log level exclusively for performance monitoring at this point.

![image](https://user-images.githubusercontent.com/343840/214372903-fdfa9c99-b846-47f3-8faf-bd6ed98df3a9.png)
## After Startup

Since you're in the repl, you can continue running commands. Here's the
output of `ls`, for instance.

![image](https://user-images.githubusercontent.com/343840/214373035-4d2f6e2d-5c1d-43d3-b997-51d79d496ba3.png)
Note that the above screenshots are in debug mode, so they're much
slower than release.

# User-Facing 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` 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-01-24 14:28:59 -06:00
..
completions Reduce number of match calls (#7813) 2023-01-21 15:47:00 +02:00
menus Reduce again the number of match calls (#7815) 2023-01-24 12:23:42 +01:00
commands.rs Remove perf flag to streamline logging configuration (#6834) 2022-10-21 10:20:21 -05:00
config_files.rs add some startup performance metrics (#7851) 2023-01-24 14:28:59 -06:00
eval_file.rs Clean up nu-cli/src/eval_file.rs (#7804) 2023-01-20 13:45:34 -08:00
lib.rs Split merging of parser delta and stack environment (#6005) 2022-07-14 17:09:27 +03:00
nu_highlight.rs Remove engine_state clones in REPL eval (#7713) 2023-01-10 17:22:32 -08:00
print.rs Add more input/output type annotations (#7532) 2022-12-21 20:20:46 +01:00
prompt_update.rs Reduce again the number of match calls (#7815) 2023-01-24 12:23:42 +01:00
prompt.rs Reduce number of match calls (#7813) 2023-01-21 15:47:00 +02:00
reedline_config.rs Reduce again the number of match calls (#7815) 2023-01-24 12:23:42 +01:00
repl.rs add some startup performance metrics (#7851) 2023-01-24 14:28:59 -06:00
syntax_highlight.rs Support redirect err and out to different streams (#7685) 2023-01-12 10:22:30 +01:00
util.rs add some startup performance metrics (#7851) 2023-01-24 14:28:59 -06:00
validation.rs Remove engine_state clones in REPL eval (#7713) 2023-01-10 17:22:32 -08:00