nushell/crates
Darren Schroeder d717e8faeb
Add nu lib dirs default (#11248)
# Description

This PR is kind of two PRs in one because they were dependent on each
other.

PR1 -
3de58d4dc2
with update
7fcdb242d9
- This follows our mantra of having everything with defaults written in
nushell rust code. So, that if you run without a config, you get the
same behavior as with the default config/env files. This sets
NU_LIB_DIRS to $nu.config-path/scripts and sets NU_PLUGIN_DIRS to
$nu.config-path/plugins.

PR2 -
0e8ac876fd
- The benchmarks have been broke for some time and we didn't notice it.
This PR fixes that. It's dependent on PR1 because it was throwing errors
because PWD needed to be set to a valid folder and `$nu` did not exist
based on how the benchmark was setup.

I've tested the benchmarks and they run without error now and I've also
launched nushell as `nu -n --no-std-lib` and the env vars exist.

closes #11236

# 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` to
check that you're using the standard code style
- `cargo test --workspace` to check that all tests pass (on Windows make
sure to [enable developer
mode](https://learn.microsoft.com/en-us/windows/apps/get-started/developer-mode-features-and-debugging))
- `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-12-07 08:13:50 -06:00
..
nu_plugin_custom_values Bump version to 0.87.2 (#11114) 2023-11-20 20:31:10 +01:00
nu_plugin_example Bump version to 0.87.2 (#11114) 2023-11-20 20:31:10 +01:00
nu_plugin_formats Bump version to 0.87.2 (#11114) 2023-11-20 20:31:10 +01:00
nu_plugin_gstat Bump version to 0.87.2 (#11114) 2023-11-20 20:31:10 +01:00
nu_plugin_inc Bump version to 0.87.2 (#11114) 2023-11-20 20:31:10 +01:00
nu_plugin_python remove vectorize_over_list from python plugin (#9905) 2023-08-03 16:46:48 +02:00
nu_plugin_query Move more commands to opaque Record type (#11122) 2023-11-22 23:48:48 +01:00
nu-cli Convert Shellerror::GenericError to named fields (#11230) 2023-12-07 00:40:03 +01:00
nu-cmd-base Convert Shellerror::GenericError to named fields (#11230) 2023-12-07 00:40:03 +01:00
nu-cmd-dataframe Convert Shellerror::GenericError to named fields (#11230) 2023-12-07 00:40:03 +01:00
nu-cmd-extra Convert Shellerror::GenericError to named fields (#11230) 2023-12-07 00:40:03 +01:00
nu-cmd-lang Convert Shellerror::GenericError to named fields (#11230) 2023-12-07 00:40:03 +01:00
nu-color-config add shape ExternalResolved to show found externals via syntax highlighting in the repl (#11135) 2023-11-25 09:42:05 -06:00
nu-command Convert Shellerror::GenericError to named fields (#11230) 2023-12-07 00:40:03 +01:00
nu-engine Convert Shellerror::GenericError to named fields (#11230) 2023-12-07 00:40:03 +01:00
nu-explore Convert Shellerror::GenericError to named fields (#11230) 2023-12-07 00:40:03 +01:00
nu-glob Bump version to 0.87.2 (#11114) 2023-11-20 20:31:10 +01:00
nu-json Bump version to 0.87.2 (#11114) 2023-11-20 20:31:10 +01:00
nu-lsp Upgrade lsp-server Dependency (#11252) 2023-12-06 17:19:03 -06:00
nu-parser Match ++= capabilities with ++ (#11130) 2023-12-07 05:46:37 +08:00
nu-path Bump version to 0.87.2 (#11114) 2023-11-20 20:31:10 +01:00
nu-plugin Convert Shellerror::GenericError to named fields (#11230) 2023-12-07 00:40:03 +01:00
nu-pretty-hex Bump version to 0.87.2 (#11114) 2023-11-20 20:31:10 +01:00
nu-protocol Convert Shellerror::GenericError to named fields (#11230) 2023-12-07 00:40:03 +01:00
nu-std fix nu-std README (#11244) 2023-12-06 16:26:02 +01:00
nu-system Bump procfs to 0.16.0 (#11115) 2023-11-20 21:22:35 +01:00
nu-table Convert Shellerror::GenericError to named fields (#11230) 2023-12-07 00:40:03 +01:00
nu-term-grid Bump version to 0.87.2 (#11114) 2023-11-20 20:31:10 +01:00
nu-test-support Bump version to 0.87.2 (#11114) 2023-11-20 20:31:10 +01:00
nu-utils Add nu lib dirs default (#11248) 2023-12-07 08:13:50 -06: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.