2019-05-10 18:59:12 +02:00
|
|
|
[package]
|
2019-05-17 01:39:58 +02:00
|
|
|
name = "nu"
|
2020-01-11 21:49:20 +01:00
|
|
|
version = "0.8.1"
|
2019-08-23 07:36:52 +02:00
|
|
|
authors = ["Yehuda Katz <wycats@gmail.com>", "Jonathan Turner <jonathan.d.turner@gmail.com>", "Andrés N. Robalino <andres@androbtech.com>"]
|
2019-05-16 23:46:24 +02:00
|
|
|
description = "A shell for the GitHub era"
|
2019-06-02 18:50:41 +02:00
|
|
|
license = "MIT"
|
2019-05-10 18:59:12 +02:00
|
|
|
edition = "2018"
|
2019-07-16 21:17:46 +02:00
|
|
|
readme = "README.md"
|
2019-06-27 06:56:48 +02:00
|
|
|
default-run = "nu"
|
2019-07-16 21:17:46 +02:00
|
|
|
repository = "https://github.com/nushell/nushell"
|
2019-09-29 21:03:51 +02:00
|
|
|
homepage = "https://www.nushell.sh"
|
2019-12-15 13:56:26 +01:00
|
|
|
documentation = "https://www.nushell.sh/book/"
|
2019-05-10 18:59:12 +02:00
|
|
|
|
2019-12-18 18:58:23 +01:00
|
|
|
[workspace]
|
|
|
|
|
|
|
|
members = [
|
|
|
|
"crates/nu-macros",
|
|
|
|
"crates/nu-errors",
|
|
|
|
"crates/nu-source",
|
|
|
|
"crates/nu_plugin_average",
|
|
|
|
"crates/nu_plugin_binaryview",
|
|
|
|
"crates/nu_plugin_fetch",
|
|
|
|
"crates/nu_plugin_inc",
|
|
|
|
"crates/nu_plugin_match",
|
|
|
|
"crates/nu_plugin_post",
|
|
|
|
"crates/nu_plugin_ps",
|
|
|
|
"crates/nu_plugin_str",
|
|
|
|
"crates/nu_plugin_sum",
|
|
|
|
"crates/nu_plugin_sys",
|
|
|
|
"crates/nu_plugin_textview",
|
|
|
|
"crates/nu_plugin_tree",
|
|
|
|
"crates/nu-protocol",
|
2019-12-27 14:30:14 +01:00
|
|
|
"crates/nu-plugin",
|
2019-12-18 18:58:23 +01:00
|
|
|
"crates/nu-parser",
|
|
|
|
"crates/nu-value-ext",
|
|
|
|
"crates/nu-build"
|
|
|
|
]
|
2019-11-21 15:33:14 +01:00
|
|
|
|
2019-05-10 18:59:12 +02:00
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
|
|
|
|
[dependencies]
|
2020-01-07 08:08:31 +01:00
|
|
|
nu-source = { version = "0.8.0", path = "./crates/nu-source" }
|
|
|
|
nu-plugin = { version = "0.8.0", path = "./crates/nu-plugin" }
|
|
|
|
nu-protocol = { version = "0.8.0", path = "./crates/nu-protocol" }
|
|
|
|
nu-errors = { version = "0.8.0", path = "./crates/nu-errors" }
|
|
|
|
nu-parser = { version = "0.8.0", path = "./crates/nu-parser" }
|
|
|
|
nu-value-ext = { version = "0.8.0", path = "./crates/nu-value-ext" }
|
|
|
|
nu_plugin_average = {version = "0.8.0", path = "./crates/nu_plugin_average", optional=true}
|
|
|
|
nu_plugin_binaryview = {version = "0.8.0", path = "./crates/nu_plugin_binaryview", optional=true}
|
|
|
|
nu_plugin_fetch = {version = "0.8.0", path = "./crates/nu_plugin_fetch", optional=true}
|
|
|
|
nu_plugin_inc = {version = "0.8.0", path = "./crates/nu_plugin_inc", optional=true}
|
|
|
|
nu_plugin_match = {version = "0.8.0", path = "./crates/nu_plugin_match", optional=true}
|
|
|
|
nu_plugin_post = {version = "0.8.0", path = "./crates/nu_plugin_post", optional=true}
|
|
|
|
nu_plugin_ps = {version = "0.8.0", path = "./crates/nu_plugin_ps", optional=true}
|
|
|
|
nu_plugin_str = {version = "0.8.0", path = "./crates/nu_plugin_str", optional=true}
|
|
|
|
nu_plugin_sum = {version = "0.8.0", path = "./crates/nu_plugin_sum", optional=true}
|
|
|
|
nu_plugin_sys = {version = "0.8.0", path = "./crates/nu_plugin_sys", optional=true}
|
|
|
|
nu_plugin_textview = {version = "0.8.0", path = "./crates/nu_plugin_textview", optional=true}
|
|
|
|
nu_plugin_tree = {version = "0.8.0", path = "./crates/nu_plugin_tree", optional=true}
|
|
|
|
nu-macros = { version = "0.8.0", path = "./crates/nu-macros" }
|
2019-12-04 22:14:52 +01:00
|
|
|
|
Extract core stuff into own crates
This commit extracts five new crates:
- nu-source, which contains the core source-code handling logic in Nu,
including Text, Span, and also the pretty.rs-based debug logic
- nu-parser, which is the parser and expander logic
- nu-protocol, which is the bulk of the types and basic conveniences
used by plugins
- nu-errors, which contains ShellError, ParseError and error handling
conveniences
- nu-textview, which is the textview plugin extracted into a crate
One of the major consequences of this refactor is that it's no longer
possible to `impl X for Spanned<Y>` outside of the `nu-source` crate, so
a lot of types became more concrete (Value became a concrete type
instead of Spanned<Value>, for example).
This also turned a number of inherent methods in the main nu crate into
plain functions (impl Value {} became a bunch of functions in the
`value` namespace in `crate::data::value`).
2019-11-26 03:30:48 +01:00
|
|
|
query_interface = "0.3.5"
|
|
|
|
typetag = "0.1.4"
|
2020-01-01 18:54:25 +01:00
|
|
|
rustyline = "5.0.6"
|
2019-12-08 18:56:21 +01:00
|
|
|
chrono = { version = "0.4.10", features = ["serde"] }
|
2019-08-31 23:19:59 +02:00
|
|
|
derive-new = "0.5.8"
|
2019-05-10 18:59:12 +02:00
|
|
|
prettytable-rs = "0.8.0"
|
2019-12-08 18:56:21 +01:00
|
|
|
itertools = "0.8.2"
|
2019-09-13 05:44:21 +02:00
|
|
|
ansi_term = "0.12.1"
|
2019-11-10 18:48:49 +01:00
|
|
|
nom = "5.0.1"
|
2019-05-11 09:00:33 +02:00
|
|
|
dunce = "1.0.0"
|
2020-01-17 21:35:48 +01:00
|
|
|
indexmap = { version = "1.3.1", features = ["serde-1"] }
|
2019-11-10 18:48:49 +01:00
|
|
|
byte-unit = "3.0.3"
|
|
|
|
base64 = "0.11"
|
|
|
|
futures-preview = { version = "=0.3.0-alpha.19", features = ["compat", "io-compat"] }
|
|
|
|
async-stream = "0.1.2"
|
2019-08-02 21:15:07 +02:00
|
|
|
futures_codec = "0.2.5"
|
2020-01-17 21:35:48 +01:00
|
|
|
num-traits = "0.2.11"
|
2019-05-24 20:48:33 +02:00
|
|
|
term = "0.5.2"
|
2019-05-25 21:07:52 +02:00
|
|
|
bytes = "0.4.12"
|
2019-08-07 19:49:11 +02:00
|
|
|
log = "0.4.8"
|
2019-08-23 05:29:08 +02:00
|
|
|
pretty_env_logger = "0.3.1"
|
2020-01-17 21:35:48 +01:00
|
|
|
serde = { version = "1.0.104", features = ["derive"] }
|
2019-08-31 16:22:45 +02:00
|
|
|
bson = { version = "0.14.0", features = ["decimal128"] }
|
2019-12-08 18:56:21 +01:00
|
|
|
serde_json = "1.0.44"
|
2019-08-23 05:29:08 +02:00
|
|
|
serde-hjson = "0.9.1"
|
2019-06-03 09:41:28 +02:00
|
|
|
serde_yaml = "0.8"
|
2019-12-08 18:56:21 +01:00
|
|
|
serde_bytes = "0.11.3"
|
2019-11-10 18:48:49 +01:00
|
|
|
getset = "0.0.9"
|
2019-10-15 21:54:46 +02:00
|
|
|
language-reporting = "0.4.0"
|
2019-06-01 07:50:16 +02:00
|
|
|
app_dirs = "1.2.1"
|
2019-07-19 22:11:49 +02:00
|
|
|
csv = "1.1"
|
2020-01-17 21:35:48 +01:00
|
|
|
toml = "0.5.6"
|
2019-06-01 19:00:42 +02:00
|
|
|
clap = "2.33.0"
|
2020-01-17 21:35:48 +01:00
|
|
|
git2 = { version = "0.11.0", default_features = false }
|
2019-07-29 09:46:24 +02:00
|
|
|
dirs = "2.0.2"
|
2019-08-01 23:00:08 +02:00
|
|
|
glob = "0.3.0"
|
2019-06-07 02:31:22 +02:00
|
|
|
ctrlc = "3.1.3"
|
2020-01-17 21:35:48 +01:00
|
|
|
roxmltree = "0.9.0"
|
2019-09-14 18:30:24 +02:00
|
|
|
nom_locate = "1.0.0"
|
2019-11-10 18:48:49 +01:00
|
|
|
nom-tracable = "0.4.1"
|
2019-07-29 09:46:24 +02:00
|
|
|
unicode-xid = "0.2.0"
|
2019-06-16 08:43:40 +02:00
|
|
|
serde_ini = "0.2.0"
|
2019-06-18 04:04:34 +02:00
|
|
|
subprocess = "0.1.18"
|
2019-11-10 18:48:49 +01:00
|
|
|
pretty-hex = "0.1.1"
|
|
|
|
hex = "0.4"
|
2019-07-05 00:17:18 +02:00
|
|
|
tempfile = "3.1.0"
|
2020-01-01 07:45:27 +01:00
|
|
|
ichwh = "0.2"
|
2019-08-16 07:47:47 +02:00
|
|
|
textwrap = {version = "0.11.0", features = ["term_size"]}
|
2020-01-17 21:35:48 +01:00
|
|
|
shellexpand = "1.1.1"
|
2019-08-30 21:07:07 +02:00
|
|
|
pin-utils = "0.1.0-alpha.4"
|
2020-01-17 21:35:48 +01:00
|
|
|
num-bigint = { version = "0.2.5", features = ["serde"] }
|
2019-09-01 18:20:31 +02:00
|
|
|
bigdecimal = { version = "0.1.0", features = ["serde"] }
|
2019-09-19 06:25:29 +02:00
|
|
|
serde_urlencoded = "0.6.1"
|
2019-10-19 00:41:24 +02:00
|
|
|
trash = "1.0.0"
|
2019-10-02 20:56:28 +02:00
|
|
|
regex = "1"
|
2019-10-28 15:46:50 +01:00
|
|
|
cfg-if = "0.1"
|
2019-11-16 21:02:26 +01:00
|
|
|
strip-ansi-escapes = "0.1.0"
|
2019-11-17 04:18:41 +01:00
|
|
|
calamine = "0.16"
|
2019-11-19 06:46:47 +01:00
|
|
|
umask = "0.1"
|
2019-12-08 18:56:21 +01:00
|
|
|
futures-util = "0.3.1"
|
2020-01-17 21:35:48 +01:00
|
|
|
termcolor = "1.1.0"
|
2019-12-09 19:39:51 +01:00
|
|
|
natural = "0.3.0"
|
2020-01-04 07:44:17 +01:00
|
|
|
parking_lot = "0.10.0"
|
2019-05-23 06:30:43 +02:00
|
|
|
|
2019-09-08 09:06:15 +02:00
|
|
|
clipboard = {version = "0.5", optional = true }
|
2019-10-21 17:18:43 +02:00
|
|
|
ptree = {version = "0.2" }
|
2020-01-17 21:35:48 +01:00
|
|
|
starship = { version = "0.33.1", optional = true}
|
2019-12-14 14:27:14 +01:00
|
|
|
heim = {version = "0.0.9", optional = true}
|
2019-12-10 01:05:40 +01:00
|
|
|
battery = {version = "0.7.5", optional = true}
|
|
|
|
syntect = {version = "3.2.0", optional = true }
|
|
|
|
onig_sys = {version = "=69.1.0", optional = true }
|
|
|
|
crossterm = {version = "0.10.2", optional = true}
|
|
|
|
futures-timer = {version = "1.0.2", optional = true}
|
2020-01-17 21:35:48 +01:00
|
|
|
url = {version = "2.1.1", optional = true}
|
2019-10-08 15:47:30 +02:00
|
|
|
|
2020-01-11 21:49:20 +01:00
|
|
|
[target.'cfg(unix)'.dependencies]
|
|
|
|
users = "0.9"
|
|
|
|
|
2019-08-29 01:32:58 +02:00
|
|
|
[features]
|
2020-01-13 07:17:56 +01:00
|
|
|
# Dummy executables
|
2020-01-12 22:44:22 +01:00
|
|
|
nu-dummies = []
|
|
|
|
|
2020-01-13 07:17:56 +01:00
|
|
|
default = ["nu-dummies", "sys", "ps", "textview", "inc", "str"]
|
|
|
|
stable = ["default", "starship-prompt", "binaryview", "match", "tree", "average", "sum", "post", "fetch", "clipboard"]
|
|
|
|
|
2019-12-19 18:18:06 +01:00
|
|
|
# Default
|
2019-12-10 01:05:40 +01:00
|
|
|
sys = ["heim", "battery"]
|
2019-12-10 04:57:55 +01:00
|
|
|
ps = ["heim", "futures-timer"]
|
2019-12-10 03:13:22 +01:00
|
|
|
textview = ["crossterm", "syntect", "onig_sys", "url"]
|
2019-12-29 06:17:24 +01:00
|
|
|
inc = ["nu_plugin_inc"]
|
2019-12-27 14:30:14 +01:00
|
|
|
str = ["nu_plugin_str"]
|
2019-12-10 01:05:40 +01:00
|
|
|
|
2019-12-19 18:18:06 +01:00
|
|
|
# Stable
|
|
|
|
average = ["nu_plugin_average"]
|
2019-12-04 18:51:20 +01:00
|
|
|
binaryview = ["nu_plugin_binaryview"]
|
2019-12-19 18:18:06 +01:00
|
|
|
fetch = ["nu_plugin_fetch"]
|
2019-12-09 19:39:51 +01:00
|
|
|
match = ["nu_plugin_match"]
|
2019-12-19 18:18:06 +01:00
|
|
|
post = ["nu_plugin_post"]
|
|
|
|
starship-prompt = ["starship"]
|
2019-12-09 19:39:51 +01:00
|
|
|
sum = ["nu_plugin_sum"]
|
2019-12-04 22:14:52 +01:00
|
|
|
trace = ["nu-parser/trace"]
|
2019-12-19 18:18:06 +01:00
|
|
|
tree = ["nu_plugin_tree"]
|
2019-08-29 01:32:58 +02:00
|
|
|
|
2019-08-27 23:45:18 +02:00
|
|
|
[dependencies.rusqlite]
|
2020-01-17 21:35:48 +01:00
|
|
|
version = "0.21.0"
|
2019-08-27 23:45:18 +02:00
|
|
|
features = ["bundled", "blob"]
|
|
|
|
|
2019-05-29 17:26:45 +02:00
|
|
|
[dev-dependencies]
|
|
|
|
pretty_assertions = "0.6.1"
|
2020-01-07 08:08:31 +01:00
|
|
|
nu-test-support = { version = "0.8.0", path = "./crates/nu-test-support" }
|
2019-06-27 06:56:48 +02:00
|
|
|
|
2019-10-11 20:39:05 +02:00
|
|
|
[build-dependencies]
|
2020-01-17 21:35:48 +01:00
|
|
|
toml = "0.5.6"
|
|
|
|
serde = { version = "1.0.104", features = ["derive"] }
|
2020-01-07 08:08:31 +01:00
|
|
|
nu-build = { version = "0.8.0", path = "./crates/nu-build" }
|
2019-10-11 20:39:05 +02:00
|
|
|
|
2019-06-27 06:56:48 +02:00
|
|
|
[lib]
|
|
|
|
name = "nu"
|
2019-12-29 06:17:24 +01:00
|
|
|
doctest = false
|
2019-06-27 06:56:48 +02:00
|
|
|
path = "src/lib.rs"
|
|
|
|
|
2020-01-12 22:44:22 +01:00
|
|
|
[[bin]]
|
|
|
|
name = "fail"
|
2020-01-13 07:17:56 +01:00
|
|
|
path = "crates/nu-test-support/src/dummies/fail.rs"
|
2020-01-12 22:44:22 +01:00
|
|
|
required-features = ["nu-dummies"]
|
|
|
|
|
|
|
|
[[bin]]
|
|
|
|
name = "chop"
|
2020-01-13 07:17:56 +01:00
|
|
|
path = "crates/nu-test-support/src/dummies/chop.rs"
|
2020-01-12 22:44:22 +01:00
|
|
|
required-features = ["nu-dummies"]
|
|
|
|
|
|
|
|
[[bin]]
|
|
|
|
name = "cococo"
|
2020-01-13 07:17:56 +01:00
|
|
|
path = "crates/nu-test-support/src/dummies/cococo.rs"
|
2020-01-12 22:44:22 +01:00
|
|
|
required-features = ["nu-dummies"]
|
|
|
|
|
2019-12-10 01:05:40 +01:00
|
|
|
# Core plugins that ship with `cargo install nu` by default
|
2019-12-10 04:57:55 +01:00
|
|
|
# Currently, Cargo limits us to installing only one binary
|
|
|
|
# unless we use [[bin]], so we use this as a workaround
|
2019-12-10 01:05:40 +01:00
|
|
|
[[bin]]
|
2019-12-10 04:57:55 +01:00
|
|
|
name = "nu_plugin_core_textview"
|
2019-12-18 17:35:17 +01:00
|
|
|
path = "src/plugins/nu_plugin_core_textview.rs"
|
2019-12-10 01:05:40 +01:00
|
|
|
required-features = ["textview"]
|
|
|
|
|
2019-12-10 01:59:13 +01:00
|
|
|
[[bin]]
|
2019-12-10 04:57:55 +01:00
|
|
|
name = "nu_plugin_core_inc"
|
2019-12-18 17:35:17 +01:00
|
|
|
path = "src/plugins/nu_plugin_core_inc.rs"
|
2019-12-10 01:59:13 +01:00
|
|
|
required-features = ["inc"]
|
|
|
|
|
2019-12-10 01:05:40 +01:00
|
|
|
[[bin]]
|
2019-12-10 04:57:55 +01:00
|
|
|
name = "nu_plugin_core_ps"
|
2019-12-18 17:35:17 +01:00
|
|
|
path = "src/plugins/nu_plugin_core_ps.rs"
|
2019-12-10 01:05:40 +01:00
|
|
|
required-features = ["ps"]
|
|
|
|
|
2019-12-10 01:59:13 +01:00
|
|
|
[[bin]]
|
2019-12-10 04:57:55 +01:00
|
|
|
name = "nu_plugin_core_str"
|
2019-12-18 17:35:17 +01:00
|
|
|
path = "src/plugins/nu_plugin_core_str.rs"
|
2019-12-10 01:59:13 +01:00
|
|
|
required-features = ["str"]
|
|
|
|
|
2019-12-10 01:05:40 +01:00
|
|
|
[[bin]]
|
2019-12-10 04:57:55 +01:00
|
|
|
name = "nu_plugin_core_sys"
|
2019-12-18 17:35:17 +01:00
|
|
|
path = "src/plugins/nu_plugin_core_sys.rs"
|
2019-12-10 01:05:40 +01:00
|
|
|
required-features = ["sys"]
|
|
|
|
|
|
|
|
# Main nu binary
|
2019-06-27 06:56:48 +02:00
|
|
|
[[bin]]
|
|
|
|
name = "nu"
|
|
|
|
path = "src/main.rs"
|