From 504eff73f0acc20cc417999aeefa49251841c949 Mon Sep 17 00:00:00 2001 From: Antoine Stevan <44101798+amtoine@users.noreply.github.com> Date: Thu, 6 Jul 2023 17:31:31 +0200 Subject: [PATCH] REFACTOR: move the 0% commands to `nu-cmd-extra` (#9404) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit requires - https://github.com/nushell/nushell/pull/9455 # :gear: Description in this PR i move the commands we've all agreed, in the core team, to move out of the core Nushell to the `extra` feature. > **Warning** > in the first commits here, i've > - moved the implementations to `nu-cmd-extra` > - removed the declaration of all the commands below from `nu-command` > - made sure the commands were not available anymore with `cargo run -- -n` ## the list of commands to move with the current command table downloaded as `commands.csv`, i've run ```bash let commands = ( open commands.csv | where is_plugin == "FALSE" and category != "deprecated" | select name category "approv. %" | rename name category approval | insert treated {|it| ( ($it.approval == 100) or # all the core team agreed on them ($it.name | str starts-with "bits") or # see https://github.com/nushell/nushell/pull/9241 ($it.name | str starts-with "dfr") # see https://github.com/nushell/nushell/pull/9327 )} ) ``` to preprocess them and then ```bash $commands | where {|it| (not $it.treated) and ($it.approval == 0)} ``` to get all untreated commands with no approval, which gives ``` ╭────┬───────────────┬─────────┬─────────────┬──────────╮ │ # │ name │ treated │ category │ approval │ ├────┼───────────────┼─────────┼─────────────┼──────────┤ │ 0 │ fmt │ false │ conversions │ 0 │ │ 1 │ each while │ false │ filters │ 0 │ │ 2 │ roll │ false │ filters │ 0 │ │ 3 │ roll down │ false │ filters │ 0 │ │ 4 │ roll left │ false │ filters │ 0 │ │ 5 │ roll right │ false │ filters │ 0 │ │ 6 │ roll up │ false │ filters │ 0 │ │ 7 │ rotate │ false │ filters │ 0 │ │ 8 │ update cells │ false │ filters │ 0 │ │ 9 │ decode hex │ false │ formats │ 0 │ │ 10 │ encode hex │ false │ formats │ 0 │ │ 11 │ from url │ false │ formats │ 0 │ │ 12 │ to html │ false │ formats │ 0 │ │ 13 │ ansi gradient │ false │ platform │ 0 │ │ 14 │ ansi link │ false │ platform │ 0 │ │ 15 │ format │ false │ strings │ 0 │ ╰────┴───────────────┴─────────┴─────────────┴──────────╯ ``` # :paintbrush: User-Facing Changes ``` $nothing ``` # :test_tube: Tests + Formatting - :black_circle: `toolkit fmt` - :black_circle: `toolkit clippy` - :black_circle: `toolkit test` - :black_circle: `toolkit test stdlib` # :book: After Submitting ``` $nothing ``` # :mag: For reviewers ```bash $commands | where {|it| (not $it.treated) and ($it.approval == 0)} | each {|command| try { help $command.name | ignore } catch {|e| $"($command.name): ($e.msg)" } } ``` should give no output in `cargo run --features extra -- -n` and a table with 16 lines in `cargo run -- -n` --- Cargo.lock | 819 ++++++++++-------- crates/nu-cmd-base/Cargo.toml | 1 + crates/nu-cmd-base/src/formats/mod.rs | 1 + .../nu-cmd-base/src/formats/to/delimited.rs | 20 + crates/nu-cmd-base/src/formats/to/mod.rs | 1 + crates/nu-cmd-base/src/lib.rs | 1 + crates/nu-cmd-extra/Cargo.toml | 10 + .../assets/228_themes.json | 0 crates/nu-cmd-extra/src/example_test.rs | 3 + .../src/extra}/conversions/fmt.rs | 0 .../nu-cmd-extra/src/extra/conversions/mod.rs | 3 + .../src/extra}/filters/each_while.rs | 0 crates/nu-cmd-extra/src/extra/filters/mod.rs | 9 + .../src/extra}/filters/roll/mod.rs | 0 .../src/extra}/filters/roll/roll_.rs | 0 .../src/extra}/filters/roll/roll_down.rs | 0 .../src/extra}/filters/roll/roll_left.rs | 0 .../src/extra}/filters/roll/roll_right.rs | 0 .../src/extra}/filters/roll/roll_up.rs | 0 .../src/extra}/filters/rotate.rs | 0 .../src/extra}/filters/update_cells.rs | 0 .../src/extra/formats/from/mod.rs | 1 + .../src/extra}/formats/from/url.rs | 0 crates/nu-cmd-extra/src/extra/formats/mod.rs | 5 + .../src/extra}/formats/to/html.rs | 2 +- .../nu-cmd-extra/src/extra/formats/to/mod.rs | 1 + crates/nu-cmd-extra/src/extra/mod.rs | 28 + .../src/extra}/platform/ansi/gradient.rs | 0 .../src/extra}/platform/ansi/link.rs | 0 .../src/extra/platform/ansi/mod.rs | 5 + crates/nu-cmd-extra/src/extra/platform/mod.rs | 1 + .../strings/encode_decode/decode_hex.rs | 0 .../strings/encode_decode/encode_hex.rs | 0 .../src/extra}/strings/encode_decode/hex.rs | 0 .../src/extra/strings/encode_decode/mod.rs | 6 + .../src/extra}/strings/format/command.rs | 0 .../src/extra}/strings/format/filesize.rs | 0 .../src/extra/strings/format/mod.rs | 5 + crates/nu-cmd-extra/src/extra/strings/mod.rs | 2 + crates/nu-command/Cargo.toml | 1 - crates/nu-command/src/conversions/mod.rs | 2 - crates/nu-command/src/default_context.rs | 17 - crates/nu-command/src/filters/mod.rs | 8 - crates/nu-command/src/formats/from/mod.rs | 2 - crates/nu-command/src/formats/to/delimited.rs | 20 +- crates/nu-command/src/formats/to/md.rs | 2 +- crates/nu-command/src/formats/to/mod.rs | 2 - crates/nu-command/src/platform/ansi/mod.rs | 4 - crates/nu-command/src/platform/mod.rs | 2 +- .../src/strings/encode_decode/mod.rs | 5 - crates/nu-command/src/strings/format/mod.rs | 5 - crates/nu-command/src/strings/mod.rs | 2 - crates/nu-command/tests/commands/each.rs | 1 + crates/nu-command/tests/commands/mod.rs | 3 + .../tests/format_conversions/mod.rs | 2 + src/tests/test_engine.rs | 4 +- 56 files changed, 558 insertions(+), 448 deletions(-) create mode 100644 crates/nu-cmd-base/src/formats/mod.rs create mode 100644 crates/nu-cmd-base/src/formats/to/delimited.rs create mode 100644 crates/nu-cmd-base/src/formats/to/mod.rs rename crates/{nu-command => nu-cmd-extra}/assets/228_themes.json (100%) rename crates/{nu-command/src => nu-cmd-extra/src/extra}/conversions/fmt.rs (100%) create mode 100644 crates/nu-cmd-extra/src/extra/conversions/mod.rs rename crates/{nu-command/src => nu-cmd-extra/src/extra}/filters/each_while.rs (100%) create mode 100644 crates/nu-cmd-extra/src/extra/filters/mod.rs rename crates/{nu-command/src => nu-cmd-extra/src/extra}/filters/roll/mod.rs (100%) rename crates/{nu-command/src => nu-cmd-extra/src/extra}/filters/roll/roll_.rs (100%) rename crates/{nu-command/src => nu-cmd-extra/src/extra}/filters/roll/roll_down.rs (100%) rename crates/{nu-command/src => nu-cmd-extra/src/extra}/filters/roll/roll_left.rs (100%) rename crates/{nu-command/src => nu-cmd-extra/src/extra}/filters/roll/roll_right.rs (100%) rename crates/{nu-command/src => nu-cmd-extra/src/extra}/filters/roll/roll_up.rs (100%) rename crates/{nu-command/src => nu-cmd-extra/src/extra}/filters/rotate.rs (100%) rename crates/{nu-command/src => nu-cmd-extra/src/extra}/filters/update_cells.rs (100%) create mode 100644 crates/nu-cmd-extra/src/extra/formats/from/mod.rs rename crates/{nu-command/src => nu-cmd-extra/src/extra}/formats/from/url.rs (100%) create mode 100644 crates/nu-cmd-extra/src/extra/formats/mod.rs rename crates/{nu-command/src => nu-cmd-extra/src/extra}/formats/to/html.rs (99%) create mode 100644 crates/nu-cmd-extra/src/extra/formats/to/mod.rs rename crates/{nu-command/src => nu-cmd-extra/src/extra}/platform/ansi/gradient.rs (100%) rename crates/{nu-command/src => nu-cmd-extra/src/extra}/platform/ansi/link.rs (100%) create mode 100644 crates/nu-cmd-extra/src/extra/platform/ansi/mod.rs create mode 100644 crates/nu-cmd-extra/src/extra/platform/mod.rs rename crates/{nu-command/src => nu-cmd-extra/src/extra}/strings/encode_decode/decode_hex.rs (100%) rename crates/{nu-command/src => nu-cmd-extra/src/extra}/strings/encode_decode/encode_hex.rs (100%) rename crates/{nu-command/src => nu-cmd-extra/src/extra}/strings/encode_decode/hex.rs (100%) create mode 100644 crates/nu-cmd-extra/src/extra/strings/encode_decode/mod.rs rename crates/{nu-command/src => nu-cmd-extra/src/extra}/strings/format/command.rs (100%) rename crates/{nu-command/src => nu-cmd-extra/src/extra}/strings/format/filesize.rs (100%) create mode 100644 crates/nu-cmd-extra/src/extra/strings/format/mod.rs create mode 100644 crates/nu-cmd-extra/src/extra/strings/mod.rs delete mode 100644 crates/nu-command/src/strings/format/mod.rs diff --git a/Cargo.lock b/Cargo.lock index 5788f5008e..74c1cb375f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -12,6 +12,15 @@ dependencies = [ "regex", ] +[[package]] +name = "addr2line" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4fa78e18c64fce05e902adecd7a5eed15a5e0a3439f7b0e169f0252214865e3" +dependencies = [ + "gimli", +] + [[package]] name = "adler" version = "1.0.2" @@ -24,7 +33,7 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" dependencies = [ - "getrandom 0.2.9", + "getrandom 0.2.10", "once_cell", "version_check", ] @@ -36,16 +45,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f" dependencies = [ "cfg-if", - "getrandom 0.2.9", + "getrandom 0.2.10", "once_cell", "version_check", ] [[package]] name = "aho-corasick" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67fc08ce920c31afb70f013dcce1bfc3a3195de6a228474e45e1f145b36f8d04" +checksum = "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41" dependencies = [ "memchr", ] @@ -65,12 +74,24 @@ dependencies = [ "alloc-no-stdlib", ] +[[package]] +name = "allocator-api2" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56fc6cf8dc8c4158eed8649f9b8b0ea1518eb62b544fe9490d66fa0b349eafe9" + [[package]] name = "alphanumeric-sort" version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "81149050d254e2b758c80dcf55949e5c45482e0c9cb3670b1c4b48eb51791f8e" +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + [[package]] name = "android_system_properties" version = "0.1.5" @@ -116,9 +137,9 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41ed9a86bf92ae6580e0a31281f65a1b1d867c0cc68d5346e2ae128dddfa6a7d" +checksum = "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd" [[package]] name = "argminmax" @@ -143,9 +164,9 @@ checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" [[package]] name = "arrayvec" -version = "0.7.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6" +checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" [[package]] name = "arrow-format" @@ -174,7 +195,7 @@ dependencies = [ "fallible-streaming-iterator", "foreign_vec", "futures", - "getrandom 0.2.9", + "getrandom 0.2.10", "hash_hasher", "lexical-core", "lz4", @@ -207,7 +228,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "86d6b683edf8d1119fe420a94f8a7e389239666aa72e65495d91c00462510151" dependencies = [ "anstyle", - "bstr 1.5.0", + "bstr 1.6.0", "doc-comment", "predicates", "predicates-core", @@ -234,18 +255,18 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.17", + "syn 2.0.23", ] [[package]] name = "async-trait" -version = "0.1.68" +version = "0.1.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842" +checksum = "a564d521dd56509c4c47480d00b80ee55f7e385ae48db5744c67ad50c92d2ebf" dependencies = [ "proc-macro2", "quote", - "syn 2.0.17", + "syn 2.0.23", ] [[package]] @@ -283,6 +304,21 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" +[[package]] +name = "backtrace" +version = "0.3.68" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4319208da049c43661739c5fade2ba182f09d1dc2299b32298d3a31692b17e12" +dependencies = [ + "addr2line", + "cc", + "cfg-if", + "libc", + "miniz_oxide", + "object", + "rustc-demangle", +] + [[package]] name = "base64" version = "0.21.2" @@ -341,9 +377,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.3.1" +version = "2.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6776fc96284a0bb647b615056fc496d1fe1644a7ab01829818a6d91cae888b84" +checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42" [[package]] name = "block-buffer" @@ -387,7 +423,7 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c5839ee4f953e811bfdcf223f509cb2c6a3e1447959b0bff459405575bc17f22" dependencies = [ - "arrayvec 0.7.2", + "arrayvec 0.7.4", ] [[package]] @@ -398,18 +434,17 @@ checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223" dependencies = [ "lazy_static", "memchr", - "regex-automata", + "regex-automata 0.1.10", ] [[package]] name = "bstr" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a246e68bb43f6cd9db24bea052a53e40405417c5fb372e3d1a8a7f770a564ef5" +checksum = "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05" dependencies = [ "memchr", - "once_cell", - "regex-automata", + "regex-automata 0.3.0", "serde", ] @@ -452,7 +487,7 @@ checksum = "fdde5c9cd29ebd706ce1b35600920a33550e402fc998a2e53ad3b42c3c47a192" dependencies = [ "proc-macro2", "quote", - "syn 2.0.17", + "syn 2.0.23", ] [[package]] @@ -526,13 +561,13 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.24" +version = "0.4.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b" +checksum = "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5" dependencies = [ + "android-tzdata", "iana-time-zone", "js-sys", - "num-integer", "num-traits", "pure-rust-locales", "serde", @@ -552,24 +587,24 @@ dependencies = [ [[package]] name = "chrono-tz" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf9cc2b23599e6d7479755f3594285efb3f74a1bdca7a7374948bc831e23a552" +checksum = "f1369bc6b9e9a7dfdae2055f6ec151fe9c554a9d23d357c0237cee2e25eaabb7" dependencies = [ "chrono", "chrono-tz-build", - "phf 0.11.1", + "phf 0.11.2", ] [[package]] name = "chrono-tz-build" -version = "0.1.0" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9998fb9f7e9b2111641485bf8beb32f92945f97f92a3d061f744cfef335f751" +checksum = "e2f5ebdc942f57ed96d560a6d1a459bae5851102a25d5bf89dc04ae453e31ecf" dependencies = [ "parse-zoneinfo", - "phf 0.11.1", - "phf_codegen 0.11.1", + "phf 0.11.2", + "phf_codegen 0.11.2", ] [[package]] @@ -612,21 +647,20 @@ dependencies = [ [[package]] name = "clap" -version = "4.3.2" +version = "4.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "401a4694d2bf92537b6867d94de48c4842089645fdcdf6c71865b175d836e9c2" +checksum = "1640e5cc7fb47dbb8338fd471b105e7ed6c3cb2aeb00c2e067127ffd3764a05d" dependencies = [ "clap_builder", ] [[package]] name = "clap_builder" -version = "4.3.1" +version = "4.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72394f3339a76daf211e57d4bcb374410f3965dcc606dd0e03738c7888766980" +checksum = "98c59138d527eeaf9b53f35a77fcc1fad9d883116070c63d5de1c7dc7b00c72b" dependencies = [ "anstyle", - "bitflags 1.3.2", "clap_lex", ] @@ -647,22 +681,22 @@ dependencies = [ [[package]] name = "colored" -version = "2.0.0" +version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3616f750b84d8f0de8a58bda93e08e2a81ad3f523089b05f1dffecab48c6cbd" +checksum = "2674ec482fbc38012cf31e6c42ba0177b431a0cb6f15fe40efa5aab1bda516f6" dependencies = [ - "atty", + "is-terminal", "lazy_static", - "winapi", + "windows-sys 0.48.0", ] [[package]] name = "comfy-table" -version = "6.1.4" +version = "6.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e7b787b0dc42e8111badfdbe4c3059158ccb2db8780352fa1b01e8ccf45cc4d" +checksum = "7e959d788268e3bf9d35ace83e81b124190378e4c91c9067524675e33394b8ba" dependencies = [ - "crossterm 0.25.0", + "crossterm", "strum", "strum_macros", "unicode-width", @@ -697,7 +731,7 @@ version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d7d6ab3c3a2282db210df5f02c4dab6e0a7057af0fb7ebd4070f30fe05c0ddb" dependencies = [ - "getrandom 0.2.9", + "getrandom 0.2.10", "once_cell", "proc-macro-hack", "tiny-keccak", @@ -705,18 +739,18 @@ dependencies = [ [[package]] name = "const_format" -version = "0.2.30" +version = "0.2.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7309d9b4d3d2c0641e018d449232f2e28f1b22933c137f157d3dbc14228b8c0e" +checksum = "c990efc7a285731f9a4378d81aff2f0e85a2c8781a05ef0f8baa8dac54d0ff48" dependencies = [ "const_format_proc_macros", ] [[package]] name = "const_format_proc_macros" -version = "0.2.29" +version = "0.2.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d897f47bf7270cf70d370f8f98c1abb6d2d4cf60a6845d30e05bfb90c6568650" +checksum = "e026b6ce194a874cb9cf32cd5772d1ef9767cc8fcb5765948d74f37a9d8b2bf6" dependencies = [ "proc-macro2", "quote", @@ -747,9 +781,9 @@ checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" [[package]] name = "cpufeatures" -version = "0.2.7" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e4c1eaa2012c47becbbad2ab175484c2a84d1185b566fb2cc5b8707343dfe58" +checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1" dependencies = [ "libc", ] @@ -828,9 +862,9 @@ dependencies = [ [[package]] name = "crossbeam-epoch" -version = "0.9.14" +version = "0.9.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46bd5f3f85273295a9d14aedfb86f6aadbff6d8f5295c4a9edb08e819dcf5695" +checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7" dependencies = [ "autocfg", "cfg-if", @@ -841,29 +875,13 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.15" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b" +checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" dependencies = [ "cfg-if", ] -[[package]] -name = "crossterm" -version = "0.25.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e64e6c0fbe2c17357405f7c758c1ef960fce08bdfb2c03d88d2a18d7e09c4b67" -dependencies = [ - "bitflags 1.3.2", - "crossterm_winapi", - "libc", - "mio", - "parking_lot 0.12.1", - "signal-hook", - "signal-hook-mio", - "winapi", -] - [[package]] name = "crossterm" version = "0.26.1" @@ -883,9 +901,9 @@ dependencies = [ [[package]] name = "crossterm_winapi" -version = "0.9.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ae1b35a484aa10e07fe0638d02301c5ad24de82d310ccbd2f3693da5f09bf1c" +checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b" dependencies = [ "winapi", ] @@ -925,19 +943,19 @@ dependencies = [ [[package]] name = "cssparser-macros" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfae75de57f2b2e85e8768c3ea840fd159c8f33e2b6522c7835b7abac81be16e" +checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" dependencies = [ "quote", - "syn 1.0.109", + "syn 2.0.23", ] [[package]] name = "csv" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b015497079b9a9d69c02ad25de6c0a6edef051ea6360a327d0bd05802ef64ad" +checksum = "626ae34994d3d8d668f4269922248239db4ae42d538b14c398b74a52208e8086" dependencies = [ "csv-core", "itoa", @@ -984,7 +1002,7 @@ dependencies = [ "hashbrown 0.12.3", "lock_api", "once_cell", - "parking_lot_core 0.9.7", + "parking_lot_core 0.9.8", ] [[package]] @@ -1071,15 +1089,15 @@ checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" [[package]] name = "dtoa" -version = "0.4.8" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56899898ce76aaf4a0f24d914c97ea6ed976d42fec6ad33fcbb0a1103e07b2b0" +checksum = "519b83cd10f5f6e969625a409f735182bea5558cd8b64c655806ceaae36f1999" [[package]] name = "dtoa-short" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bde03329ae10e79ede66c9ce4dc930aa8599043b0743008548680f25b91502d6" +checksum = "dbaceec3c6e4211c79e7b1800fb9680527106beb2f9c51904a3210c03a448c74" dependencies = [ "dtoa", ] @@ -1140,14 +1158,14 @@ dependencies = [ [[package]] name = "enum_dispatch" -version = "0.3.11" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11f36e95862220b211a6e2aa5eca09b4fa391b13cd52ceb8035a24bf65a79de2" +checksum = "8f33313078bb8d4d05a2733a94ac4c2d8a0df9a2b84424ebf4f33bfc224a890e" dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.23", ] [[package]] @@ -1161,10 +1179,16 @@ dependencies = [ ] [[package]] -name = "erased-serde" -version = "0.3.25" +name = "equivalent" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f2b0c2380453a92ea8b6c8e5f64ecaafccddde8ceab55ff7a8ac1029f894569" +checksum = "88bffebc5d80432c9b140ee17875ff173a8ab62faad5b257da912bd2f6c1c0a1" + +[[package]] +name = "erased-serde" +version = "0.3.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f94c0e13118e7d7533271f754a168ae8400e6a1cc043f2bfd53cc7290f1a1de3" dependencies = [ "serde", ] @@ -1246,12 +1270,12 @@ dependencies = [ [[package]] name = "fd-lock" -version = "3.0.12" +version = "3.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39ae6b3d9530211fb3b12a95374b8b0823be812f53d09e18c5675c0146b09642" +checksum = "ef033ed5e9bad94e55838ca0ca906db0e043f517adda0c8b79c7a8c66c93c1b5" dependencies = [ "cfg-if", - "rustix 0.37.19", + "rustix 0.38.3", "windows-sys 0.48.0", ] @@ -1333,9 +1357,9 @@ checksum = "ee1b05cbd864bcaecbd3455d6d967862d446e4ebfc3c2e5e5b9841e53cba6673" [[package]] name = "form_urlencoded" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8" +checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" dependencies = [ "percent-encoding", ] @@ -1421,7 +1445,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.17", + "syn 2.0.23", ] [[package]] @@ -1495,9 +1519,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.9" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c85e1d9ab2eadba7e5040d4e09cbd6d072b76a557ad64e797c2cb9d4da21d7e4" +checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" dependencies = [ "cfg-if", "js-sys", @@ -1519,21 +1543,16 @@ dependencies = [ ] [[package]] -name = "ghost" -version = "0.1.9" +name = "gimli" +version = "0.27.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e77ac7b51b8e6313251737fcef4b1c01a2ea102bde68415b62c0ee9268fec357" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.17", -] +checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e" [[package]] name = "git2" -version = "0.17.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b7905cdfe33d31a88bb2e8419ddd054451f5432d1da9eaf2ac7804ee1ea12d5" +checksum = "7b989d6a7ca95a362cf2cfc5ad688b3a467be1f87e480b8dad07fee8c79b0044" dependencies = [ "bitflags 1.3.2", "libc", @@ -1558,9 +1577,9 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "h2" -version = "0.3.19" +version = "0.3.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d357c7ae988e7d2182f7d7871d0b963962420b0678b0997ce7de72001aeab782" +checksum = "97ec8491ebaf99c8eaa73058b045fe58073cd6be7f596ac993ced0b0a0c01049" dependencies = [ "bytes", "fnv", @@ -1568,7 +1587,7 @@ dependencies = [ "futures-sink", "futures-util", "http", - "indexmap", + "indexmap 1.9.3", "slab", "tokio", "tokio-util", @@ -1583,9 +1602,9 @@ checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7" [[package]] name = "halfbrown" -version = "0.2.2" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f985624e90f861184145c13b736873a0f83cdb998a292dbb0653598ab03aecbf" +checksum = "5681137554ddff44396e5f149892c769d45301dd9aa19c51602a89ee214cb0ec" dependencies = [ "hashbrown 0.13.2", "serde", @@ -1636,12 +1655,22 @@ dependencies = [ ] [[package]] -name = "hashlink" -version = "0.8.2" +name = "hashbrown" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0761a1b9491c4f2e3d66aa0f62d0fba0af9a0e2852e4d48ea506632a4b56e6aa" +checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" dependencies = [ - "hashbrown 0.13.2", + "ahash 0.8.3", + "allocator-api2", +] + +[[package]] +name = "hashlink" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "312f66718a2d7789ffef4f4b7b213138ed9f1eb3aa1d0d82fc99f88fb3ffd26f" +dependencies = [ + "hashbrown 0.14.0", ] [[package]] @@ -1674,18 +1703,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.2.6" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" -dependencies = [ - "libc", -] - -[[package]] -name = "hermit-abi" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286" +checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b" [[package]] name = "hex" @@ -1758,9 +1778,9 @@ checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" [[package]] name = "hyper" -version = "0.14.26" +version = "0.14.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab302d72a6f11a3b910431ff93aae7e773078c769f0a3ef15fb9ec692ed147d4" +checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" dependencies = [ "bytes", "futures-channel", @@ -1782,9 +1802,9 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.56" +version = "0.1.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0722cd7114b7de04316e7ea5456a0bbb20e4adb46fd27a3697adb812cff0f37c" +checksum = "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613" dependencies = [ "android_system_properties", "core-foundation-sys", @@ -1814,9 +1834,9 @@ dependencies = [ [[package]] name = "idna" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" dependencies = [ "unicode-bidi", "unicode-normalization", @@ -1840,14 +1860,25 @@ dependencies = [ ] [[package]] -name = "indicatif" -version = "0.17.3" +name = "indexmap" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cef509aa9bc73864d6756f0d34d35504af3cf0844373afe9b8669a5b8005a729" +checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d" +dependencies = [ + "equivalent", + "hashbrown 0.14.0", +] + +[[package]] +name = "indicatif" +version = "0.17.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ff8cc23a7393a397ed1d7f56e6365cba772aba9f9912ab968b03043c395d057" dependencies = [ "console", + "instant", "number_prefix", - "portable-atomic 0.3.20", + "portable-atomic", "unicode-width", ] @@ -1882,12 +1913,9 @@ dependencies = [ [[package]] name = "inventory" -version = "0.3.6" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0539b5de9241582ce6bd6b0ba7399313560151e58c9aaf8b74b711b1bdce644" -dependencies = [ - "ghost", -] +checksum = "c38a87a1e0e2752433cd4b26019a469112a25fb43b30f5ee9b3b898925c5a0f9" [[package]] name = "io-lifetimes" @@ -1895,7 +1923,7 @@ version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" dependencies = [ - "hermit-abi 0.3.1", + "hermit-abi 0.3.2", "libc", "windows-sys 0.48.0", ] @@ -1921,13 +1949,12 @@ dependencies = [ [[package]] name = "is-terminal" -version = "0.4.7" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f" +checksum = "24fddda5af7e54bf7da53067d6e802dbcc381d0a8eef629df528e3ebf68755cb" dependencies = [ - "hermit-abi 0.3.1", - "io-lifetimes", - "rustix 0.37.19", + "hermit-abi 0.3.2", + "rustix 0.38.3", "windows-sys 0.48.0", ] @@ -1973,9 +2000,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.6" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" +checksum = "62b02a5381cc465bd3041d84623d0fa3b66738b52b8e2fc3bab8ad63ab032f4a" [[package]] name = "jobserver" @@ -1994,9 +2021,9 @@ checksum = "72167d68f5fce3b8655487b8038691a3c9984ee769590f93f2a631f4ad64e4f5" [[package]] name = "js-sys" -version = "0.3.63" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f37a4a5928311ac501dee68b3c7613a1037d0edb30c8e5427bd832d55d1b790" +checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" dependencies = [ "wasm-bindgen", ] @@ -2108,15 +2135,15 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.144" +version = "0.2.147" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b00cc1c228a6782d0f076e7b232802e0c5689d41bb5df366f2a6b6621cfdfe1" +checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" [[package]] name = "libgit2-sys" -version = "0.15.1+1.6.4" +version = "0.15.2+1.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb4577bde8cdfc7d6a2a4bcb7b049598597de33ffd337276e9c7db6cd4a2cee7" +checksum = "a80df2e11fb4a61f4ba2ab42dbe7f74468da143f1a75c74e11dee7c813f694fa" dependencies = [ "cc", "libc", @@ -2222,10 +2249,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" [[package]] -name = "lock_api" -version = "0.4.9" +name = "linux-raw-sys" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df" +checksum = "09fc20d2ca12cb9f044c93e3bd6d32d523e6e2ec3db4f7b2939cd99026ecd3f0" + +[[package]] +name = "lock_api" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" dependencies = [ "autocfg", "scopeguard", @@ -2233,18 +2266,15 @@ dependencies = [ [[package]] name = "log" -version = "0.4.17" +version = "0.4.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" -dependencies = [ - "cfg-if", -] +checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4" [[package]] name = "lru" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03f1160296536f10c833a82dca22267d5486734230d47bf00bf435885814ba1e" +checksum = "718e8fae447df0c7e1ba7f5189829e63fd536945c8988d61444c19039f16b670" dependencies = [ "hashbrown 0.13.2", ] @@ -2255,7 +2285,7 @@ version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "18a9df1d1fb6d9e92fa043e9eb9a3ecf6892c7b542bae5137cd1e419e40aa8bf" dependencies = [ - "nu-ansi-term", + "nu-ansi-term 0.47.0", ] [[package]] @@ -2348,9 +2378,9 @@ dependencies = [ [[package]] name = "memoffset" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" +checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c" dependencies = [ "autocfg", ] @@ -2382,7 +2412,7 @@ checksum = "4901771e1d44ddb37964565c654a3223ba41a594d02b8da471cc4464912b5cfa" dependencies = [ "proc-macro2", "quote", - "syn 2.0.17", + "syn 2.0.23", ] [[package]] @@ -2427,14 +2457,14 @@ dependencies = [ [[package]] name = "mio" -version = "0.8.6" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b9d9a46eff5b4ff64b45a9e316a6d1e0bc719ef429cbec4dc630684212bfdf9" +checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" dependencies = [ "libc", "log", "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.45.0", + "windows-sys 0.48.0", ] [[package]] @@ -2599,13 +2629,13 @@ dependencies = [ "assert_cmd", "atty", "criterion", - "crossterm 0.26.1", + "crossterm", "ctrlc", "log", "miette", "mimalloc", "nix", - "nu-ansi-term", + "nu-ansi-term 0.47.0", "nu-cli", "nu-cmd-base", "nu-cmd-dataframe", @@ -2636,7 +2666,7 @@ dependencies = [ "signal-hook", "simplelog", "tempfile", - "time 0.3.21", + "time 0.3.22", "winresource", ] @@ -2649,19 +2679,28 @@ dependencies = [ "windows-sys 0.45.0", ] +[[package]] +name = "nu-ansi-term" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db8e83967c32f9210ce85ac7e9c4b731048c1f51c4262e08bad01af30097a424" +dependencies = [ + "windows-sys 0.48.0", +] + [[package]] name = "nu-cli" version = "0.82.1" dependencies = [ "atty", "chrono", - "crossterm 0.26.1", + "crossterm", "fancy-regex", "fuzzy-matcher", "is_executable", "log", "miette", - "nu-ansi-term", + "nu-ansi-term 0.47.0", "nu-cmd-base", "nu-cmd-lang", "nu-color-config", @@ -2684,6 +2723,7 @@ dependencies = [ name = "nu-cmd-base" version = "0.82.1" dependencies = [ + "indexmap 1.9.3", "nu-engine", "nu-path", "nu-protocol", @@ -2695,7 +2735,7 @@ version = "0.82.1" dependencies = [ "chrono", "fancy-regex", - "indexmap", + "indexmap 1.9.3", "nu-cmd-lang", "nu-engine", "nu-parser", @@ -2711,14 +2751,24 @@ dependencies = [ name = "nu-cmd-extra" version = "0.82.1" dependencies = [ + "ahash 0.8.3", + "fancy-regex", + "htmlescape", + "nu-ansi-term 0.48.0", "nu-cmd-base", "nu-cmd-lang", + "nu-command", "nu-engine", + "nu-json", "nu-parser", + "nu-pretty-hex", "nu-protocol", "nu-test-support", "nu-utils", "num-traits", + "rust-embed", + "serde", + "serde_urlencoded", ] [[package]] @@ -2727,7 +2777,7 @@ version = "0.82.1" dependencies = [ "fancy-regex", "itertools", - "nu-ansi-term", + "nu-ansi-term 0.47.0", "nu-engine", "nu-parser", "nu-protocol", @@ -2739,7 +2789,7 @@ dependencies = [ name = "nu-color-config" version = "0.82.1" dependencies = [ - "nu-ansi-term", + "nu-ansi-term 0.47.0", "nu-engine", "nu-json", "nu-protocol", @@ -2763,7 +2813,7 @@ dependencies = [ "chrono", "chrono-humanize", "chrono-tz", - "crossterm 0.26.1", + "crossterm", "csv", "dialoguer", "digest", @@ -2775,7 +2825,7 @@ dependencies = [ "filetime", "fs_extra", "htmlescape", - "indexmap", + "indexmap 1.9.3", "indicatif", "is-root", "itertools", @@ -2790,7 +2840,7 @@ dependencies = [ "native-tls", "nix", "notify-debouncer-full", - "nu-ansi-term", + "nu-ansi-term 0.47.0", "nu-cmd-base", "nu-cmd-lang", "nu-color-config", @@ -2825,7 +2875,6 @@ dependencies = [ "roxmltree", "rstest", "rusqlite", - "rust-embed", "same-file", "serde", "serde_json", @@ -2866,9 +2915,9 @@ name = "nu-explore" version = "0.82.1" dependencies = [ "ansi-str 0.7.2", - "crossterm 0.26.1", + "crossterm", "lscolors", - "nu-ansi-term", + "nu-ansi-term 0.47.0", "nu-color-config", "nu-engine", "nu-json", @@ -2939,7 +2988,7 @@ name = "nu-pretty-hex" version = "0.82.1" dependencies = [ "heapless", - "nu-ansi-term", + "nu-ansi-term 0.47.0", "rand 0.8.5", ] @@ -2951,7 +3000,7 @@ dependencies = [ "chrono", "chrono-humanize", "fancy-regex", - "indexmap", + "indexmap 1.9.3", "lru", "miette", "nu-test-support", @@ -2996,7 +3045,7 @@ dependencies = [ name = "nu-table" version = "0.82.1" dependencies = [ - "nu-ansi-term", + "nu-ansi-term 0.47.0", "nu-color-config", "nu-engine", "nu-protocol", @@ -3062,7 +3111,7 @@ version = "0.82.1" dependencies = [ "eml-parser", "ical", - "indexmap", + "indexmap 1.9.3", "nu-plugin", "nu-protocol", "rust-ini", @@ -3174,7 +3223,7 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a652d9771a63711fd3c3deb670acfbe5c30a4072e664d7a3bf5a9e1056ac72c3" dependencies = [ - "arrayvec 0.7.2", + "arrayvec 0.7.4", "itoa", ] @@ -3235,11 +3284,11 @@ dependencies = [ [[package]] name = "num_cpus" -version = "1.15.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "hermit-abi 0.2.6", + "hermit-abi 0.3.2", "libc", ] @@ -3267,6 +3316,15 @@ dependencies = [ "malloc_buf", ] +[[package]] +name = "object" +version = "0.31.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8bda667d9f2b5051b8833f59f3bf748b28ef54f850f4fcb389a252aa383866d1" +dependencies = [ + "memchr", +] + [[package]] name = "omnipath" version = "0.1.6" @@ -3319,7 +3377,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.17", + "syn 2.0.23", ] [[package]] @@ -3330,9 +3388,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-src" -version = "111.25.3+1.1.1t" +version = "111.26.0+1.1.1u" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "924757a6a226bf60da5f7dd0311a34d2b52283dd82ddeb103208ddc66362f80c" +checksum = "efc62c9f12b22b8f5208c23a7200a442b2e5999f8bdf80233852122b5a4f6f37" dependencies = [ "cc", ] @@ -3387,11 +3445,11 @@ checksum = "c1b04fb49957986fdce4d6ee7a65027d55d4b6d2265e5848bbb507b58ccfdb6f" [[package]] name = "papergrid" -version = "0.9.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fdfe703c51ddc52887ad78fc69cd2ea78d895ffcd6e955c9d03566db8ab5bb1" +checksum = "ae7891b22598926e4398790c8fe6447930c72a67d36d983a49d6ce682ce83290" dependencies = [ - "ansi-str 0.7.2", + "ansi-str 0.8.0", "ansitok", "bytecount", "fnv", @@ -3416,7 +3474,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" dependencies = [ "lock_api", - "parking_lot_core 0.9.7", + "parking_lot_core 0.9.8", ] [[package]] @@ -3435,15 +3493,15 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.7" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9069cbb9f99e3a5083476ccb29ceb1de18b9118cafa53e90c9551235de2b9521" +checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.2.16", + "redox_syscall 0.3.5", "smallvec", - "windows-sys 0.45.0", + "windows-targets 0.48.1", ] [[package]] @@ -3485,9 +3543,9 @@ dependencies = [ [[package]] name = "paste" -version = "1.0.12" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79" +checksum = "b4b27ab7be369122c218afc2079489cdcb4b517c0a3fc386ff11e1fedfcc2b35" [[package]] name = "pathdiff" @@ -3535,11 +3593,11 @@ dependencies = [ [[package]] name = "phf" -version = "0.11.1" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "928c6535de93548188ef63bb7c4036bd415cd8f36ad25af44b9789b2ee72a48c" +checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" dependencies = [ - "phf_shared 0.11.1", + "phf_shared 0.11.2", ] [[package]] @@ -3564,12 +3622,12 @@ dependencies = [ [[package]] name = "phf_codegen" -version = "0.11.1" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a56ac890c5e3ca598bbdeaa99964edb5b0258a583a9eb6ef4e89fc85d9224770" +checksum = "e8d39688d359e6b34654d328e262234662d16cc0f60ec8dcbe5e718709342a5a" dependencies = [ - "phf_generator 0.11.1", - "phf_shared 0.11.1", + "phf_generator 0.11.2", + "phf_shared 0.11.2", ] [[package]] @@ -3594,11 +3652,11 @@ dependencies = [ [[package]] name = "phf_generator" -version = "0.11.1" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1181c94580fa345f50f19d738aaa39c0ed30a600d95cb2d3e23f94266f14fbf" +checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" dependencies = [ - "phf_shared 0.11.1", + "phf_shared 0.11.2", "rand 0.8.5", ] @@ -3636,18 +3694,18 @@ dependencies = [ [[package]] name = "phf_shared" -version = "0.11.1" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1fb5f6f826b772a8d4c0394209441e7d37cbbb967ae9c7e0e8134365c9ee676" +checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" dependencies = [ "siphasher", ] [[package]] name = "pin-project-lite" -version = "0.2.9" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" +checksum = "4c40d25201921e5ff0c862a505c6557ea88568a4e3ace775ab55e93f2f4f9d57" [[package]] name = "pin-utils" @@ -3672,9 +3730,9 @@ dependencies = [ [[package]] name = "plotters" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2538b639e642295546c50fcd545198c9d64ee2a38620a628724a3b266d5fbf97" +checksum = "d2c224ba00d7cadd4d5c660deaf2098e5e80e07846537c51f9cfa4be50c1fd45" dependencies = [ "num-traits", "plotters-backend", @@ -3685,15 +3743,15 @@ dependencies = [ [[package]] name = "plotters-backend" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "193228616381fecdc1224c62e96946dfbc73ff4384fba576e052ff8c1bea8142" +checksum = "9e76628b4d3a7581389a35d5b6e2139607ad7c75b17aed325f210aa91f4a9609" [[package]] name = "plotters-svg" -version = "0.3.3" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9a81d2759aae1dae668f783c308bc5c8ebd191ff4184aaa1b37f65a6ae5a56f" +checksum = "38f6d39893cca0701371e3c27294f09797214b86f1fb951b89ade8ec04e2abab" dependencies = [ "plotters-backend", ] @@ -3704,7 +3762,7 @@ version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c464be75f4ec8b1a8527a55583f67961e3514f112a99f789476a7ccb9a397d10" dependencies = [ - "getrandom 0.2.9", + "getrandom 0.2.10", "polars-core", "polars-io", "polars-lazy", @@ -3742,7 +3800,7 @@ dependencies = [ "comfy-table", "either", "hashbrown 0.13.2", - "indexmap", + "indexmap 1.9.3", "num-traits", "once_cell", "polars-arrow", @@ -3817,7 +3875,7 @@ dependencies = [ "arrow2", "fallible-streaming-iterator", "hashbrown 0.13.2", - "indexmap", + "indexmap 1.9.3", "num-traits", "polars-arrow", "polars-error", @@ -3977,18 +4035,9 @@ dependencies = [ [[package]] name = "portable-atomic" -version = "0.3.20" +version = "1.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e30165d31df606f5726b090ec7592c308a0eaf61721ff64c9a3018e344a8753e" -dependencies = [ - "portable-atomic 1.3.2", -] - -[[package]] -name = "portable-atomic" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc59d1bcc64fc5d021d67521f818db868368028108d37f0e98d74e33f68297b5" +checksum = "767eb9f07d4a5ebcb39bbf2d452058a93c011373abf6832e24194a1c3f004794" [[package]] name = "powierza-coefficient" @@ -4108,7 +4157,7 @@ dependencies = [ "flate2", "hex", "lazy_static", - "rustix 0.36.14", + "rustix 0.36.15", ] [[package]] @@ -4176,9 +4225,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.28" +version = "1.0.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488" +checksum = "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105" dependencies = [ "proc-macro2", ] @@ -4243,7 +4292,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.9", + "getrandom 0.2.10", ] [[package]] @@ -4282,7 +4331,7 @@ checksum = "dcc0d032bccba900ee32151ec0265667535c230169f5a011154cdcd984e16829" dependencies = [ "bitflags 1.3.2", "cassowary", - "crossterm 0.26.1", + "crossterm", "unicode-segmentation", "unicode-width", ] @@ -4333,7 +4382,7 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" dependencies = [ - "getrandom 0.2.9", + "getrandom 0.2.10", "redox_syscall 0.2.16", "thiserror", ] @@ -4344,10 +4393,10 @@ version = "0.21.0" source = "git+https://github.com/nushell/reedline.git?branch=main#2142c5c8e98aac8ce09d443b17a94f589b75afde" dependencies = [ "chrono", - "crossterm 0.26.1", + "crossterm", "fd-lock", "itertools", - "nu-ansi-term", + "nu-ansi-term 0.47.0", "rusqlite", "serde", "serde_json", @@ -4361,13 +4410,14 @@ dependencies = [ [[package]] name = "regex" -version = "1.8.3" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81ca098a9821bd52d6b24fd8b10bd081f47d39c22778cafaa75a2857a62c6390" +checksum = "89089e897c013b3deb627116ae56a6955a72b8bed395c9526af31c9fe528b484" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.7.2", + "regex-automata 0.3.0", + "regex-syntax 0.7.3", ] [[package]] @@ -4376,6 +4426,17 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +[[package]] +name = "regex-automata" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa250384981ea14565685dea16a9ccc4d1c541a13f82b9c168572264d1df8c56" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.7.3", +] + [[package]] name = "regex-syntax" version = "0.6.29" @@ -4384,9 +4445,9 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] name = "regex-syntax" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436b050e76ed2903236f032a59761c1eb99e1b0aead2c257922771dab1fc8c78" +checksum = "2ab07dc67230e4a4718e70fd5c20055a4334b121f1f9db8fe63ef39ce9b8c846" [[package]] name = "rmp" @@ -4449,7 +4510,7 @@ version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "549b9d036d571d42e6e85d1c1425e2ac83491075078ca9a15be021c56b1641f2" dependencies = [ - "bitflags 2.3.1", + "bitflags 2.3.3", "fallible-iterator", "fallible-streaming-iterator", "hashlink", @@ -4459,9 +4520,9 @@ dependencies = [ [[package]] name = "rust-embed" -version = "6.7.0" +version = "6.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b73e721f488c353141288f223b599b4ae9303ecf3e62923f40a492f0634a4dc3" +checksum = "a36224c3276f8c4ebc8c20f158eca7ca4359c8db89991c4925132aaaf6702661" dependencies = [ "rust-embed-impl", "rust-embed-utils", @@ -4470,22 +4531,22 @@ dependencies = [ [[package]] name = "rust-embed-impl" -version = "6.6.0" +version = "6.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e22ce362f5561923889196595504317a4372b84210e6e335da529a65ea5452b5" +checksum = "49b94b81e5b2c284684141a2fb9e2a31be90638caf040bf9afbc5a0416afe1ac" dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.17", + "syn 2.0.23", "walkdir", ] [[package]] name = "rust-embed-utils" -version = "7.5.0" +version = "7.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "512b0ab6853f7e14e3c8754acb43d6f748bb9ced66aa5915a6553ac8213f7731" +checksum = "9d38ff6bf570dc3bb7100fce9f7b60c33fa71d80e88da3f2580df4ff2bdded74" dependencies = [ "sha2", "walkdir", @@ -4503,14 +4564,20 @@ dependencies = [ [[package]] name = "rust_decimal" -version = "1.29.1" +version = "1.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26bd36b60561ee1fb5ec2817f198b6fd09fa571c897a5e86d1487cfc2b096dfc" +checksum = "d0446843641c69436765a35a5a77088e28c2e6a12da93e84aa3ab1cd4aa5a042" dependencies = [ - "arrayvec 0.7.2", + "arrayvec 0.7.4", "num-traits", ] +[[package]] +name = "rustc-demangle" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" + [[package]] name = "rustc-hash" version = "1.1.0" @@ -4528,9 +4595,9 @@ dependencies = [ [[package]] name = "rustix" -version = "0.36.14" +version = "0.36.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14e4d67015953998ad0eb82887a0eb0129e18a7e2f3b7b0f6c422fddcd503d62" +checksum = "c37f1bd5ef1b5422177b7646cba67430579cfe2ace80f284fee876bca52ad941" dependencies = [ "bitflags 1.3.2", "errno 0.3.1", @@ -4542,9 +4609,9 @@ dependencies = [ [[package]] name = "rustix" -version = "0.37.19" +version = "0.37.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acf8729d8542766f1b2cf77eb034d52f40d375bb8b615d0b147089946e16613d" +checksum = "4d69718bf81c6127a49dc64e44a742e8bb9213c0ff8869a22c308f84c1d4ab06" dependencies = [ "bitflags 1.3.2", "errno 0.3.1", @@ -4555,16 +4622,29 @@ dependencies = [ ] [[package]] -name = "rustversion" -version = "1.0.12" +name = "rustix" +version = "0.38.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f3208ce4d8448b3f3e7d168a73f5e0c43a61e32930de3bceeccedb388b6bf06" +checksum = "ac5ffa1efe7548069688cd7028f32591853cd7b5b756d41bcffd2353e4fc75b4" +dependencies = [ + "bitflags 2.3.3", + "errno 0.3.1", + "libc", + "linux-raw-sys 0.4.3", + "windows-sys 0.48.0", +] + +[[package]] +name = "rustversion" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc31bd9b61a32c31f9650d18add92aa83a49ba979c143eefd27fe7177b05bd5f" [[package]] name = "ryu" -version = "1.0.13" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" +checksum = "fe232bdf6be8c8de797b22184ee71118d63780ea42ac85b61d1baa6d3b782ae9" [[package]] name = "same-file" @@ -4577,11 +4657,11 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.21" +version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "713cfb06c7059f3588fb8044c0fad1d09e3c01d225e25b9220dbfdcf16dbb1b3" +checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" dependencies = [ - "windows-sys 0.42.0", + "windows-sys 0.48.0", ] [[package]] @@ -4655,35 +4735,35 @@ checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed" [[package]] name = "seq-macro" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6b44e8fc93a14e66336d230954dda83d18b4605ccace8fe09bc7514a71ad0bc" +checksum = "63134939175b3131fe4d2c131b103fd42f25ccca89423d43b5e4f267920ccf03" [[package]] name = "serde" -version = "1.0.163" +version = "1.0.166" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2113ab51b87a539ae008b5c6c02dc020ffa39afd2d83cffcb3f4eb2722cebec2" +checksum = "d01b7404f9d441d3ad40e6a636a7782c377d2abdbe4fa2440e2edcc2f4f10db8" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.163" +version = "1.0.166" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c805777e3930c8883389c602315a24224bcc738b63905ef87cd1420353ea93e" +checksum = "5dd83d6dde2b6b2d466e14d9d1acce8816dedee94f735eac6395808b3483c6d6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.17", + "syn 2.0.23", ] [[package]] name = "serde_json" -version = "1.0.99" +version = "1.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46266871c240a00b8f503b877622fe33430b3c7d963bdc0f2adc511e54a1eae3" +checksum = "0f1e14e89be7aa4c4b78bdbdc9eb5bf8517829a600ae8eaa39a6e1d960b5185c" dependencies = [ "itoa", "ryu", @@ -4692,9 +4772,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93107647184f6027e3b7dcb2e11034cf95ffa1e3a682c67951963ac69c1c007d" +checksum = "96426c9936fd7a0124915f9185ea1d20aa9445cc9821142f0a73bc9207a2e186" dependencies = [ "serde", ] @@ -4713,11 +4793,11 @@ dependencies = [ [[package]] name = "serde_yaml" -version = "0.9.21" +version = "0.9.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9d684e3ec7de3bf5466b32bd75303ac16f0736426e5a4e0d6e489559ce1249c" +checksum = "452e67b9c20c37fa79df53201dc03839651086ed9bbe92b3ca585ca9fdaa7d85" dependencies = [ - "indexmap", + "indexmap 2.0.0", "itoa", "ryu", "serde", @@ -4746,7 +4826,7 @@ checksum = "91d129178576168c589c9ec973feedf7d3126c01ac2bf08795109aa35b69fb8f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.17", + "syn 2.0.23", ] [[package]] @@ -4761,9 +4841,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.6" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" +checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8" dependencies = [ "cfg-if", "cpufeatures", @@ -4778,7 +4858,7 @@ checksum = "970538704756fd0bb4ec8cb89f80674afb661e7c0fe716f9ba5be57717742300" dependencies = [ "const_format", "is_debug", - "time 0.3.21", + "time 0.3.22", ] [[package]] @@ -4859,7 +4939,7 @@ checksum = "acee08041c5de3d5048c8b3f6f13fafb3026b24ba43c6a695a0c76179b844369" dependencies = [ "log", "termcolor", - "time 0.3.21", + "time 0.3.22", ] [[package]] @@ -4879,9 +4959,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" +checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9" [[package]] name = "smartstring" @@ -5085,9 +5165,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.17" +version = "2.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45b6ddbb36c5b969c182aec3c4a0bce7df3fbad4b77114706a49aacc80567388" +checksum = "59fb7d6d8281a51045d62b8eb3a7d1ce347b76f312af50cd3dc0af39c87c1737" dependencies = [ "proc-macro2", "quote", @@ -5106,9 +5186,9 @@ dependencies = [ [[package]] name = "sysinfo" -version = "0.29.0" +version = "0.29.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02f1dc6930a439cc5d154221b5387d153f8183529b07c19aca24ea31e0a167e1" +checksum = "751e810399bba86e9326f5762b7f32ac5a085542df78da6a78d94e07d14d7c11" dependencies = [ "cfg-if", "core-foundation-sys", @@ -5147,7 +5227,7 @@ dependencies = [ "cfg-if", "fastrand", "redox_syscall 0.3.5", - "rustix 0.37.19", + "rustix 0.37.23", "windows-sys 0.48.0", ] @@ -5187,7 +5267,7 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e6bf6f19e9f8ed8d4048dc22981458ebcf406d67e94cd422e5ecd73d63b3237" dependencies = [ - "rustix 0.37.19", + "rustix 0.37.23", "windows-sys 0.48.0", ] @@ -5210,22 +5290,22 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.40" +version = "1.0.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac" +checksum = "c16a64ba9387ef3fdae4f9c1a7f07a0997fce91985c0336f1ddc1822b3b37802" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.40" +version = "1.0.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" +checksum = "d14928354b01c4d6a4f0e549069adef399a284e7995c7ccca94e8a07a5346c59" dependencies = [ "proc-macro2", "quote", - "syn 2.0.17", + "syn 2.0.23", ] [[package]] @@ -5251,9 +5331,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.21" +version = "0.3.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3403384eaacbca9923fa06940178ac13e4edb725486d70e8e15881d0c836cc" +checksum = "ea9e1b3cf1243ae005d9e74085d4d542f3125458f3a81af210d901dcd7411efd" dependencies = [ "itoa", "libc", @@ -5325,11 +5405,12 @@ dependencies = [ [[package]] name = "tokio" -version = "1.28.1" +version = "1.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0aa32867d44e6f2ce3385e89dceb990188b8bb0fb25b0cf576647a6f98ac5105" +checksum = "532826ff75199d5833b9d2c5fe410f29235e25704ee5f0ef599fb51c21f4a4da" dependencies = [ "autocfg", + "backtrace", "bytes", "libc", "mio", @@ -5350,7 +5431,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.17", + "syn 2.0.23", ] [[package]] @@ -5369,9 +5450,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.7.4" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6135d499e69981f9ff0ef2167955a5333c35e36f6937d382974566b3d5b94ec" +checksum = "c17e963a819c331dcacd7ab957d80bc2b9a9c1e71c804826d2f283dd65306542" dependencies = [ "serde", "serde_spanned", @@ -5381,20 +5462,20 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a76a9312f5ba4c2dec6b9161fdf25d87ad8a09256ccea5a556fef03c706a10f" +checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" dependencies = [ "serde", ] [[package]] name = "toml_edit" -version = "0.19.10" +version = "0.19.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2380d56e8670370eee6566b0bfd4265f65b3f432e8c6d85623f728d4fa31f739" +checksum = "c500344a19072298cd05a7224b3c0c629348b78692bf48466c5238656e315a78" dependencies = [ - "indexmap", + "indexmap 2.0.0", "serde", "serde_spanned", "toml_datetime", @@ -5429,9 +5510,9 @@ dependencies = [ [[package]] name = "trash" -version = "3.0.2" +version = "3.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b782240476bca40f750a7f205510ac1449ab707d3ac3f451c4b356f557c0ecd" +checksum = "85931d0ad541fa457c3f94c7cc5f14920f17a385832a7ef7621762c23cbf9729" dependencies = [ "chrono", "libc", @@ -5463,9 +5544,9 @@ checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" [[package]] name = "typetag" -version = "0.2.8" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6898cc6f6a32698cc3e14d5632a14d2b23ed9f7b11e6b8e05ce685990acc22" +checksum = "092e9b66a97c5f12e64f2d9c08c27d80342ff1ecde1d92288f939f55f5f1bcb3" dependencies = [ "erased-serde", "inventory", @@ -5476,13 +5557,13 @@ dependencies = [ [[package]] name = "typetag-impl" -version = "0.2.8" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c3e1c30cedd24fc597f7d37a721efdbdc2b1acae012c1ef1218f4c7c2c0f3e7" +checksum = "8ae02a82d555be0636f3157d90b6e0ccc6eda4cbc2af123187682143ce3035f1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.17", + "syn 2.0.23", ] [[package]] @@ -5511,9 +5592,9 @@ checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" [[package]] name = "unicode-ident" -version = "1.0.9" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b15811caf2415fb889178633e7724bad2509101cde276048e013b9def5e51fa0" +checksum = "22049a19f4a68748a168c0fc439f9516686aa045927ff767eca0a85101fb6e73" [[package]] name = "unicode-linebreak" @@ -5577,9 +5658,9 @@ dependencies = [ [[package]] name = "url" -version = "2.3.1" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643" +checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb" dependencies = [ "form_urlencoded", "idna", @@ -5616,11 +5697,11 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" [[package]] name = "uuid" -version = "1.3.3" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "345444e32442451b267fc254ae85a209c64be56d2890e601a0c37ff0c3c5ecd2" +checksum = "d023da39d1fde5a8a3fe1f3e01ca9632ada0a63e9797de55a879d6e2236277be" dependencies = [ - "getrandom 0.2.9", + "getrandom 0.2.10", ] [[package]] @@ -5689,11 +5770,10 @@ dependencies = [ [[package]] name = "want" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" dependencies = [ - "log", "try-lock", ] @@ -5717,9 +5797,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bba0e8cb82ba49ff4e229459ff22a191bbe9a1cb3a341610c9c33efc27ddf73" +checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" dependencies = [ "cfg-if", "wasm-bindgen-macro", @@ -5727,24 +5807,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b04bc93f9d6bdee709f6bd2118f57dd6679cf1176a1af464fca3ab0d66d8fb" +checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.17", + "syn 2.0.23", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.36" +version = "0.4.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d1985d03709c53167ce907ff394f5316aa22cb4e12761295c5dc57dacb6297e" +checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03" dependencies = [ "cfg-if", "js-sys", @@ -5754,9 +5834,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14d6b024f1a526bb0234f52840389927257beb670610081360e5a03c5df9c258" +checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -5764,22 +5844,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e128beba882dd1eb6200e1dc92ae6c5dbaa4311aa7bb211ca035779e5efc39f8" +checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.17", + "syn 2.0.23", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed9d5b4305409d1fc9482fee2d7f9bcbf24b3972bf59817ef757e23982242a93" +checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" [[package]] name = "wasm-timer" @@ -5816,9 +5896,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.63" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bdd9ef4e984da1187bf8110c5cf5b845fbc87a23602cdf912386a76fcd3a7c2" +checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" dependencies = [ "js-sys", "wasm-bindgen", @@ -5881,22 +5961,7 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" dependencies = [ - "windows-targets 0.48.0", -] - -[[package]] -name = "windows-sys" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", + "windows-targets 0.48.1", ] [[package]] @@ -5914,7 +5979,7 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets 0.48.0", + "windows-targets 0.48.1", ] [[package]] @@ -5934,9 +5999,9 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.48.0" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" +checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f" dependencies = [ "windows_aarch64_gnullvm 0.48.0", "windows_aarch64_msvc 0.48.0", @@ -6033,9 +6098,9 @@ checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" [[package]] name = "winnow" -version = "0.4.6" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61de7bac303dc551fe038e2b3cef0f571087a47571ea6e79a87692ac99b99699" +checksum = "ca0ace3845f0d96209f0375e6d367e3eb87eb65d27d445bdc9f1843a26f39448" dependencies = [ "memchr", ] diff --git a/crates/nu-cmd-base/Cargo.toml b/crates/nu-cmd-base/Cargo.toml index f5ea6da08c..1dc97c798d 100644 --- a/crates/nu-cmd-base/Cargo.toml +++ b/crates/nu-cmd-base/Cargo.toml @@ -13,3 +13,4 @@ version = "0.82.1" nu-engine = { path = "../nu-engine", version = "0.82.1" } nu-path = { path = "../nu-path", version = "0.82.1" } nu-protocol = { version = "0.82.1", path = "../nu-protocol" } +indexmap = { version = "1.7", features = ["serde-1"] } diff --git a/crates/nu-cmd-base/src/formats/mod.rs b/crates/nu-cmd-base/src/formats/mod.rs new file mode 100644 index 0000000000..78f208c006 --- /dev/null +++ b/crates/nu-cmd-base/src/formats/mod.rs @@ -0,0 +1 @@ +pub mod to; diff --git a/crates/nu-cmd-base/src/formats/to/delimited.rs b/crates/nu-cmd-base/src/formats/to/delimited.rs new file mode 100644 index 0000000000..ecfdaba5d1 --- /dev/null +++ b/crates/nu-cmd-base/src/formats/to/delimited.rs @@ -0,0 +1,20 @@ +use indexmap::{indexset, IndexSet}; +use nu_protocol::Value; + +pub fn merge_descriptors(values: &[Value]) -> Vec { + let mut ret: Vec = vec![]; + let mut seen: IndexSet = indexset! {}; + for value in values { + let data_descriptors = match value { + Value::Record { cols, .. } => cols.to_owned(), + _ => vec!["".to_string()], + }; + for desc in data_descriptors { + if !desc.is_empty() && !seen.contains(&desc) { + seen.insert(desc.to_string()); + ret.push(desc.to_string()); + } + } + } + ret +} diff --git a/crates/nu-cmd-base/src/formats/to/mod.rs b/crates/nu-cmd-base/src/formats/to/mod.rs new file mode 100644 index 0000000000..60c307c567 --- /dev/null +++ b/crates/nu-cmd-base/src/formats/to/mod.rs @@ -0,0 +1 @@ +pub mod delimited; diff --git a/crates/nu-cmd-base/src/lib.rs b/crates/nu-cmd-base/src/lib.rs index a58a12401a..759a89bb1e 100644 --- a/crates/nu-cmd-base/src/lib.rs +++ b/crates/nu-cmd-base/src/lib.rs @@ -1,2 +1,3 @@ +pub mod formats; pub mod input_handler; pub mod util; diff --git a/crates/nu-cmd-extra/Cargo.toml b/crates/nu-cmd-extra/Cargo.toml index 55c74ddfab..1e17706c15 100644 --- a/crates/nu-cmd-extra/Cargo.toml +++ b/crates/nu-cmd-extra/Cargo.toml @@ -21,6 +21,15 @@ nu-utils = { path = "../nu-utils", version = "0.82.1" } # Potential dependencies for extras num-traits = "0.2" +ahash = "0.8.3" +nu-ansi-term = "0.48.0" +fancy-regex = "0.11.0" +rust-embed = "6.7.0" +serde = "1.0.164" +nu-pretty-hex = { version = "0.82.1", path = "../nu-pretty-hex" } +nu-json = { version = "0.82.1", path = "../nu-json" } +serde_urlencoded = "0.7.1" +htmlescape = "0.3.1" [features] extra = ["default"] @@ -28,4 +37,5 @@ default = [] [dev-dependencies] nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.82.1" } +nu-command = { path = "../nu-command", version = "0.82.1" } nu-test-support = { path = "../nu-test-support", version = "0.82.1" } diff --git a/crates/nu-command/assets/228_themes.json b/crates/nu-cmd-extra/assets/228_themes.json similarity index 100% rename from crates/nu-command/assets/228_themes.json rename to crates/nu-cmd-extra/assets/228_themes.json diff --git a/crates/nu-cmd-extra/src/example_test.rs b/crates/nu-cmd-extra/src/example_test.rs index 7ed7e22f75..710486a79b 100644 --- a/crates/nu-cmd-extra/src/example_test.rs +++ b/crates/nu-cmd-extra/src/example_test.rs @@ -61,6 +61,9 @@ mod test_examples { // Try to keep this working set small to keep tests running as fast as possible let mut working_set = StateWorkingSet::new(&engine_state); + working_set.add_decl(Box::new(nu_command::Enumerate)); + working_set.add_decl(Box::new(nu_cmd_lang::If)); + // Adding the command that is being tested to the working set working_set.add_decl(cmd); working_set.render() diff --git a/crates/nu-command/src/conversions/fmt.rs b/crates/nu-cmd-extra/src/extra/conversions/fmt.rs similarity index 100% rename from crates/nu-command/src/conversions/fmt.rs rename to crates/nu-cmd-extra/src/extra/conversions/fmt.rs diff --git a/crates/nu-cmd-extra/src/extra/conversions/mod.rs b/crates/nu-cmd-extra/src/extra/conversions/mod.rs new file mode 100644 index 0000000000..3522bde067 --- /dev/null +++ b/crates/nu-cmd-extra/src/extra/conversions/mod.rs @@ -0,0 +1,3 @@ +mod fmt; + +pub(crate) use fmt::Fmt; diff --git a/crates/nu-command/src/filters/each_while.rs b/crates/nu-cmd-extra/src/extra/filters/each_while.rs similarity index 100% rename from crates/nu-command/src/filters/each_while.rs rename to crates/nu-cmd-extra/src/extra/filters/each_while.rs diff --git a/crates/nu-cmd-extra/src/extra/filters/mod.rs b/crates/nu-cmd-extra/src/extra/filters/mod.rs new file mode 100644 index 0000000000..ab84925ba2 --- /dev/null +++ b/crates/nu-cmd-extra/src/extra/filters/mod.rs @@ -0,0 +1,9 @@ +mod each_while; +mod roll; +mod rotate; +mod update_cells; + +pub(crate) use each_while::EachWhile; +pub(crate) use roll::*; +pub(crate) use rotate::Rotate; +pub(crate) use update_cells::UpdateCells; diff --git a/crates/nu-command/src/filters/roll/mod.rs b/crates/nu-cmd-extra/src/extra/filters/roll/mod.rs similarity index 100% rename from crates/nu-command/src/filters/roll/mod.rs rename to crates/nu-cmd-extra/src/extra/filters/roll/mod.rs diff --git a/crates/nu-command/src/filters/roll/roll_.rs b/crates/nu-cmd-extra/src/extra/filters/roll/roll_.rs similarity index 100% rename from crates/nu-command/src/filters/roll/roll_.rs rename to crates/nu-cmd-extra/src/extra/filters/roll/roll_.rs diff --git a/crates/nu-command/src/filters/roll/roll_down.rs b/crates/nu-cmd-extra/src/extra/filters/roll/roll_down.rs similarity index 100% rename from crates/nu-command/src/filters/roll/roll_down.rs rename to crates/nu-cmd-extra/src/extra/filters/roll/roll_down.rs diff --git a/crates/nu-command/src/filters/roll/roll_left.rs b/crates/nu-cmd-extra/src/extra/filters/roll/roll_left.rs similarity index 100% rename from crates/nu-command/src/filters/roll/roll_left.rs rename to crates/nu-cmd-extra/src/extra/filters/roll/roll_left.rs diff --git a/crates/nu-command/src/filters/roll/roll_right.rs b/crates/nu-cmd-extra/src/extra/filters/roll/roll_right.rs similarity index 100% rename from crates/nu-command/src/filters/roll/roll_right.rs rename to crates/nu-cmd-extra/src/extra/filters/roll/roll_right.rs diff --git a/crates/nu-command/src/filters/roll/roll_up.rs b/crates/nu-cmd-extra/src/extra/filters/roll/roll_up.rs similarity index 100% rename from crates/nu-command/src/filters/roll/roll_up.rs rename to crates/nu-cmd-extra/src/extra/filters/roll/roll_up.rs diff --git a/crates/nu-command/src/filters/rotate.rs b/crates/nu-cmd-extra/src/extra/filters/rotate.rs similarity index 100% rename from crates/nu-command/src/filters/rotate.rs rename to crates/nu-cmd-extra/src/extra/filters/rotate.rs diff --git a/crates/nu-command/src/filters/update_cells.rs b/crates/nu-cmd-extra/src/extra/filters/update_cells.rs similarity index 100% rename from crates/nu-command/src/filters/update_cells.rs rename to crates/nu-cmd-extra/src/extra/filters/update_cells.rs diff --git a/crates/nu-cmd-extra/src/extra/formats/from/mod.rs b/crates/nu-cmd-extra/src/extra/formats/from/mod.rs new file mode 100644 index 0000000000..1a2509f827 --- /dev/null +++ b/crates/nu-cmd-extra/src/extra/formats/from/mod.rs @@ -0,0 +1 @@ +pub(crate) mod url; diff --git a/crates/nu-command/src/formats/from/url.rs b/crates/nu-cmd-extra/src/extra/formats/from/url.rs similarity index 100% rename from crates/nu-command/src/formats/from/url.rs rename to crates/nu-cmd-extra/src/extra/formats/from/url.rs diff --git a/crates/nu-cmd-extra/src/extra/formats/mod.rs b/crates/nu-cmd-extra/src/extra/formats/mod.rs new file mode 100644 index 0000000000..8c49349390 --- /dev/null +++ b/crates/nu-cmd-extra/src/extra/formats/mod.rs @@ -0,0 +1,5 @@ +mod from; +mod to; + +pub(crate) use from::url::FromUrl; +pub(crate) use to::html::ToHtml; diff --git a/crates/nu-command/src/formats/to/html.rs b/crates/nu-cmd-extra/src/extra/formats/to/html.rs similarity index 99% rename from crates/nu-command/src/formats/to/html.rs rename to crates/nu-cmd-extra/src/extra/formats/to/html.rs index 1f129e949a..1949f73d16 100644 --- a/crates/nu-command/src/formats/to/html.rs +++ b/crates/nu-cmd-extra/src/extra/formats/to/html.rs @@ -1,5 +1,5 @@ -use crate::formats::to::delimited::merge_descriptors; use fancy_regex::Regex; +use nu_cmd_base::formats::to::delimited::merge_descriptors; use nu_engine::CallExt; use nu_protocol::ast::Call; use nu_protocol::engine::{Command, EngineState, Stack}; diff --git a/crates/nu-cmd-extra/src/extra/formats/to/mod.rs b/crates/nu-cmd-extra/src/extra/formats/to/mod.rs new file mode 100644 index 0000000000..558c29bf7e --- /dev/null +++ b/crates/nu-cmd-extra/src/extra/formats/to/mod.rs @@ -0,0 +1 @@ +pub(crate) mod html; diff --git a/crates/nu-cmd-extra/src/extra/mod.rs b/crates/nu-cmd-extra/src/extra/mod.rs index ca026baa49..ccf9409b8c 100644 --- a/crates/nu-cmd-extra/src/extra/mod.rs +++ b/crates/nu-cmd-extra/src/extra/mod.rs @@ -1,5 +1,10 @@ mod bits; mod bytes; +mod conversions; +mod filters; +mod formats; +mod platform; +mod strings; pub use bytes::Bytes; pub use bytes::BytesAdd; @@ -40,6 +45,29 @@ pub fn add_extra_command_context(mut engine_state: EngineState) -> EngineState { }; } + bind_command!(conversions::Fmt); + + bind_command!( + filters::UpdateCells, + filters::EachWhile, + filters::Roll, + filters::RollDown, + filters::RollUp, + filters::RollLeft, + filters::RollRight, + filters::Rotate + ); + + bind_command!(platform::ansi::Gradient, platform::ansi::Link); + + bind_command!( + strings::format::Format, + strings::format::FileSize, + strings::encode_decode::EncodeHex, + strings::encode_decode::DecodeHex + ); + + bind_command!(formats::ToHtml, formats::FromUrl); // Bits bind_command! { Bits, diff --git a/crates/nu-command/src/platform/ansi/gradient.rs b/crates/nu-cmd-extra/src/extra/platform/ansi/gradient.rs similarity index 100% rename from crates/nu-command/src/platform/ansi/gradient.rs rename to crates/nu-cmd-extra/src/extra/platform/ansi/gradient.rs diff --git a/crates/nu-command/src/platform/ansi/link.rs b/crates/nu-cmd-extra/src/extra/platform/ansi/link.rs similarity index 100% rename from crates/nu-command/src/platform/ansi/link.rs rename to crates/nu-cmd-extra/src/extra/platform/ansi/link.rs diff --git a/crates/nu-cmd-extra/src/extra/platform/ansi/mod.rs b/crates/nu-cmd-extra/src/extra/platform/ansi/mod.rs new file mode 100644 index 0000000000..8a5aa6955a --- /dev/null +++ b/crates/nu-cmd-extra/src/extra/platform/ansi/mod.rs @@ -0,0 +1,5 @@ +mod gradient; +mod link; + +pub(crate) use gradient::SubCommand as Gradient; +pub(crate) use link::SubCommand as Link; diff --git a/crates/nu-cmd-extra/src/extra/platform/mod.rs b/crates/nu-cmd-extra/src/extra/platform/mod.rs new file mode 100644 index 0000000000..123734c568 --- /dev/null +++ b/crates/nu-cmd-extra/src/extra/platform/mod.rs @@ -0,0 +1 @@ +pub(crate) mod ansi; diff --git a/crates/nu-command/src/strings/encode_decode/decode_hex.rs b/crates/nu-cmd-extra/src/extra/strings/encode_decode/decode_hex.rs similarity index 100% rename from crates/nu-command/src/strings/encode_decode/decode_hex.rs rename to crates/nu-cmd-extra/src/extra/strings/encode_decode/decode_hex.rs diff --git a/crates/nu-command/src/strings/encode_decode/encode_hex.rs b/crates/nu-cmd-extra/src/extra/strings/encode_decode/encode_hex.rs similarity index 100% rename from crates/nu-command/src/strings/encode_decode/encode_hex.rs rename to crates/nu-cmd-extra/src/extra/strings/encode_decode/encode_hex.rs diff --git a/crates/nu-command/src/strings/encode_decode/hex.rs b/crates/nu-cmd-extra/src/extra/strings/encode_decode/hex.rs similarity index 100% rename from crates/nu-command/src/strings/encode_decode/hex.rs rename to crates/nu-cmd-extra/src/extra/strings/encode_decode/hex.rs diff --git a/crates/nu-cmd-extra/src/extra/strings/encode_decode/mod.rs b/crates/nu-cmd-extra/src/extra/strings/encode_decode/mod.rs new file mode 100644 index 0000000000..581b87679f --- /dev/null +++ b/crates/nu-cmd-extra/src/extra/strings/encode_decode/mod.rs @@ -0,0 +1,6 @@ +mod decode_hex; +mod encode_hex; +mod hex; + +pub(crate) use decode_hex::DecodeHex; +pub(crate) use encode_hex::EncodeHex; diff --git a/crates/nu-command/src/strings/format/command.rs b/crates/nu-cmd-extra/src/extra/strings/format/command.rs similarity index 100% rename from crates/nu-command/src/strings/format/command.rs rename to crates/nu-cmd-extra/src/extra/strings/format/command.rs diff --git a/crates/nu-command/src/strings/format/filesize.rs b/crates/nu-cmd-extra/src/extra/strings/format/filesize.rs similarity index 100% rename from crates/nu-command/src/strings/format/filesize.rs rename to crates/nu-cmd-extra/src/extra/strings/format/filesize.rs diff --git a/crates/nu-cmd-extra/src/extra/strings/format/mod.rs b/crates/nu-cmd-extra/src/extra/strings/format/mod.rs new file mode 100644 index 0000000000..c5d20986b2 --- /dev/null +++ b/crates/nu-cmd-extra/src/extra/strings/format/mod.rs @@ -0,0 +1,5 @@ +mod command; +mod filesize; + +pub(crate) use command::Format; +pub(crate) use filesize::FileSize; diff --git a/crates/nu-cmd-extra/src/extra/strings/mod.rs b/crates/nu-cmd-extra/src/extra/strings/mod.rs new file mode 100644 index 0000000000..0de3959dee --- /dev/null +++ b/crates/nu-cmd-extra/src/extra/strings/mod.rs @@ -0,0 +1,2 @@ +pub(crate) mod encode_decode; +pub(crate) mod format; diff --git a/crates/nu-command/Cargo.toml b/crates/nu-command/Cargo.toml index a7226f28c0..36e08ee2ef 100644 --- a/crates/nu-command/Cargo.toml +++ b/crates/nu-command/Cargo.toml @@ -77,7 +77,6 @@ rayon = "1.7" regex = "1.7" roxmltree = "0.18" rusqlite = { version = "0.29", features = ["bundled"], optional = true } -rust-embed = "6.7" same-file = "1.0" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" diff --git a/crates/nu-command/src/conversions/mod.rs b/crates/nu-command/src/conversions/mod.rs index 8f29788e7d..8c34392d57 100644 --- a/crates/nu-command/src/conversions/mod.rs +++ b/crates/nu-command/src/conversions/mod.rs @@ -1,7 +1,5 @@ mod fill; -mod fmt; pub(crate) mod into; pub use fill::Fill; -pub use fmt::Fmt; pub use into::*; diff --git a/crates/nu-command/src/default_context.rs b/crates/nu-command/src/default_context.rs index 6d9ae4114e..771b945e97 100644 --- a/crates/nu-command/src/default_context.rs +++ b/crates/nu-command/src/default_context.rs @@ -41,7 +41,6 @@ pub fn add_shell_command_context(mut engine_state: EngineState) -> EngineState { DropColumn, DropNth, Each, - EachWhile, Empty, Enumerate, Every, @@ -72,12 +71,6 @@ pub fn add_shell_command_context(mut engine_state: EngineState) -> EngineState { Reject, Rename, Reverse, - Roll, - RollDown, - RollUp, - RollLeft, - RollRight, - Rotate, Select, Shuffle, Skip, @@ -91,7 +84,6 @@ pub fn add_shell_command_context(mut engine_state: EngineState) -> EngineState { UniqBy, Upsert, Update, - UpdateCells, Values, Where, Window, @@ -176,11 +168,7 @@ pub fn add_shell_command_context(mut engine_state: EngineState) -> EngineState { Encode, DecodeBase64, EncodeBase64, - DecodeHex, - EncodeHex, DetectColumns, - Format, - FileSize, Parse, Size, Split, @@ -231,9 +219,7 @@ pub fn add_shell_command_context(mut engine_state: EngineState) -> EngineState { // Platform bind_command! { Ansi, - AnsiGradient, AnsiStrip, - AnsiLink, Clear, Du, Input, @@ -271,14 +257,12 @@ pub fn add_shell_command_context(mut engine_state: EngineState) -> EngineState { FromSsv, FromToml, FromTsv, - FromUrl, FromXlsx, FromXml, FromYaml, FromYml, To, ToCsv, - ToHtml, ToJson, ToMd, ToNuon, @@ -301,7 +285,6 @@ pub fn add_shell_command_context(mut engine_state: EngineState) -> EngineState { // Conversions bind_command! { Fill, - Fmt, Into, IntoBool, IntoBinary, diff --git a/crates/nu-command/src/filters/mod.rs b/crates/nu-command/src/filters/mod.rs index e5f742a6c9..76969b1dab 100644 --- a/crates/nu-command/src/filters/mod.rs +++ b/crates/nu-command/src/filters/mod.rs @@ -6,7 +6,6 @@ mod compact; mod default; mod drop; mod each; -mod each_while; mod empty; mod enumerate; mod every; @@ -33,8 +32,6 @@ mod reduce; mod reject; mod rename; mod reverse; -mod roll; -mod rotate; mod select; mod shuffle; mod skip; @@ -46,7 +43,6 @@ mod transpose; mod uniq; mod uniq_by; mod update; -mod update_cells; mod upsert; mod utils; mod values; @@ -63,7 +59,6 @@ pub use compact::Compact; pub use default::Default; pub use drop::*; pub use each::Each; -pub use each_while::EachWhile; pub use empty::Empty; pub use enumerate::Enumerate; pub use every::Every; @@ -90,8 +85,6 @@ pub use reduce::Reduce; pub use reject::Reject; pub use rename::Rename; pub use reverse::Reverse; -pub use roll::*; -pub use rotate::Rotate; pub use select::Select; pub use shuffle::Shuffle; pub use skip::*; @@ -103,7 +96,6 @@ pub use transpose::Transpose; pub use uniq::*; pub use uniq_by::UniqBy; pub use update::Update; -pub use update_cells::UpdateCells; pub use upsert::Upsert; pub use values::Values; pub use where_::Where; diff --git a/crates/nu-command/src/formats/from/mod.rs b/crates/nu-command/src/formats/from/mod.rs index dda4290110..efedb55f70 100644 --- a/crates/nu-command/src/formats/from/mod.rs +++ b/crates/nu-command/src/formats/from/mod.rs @@ -7,14 +7,12 @@ mod ods; mod ssv; mod toml; mod tsv; -mod url; mod xlsx; mod xml; mod yaml; pub use self::csv::FromCsv; pub use self::toml::FromToml; -pub use self::url::FromUrl; pub use command::From; pub use json::FromJson; pub use nuon::FromNuon; diff --git a/crates/nu-command/src/formats/to/delimited.rs b/crates/nu-command/src/formats/to/delimited.rs index 19c53b45a1..887c4cc673 100644 --- a/crates/nu-command/src/formats/to/delimited.rs +++ b/crates/nu-command/src/formats/to/delimited.rs @@ -1,5 +1,5 @@ use csv::{Writer, WriterBuilder}; -use indexmap::{indexset, IndexSet}; +use nu_cmd_base::formats::to::delimited::merge_descriptors; use nu_protocol::{Config, IntoPipelineData, PipelineData, ShellError, Span, Value}; use std::collections::VecDeque; use std::error::Error; @@ -142,24 +142,6 @@ pub fn find_non_record(values: &[Value]) -> Option<&Value> { .find(|val| !matches!(val, Value::Record { .. })) } -pub fn merge_descriptors(values: &[Value]) -> Vec { - let mut ret: Vec = vec![]; - let mut seen: IndexSet = indexset! {}; - for value in values { - let data_descriptors = match value { - Value::Record { cols, .. } => cols.to_owned(), - _ => vec!["".to_string()], - }; - for desc in data_descriptors { - if !desc.is_empty() && !seen.contains(&desc) { - seen.insert(desc.to_string()); - ret.push(desc.to_string()); - } - } - } - ret -} - pub fn to_delimited_data( noheaders: bool, sep: char, diff --git a/crates/nu-command/src/formats/to/md.rs b/crates/nu-command/src/formats/to/md.rs index 50ddeaf674..75fec9615d 100644 --- a/crates/nu-command/src/formats/to/md.rs +++ b/crates/nu-command/src/formats/to/md.rs @@ -1,5 +1,5 @@ -use crate::formats::to::delimited::merge_descriptors; use indexmap::map::IndexMap; +use nu_cmd_base::formats::to::delimited::merge_descriptors; use nu_protocol::ast::Call; use nu_protocol::engine::{Command, EngineState, Stack}; use nu_protocol::{ diff --git a/crates/nu-command/src/formats/to/mod.rs b/crates/nu-command/src/formats/to/mod.rs index 4a08574a2f..c9e7ad0cd8 100644 --- a/crates/nu-command/src/formats/to/mod.rs +++ b/crates/nu-command/src/formats/to/mod.rs @@ -1,7 +1,6 @@ mod command; mod csv; mod delimited; -mod html; mod json; mod md; mod nuon; @@ -14,7 +13,6 @@ mod yaml; pub use self::csv::ToCsv; pub use self::toml::ToToml; pub use command::To; -pub use html::ToHtml; pub use json::ToJson; pub use md::ToMd; pub use nuon::value_to_string; diff --git a/crates/nu-command/src/platform/ansi/mod.rs b/crates/nu-command/src/platform/ansi/mod.rs index a0b02d3d53..60a03c77c2 100644 --- a/crates/nu-command/src/platform/ansi/mod.rs +++ b/crates/nu-command/src/platform/ansi/mod.rs @@ -1,9 +1,5 @@ mod ansi_; -mod gradient; -mod link; mod strip; pub use ansi_::AnsiCommand as Ansi; -pub use gradient::SubCommand as AnsiGradient; -pub use link::SubCommand as AnsiLink; pub use strip::SubCommand as AnsiStrip; diff --git a/crates/nu-command/src/platform/mod.rs b/crates/nu-command/src/platform/mod.rs index c0907889a7..a8db9676ad 100644 --- a/crates/nu-command/src/platform/mod.rs +++ b/crates/nu-command/src/platform/mod.rs @@ -7,7 +7,7 @@ mod kill; mod sleep; mod term_size; -pub use ansi::{Ansi, AnsiGradient, AnsiLink, AnsiStrip}; +pub use ansi::{Ansi, AnsiStrip}; pub use clear::Clear; pub use dir_info::{DirBuilder, DirInfo, FileInfo}; pub use du::Du; diff --git a/crates/nu-command/src/strings/encode_decode/mod.rs b/crates/nu-command/src/strings/encode_decode/mod.rs index 3873c7b546..e5d0ea06a6 100644 --- a/crates/nu-command/src/strings/encode_decode/mod.rs +++ b/crates/nu-command/src/strings/encode_decode/mod.rs @@ -1,16 +1,11 @@ mod base64; mod decode; mod decode_base64; -mod decode_hex; mod encode; mod encode_base64; -mod encode_hex; mod encoding; -mod hex; pub use self::decode::Decode; pub use self::decode_base64::DecodeBase64; -pub use self::decode_hex::DecodeHex; pub use self::encode::Encode; pub use self::encode_base64::EncodeBase64; -pub use self::encode_hex::EncodeHex; diff --git a/crates/nu-command/src/strings/format/mod.rs b/crates/nu-command/src/strings/format/mod.rs deleted file mode 100644 index a9d728f8c7..0000000000 --- a/crates/nu-command/src/strings/format/mod.rs +++ /dev/null @@ -1,5 +0,0 @@ -mod command; -mod filesize; - -pub use self::filesize::FileSize; -pub use command::Format; diff --git a/crates/nu-command/src/strings/mod.rs b/crates/nu-command/src/strings/mod.rs index 2d47afc576..fa4cda4563 100644 --- a/crates/nu-command/src/strings/mod.rs +++ b/crates/nu-command/src/strings/mod.rs @@ -1,7 +1,6 @@ mod char_; mod detect_columns; mod encode_decode; -mod format; mod parse; mod size; mod split; @@ -10,7 +9,6 @@ mod str_; pub use char_::Char; pub use detect_columns::*; pub use encode_decode::*; -pub use format::*; pub use parse::*; pub use size::Size; pub use split::*; diff --git a/crates/nu-command/tests/commands/each.rs b/crates/nu-command/tests/commands/each.rs index 599597e66c..68d8fd4ac0 100644 --- a/crates/nu-command/tests/commands/each.rs +++ b/crates/nu-command/tests/commands/each.rs @@ -52,6 +52,7 @@ fn each_uses_enumerate_index() { } #[test] +#[cfg(feature = "extra")] fn each_while_uses_enumerate_index() { let actual = nu!("[7 8 9 10] | enumerate | each while {|el| $el.index } | to nuon"); diff --git a/crates/nu-command/tests/commands/mod.rs b/crates/nu-command/tests/commands/mod.rs index 841de71728..87c95bd9fa 100644 --- a/crates/nu-command/tests/commands/mod.rs +++ b/crates/nu-command/tests/commands/mod.rs @@ -27,6 +27,7 @@ mod find; mod first; mod flatten; mod for_; +#[cfg(feature = "extra")] mod format; mod get; mod glob; @@ -72,7 +73,9 @@ mod rename; mod return_; mod reverse; mod rm; +#[cfg(feature = "extra")] mod roll; +#[cfg(feature = "extra")] mod rotate; mod run_external; mod save; diff --git a/crates/nu-command/tests/format_conversions/mod.rs b/crates/nu-command/tests/format_conversions/mod.rs index 4c6b96d9b6..26bf318a79 100644 --- a/crates/nu-command/tests/format_conversions/mod.rs +++ b/crates/nu-command/tests/format_conversions/mod.rs @@ -1,5 +1,6 @@ mod bson; mod csv; +#[cfg(feature = "extra")] mod html; mod json; mod markdown; @@ -8,6 +9,7 @@ mod ods; mod ssv; mod toml; mod tsv; +#[cfg(feature = "extra")] mod url; mod xlsx; mod xml; diff --git a/src/tests/test_engine.rs b/src/tests/test_engine.rs index 03de1515d9..39ae57cf68 100644 --- a/src/tests/test_engine.rs +++ b/src/tests/test_engine.rs @@ -54,7 +54,9 @@ fn in_and_if_else() -> TestResult { #[test] fn help_works_with_missing_requirements() -> TestResult { - run_test(r#"each --help | lines | length"#, "65") + // `each while` is part of the *extra* feature and adds 3 lines + let expected_length = if cfg!(feature = "extra") { "65" } else { "62" }; + run_test(r#"each --help | lines | length"#, expected_length) } #[test]