nushell/crates
Bruce Mitchener 1943071d12
Simplify is_executable in nu-completion. (#3742)
On Windows, we used the `is-exeuctable` crate but on Unix, we
duplicated the check that it did, with one difference: We also
looked at whether or not it was a symlink.

The `is-executable` crate uses `std::fs::metadata` which follows
symlinks, so this scenario should never occur here, as it will
return the metadata for the target file.

Using the `is-executable` crate on both Unix and Windows lets us
make it non-optional. This lets us remove the `executable-support`
feature. (It is worth noting that this code didn't compile on
Windows when the `executable-support` feature was not specified.)

Right now, there is an alternate code path for `target_arch` being
`wasm32`. This isn't exactly correct as it should probably handle
something different for when the `target_os` is `wasi`.
2021-07-07 07:53:07 -05:00
..
nu-ansi-term Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu-cli nu-cli ctrl-c feature support. (#3718) 2021-06-30 19:45:27 -05:00
nu-command try to use regular trim commands as much as possible (#3743) 2021-07-07 07:51:52 -05:00
nu-completion Simplify is_executable in nu-completion. (#3742) 2021-07-07 07:53:07 -05:00
nu-data New take command (#3722) 2021-07-05 11:46:53 +12:00
nu-engine move lang command to $nu (#3720) 2021-07-01 13:09:50 -05:00
nu-errors Improve def parse errors (#3681) 2021-06-25 17:18:38 +12:00
nu-json Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu-parser Remove empty trace feature. (#3732) 2021-07-06 07:21:28 +12:00
nu-path Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu-plugin Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu-pretty-hex Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu-protocol New take command (#3722) 2021-07-05 11:46:53 +12:00
nu-source Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu-stream Remove empty trace feature. (#3732) 2021-07-06 07:21:28 +12:00
nu-table Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu-test-support Add pathvar command (#3670) 2021-06-25 15:58:37 +12:00
nu-value-ext Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_binaryview Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_chart Update minus, tui to remove crossterm 0.18 dep. (#3739) 2021-07-06 20:44:07 +12:00
nu_plugin_fetch Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_from_bson Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_from_mp4 Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_from_sqlite Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_inc Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_match Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_post documentation: consistent abbreviation for URL (#3684) 2021-06-25 09:14:20 -05:00
nu_plugin_ps Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_query_json Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_s3 Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_selector Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_start Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_sys Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_textview Always read textview input from stream (#3680) 2021-06-25 14:17:58 +12:00
nu_plugin_to_bson Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_to_sqlite Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_tree Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
nu_plugin_xpath Bump to 0.33.1 (#3671) 2021-06-23 19:57:41 +12:00
README.md Begin directory contrib docs and split commands (#3650) 2021-06-19 12:06:44 +12: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 differnt capabilities like working with different file types, charting, viewing binary data, and more.