diff --git a/Cargo.lock b/Cargo.lock index 0f779dfed..ff4432bd4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3309,98 +3309,24 @@ dependencies = [ name = "nu-cli" version = "0.33.1" dependencies = [ - "Inflector", - "arboard", - "async-recursion", - "async-trait", - "base64 0.13.0", - "bigdecimal", - "byte-unit", - "bytes 1.0.1", - "calamine", - "chrono", - "chrono-tz", - "codespan-reporting", - "csv", - "ctrlc", - "derive-new", - "directories-next", - "dirs-next", - "dtparse", - "dunce", - "eml-parser", - "encoding_rs", - "filesize", - "fs_extra", - "futures 0.3.15", - "futures-util", - "futures_codec", - "getset", - "glob", - "htmlescape", - "ical", "indexmap", "log 0.4.14", - "meval", "nu-ansi-term", "nu-command", "nu-completion", "nu-data", "nu-engine", "nu-errors", - "nu-json", "nu-parser", - "nu-plugin", - "nu-pretty-hex", "nu-protocol", "nu-source", "nu-stream", - "nu-table", - "nu-test-support", - "nu-value-ext", - "num-bigint 0.3.2", - "num-format", - "num-traits 0.2.14", - "parking_lot 0.11.1", - "pin-utils", "pretty_env_logger", - "ptree", - "query_interface", - "quick-xml 0.21.0", - "quickcheck", - "quickcheck_macros", - "rand 0.8.4", - "rayon", - "regex 1.5.4", - "roxmltree", - "rusqlite", - "rust-embed", "rustyline", "serde 1.0.126", - "serde_bytes", - "serde_ini", - "serde_json", - "serde_urlencoded", "serde_yaml", - "sha2 0.9.5", "shadow-rs", "strip-ansi-escapes", - "sxd-document", - "sxd-xpath", - "tempfile", - "term 0.7.0", - "term_size", - "termcolor", - "titlecase", - "toml", - "trash", - "umask", - "unicode-segmentation", - "url", - "users", - "uuid", - "which", - "zip", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index c8cc69fc7..b4769c08b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -66,12 +66,12 @@ rstest = "0.10.0" [build-dependencies] [features] -ctrlc-support = ["nu-cli/ctrlc", "nu-command/ctrlc"] -ptree-support = ["nu-cli/ptree", "nu-command/ptree"] +ctrlc-support = ["nu-command/ctrlc"] +ptree-support = ["nu-command/ptree"] rustyline-support = ["nu-cli/rustyline-support", "nu-command/rustyline-support"] -term-support = ["nu-cli/term", "nu-command/term"] -uuid-support = ["nu-cli/uuid_crate", "nu-command/uuid_crate"] -which-support = ["nu-cli/which", "nu-command/which", "nu-engine/which"] +term-support = ["nu-command/term"] +uuid-support = ["nu-command/uuid_crate"] +which-support = ["nu-command/which", "nu-engine/which"] executable-support = ["nu-completion/is_executable"] default = [ @@ -128,20 +128,19 @@ textview = ["nu_plugin_textview"] binaryview = ["nu_plugin_binaryview"] bson = ["nu_plugin_from_bson", "nu_plugin_to_bson"] chart = ["nu_plugin_chart"] -clipboard-cli = ["nu-cli/clipboard-cli", "nu-command/clipboard-cli"] +clipboard-cli = ["nu-command/clipboard-cli"] query-json = ["nu_plugin_query_json"] s3 = ["nu_plugin_s3"] selector = ["nu_plugin_selector"] sqlite = ["nu_plugin_from_sqlite", "nu_plugin_to_sqlite"] start = ["nu_plugin_start"] trash-support = [ - "nu-cli/trash-support", "nu-command/trash-support", "nu-engine/trash-support", ] tree = ["nu_plugin_tree"] xpath = ["nu_plugin_xpath"] -zip-support = ["nu-cli/zip", "nu-command/zip"] +zip-support = ["nu-command/zip"] #This is disabled in extra for now table-pager = ["nu-command/table-pager"] diff --git a/crates/nu-cli/Cargo.toml b/crates/nu-cli/Cargo.toml index 92fb0456a..d3c9c9c16 100644 --- a/crates/nu-cli/Cargo.toml +++ b/crates/nu-cli/Cargo.toml @@ -1,11 +1,11 @@ [package] authors = ["The Nu Project Contributors"] -build = "build.rs" description = "CLI for nushell" edition = "2018" license = "MIT" name = "nu-cli" version = "0.33.1" +build = "build.rs" [lib] doctest = false @@ -16,115 +16,25 @@ nu-command = { version="0.33.1", path="../nu-command" } nu-data = { version="0.33.1", path="../nu-data" } nu-engine = { version="0.33.1", path="../nu-engine" } nu-errors = { version="0.33.1", path="../nu-errors" } -nu-json = { version="0.33.1", path="../nu-json" } nu-parser = { version="0.33.1", path="../nu-parser" } -nu-plugin = { version="0.33.1", path="../nu-plugin" } nu-protocol = { version="0.33.1", path="../nu-protocol" } nu-source = { version="0.33.1", path="../nu-source" } nu-stream = { version="0.33.1", path="../nu-stream" } -nu-table = { version="0.33.1", path="../nu-table" } -nu-test-support = { version="0.33.1", path="../nu-test-support" } -nu-value-ext = { version="0.33.1", path="../nu-value-ext" } nu-ansi-term = { version="0.33.1", path="../nu-ansi-term" } -nu-pretty-hex = { version="0.33.1", path="../nu-pretty-hex" } -Inflector = "0.11" -arboard = { version="1.1.0", optional=true } -async-recursion = "0.3.2" -async-trait = "0.1.42" -base64 = "0.13.0" -bigdecimal = { version="0.2.0", features=["serde"] } -byte-unit = "4.0.9" -bytes = "1.0.1" -calamine = "0.17.0" -chrono = { version="0.4.19", features=["serde"] } -chrono-tz = "0.5.3" -codespan-reporting = "0.11.0" -csv = "1.1.5" -ctrlc = { version="3.1.7", optional=true } -derive-new = "0.5.8" -directories-next = "2.0.0" -dirs-next = "2.0.0" -dtparse = "1.2.0" -dunce = "1.0.1" -eml-parser = "0.1.0" -encoding_rs = "0.8.28" -filesize = "0.2.0" -fs_extra = "1.2.0" -futures = { version="0.3.12", features=["compat", "io-compat"] } -futures-util = "0.3.12" -futures_codec = "0.4.1" -getset = "0.1.1" -glob = "0.3.0" -htmlescape = "0.3.1" -ical = "0.7.0" -indexmap = { version="1.6.1", features=["serde-1"] } +indexmap ="1.6.1" log = "0.4.14" pretty_env_logger = "0.4.0" -meval = "0.2.0" -num-bigint = { version="0.3.1", features=["serde"] } -num-format = { version="0.4.0", features=["with-num-bigint"] } -num-traits = "0.2.14" -parking_lot = "0.11.1" -pin-utils = "0.1.0" -ptree = { version="0.3.1", optional=true } -query_interface = "0.3.5" -quick-xml = "0.21.0" -rand = "0.8.3" -rayon = "1.5.0" -regex = "1.4.3" -roxmltree = "0.14.0" -rust-embed = "5.9.0" -rustyline = { version="8.1.0", optional=true } -serde = { version="1.0.123", features=["derive"] } -serde_bytes = "0.11.5" -serde_ini = "0.2.0" -serde_json = "1.0.61" -serde_urlencoded = "0.7.0" -serde_yaml = "0.8.16" -sha2 = "0.9.3" strip-ansi-escapes = "0.1.0" -sxd-document = "0.3.2" -sxd-xpath = "0.4.2" -tempfile = "3.2.0" -term = { version="0.7.0", optional=true } -term_size = "0.3.2" -termcolor = "1.1.2" -titlecase = "1.1.0" -toml = "0.5.8" -trash = { version="1.3.0", optional=true } -unicode-segmentation = "1.7.1" -url = "2.1.1" -uuid_crate = { package="uuid", version="0.8.2", features=["v4"], optional=true } -which = { version="4.0.2", optional=true } -zip = { version="0.5.9", optional=true } +rustyline = { version="8.1.0", optional=true } shadow-rs = { version="0.5", default-features=false, optional=true } - -[target.'cfg(unix)'.dependencies] -umask = "1.0.0" -users = "0.11.0" - -# TODO this will be possible with new dependency resolver -# (currently on nightly behind -Zfeatures=itarget): -# https://github.com/rust-lang/cargo/issues/7914 -#[target.'cfg(not(windows))'.dependencies] -#num-format = {version = "0.4", features = ["with-system-locale"]} - -[dependencies.rusqlite] -features = ["bundled", "blob"] -optional = true -version = "0.25.3" +serde = { version="1.0.123", features=["derive"] } +serde_yaml = "0.8.16" [build-dependencies] shadow-rs = "0.5" -[dev-dependencies] -quickcheck = "1.0.3" -quickcheck_macros = "1.0.0" - [features] default = ["shadow-rs"] -clipboard-cli = ["arboard"] rustyline-support = ["rustyline", "nu-engine/rustyline-support"] stable = [] -trash-support = ["trash"] diff --git a/crates/nu-cli/assets/228_themes.zip b/crates/nu-cli/assets/228_themes.zip deleted file mode 100644 index eca629d50..000000000 Binary files a/crates/nu-cli/assets/228_themes.zip and /dev/null differ diff --git a/crates/nu-cli/src/cli.rs b/crates/nu-cli/src/cli.rs index 6622a6ab9..a8222d1c0 100644 --- a/crates/nu-cli/src/cli.rs +++ b/crates/nu-cli/src/cli.rs @@ -456,19 +456,3 @@ fn current_branch() -> String { "".to_string() } } - -#[cfg(test)] -mod tests { - use nu_engine::EvaluationContext; - - #[quickcheck] - fn quickcheck_parse(data: String) -> bool { - let (tokens, err) = nu_parser::lex(&data, 0, nu_parser::NewlineMode::Normal); - let (lite_block, err2) = nu_parser::parse_block(tokens); - if err.is_none() && err2.is_none() { - let context = EvaluationContext::basic(); - let _ = nu_parser::classify_block(&lite_block, &context.scope); - } - true - } -} diff --git a/crates/nu-cli/src/lib.rs b/crates/nu-cli/src/lib.rs index 2ea404cab..4b3e2fb93 100644 --- a/crates/nu-cli/src/lib.rs +++ b/crates/nu-cli/src/lib.rs @@ -1,9 +1,3 @@ -#[cfg(test)] -extern crate quickcheck; -#[cfg(test)] -#[macro_use(quickcheck)] -extern crate quickcheck_macros; - pub mod app; mod cli; #[cfg(feature = "rustyline-support")] @@ -18,16 +12,4 @@ pub use crate::cli::cli; pub use crate::app::App; pub use crate::cli::{parse_and_eval, register_plugins, run_script_file}; -pub use nu_command::{ - commands::NuSignature as Nu, commands::Version as NuVersion, create_default_context, -}; -pub use nu_data::config; -pub use nu_data::dict::TaggedListBuilder; -pub use nu_data::primitive; -pub use nu_data::value; -pub use nu_stream::{ActionStream, InputStream, InterruptibleStream}; -pub use nu_value_ext::ValueExt; -pub use num_traits::cast::ToPrimitive; - -// TODO: Temporary redirect -pub use nu_protocol::{did_you_mean, TaggedDictBuilder}; +pub use nu_command::create_default_context; diff --git a/crates/nu-command/tests/main.rs b/crates/nu-command/tests/main.rs index c8ceb4080..bd02ef653 100644 --- a/crates/nu-command/tests/main.rs +++ b/crates/nu-command/tests/main.rs @@ -1,5 +1,18 @@ -extern crate nu_command; -extern crate nu_test_support; +use quickcheck_macros::quickcheck; mod commands; mod format_conversions; + +use nu_engine::EvaluationContext; + +#[quickcheck] +fn quickcheck_parse(data: String) -> bool { + let (tokens, err) = nu_parser::lex(&data, 0, nu_parser::NewlineMode::Normal); + let (lite_block, err2) = nu_parser::parse_block(tokens); + + if err.is_none() && err2.is_none() { + let context = EvaluationContext::basic(); + let _ = nu_parser::classify_block(&lite_block, &context.scope); + } + true +}