Merge remote-tracking branch 'origin/main' into plugin-ctrlc
This commit is contained in:
commit
5afbd05493
2
.github/workflows/nightly-build.yml
vendored
2
.github/workflows/nightly-build.yml
vendored
|
@ -161,7 +161,7 @@ jobs:
|
|||
# REF: https://github.com/marketplace/actions/gh-release
|
||||
# Create a release only in nushell/nightly repo
|
||||
- name: Publish Archive
|
||||
uses: softprops/action-gh-release@v2.0.6
|
||||
uses: softprops/action-gh-release@v2.0.8
|
||||
if: ${{ startsWith(github.repository, 'nushell/nightly') }}
|
||||
with:
|
||||
prerelease: true
|
||||
|
|
6
.github/workflows/release-pkg.nu
vendored
6
.github/workflows/release-pkg.nu
vendored
|
@ -161,8 +161,12 @@ if $os in ['macos-latest'] or $USE_UBUNTU {
|
|||
let releaseStem = $'($bin)-($version)-($target)'
|
||||
|
||||
print $'(char nl)Download less related stuffs...'; hr-line
|
||||
# todo: less-v661 is out but is released as a zip file. maybe we should switch to that and extract it?
|
||||
aria2c https://github.com/jftuga/less-Windows/releases/download/less-v608/less.exe -o less.exe
|
||||
aria2c https://raw.githubusercontent.com/jftuga/less-Windows/master/LICENSE -o LICENSE-for-less.txt
|
||||
# the below was renamed because it was failing to download for darren. it should work but it wasn't
|
||||
# todo: maybe we should get rid of this aria2c dependency and just use http get?
|
||||
#aria2c https://raw.githubusercontent.com/jftuga/less-Windows/master/LICENSE -o LICENSE-for-less.txt
|
||||
aria2c https://github.com/jftuga/less-Windows/blob/master/LICENSE -o LICENSE-for-less.txt
|
||||
|
||||
# Create Windows msi release package
|
||||
if (get-env _EXTRA_) == 'msi' {
|
||||
|
|
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
|
@ -91,7 +91,7 @@ jobs:
|
|||
|
||||
# REF: https://github.com/marketplace/actions/gh-release
|
||||
- name: Publish Archive
|
||||
uses: softprops/action-gh-release@v2.0.6
|
||||
uses: softprops/action-gh-release@v2.0.8
|
||||
if: ${{ startsWith(github.ref, 'refs/tags/') }}
|
||||
with:
|
||||
draft: true
|
||||
|
|
2
.github/workflows/typos.yml
vendored
2
.github/workflows/typos.yml
vendored
|
@ -10,4 +10,4 @@ jobs:
|
|||
uses: actions/checkout@v4.1.7
|
||||
|
||||
- name: Check spelling
|
||||
uses: crate-ci/typos@v1.23.2
|
||||
uses: crate-ci/typos@v1.23.3
|
||||
|
|
93
Cargo.lock
generated
93
Cargo.lock
generated
|
@ -2868,7 +2868,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"assert_cmd",
|
||||
"crossterm",
|
||||
|
@ -2913,16 +2913,16 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-ansi-term"
|
||||
version = "0.50.0"
|
||||
version = "0.50.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "dd2800e1520bdc966782168a627aa5d1ad92e33b984bf7c7615d31280c83ff14"
|
||||
checksum = "d4a28e057d01f97e61255210fcff094d74ed0466038633e95017f5beb68e4399"
|
||||
dependencies = [
|
||||
"windows-sys 0.48.0",
|
||||
"windows-sys 0.52.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "nu-cli"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"chrono",
|
||||
"crossterm",
|
||||
|
@ -2957,7 +2957,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-cmd-base"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"indexmap",
|
||||
"miette",
|
||||
|
@ -2969,7 +2969,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-cmd-extra"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"fancy-regex",
|
||||
"heck 0.5.0",
|
||||
|
@ -2994,7 +2994,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-cmd-lang"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"itertools 0.12.1",
|
||||
"nu-engine",
|
||||
|
@ -3006,7 +3006,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-cmd-plugin"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"itertools 0.12.1",
|
||||
"nu-engine",
|
||||
|
@ -3017,7 +3017,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-color-config"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"nu-ansi-term",
|
||||
"nu-engine",
|
||||
|
@ -3029,7 +3029,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-command"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"alphanumeric-sort",
|
||||
"base64 0.22.1",
|
||||
|
@ -3139,7 +3139,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-derive-value"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"convert_case",
|
||||
"proc-macro-error",
|
||||
|
@ -3150,7 +3150,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-engine"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"log",
|
||||
"nu-glob",
|
||||
|
@ -3161,7 +3161,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-explore"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"ansi-str",
|
||||
"anyhow",
|
||||
|
@ -3186,14 +3186,14 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-glob"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"doc-comment",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "nu-json"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"fancy-regex",
|
||||
"linked-hash-map",
|
||||
|
@ -3206,7 +3206,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-lsp"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"assert-json-diff",
|
||||
"crossbeam-channel",
|
||||
|
@ -3227,7 +3227,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-parser"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"bytesize",
|
||||
"chrono",
|
||||
|
@ -3243,7 +3243,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-path"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"dirs",
|
||||
"omnipath",
|
||||
|
@ -3252,7 +3252,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-plugin"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"log",
|
||||
"nix",
|
||||
|
@ -3268,7 +3268,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-plugin-core"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"interprocess",
|
||||
"log",
|
||||
|
@ -3282,7 +3282,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-plugin-engine"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"log",
|
||||
"nu-engine",
|
||||
|
@ -3298,7 +3298,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-plugin-protocol"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"bincode",
|
||||
"nu-protocol",
|
||||
|
@ -3310,7 +3310,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-plugin-test-support"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"nu-ansi-term",
|
||||
"nu-cmd-lang",
|
||||
|
@ -3328,7 +3328,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-pretty-hex"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"heapless",
|
||||
"nu-ansi-term",
|
||||
|
@ -3337,7 +3337,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-protocol"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"brotli",
|
||||
"byte-unit",
|
||||
|
@ -3374,7 +3374,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-std"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"log",
|
||||
"miette",
|
||||
|
@ -3385,7 +3385,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-system"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"chrono",
|
||||
"itertools 0.12.1",
|
||||
|
@ -3403,7 +3403,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-table"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"fancy-regex",
|
||||
"nu-ansi-term",
|
||||
|
@ -3417,7 +3417,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-term-grid"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"nu-utils",
|
||||
"unicode-width",
|
||||
|
@ -3425,7 +3425,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-test-support"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"nu-glob",
|
||||
"nu-path",
|
||||
|
@ -3437,7 +3437,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu-utils"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"crossterm_winapi",
|
||||
"log",
|
||||
|
@ -3463,7 +3463,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu_plugin_example"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"nu-cmd-lang",
|
||||
"nu-plugin",
|
||||
|
@ -3473,7 +3473,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu_plugin_formats"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"eml-parser",
|
||||
"ical",
|
||||
|
@ -3486,7 +3486,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu_plugin_gstat"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"git2",
|
||||
"nu-plugin",
|
||||
|
@ -3495,7 +3495,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu_plugin_inc"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"nu-plugin",
|
||||
"nu-protocol",
|
||||
|
@ -3504,7 +3504,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu_plugin_polars"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"chrono",
|
||||
"chrono-tz 0.9.0",
|
||||
|
@ -3538,7 +3538,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu_plugin_query"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"gjson",
|
||||
"nu-plugin",
|
||||
|
@ -3553,7 +3553,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "nu_plugin_stress_internals"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"interprocess",
|
||||
"serde",
|
||||
|
@ -3679,7 +3679,7 @@ checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3"
|
|||
|
||||
[[package]]
|
||||
name = "nuon"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
dependencies = [
|
||||
"chrono",
|
||||
"fancy-regex",
|
||||
|
@ -3787,9 +3787,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "openssl"
|
||||
version = "0.10.64"
|
||||
version = "0.10.66"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
|
||||
checksum = "9529f4786b70a3e8c61e11179af17ab6188ad8d0ded78c5529441ed39d4bd9c1"
|
||||
dependencies = [
|
||||
"bitflags 2.5.0",
|
||||
"cfg-if",
|
||||
|
@ -3828,9 +3828,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "openssl-sys"
|
||||
version = "0.9.102"
|
||||
version = "0.9.103"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2"
|
||||
checksum = "7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6"
|
||||
dependencies = [
|
||||
"cc",
|
||||
"libc",
|
||||
|
@ -5004,8 +5004,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "reedline"
|
||||
version = "0.32.0"
|
||||
source = "git+https://github.com/nushell/reedline?branch=main#480059a3f52cf919341cda88e8c544edd846bc73"
|
||||
version = "0.33.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2f8c676a3f3814a23c6a0fc9dff6b6c35b2e04df8134aae6f3929cc34de21a53"
|
||||
dependencies = [
|
||||
"arboard",
|
||||
"chrono",
|
||||
|
|
48
Cargo.toml
48
Cargo.toml
|
@ -11,7 +11,7 @@ license = "MIT"
|
|||
name = "nu"
|
||||
repository = "https://github.com/nushell/nushell"
|
||||
rust-version = "1.77.2"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
|
@ -116,7 +116,7 @@ mockito = { version = "1.4", default-features = false }
|
|||
native-tls = "0.2"
|
||||
nix = { version = "0.28", default-features = false }
|
||||
notify-debouncer-full = { version = "0.3", default-features = false }
|
||||
nu-ansi-term = "0.50.0"
|
||||
nu-ansi-term = "0.50.1"
|
||||
num-format = "0.4"
|
||||
num-traits = "0.2"
|
||||
omnipath = "0.1"
|
||||
|
@ -138,7 +138,7 @@ quote = "1.0"
|
|||
rand = "0.8"
|
||||
ratatui = "0.26"
|
||||
rayon = "1.10"
|
||||
reedline = "0.32.0"
|
||||
reedline = "0.33.0"
|
||||
regex = "1.9.5"
|
||||
rmp = "0.8"
|
||||
rmp-serde = "1.3"
|
||||
|
@ -183,22 +183,22 @@ windows-sys = "0.48"
|
|||
winreg = "0.52"
|
||||
|
||||
[dependencies]
|
||||
nu-cli = { path = "./crates/nu-cli", version = "0.95.1" }
|
||||
nu-cmd-base = { path = "./crates/nu-cmd-base", version = "0.95.1" }
|
||||
nu-cmd-lang = { path = "./crates/nu-cmd-lang", version = "0.95.1" }
|
||||
nu-cmd-plugin = { path = "./crates/nu-cmd-plugin", version = "0.95.1", optional = true }
|
||||
nu-cmd-extra = { path = "./crates/nu-cmd-extra", version = "0.95.1" }
|
||||
nu-command = { path = "./crates/nu-command", version = "0.95.1" }
|
||||
nu-engine = { path = "./crates/nu-engine", version = "0.95.1" }
|
||||
nu-explore = { path = "./crates/nu-explore", version = "0.95.1" }
|
||||
nu-lsp = { path = "./crates/nu-lsp/", version = "0.95.1" }
|
||||
nu-parser = { path = "./crates/nu-parser", version = "0.95.1" }
|
||||
nu-path = { path = "./crates/nu-path", version = "0.95.1" }
|
||||
nu-plugin-engine = { path = "./crates/nu-plugin-engine", optional = true, version = "0.95.1" }
|
||||
nu-protocol = { path = "./crates/nu-protocol", version = "0.95.1" }
|
||||
nu-std = { path = "./crates/nu-std", version = "0.95.1" }
|
||||
nu-system = { path = "./crates/nu-system", version = "0.95.1" }
|
||||
nu-utils = { path = "./crates/nu-utils", version = "0.95.1" }
|
||||
nu-cli = { path = "./crates/nu-cli", version = "0.96.1" }
|
||||
nu-cmd-base = { path = "./crates/nu-cmd-base", version = "0.96.1" }
|
||||
nu-cmd-lang = { path = "./crates/nu-cmd-lang", version = "0.96.1" }
|
||||
nu-cmd-plugin = { path = "./crates/nu-cmd-plugin", version = "0.96.1", optional = true }
|
||||
nu-cmd-extra = { path = "./crates/nu-cmd-extra", version = "0.96.1" }
|
||||
nu-command = { path = "./crates/nu-command", version = "0.96.1" }
|
||||
nu-engine = { path = "./crates/nu-engine", version = "0.96.1" }
|
||||
nu-explore = { path = "./crates/nu-explore", version = "0.96.1" }
|
||||
nu-lsp = { path = "./crates/nu-lsp/", version = "0.96.1" }
|
||||
nu-parser = { path = "./crates/nu-parser", version = "0.96.1" }
|
||||
nu-path = { path = "./crates/nu-path", version = "0.96.1" }
|
||||
nu-plugin-engine = { path = "./crates/nu-plugin-engine", optional = true, version = "0.96.1" }
|
||||
nu-protocol = { path = "./crates/nu-protocol", version = "0.96.1" }
|
||||
nu-std = { path = "./crates/nu-std", version = "0.96.1" }
|
||||
nu-system = { path = "./crates/nu-system", version = "0.96.1" }
|
||||
nu-utils = { path = "./crates/nu-utils", version = "0.96.1" }
|
||||
reedline = { workspace = true, features = ["bashisms", "sqlite"] }
|
||||
|
||||
crossterm = { workspace = true }
|
||||
|
@ -227,9 +227,9 @@ nix = { workspace = true, default-features = false, features = [
|
|||
] }
|
||||
|
||||
[dev-dependencies]
|
||||
nu-test-support = { path = "./crates/nu-test-support", version = "0.95.1" }
|
||||
nu-plugin-protocol = { path = "./crates/nu-plugin-protocol", version = "0.95.1" }
|
||||
nu-plugin-core = { path = "./crates/nu-plugin-core", version = "0.95.1" }
|
||||
nu-test-support = { path = "./crates/nu-test-support", version = "0.96.1" }
|
||||
nu-plugin-protocol = { path = "./crates/nu-plugin-protocol", version = "0.96.1" }
|
||||
nu-plugin-core = { path = "./crates/nu-plugin-core", version = "0.96.1" }
|
||||
assert_cmd = "2.0"
|
||||
dirs = { workspace = true }
|
||||
tango-bench = "0.5"
|
||||
|
@ -305,8 +305,8 @@ bench = false
|
|||
|
||||
# To use a development version of a dependency please use a global override here
|
||||
# changing versions in each sub-crate of the workspace is tedious
|
||||
[patch.crates-io]
|
||||
reedline = { git = "https://github.com/nushell/reedline", branch = "main" }
|
||||
# [patch.crates-io]
|
||||
# reedline = { git = "https://github.com/nushell/reedline", branch = "main" }
|
||||
# nu-ansi-term = {git = "https://github.com/nushell/nu-ansi-term.git", branch = "main"}
|
||||
|
||||
# Run all benchmarks with `cargo bench`
|
||||
|
|
|
@ -5,27 +5,27 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-cli"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-cli"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
bench = false
|
||||
|
||||
[dev-dependencies]
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.95.1" }
|
||||
nu-command = { path = "../nu-command", version = "0.95.1" }
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.95.1" }
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.96.1" }
|
||||
nu-command = { path = "../nu-command", version = "0.96.1" }
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.96.1" }
|
||||
rstest = { workspace = true, default-features = false }
|
||||
tempfile = { workspace = true }
|
||||
|
||||
[dependencies]
|
||||
nu-cmd-base = { path = "../nu-cmd-base", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.95.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.95.1" }
|
||||
nu-plugin-engine = { path = "../nu-plugin-engine", version = "0.95.1", optional = true }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-color-config = { path = "../nu-color-config", version = "0.95.1" }
|
||||
nu-cmd-base = { path = "../nu-cmd-base", version = "0.96.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.96.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.96.1" }
|
||||
nu-plugin-engine = { path = "../nu-plugin-engine", version = "0.96.1", optional = true }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
nu-color-config = { path = "../nu-color-config", version = "0.96.1" }
|
||||
nu-ansi-term = { workspace = true }
|
||||
reedline = { workspace = true, features = ["bashisms", "sqlite"] }
|
||||
|
||||
|
|
|
@ -61,10 +61,12 @@ impl Command for KeybindingsList {
|
|||
.map(|option| call.has_flag(engine_state, stack, option))
|
||||
.collect::<Result<Vec<_>, ShellError>>()?;
|
||||
|
||||
let no_option_specified = presence.iter().all(|present| !*present);
|
||||
|
||||
let records = all_options
|
||||
.iter()
|
||||
.zip(presence)
|
||||
.filter(|(_, present)| *present)
|
||||
.filter(|(_, present)| no_option_specified || *present)
|
||||
.flat_map(|(option, _)| get_records(option, call.head))
|
||||
.collect();
|
||||
|
||||
|
|
7
crates/nu-cli/tests/commands/keybindings_list.rs
Normal file
7
crates/nu-cli/tests/commands/keybindings_list.rs
Normal file
|
@ -0,0 +1,7 @@
|
|||
use nu_test_support::nu;
|
||||
|
||||
#[test]
|
||||
fn not_empty() {
|
||||
let result = nu!("keybindings list | is-not-empty");
|
||||
assert_eq!(result.out, "true");
|
||||
}
|
|
@ -1 +1,2 @@
|
|||
mod keybindings_list;
|
||||
mod nu_highlight;
|
||||
|
|
|
@ -5,15 +5,15 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "nu-cmd-base"
|
||||
repository = "https://github.com/nushell/nushell/tree/main/crates/nu-cmd-base"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.95.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.96.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
|
||||
indexmap = { workspace = true }
|
||||
miette = { workspace = true }
|
||||
|
|
|
@ -5,7 +5,7 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "nu-cmd-extra"
|
||||
repository = "https://github.com/nushell/nushell/tree/main/crates/nu-cmd-extra"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
|
@ -13,13 +13,13 @@ version = "0.95.1"
|
|||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-cmd-base = { path = "../nu-cmd-base", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-json = { version = "0.95.1", path = "../nu-json" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.95.1" }
|
||||
nu-pretty-hex = { version = "0.95.1", path = "../nu-pretty-hex" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-cmd-base = { path = "../nu-cmd-base", version = "0.96.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
nu-json = { version = "0.96.1", path = "../nu-json" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.96.1" }
|
||||
nu-pretty-hex = { version = "0.96.1", path = "../nu-pretty-hex" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
|
||||
# Potential dependencies for extras
|
||||
heck = { workspace = true }
|
||||
|
@ -33,6 +33,6 @@ v_htmlescape = { workspace = true }
|
|||
itertools = { workspace = true }
|
||||
|
||||
[dev-dependencies]
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.95.1" }
|
||||
nu-command = { path = "../nu-command", version = "0.95.1" }
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.95.1" }
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.96.1" }
|
||||
nu-command = { path = "../nu-command", version = "0.96.1" }
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.96.1" }
|
|
@ -6,16 +6,16 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-cmd-lang"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-cmd-lang"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
|
||||
itertools = { workspace = true }
|
||||
shadow-rs = { version = "0.29", default-features = false }
|
||||
|
|
|
@ -5,15 +5,15 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "nu-cmd-plugin"
|
||||
repository = "https://github.com/nushell/nushell/tree/main/crates/nu-cmd-plugin"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1", features = ["plugin"] }
|
||||
nu-plugin-engine = { path = "../nu-plugin-engine", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1", features = ["plugin"] }
|
||||
nu-plugin-engine = { path = "../nu-plugin-engine", version = "0.96.1" }
|
||||
|
||||
itertools = { workspace = true }
|
||||
|
||||
|
|
|
@ -5,18 +5,18 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-color-confi
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-color-config"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-json = { path = "../nu-json", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
nu-json = { path = "../nu-json", version = "0.96.1" }
|
||||
nu-ansi-term = { workspace = true }
|
||||
|
||||
serde = { workspace = true, features = ["derive"] }
|
||||
|
||||
[dev-dependencies]
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.95.1" }
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.96.1" }
|
|
@ -5,7 +5,7 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "nu-command"
|
||||
repository = "https://github.com/nushell/nushell/tree/main/crates/nu-command"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
|
@ -13,21 +13,21 @@ version = "0.95.1"
|
|||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-cmd-base = { path = "../nu-cmd-base", version = "0.95.1" }
|
||||
nu-color-config = { path = "../nu-color-config", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-glob = { path = "../nu-glob", version = "0.95.1" }
|
||||
nu-json = { path = "../nu-json", version = "0.95.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.95.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.95.1" }
|
||||
nu-pretty-hex = { path = "../nu-pretty-hex", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-system = { path = "../nu-system", version = "0.95.1" }
|
||||
nu-table = { path = "../nu-table", version = "0.95.1" }
|
||||
nu-term-grid = { path = "../nu-term-grid", version = "0.95.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-cmd-base = { path = "../nu-cmd-base", version = "0.96.1" }
|
||||
nu-color-config = { path = "../nu-color-config", version = "0.96.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
nu-glob = { path = "../nu-glob", version = "0.96.1" }
|
||||
nu-json = { path = "../nu-json", version = "0.96.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.96.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.96.1" }
|
||||
nu-pretty-hex = { path = "../nu-pretty-hex", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
nu-system = { path = "../nu-system", version = "0.96.1" }
|
||||
nu-table = { path = "../nu-table", version = "0.96.1" }
|
||||
nu-term-grid = { path = "../nu-term-grid", version = "0.96.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
nu-ansi-term = { workspace = true }
|
||||
nuon = { path = "../nuon", version = "0.95.1" }
|
||||
nuon = { path = "../nuon", version = "0.96.1" }
|
||||
|
||||
alphanumeric-sort = { workspace = true }
|
||||
base64 = { workspace = true }
|
||||
|
@ -137,8 +137,8 @@ sqlite = ["rusqlite"]
|
|||
trash-support = ["trash"]
|
||||
|
||||
[dev-dependencies]
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.95.1" }
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.95.1" }
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.96.1" }
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.96.1" }
|
||||
|
||||
dirs = { workspace = true }
|
||||
mockito = { workspace = true, default-features = false }
|
||||
|
|
|
@ -5,7 +5,7 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "nu-derive-value"
|
||||
repository = "https://github.com/nushell/nushell/tree/main/crates/nu-derive-value"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
proc-macro = true
|
||||
|
|
|
@ -5,16 +5,16 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-engine"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-engine"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-protocol = { path = "../nu-protocol", features = ["plugin"], version = "0.95.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.95.1" }
|
||||
nu-glob = { path = "../nu-glob", version = "0.95.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", features = ["plugin"], version = "0.96.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.96.1" }
|
||||
nu-glob = { path = "../nu-glob", version = "0.96.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
log = { workspace = true }
|
||||
|
||||
[features]
|
||||
|
|
|
@ -423,7 +423,7 @@ impl BlockBuilder {
|
|||
self.push(Instruction::Jump { index: label_id.0 }.into_spanned(span))
|
||||
}
|
||||
|
||||
/// The index that the next instruction [`.push()`]ed will have.
|
||||
/// The index that the next instruction [`.push()`](Self::push)ed will have.
|
||||
pub(crate) fn here(&self) -> usize {
|
||||
self.instructions.len()
|
||||
}
|
||||
|
|
|
@ -444,7 +444,15 @@ pub(crate) fn compile_expression(
|
|||
working_set,
|
||||
builder,
|
||||
&full_cell_path.head,
|
||||
RedirectModes::capture_out(expr.span),
|
||||
// Only capture the output if there is a tail. This was a bit of a headscratcher
|
||||
// as the parser emits a FullCellPath with no tail for subexpressions in
|
||||
// general, which shouldn't be captured any differently than they otherwise
|
||||
// would be.
|
||||
if !full_cell_path.tail.is_empty() {
|
||||
RedirectModes::capture_out(expr.span)
|
||||
} else {
|
||||
redirect_modes
|
||||
},
|
||||
in_reg,
|
||||
out_reg,
|
||||
)?;
|
||||
|
|
|
@ -5,21 +5,21 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-explore"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-explore"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.95.1" }
|
||||
nu-color-config = { path = "../nu-color-config", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-table = { path = "../nu-table", version = "0.95.1" }
|
||||
nu-json = { path = "../nu-json", version = "0.95.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.96.1" }
|
||||
nu-color-config = { path = "../nu-color-config", version = "0.96.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
nu-table = { path = "../nu-table", version = "0.96.1" }
|
||||
nu-json = { path = "../nu-json", version = "0.96.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
nu-ansi-term = { workspace = true }
|
||||
nu-pretty-hex = { path = "../nu-pretty-hex", version = "0.95.1" }
|
||||
nu-pretty-hex = { path = "../nu-pretty-hex", version = "0.96.1" }
|
||||
|
||||
anyhow = { workspace = true }
|
||||
log = { workspace = true }
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "nu-glob"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
authors = ["The Nushell Project Developers", "The Rust Project Developers"]
|
||||
license = "MIT/Apache-2.0"
|
||||
description = """
|
||||
|
|
|
@ -8,7 +8,7 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-json"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-json"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
|
@ -26,7 +26,7 @@ serde = { workspace = true }
|
|||
serde_json = { workspace = true }
|
||||
|
||||
[dev-dependencies]
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.95.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.95.1" }
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.96.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.96.1" }
|
||||
serde_json = "1.0"
|
||||
fancy-regex = "0.13.0"
|
|
@ -3,14 +3,14 @@ authors = ["The Nushell Project Developers"]
|
|||
description = "Nushell's integrated LSP server"
|
||||
repository = "https://github.com/nushell/nushell/tree/main/crates/nu-lsp"
|
||||
name = "nu-lsp"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
edition = "2021"
|
||||
license = "MIT"
|
||||
|
||||
[dependencies]
|
||||
nu-cli = { path = "../nu-cli", version = "0.95.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-cli = { path = "../nu-cli", version = "0.96.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
|
||||
reedline = { workspace = true }
|
||||
|
||||
|
@ -23,8 +23,8 @@ serde = { workspace = true }
|
|||
serde_json = { workspace = true }
|
||||
|
||||
[dev-dependencies]
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.95.1" }
|
||||
nu-command = { path = "../nu-command", version = "0.95.1" }
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.95.1" }
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.96.1" }
|
||||
nu-command = { path = "../nu-command", version = "0.96.1" }
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.96.1" }
|
||||
|
||||
assert-json-diff = "2.0"
|
|
@ -5,17 +5,17 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-parser"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-parser"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
exclude = ["/fuzz"]
|
||||
|
||||
[lib]
|
||||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.95.1" }
|
||||
nu-plugin-engine = { path = "../nu-plugin-engine", optional = true, version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.96.1" }
|
||||
nu-plugin-engine = { path = "../nu-plugin-engine", optional = true, version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
|
||||
bytesize = { workspace = true }
|
||||
chrono = { default-features = false, features = ['std'], workspace = true }
|
||||
|
|
|
@ -5,7 +5,7 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-path"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-path"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
exclude = ["/fuzz"]
|
||||
|
||||
[lib]
|
||||
|
|
|
@ -5,14 +5,14 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-plugin-core
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-plugin-core"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-plugin-protocol = { path = "../nu-plugin-protocol", version = "0.95.1", default-features = false }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
nu-plugin-protocol = { path = "../nu-plugin-protocol", version = "0.96.1", default-features = false }
|
||||
|
||||
rmp-serde = { workspace = true }
|
||||
serde = { workspace = true }
|
||||
|
|
|
@ -122,11 +122,11 @@ impl CommunicationMode {
|
|||
|
||||
/// The result of [`CommunicationMode::serve()`], which acts as an intermediate stage for
|
||||
/// communication modes that require some kind of socket binding to occur before the client process
|
||||
/// can be started. Call [`.connect()`] once the client process has been started.
|
||||
/// can be started. Call [`.connect()`](Self::connect) once the client process has been started.
|
||||
///
|
||||
/// The socket may be cleaned up on `Drop` if applicable.
|
||||
pub enum PreparedServerCommunication {
|
||||
/// Will take stdin and stdout from the process on [`.connect()`].
|
||||
/// Will take stdin and stdout from the process on [`.connect()`](Self::connect).
|
||||
Stdio,
|
||||
/// Contains the listener to accept connections on. On Unix, the socket is unlinked on `Drop`.
|
||||
#[cfg(feature = "local-socket")]
|
||||
|
|
|
@ -148,7 +148,7 @@ pub trait InterfaceManager {
|
|||
|
||||
/// Consume an input message.
|
||||
///
|
||||
/// When implementing, call [`.consume_stream_message()`] for any encapsulated
|
||||
/// When implementing, call [`.consume_stream_message()`](Self::consume_stream_message) for any encapsulated
|
||||
/// [`StreamMessage`]s received.
|
||||
fn consume(&mut self, input: Self::Input) -> Result<(), ShellError>;
|
||||
|
||||
|
|
|
@ -189,14 +189,14 @@ where
|
|||
}
|
||||
|
||||
/// Check if the stream was dropped from the other end. Recommended to do this before calling
|
||||
/// [`.write()`], especially in a loop.
|
||||
/// [`.write()`](Self::write), especially in a loop.
|
||||
pub fn is_dropped(&self) -> Result<bool, ShellError> {
|
||||
self.signal.is_dropped()
|
||||
}
|
||||
|
||||
/// Write a single piece of data to the stream.
|
||||
///
|
||||
/// Error if something failed with the write, or if [`.end()`] was already called
|
||||
/// Error if something failed with the write, or if [`.end()`](Self::end) was already called
|
||||
/// previously.
|
||||
pub fn write(&mut self, data: impl Into<StreamData>) -> Result<(), ShellError> {
|
||||
if !self.ended {
|
||||
|
@ -228,7 +228,7 @@ where
|
|||
}
|
||||
|
||||
/// Write a full iterator to the stream. Note that this doesn't end the stream, so you should
|
||||
/// still call [`.end()`].
|
||||
/// still call [`.end()`](Self::end).
|
||||
///
|
||||
/// If the stream is dropped from the other end, the iterator will not be fully consumed, and
|
||||
/// writing will terminate.
|
||||
|
@ -341,8 +341,8 @@ impl StreamWriterSignal {
|
|||
}
|
||||
|
||||
/// Track that a message has been sent. Returns `Ok(true)` if more messages can be sent,
|
||||
/// or `Ok(false)` if the high pressure mark has been reached and [`.wait_for_drain()`] should
|
||||
/// be called to block.
|
||||
/// or `Ok(false)` if the high pressure mark has been reached and
|
||||
/// [`.wait_for_drain()`](Self::wait_for_drain) should be called to block.
|
||||
pub fn notify_sent(&self) -> Result<bool, ShellError> {
|
||||
let mut state = self.lock()?;
|
||||
state.unacknowledged =
|
||||
|
|
|
@ -45,7 +45,7 @@ fn fail_if_poisoned<'a, T>(
|
|||
}
|
||||
|
||||
impl<T: Clone + Send> WaitableMut<T> {
|
||||
/// Create a new empty `WaitableMut`. Call [`.reader()`] to get [`Waitable`].
|
||||
/// Create a new empty `WaitableMut`. Call [`.reader()`](Self::reader) to get [`Waitable`].
|
||||
pub fn new() -> WaitableMut<T> {
|
||||
WaitableMut {
|
||||
shared: Arc::new(WaitableShared {
|
||||
|
|
|
@ -5,18 +5,18 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-plugin-engi
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-plugin-engine"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-system = { path = "../nu-system", version = "0.95.1" }
|
||||
nu-plugin-protocol = { path = "../nu-plugin-protocol", version = "0.95.1" }
|
||||
nu-plugin-core = { path = "../nu-plugin-core", version = "0.95.1", default-features = false }
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
nu-system = { path = "../nu-system", version = "0.96.1" }
|
||||
nu-plugin-protocol = { path = "../nu-plugin-protocol", version = "0.96.1" }
|
||||
nu-plugin-core = { path = "../nu-plugin-core", version = "0.96.1", default-features = false }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
|
||||
serde = { workspace = true }
|
||||
log = { workspace = true }
|
||||
|
|
|
@ -257,12 +257,9 @@ impl<'a> PluginExecutionContext for PluginExecutionCommandContext<'a> {
|
|||
}
|
||||
}
|
||||
|
||||
decl.run(
|
||||
&self.engine_state,
|
||||
stack,
|
||||
&(&call_builder.finish()).into(),
|
||||
input,
|
||||
)
|
||||
call_builder.with(stack, |stack, call| {
|
||||
decl.run(&self.engine_state, stack, call, input)
|
||||
})
|
||||
}
|
||||
|
||||
fn boxed(&self) -> Box<dyn PluginExecutionContext + 'static> {
|
||||
|
|
|
@ -80,8 +80,8 @@ impl PluginGc {
|
|||
///
|
||||
/// The reason the plugin tells the GC rather than just stopping itself via `source` is that
|
||||
/// it can't guarantee that the plugin currently pointed to by `source` is itself, but if the
|
||||
/// GC is still running, it hasn't received [`.stop_tracking()`] yet, which means it should be
|
||||
/// the right plugin.
|
||||
/// GC is still running, it hasn't received [`.stop_tracking()`](Self::stop_tracking) yet, which
|
||||
/// means it should be the right plugin.
|
||||
pub fn exited(&self) {
|
||||
let _ = self.sender.send(PluginGcMsg::Exited);
|
||||
}
|
||||
|
|
|
@ -26,7 +26,7 @@ impl PluginSource {
|
|||
|
||||
/// Create a new fake source with a fake identity, for testing
|
||||
///
|
||||
/// Warning: [`.persistent()`] will always return an error.
|
||||
/// Warning: [`.persistent()`](Self::persistent) will always return an error.
|
||||
pub fn new_fake(name: &str) -> PluginSource {
|
||||
PluginSource {
|
||||
identity: PluginIdentity::new_fake(name).into(),
|
||||
|
|
|
@ -5,14 +5,14 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-plugin-prot
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-plugin-protocol"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1", features = ["plugin"] }
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1", features = ["plugin"] }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
|
||||
bincode = "1.3"
|
||||
serde = { workspace = true, features = ["derive"] }
|
||||
|
|
|
@ -85,19 +85,19 @@ impl EvaluatedCall {
|
|||
self
|
||||
}
|
||||
|
||||
/// Builder variant of [`.add_positional()`].
|
||||
/// Builder variant of [`.add_positional()`](Self::add_positional).
|
||||
pub fn with_positional(mut self, value: Value) -> Self {
|
||||
self.add_positional(value);
|
||||
self
|
||||
}
|
||||
|
||||
/// Builder variant of [`.add_named()`].
|
||||
/// Builder variant of [`.add_named()`](Self::add_named).
|
||||
pub fn with_named(mut self, name: Spanned<impl Into<String>>, value: Value) -> Self {
|
||||
self.add_named(name, value);
|
||||
self
|
||||
}
|
||||
|
||||
/// Builder variant of [`.add_flag()`].
|
||||
/// Builder variant of [`.add_flag()`](Self::add_flag).
|
||||
pub fn with_flag(mut self, name: Spanned<impl Into<String>>) -> Self {
|
||||
self.add_flag(name);
|
||||
self
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "nu-plugin-test-support"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
edition = "2021"
|
||||
license = "MIT"
|
||||
description = "Testing support for Nushell plugins"
|
||||
|
@ -12,14 +12,14 @@ bench = false
|
|||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1", features = ["plugin"] }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1", features = ["plugin"] }
|
||||
nu-parser = { path = "../nu-parser", version = "0.95.1", features = ["plugin"] }
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.95.1" }
|
||||
nu-plugin-core = { path = "../nu-plugin-core", version = "0.95.1" }
|
||||
nu-plugin-engine = { path = "../nu-plugin-engine", version = "0.95.1" }
|
||||
nu-plugin-protocol = { path = "../nu-plugin-protocol", version = "0.95.1" }
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1", features = ["plugin"] }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1", features = ["plugin"] }
|
||||
nu-parser = { path = "../nu-parser", version = "0.96.1", features = ["plugin"] }
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.96.1" }
|
||||
nu-plugin-core = { path = "../nu-plugin-core", version = "0.96.1" }
|
||||
nu-plugin-engine = { path = "../nu-plugin-engine", version = "0.96.1" }
|
||||
nu-plugin-protocol = { path = "../nu-plugin-protocol", version = "0.96.1" }
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.96.1" }
|
||||
nu-ansi-term = { workspace = true }
|
||||
similar = "2.5"
|
||||
|
||||
|
|
|
@ -5,17 +5,17 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-plugin"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-plugin"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-plugin-protocol = { path = "../nu-plugin-protocol", version = "0.95.1" }
|
||||
nu-plugin-core = { path = "../nu-plugin-core", version = "0.95.1", default-features = false }
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
nu-plugin-protocol = { path = "../nu-plugin-protocol", version = "0.96.1" }
|
||||
nu-plugin-core = { path = "../nu-plugin-core", version = "0.96.1", default-features = false }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
|
||||
log = { workspace = true }
|
||||
thiserror = "1.0"
|
||||
|
|
|
@ -75,8 +75,8 @@ use crate::{EngineInterface, EvaluatedCall, Plugin};
|
|||
pub trait PluginCommand: Sync {
|
||||
/// The type of plugin this command runs on.
|
||||
///
|
||||
/// Since [`.run()`] takes a reference to the plugin, it is necessary to define the type of
|
||||
/// plugin that the command expects here.
|
||||
/// Since [`.run()`](Self::run) takes a reference to the plugin, it is necessary to define the
|
||||
/// type of plugin that the command expects here.
|
||||
type Plugin: Plugin;
|
||||
|
||||
/// The name of the command from within Nu.
|
||||
|
@ -96,9 +96,9 @@ pub trait PluginCommand: Sync {
|
|||
|
||||
/// Additional documentation for usage of the command.
|
||||
///
|
||||
/// This is optional - any arguments documented by [`.signature()`] will be shown in the help
|
||||
/// page automatically. However, this can be useful for explaining things that would be too
|
||||
/// brief to include in [`.usage()`] and may span multiple lines.
|
||||
/// This is optional - any arguments documented by [`.signature()`](Self::signature) will be
|
||||
/// shown in the help page automatically. However, this can be useful for explaining things that
|
||||
/// would be too brief to include in [`.usage()`](Self::usage) and may span multiple lines.
|
||||
fn extra_usage(&self) -> &str {
|
||||
""
|
||||
}
|
||||
|
|
|
@ -638,8 +638,9 @@ impl EngineInterface {
|
|||
|
||||
/// Get all environment variables from the engine.
|
||||
///
|
||||
/// Since this is quite a large map that has to be sent, prefer to use [`.get_env_var()`] if
|
||||
/// the variables needed are known ahead of time and there are only a small number needed.
|
||||
/// Since this is quite a large map that has to be sent, prefer to use
|
||||
/// [`.get_env_var()`] (Self::get_env_var) if the variables needed are known ahead of time
|
||||
/// and there are only a small number needed.
|
||||
///
|
||||
/// # Example
|
||||
/// ```rust,no_run
|
||||
|
@ -893,9 +894,9 @@ impl EngineInterface {
|
|||
}
|
||||
|
||||
/// Ask the engine for the identifier for a declaration. If found, the result can then be passed
|
||||
/// to [`.call_decl()`] to call other internal commands.
|
||||
/// to [`.call_decl()`](Self::call_decl) to call other internal commands.
|
||||
///
|
||||
/// See [`.call_decl()`] for an example.
|
||||
/// See [`.call_decl()`](Self::call_decl) for an example.
|
||||
pub fn find_decl(&self, name: impl Into<String>) -> Result<Option<DeclId>, ShellError> {
|
||||
let call = EngineCall::FindDecl(name.into());
|
||||
|
||||
|
@ -910,7 +911,7 @@ impl EngineInterface {
|
|||
}
|
||||
|
||||
/// Ask the engine to call an internal command, using the declaration ID previously looked up
|
||||
/// with [`.find_decl()`].
|
||||
/// with [`.find_decl()`](Self::find_decl).
|
||||
///
|
||||
/// # Example
|
||||
///
|
||||
|
@ -1032,7 +1033,7 @@ impl Interface for EngineInterface {
|
|||
|
||||
/// Keeps the plugin in the foreground as long as it is alive.
|
||||
///
|
||||
/// Use [`.leave()`] to leave the foreground without ignoring the error.
|
||||
/// Use [`.leave()`](Self::leave) to leave the foreground without ignoring the error.
|
||||
pub struct ForegroundGuard(Option<EngineInterface>);
|
||||
|
||||
impl ForegroundGuard {
|
||||
|
|
|
@ -5,7 +5,7 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-pretty-hex"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-pretty-hex"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
|
|
@ -5,7 +5,7 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-protocol"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-protocol"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
|
@ -13,10 +13,10 @@ version = "0.95.1"
|
|||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.95.1" }
|
||||
nu-system = { path = "../nu-system", version = "0.95.1" }
|
||||
nu-derive-value = { path = "../nu-derive-value", version = "0.95.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.96.1" }
|
||||
nu-system = { path = "../nu-system", version = "0.96.1" }
|
||||
nu-derive-value = { path = "../nu-derive-value", version = "0.96.1" }
|
||||
|
||||
brotli = { workspace = true, optional = true }
|
||||
byte-unit = { version = "5.1", features = [ "serde" ] }
|
||||
|
@ -53,7 +53,7 @@ plugin = [
|
|||
serde_json = { workspace = true }
|
||||
strum = "0.26"
|
||||
strum_macros = "0.26"
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.95.1" }
|
||||
nu-test-support = { path = "../nu-test-support", version = "0.96.1" }
|
||||
pretty_assertions = { workspace = true }
|
||||
rstest = { workspace = true }
|
||||
tempfile = { workspace = true }
|
||||
|
|
|
@ -432,7 +432,17 @@ impl Expression {
|
|||
Expr::Int(_) => {}
|
||||
Expr::Float(_) => {}
|
||||
Expr::Binary(_) => {}
|
||||
Expr::Range(_) => {}
|
||||
Expr::Range(range) => {
|
||||
if let Some(from) = &mut range.from {
|
||||
from.replace_in_variable(working_set, new_var_id);
|
||||
}
|
||||
if let Some(next) = &mut range.next {
|
||||
next.replace_in_variable(working_set, new_var_id);
|
||||
}
|
||||
if let Some(to) = &mut range.to {
|
||||
to.replace_in_variable(working_set, new_var_id);
|
||||
}
|
||||
}
|
||||
Expr::Var(var_id) | Expr::VarDecl(var_id) => {
|
||||
if *var_id == IN_VARIABLE_ID {
|
||||
*var_id = new_var_id;
|
||||
|
|
|
@ -842,9 +842,9 @@ impl EngineState {
|
|||
|
||||
/// Optionally get a block by id, if it exists
|
||||
///
|
||||
/// Prefer to use [`.get_block()`] in most cases - `BlockId`s that don't exist are normally a
|
||||
/// compiler error. This only exists to stop plugins from crashing the engine if they send us
|
||||
/// something invalid.
|
||||
/// Prefer to use [`.get_block()`](Self::get_block) in most cases - `BlockId`s that don't exist
|
||||
/// are normally a compiler error. This only exists to stop plugins from crashing the engine if
|
||||
/// they send us something invalid.
|
||||
pub fn try_get_block(&self, block_id: BlockId) -> Option<&Arc<Block>> {
|
||||
self.blocks.get(block_id)
|
||||
}
|
||||
|
|
|
@ -51,7 +51,7 @@ pub struct Stack {
|
|||
pub parent_stack: Option<Arc<Stack>>,
|
||||
/// Variables that have been deleted (this is used to hide values from parent stack lookups)
|
||||
pub parent_deletions: Vec<VarId>,
|
||||
/// Locally updated config. Use [`.get_config()`] to access correctly.
|
||||
/// Locally updated config. Use [`.get_config()`](Self::get_config) to access correctly.
|
||||
pub config: Option<Arc<Config>>,
|
||||
pub(crate) out_dest: StackOutDest,
|
||||
}
|
||||
|
|
|
@ -37,7 +37,8 @@ pub struct LabeledError {
|
|||
impl LabeledError {
|
||||
/// Create a new plain [`LabeledError`] with the given message.
|
||||
///
|
||||
/// This is usually used builder-style with methods like [`.with_label()`] to build an error.
|
||||
/// This is usually used builder-style with methods like [`.with_label()`](Self::with_label) to
|
||||
/// build an error.
|
||||
///
|
||||
/// # Example
|
||||
///
|
||||
|
|
|
@ -117,7 +117,8 @@ impl PipelineData {
|
|||
/// Get a type that is representative of the `PipelineData`.
|
||||
///
|
||||
/// The type returned here makes no effort to collect a stream, so it may be a different type
|
||||
/// than would be returned by [`Value::get_type()`] on the result of [`.into_value()`].
|
||||
/// than would be returned by [`Value::get_type()`] on the result of
|
||||
/// [`.into_value()`](Self::into_value).
|
||||
///
|
||||
/// Specifically, a `ListStream` results in [`list stream`](Type::ListStream) rather than
|
||||
/// the fully complete [`list`](Type::List) type (which would require knowing the contents),
|
||||
|
|
|
@ -5,12 +5,12 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-std"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-std"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[dependencies]
|
||||
nu-parser = { version = "0.95.1", path = "../nu-parser" }
|
||||
nu-protocol = { version = "0.95.1", path = "../nu-protocol" }
|
||||
nu-engine = { version = "0.95.1", path = "../nu-engine" }
|
||||
nu-parser = { version = "0.96.1", path = "../nu-parser" }
|
||||
nu-protocol = { version = "0.96.1", path = "../nu-protocol" }
|
||||
nu-engine = { version = "0.96.1", path = "../nu-engine" }
|
||||
miette = { workspace = true, features = ["fancy-no-backtrace"] }
|
||||
|
||||
log = "0.4"
|
|
@ -3,7 +3,7 @@ authors = ["The Nushell Project Developers", "procs creators"]
|
|||
description = "Nushell system querying"
|
||||
repository = "https://github.com/nushell/nushell/tree/main/crates/nu-system"
|
||||
name = "nu-system"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
edition = "2021"
|
||||
license = "MIT"
|
||||
|
||||
|
|
|
@ -105,10 +105,10 @@ impl Drop for ForegroundChild {
|
|||
///
|
||||
/// If there is already a foreground external process running, spawned with [`ForegroundChild`],
|
||||
/// this expects the process ID to remain in the process group created by the [`ForegroundChild`]
|
||||
/// for the lifetime of the guard, and keeps the terminal controlling process group set to that. If
|
||||
/// there is no foreground external process running, this sets the foreground process group to the
|
||||
/// plugin's process ID. The process group that is expected can be retrieved with [`.pgrp()`] if
|
||||
/// different from the plugin process ID.
|
||||
/// for the lifetime of the guard, and keeps the terminal controlling process group set to that.
|
||||
/// If there is no foreground external process running, this sets the foreground process group to
|
||||
/// the plugin's process ID. The process group that is expected can be retrieved with
|
||||
/// [`.pgrp()`](Self::pgrp) if different from the plugin process ID.
|
||||
///
|
||||
/// ## Other systems
|
||||
///
|
||||
|
|
|
@ -5,20 +5,20 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-table"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-table"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-color-config = { path = "../nu-color-config", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
nu-color-config = { path = "../nu-color-config", version = "0.96.1" }
|
||||
nu-ansi-term = { workspace = true }
|
||||
once_cell = { workspace = true }
|
||||
fancy-regex = { workspace = true }
|
||||
tabled = { workspace = true, features = ["color"], default-features = false }
|
||||
|
||||
[dev-dependencies]
|
||||
# nu-test-support = { path="../nu-test-support", version = "0.95.1" }
|
||||
# nu-test-support = { path="../nu-test-support", version = "0.96.1" }
|
|
@ -5,12 +5,12 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-term-grid"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-term-grid"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
|
||||
unicode-width = { workspace = true }
|
|
@ -5,16 +5,16 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu-test-suppor
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu-test-support"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-path = { path = "../nu-path", version = "0.95.1" }
|
||||
nu-glob = { path = "../nu-glob", version = "0.95.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.96.1" }
|
||||
nu-glob = { path = "../nu-glob", version = "0.96.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
|
||||
num-format = { workspace = true }
|
||||
which = { workspace = true }
|
||||
|
|
|
@ -5,7 +5,7 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "nu-utils"
|
||||
repository = "https://github.com/nushell/nushell/tree/main/crates/nu-utils"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
[[bin]]
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Nushell Config File
|
||||
#
|
||||
# version = "0.95.1"
|
||||
# version = "0.96.1"
|
||||
|
||||
# For more information on defining custom themes, see
|
||||
# https://www.nushell.sh/book/coloring_and_theming.html
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Nushell Environment Config File
|
||||
#
|
||||
# version = "0.95.1"
|
||||
# version = "0.96.1"
|
||||
|
||||
def create_left_prompt [] {
|
||||
let dir = match (do --ignore-shell-errors { $env.PWD | path relative-to $nu.home-path }) {
|
||||
|
|
|
@ -10,10 +10,10 @@ name = "nu_plugin_custom_values"
|
|||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1", features = ["plugin"] }
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1", features = ["plugin"] }
|
||||
serde = { workspace = true, default-features = false }
|
||||
typetag = "0.2"
|
||||
|
||||
[dev-dependencies]
|
||||
nu-plugin-test-support = { path = "../nu-plugin-test-support", version = "0.95.1" }
|
||||
nu-plugin-test-support = { path = "../nu-plugin-test-support", version = "0.96.1" }
|
|
@ -5,7 +5,7 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu_plugin_exam
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_example"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[[bin]]
|
||||
name = "nu_plugin_example"
|
||||
|
@ -15,9 +15,9 @@ bench = false
|
|||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1", features = ["plugin"] }
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1", features = ["plugin"] }
|
||||
|
||||
[dev-dependencies]
|
||||
nu-plugin-test-support = { path = "../nu-plugin-test-support", version = "0.95.1" }
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.95.1" }
|
||||
nu-plugin-test-support = { path = "../nu-plugin-test-support", version = "0.96.1" }
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.96.1" }
|
|
@ -5,12 +5,12 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu_plugin_form
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_formats"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1", features = ["plugin"] }
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1", features = ["plugin"] }
|
||||
|
||||
indexmap = { workspace = true }
|
||||
eml-parser = "0.1"
|
||||
|
@ -18,4 +18,4 @@ ical = "0.11"
|
|||
rust-ini = "0.21.0"
|
||||
|
||||
[dev-dependencies]
|
||||
nu-plugin-test-support = { path = "../nu-plugin-test-support", version = "0.95.1" }
|
||||
nu-plugin-test-support = { path = "../nu-plugin-test-support", version = "0.96.1" }
|
|
@ -5,7 +5,7 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu_plugin_gsta
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_gstat"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
@ -16,7 +16,7 @@ name = "nu_plugin_gstat"
|
|||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
|
||||
git2 = "0.19"
|
|
@ -5,7 +5,7 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu_plugin_inc"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_inc"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
@ -16,7 +16,7 @@ name = "nu_plugin_inc"
|
|||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1", features = ["plugin"] }
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1", features = ["plugin"] }
|
||||
|
||||
semver = "1.0"
|
|
@ -6,7 +6,7 @@
|
|||
# it also allows us to test the plugin interface with something manually implemented in a scripting
|
||||
# language without adding any extra dependencies to our tests.
|
||||
|
||||
const NUSHELL_VERSION = "0.95.1"
|
||||
const NUSHELL_VERSION = "0.96.1"
|
||||
const PLUGIN_VERSION = "0.1.0" # bump if you change commands!
|
||||
|
||||
def main [--stdio] {
|
||||
|
|
|
@ -5,7 +5,7 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "nu_plugin_polars"
|
||||
repository = "https://github.com/nushell/nushell/tree/main/crates/nu_plugin_polars"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
|
@ -17,10 +17,10 @@ bench = false
|
|||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.95.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.95.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.96.1" }
|
||||
nu-path = { path = "../nu-path", version = "0.96.1" }
|
||||
nu-utils = { path = "../nu-utils", version = "0.96.1" }
|
||||
|
||||
# Potential dependencies for extras
|
||||
chrono = { workspace = true, features = ["std", "unstable-locales"], default-features = false }
|
||||
|
@ -76,9 +76,9 @@ optional = false
|
|||
version = "0.41"
|
||||
|
||||
[dev-dependencies]
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.95.1" }
|
||||
nu-command = { path = "../nu-command", version = "0.95.1" }
|
||||
nu-plugin-test-support = { path = "../nu-plugin-test-support", version = "0.95.1" }
|
||||
nu-cmd-lang = { path = "../nu-cmd-lang", version = "0.96.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.96.1" }
|
||||
nu-command = { path = "../nu-command", version = "0.96.1" }
|
||||
nu-plugin-test-support = { path = "../nu-plugin-test-support", version = "0.96.1" }
|
||||
tempfile.workspace = true
|
|
@ -27,7 +27,7 @@ import sys
|
|||
import json
|
||||
|
||||
|
||||
NUSHELL_VERSION = "0.95.1"
|
||||
NUSHELL_VERSION = "0.96.1"
|
||||
PLUGIN_VERSION = "0.1.0" # bump if you change commands!
|
||||
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu_plugin_quer
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_query"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
@ -16,8 +16,8 @@ name = "nu_plugin_query"
|
|||
bench = false
|
||||
|
||||
[dependencies]
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-plugin = { path = "../nu-plugin", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
|
||||
gjson = "0.8"
|
||||
scraper = { default-features = false, version = "0.19" }
|
||||
|
|
|
@ -81,7 +81,7 @@ pub fn web_examples() -> Vec<Example<'static>> {
|
|||
result: None
|
||||
},
|
||||
Example {
|
||||
example: "http get https://www.nushell.sh | query web --query 'h2, h2 + p' | each {str join} | group 2 | each {rotate --ccw tagline description} | flatten",
|
||||
example: "http get https://www.nushell.sh | query web --query 'h2, h2 + p' | each {str join} | chunks 2 | each {rotate --ccw tagline description} | flatten",
|
||||
description: "Pass multiple css selectors to extract several elements within single query, group the query results together and rotate them to create a table",
|
||||
result: None,
|
||||
},
|
||||
|
|
|
@ -5,7 +5,7 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nu_plugin_stre
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_stress_internals"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
[[bin]]
|
||||
name = "nu_plugin_stress_internals"
|
||||
|
|
|
@ -5,14 +5,14 @@ repository = "https://github.com/nushell/nushell/tree/main/crates/nuon"
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "nuon"
|
||||
version = "0.95.1"
|
||||
version = "0.96.1"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
nu-parser = { path = "../nu-parser", version = "0.95.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.95.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.95.1" }
|
||||
nu-parser = { path = "../nu-parser", version = "0.96.1" }
|
||||
nu-protocol = { path = "../nu-protocol", version = "0.96.1" }
|
||||
nu-engine = { path = "../nu-engine", version = "0.96.1" }
|
||||
once_cell = { workspace = true }
|
||||
fancy-regex = { workspace = true }
|
||||
|
||||
|
|
|
@ -75,6 +75,16 @@ fn in_used_twice_and_also_in_pipeline() -> TestResult {
|
|||
)
|
||||
}
|
||||
|
||||
// #13441
|
||||
#[test]
|
||||
fn in_used_in_range_from() -> TestResult {
|
||||
run_test(r#"6 | $in..10 | math sum"#, "40")
|
||||
}
|
||||
#[test]
|
||||
fn in_used_in_range_to() -> TestResult {
|
||||
run_test(r#"6 | 3..$in | math sum"#, "18")
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn help_works_with_missing_requirements() -> TestResult {
|
||||
run_test(r#"each --help | lines | length"#, "72")
|
||||
|
|
|
@ -209,6 +209,12 @@ fn run_glob_if_pass_variable_to_external() {
|
|||
})
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn subexpression_does_not_implicitly_capture() {
|
||||
let actual = nu!("(nu --testbin cococo); null");
|
||||
assert_eq!(actual.out, "cococo");
|
||||
}
|
||||
|
||||
mod it_evaluation {
|
||||
use super::nu;
|
||||
use nu_test_support::fs::Stub::{EmptyFile, FileWithContent, FileWithContentToBeTrimmed};
|
||||
|
|
Loading…
Reference in New Issue
Block a user