nushell/crates
Stefan Holderbach 971f9ae0f0
Skip strum in regular nu-protocol build (#9445)
# Description
`derive(EnumIter)` is only required to run completeness tests.
Thus make the derive conditional on test and move `strum` and
`strum_macros` to the dev dependencies.

## Is it worth it?

Removing this derive does not change the binary size (checked via `cargo
bloat --crates` from `cargo-bloat`).
Compile time change is below a second so hard to judge based on a single
run of `cargo clean --profile dev; cargo build --timings`
Unsure if this negatively impacts how incremental compilation can
recompile when you switch between `cargo build`/`run` and `cargo test`
in your local workflow.

To get rid of `strum`/`strum_macros` as a proc macro crate we would need
to also remove it from `reedline`.
Further more a crate in the `polars` dependency tree uses `strum`
(curently not as relevant for the 1.0 build).
2023-06-25 20:28:37 +02:00
..
nu_plugin_custom_values Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu_plugin_example Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu_plugin_formats update ini dependency (#9426) 2023-06-13 13:33:00 -05:00
nu_plugin_gstat Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu_plugin_inc Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu_plugin_python update nu_plugin_python due to signature changes (#8107) 2023-02-18 13:27:24 +00:00
nu_plugin_query revert: move to ahash (#9464) 2023-06-18 15:27:57 +12:00
nu-cli cratification: move the bytes command to nu-cmd-extra (#9509) 2023-06-23 12:23:08 -07:00
nu-cmd-base cratification: move the bytes command to nu-cmd-extra (#9509) 2023-06-23 12:23:08 -07:00
nu-cmd-dataframe revert: move to ahash (#9464) 2023-06-18 15:27:57 +12:00
nu-cmd-extra Modify the bits command in nu-cmd-extra to improve visibility (#9516) 2023-06-23 21:41:14 -07:00
nu-cmd-lang Test examples of use (#9032) 2023-06-25 07:43:48 -05:00
nu-color-config revert: move to ahash (#9464) 2023-06-18 15:27:57 +12:00
nu-command add the ability to combine columns with detect columns (#9511) 2023-06-23 16:19:08 -05:00
nu-engine split $nu variable into scope commands and simpler $nu (#9487) 2023-06-21 09:33:01 +12:00
nu-explore nu-table/ Fix indexing issue for table --expand (#9484) 2023-06-20 20:27:00 +12:00
nu-glob Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu-json Apply nightly clippy fixes (#9482) 2023-06-20 10:17:33 +02:00
nu-parser Better error message if env var is used as var (#9522) 2023-06-26 05:59:56 +12:00
nu-path make *dots* tests easier to read (#9467) 2023-06-20 20:28:10 +12:00
nu-plugin revert: move to ahash (#9464) 2023-06-18 15:27:57 +12:00
nu-pretty-hex Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu-protocol Skip strum in regular nu-protocol build (#9445) 2023-06-25 20:28:37 +02:00
nu-std split $nu variable into scope commands and simpler $nu (#9487) 2023-06-21 09:33:01 +12:00
nu-system Bump once_cell from 1.17.1 to 1.18.0 (#9474) 2023-06-19 06:16:00 +00:00
nu-table nu-table/ Fix indexing issue for table --expand (#9484) 2023-06-20 20:27:00 +12:00
nu-term-grid Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu-test-support Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu-utils Add custom datetime format through strftime strings (#9500) 2023-06-23 15:05:04 -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.