Update crossterm/ratatui/dev-reedline (#10137)

# Description
This updates most crates to 0.27 `crossterm`.
To do so we need the most recent `ratatui`

`reedline` can now update as well.
See https://github.com/nushell/reedline/pull/625

Sadly this introduces some crate duplication again as there are some
other dependency updates.
Furthermore we have another crate depending on 0.26.1 crossterm
(`comfy-table` that some how gets pulled in by polars)

# User-Facing Changes
2 additional mouse events detected by `input listen`

# Tests + Formatting
None
This commit is contained in:
Stefan Holderbach 2023-09-04 02:22:25 +02:00 committed by GitHub
parent dac32557cd
commit 3a20fbfe94
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 67 additions and 28 deletions

81
Cargo.lock generated
View File

@ -686,7 +686,7 @@ version = "7.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9ab77dbd8adecaf3f0db40581631b995f312a8a5ae3aa9993188bb8f23d83a5b" checksum = "9ab77dbd8adecaf3f0db40581631b995f312a8a5ae3aa9993188bb8f23d83a5b"
dependencies = [ dependencies = [
"crossterm", "crossterm 0.26.1",
"strum 0.24.1", "strum 0.24.1",
"strum_macros 0.24.3", "strum_macros 0.24.3",
"unicode-width", "unicode-width",
@ -808,7 +808,7 @@ dependencies = [
"clap", "clap",
"criterion-plot", "criterion-plot",
"is-terminal", "is-terminal",
"itertools", "itertools 0.10.5",
"num-traits", "num-traits",
"once_cell", "once_cell",
"oorandom", "oorandom",
@ -829,7 +829,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1" checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1"
dependencies = [ dependencies = [
"cast", "cast",
"itertools", "itertools 0.10.5",
] ]
[[package]] [[package]]
@ -892,6 +892,22 @@ dependencies = [
"libc", "libc",
"mio", "mio",
"parking_lot", "parking_lot",
"signal-hook",
"signal-hook-mio",
"winapi",
]
[[package]]
name = "crossterm"
version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f476fe445d41c9e991fd07515a6f463074b782242ccf4a5b7b1d1012e70824df"
dependencies = [
"bitflags 2.3.3",
"crossterm_winapi",
"libc",
"mio",
"parking_lot",
"serde", "serde",
"signal-hook", "signal-hook",
"signal-hook-mio", "signal-hook-mio",
@ -1822,6 +1838,12 @@ dependencies = [
"unicode-width", "unicode-width",
] ]
[[package]]
name = "indoc"
version = "2.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2c785eefb63ebd0e33416dfcb8d6da0bf27ce752843a45632a67bf10d4d4b5c4"
[[package]] [[package]]
name = "inotify" name = "inotify"
version = "0.9.6" version = "0.9.6"
@ -1928,6 +1950,15 @@ dependencies = [
"either", "either",
] ]
[[package]]
name = "itertools"
version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
dependencies = [
"either",
]
[[package]] [[package]]
name = "itoa" name = "itoa"
version = "1.0.8" version = "1.0.8"
@ -2567,7 +2598,7 @@ version = "0.84.1"
dependencies = [ dependencies = [
"assert_cmd", "assert_cmd",
"criterion", "criterion",
"crossterm", "crossterm 0.27.0",
"ctrlc", "ctrlc",
"log", "log",
"miette", "miette",
@ -2622,7 +2653,7 @@ name = "nu-cli"
version = "0.84.1" version = "0.84.1"
dependencies = [ dependencies = [
"chrono", "chrono",
"crossterm", "crossterm 0.27.0",
"fancy-regex", "fancy-regex",
"fuzzy-matcher", "fuzzy-matcher",
"is_executable", "is_executable",
@ -2708,7 +2739,7 @@ name = "nu-cmd-lang"
version = "0.84.1" version = "0.84.1"
dependencies = [ dependencies = [
"fancy-regex", "fancy-regex",
"itertools", "itertools 0.10.5",
"nu-ansi-term", "nu-ansi-term",
"nu-engine", "nu-engine",
"nu-parser", "nu-parser",
@ -2744,7 +2775,7 @@ dependencies = [
"chrono", "chrono",
"chrono-humanize", "chrono-humanize",
"chrono-tz", "chrono-tz",
"crossterm", "crossterm 0.27.0",
"csv", "csv",
"dialoguer", "dialoguer",
"digest", "digest",
@ -2758,7 +2789,7 @@ dependencies = [
"htmlescape", "htmlescape",
"indexmap 2.0.0", "indexmap 2.0.0",
"indicatif", "indicatif",
"itertools", "itertools 0.10.5",
"libc", "libc",
"log", "log",
"lscolors", "lscolors",
@ -2843,7 +2874,7 @@ name = "nu-explore"
version = "0.84.1" version = "0.84.1"
dependencies = [ dependencies = [
"ansi-str", "ansi-str",
"crossterm", "crossterm 0.27.0",
"lscolors", "lscolors",
"nu-ansi-term", "nu-ansi-term",
"nu-color-config", "nu-color-config",
@ -2880,7 +2911,7 @@ version = "0.84.1"
dependencies = [ dependencies = [
"bytesize", "bytesize",
"chrono", "chrono",
"itertools", "itertools 0.10.5",
"log", "log",
"nu-engine", "nu-engine",
"nu-path", "nu-path",
@ -3931,7 +3962,7 @@ checksum = "09963355b9f467184c04017ced4a2ba2d75cbcb4e7462690d388233253d4b1a9"
dependencies = [ dependencies = [
"anstyle", "anstyle",
"difflib", "difflib",
"itertools", "itertools 0.10.5",
"predicates-core", "predicates-core",
] ]
@ -4114,13 +4145,17 @@ dependencies = [
[[package]] [[package]]
name = "ratatui" name = "ratatui"
version = "0.20.1" version = "0.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dcc0d032bccba900ee32151ec0265667535c230169f5a011154cdcd984e16829" checksum = "2e2e4cd95294a85c3b4446e63ef054eea43e0205b1fd60120c16b74ff7ff96ad"
dependencies = [ dependencies = [
"bitflags 1.3.2", "bitflags 2.3.3",
"cassowary", "cassowary",
"crossterm", "crossterm 0.27.0",
"indoc",
"itertools 0.11.0",
"paste",
"strum 0.25.0",
"unicode-segmentation", "unicode-segmentation",
"unicode-width", "unicode-width",
] ]
@ -4179,13 +4214,12 @@ dependencies = [
[[package]] [[package]]
name = "reedline" name = "reedline"
version = "0.23.0" version = "0.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "git+https://github.com/nushell/reedline.git?branch=main#31257a4c5413d4a262912359f515907b8295db5c"
checksum = "3defc4467a8909614bcb02cb304a3e8472c31f7a44e6c6c287eb9575b212bc4d"
dependencies = [ dependencies = [
"chrono", "chrono",
"crossterm", "crossterm 0.27.0",
"fd-lock", "fd-lock",
"itertools", "itertools 0.10.5",
"nu-ansi-term", "nu-ansi-term",
"rusqlite", "rusqlite",
"serde", "serde",
@ -4682,9 +4716,9 @@ checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
[[package]] [[package]]
name = "signal-hook" name = "signal-hook"
version = "0.3.15" version = "0.3.17"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "732768f1176d21d09e076c23a93123d40bba92d50c4058da34d45c8de8e682b9" checksum = "8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801"
dependencies = [ dependencies = [
"libc", "libc",
"signal-hook-registry", "signal-hook-registry",
@ -4901,6 +4935,9 @@ name = "strum"
version = "0.25.0" version = "0.25.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125" checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125"
dependencies = [
"strum_macros 0.25.1",
]
[[package]] [[package]]
name = "strum_macros" name = "strum_macros"
@ -5654,7 +5691,7 @@ checksum = "06c7a3bac6110ac062b7b422a442b7ee23e07209e2784a036654cab1e71bbafc"
dependencies = [ dependencies = [
"bstr 0.2.17", "bstr 0.2.17",
"const_format", "const_format",
"itertools", "itertools 0.10.5",
"nom", "nom",
"nom-supreme", "nom-supreme",
"pori", "pori",

View File

@ -69,7 +69,7 @@ nu-utils = { path = "./crates/nu-utils", version = "0.84.1" }
nu-ansi-term = "0.49.0" nu-ansi-term = "0.49.0"
reedline = { version = "0.23.0", features = ["bashisms", "sqlite"] } reedline = { version = "0.23.0", features = ["bashisms", "sqlite"] }
crossterm = "0.26" crossterm = "0.27"
ctrlc = "3.4" ctrlc = "3.4"
log = "0.4" log = "0.4"
miette = { version = "5.10", features = ["fancy-no-backtrace"] } miette = { version = "5.10", features = ["fancy-no-backtrace"] }
@ -163,7 +163,7 @@ bench = false
# To use a development version of a dependency please use a global override here # 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 # changing versions in each sub-crate of the workspace is tedious
[patch.crates-io] [patch.crates-io]
# reedline = { git = "https://github.com/nushell/reedline.git", branch = "main"} reedline = { git = "https://github.com/nushell/reedline.git", branch = "main"}
# nu-ansi-term = {git = "https://github.com/nushell/nu-ansi-term.git", branch = "main"} # nu-ansi-term = {git = "https://github.com/nushell/nu-ansi-term.git", branch = "main"}
# Criterion benchmarking setup # Criterion benchmarking setup

View File

@ -28,7 +28,7 @@ nu-ansi-term = "0.49.0"
reedline = { version = "0.23.0", features = ["bashisms", "sqlite"] } reedline = { version = "0.23.0", features = ["bashisms", "sqlite"] }
chrono = { default-features = false, features = ["std"], version = "0.4" } chrono = { default-features = false, features = ["std"], version = "0.4" }
crossterm = "0.26" crossterm = "0.27"
fancy-regex = "0.11" fancy-regex = "0.11"
fuzzy-matcher = "0.3" fuzzy-matcher = "0.3"
is_executable = "1.0" is_executable = "1.0"

View File

@ -36,7 +36,7 @@ calamine = "0.21"
chrono = { version = "0.4", features = ["std", "unstable-locales"], default-features = false } chrono = { version = "0.4", features = ["std", "unstable-locales"], default-features = false }
chrono-humanize = "0.2.3" chrono-humanize = "0.2.3"
chrono-tz = "0.8" chrono-tz = "0.8"
crossterm = "0.26" crossterm = "0.27"
csv = "1.2" csv = "1.2"
dialoguer = { default-features = false, features = ["fuzzy-select"], version = "0.10" } dialoguer = { default-features = false, features = ["fuzzy-select"], version = "0.10" }
digest = { default-features = false, version = "0.10" } digest = { default-features = false, version = "0.10" }

View File

@ -380,6 +380,8 @@ fn create_mouse_event(
MouseEventKind::Moved => "moved".to_string(), MouseEventKind::Moved => "moved".to_string(),
MouseEventKind::ScrollDown => "scroll_down".to_string(), MouseEventKind::ScrollDown => "scroll_down".to_string(),
MouseEventKind::ScrollUp => "scroll_up".to_string(), MouseEventKind::ScrollUp => "scroll_up".to_string(),
MouseEventKind::ScrollLeft => "scroll_left".to_string(),
MouseEventKind::ScrollRight => "scroll_right".to_string(),
}; };
let mut record = record! { let mut record = record! {

View File

@ -22,7 +22,7 @@ nu-utils = { path = "../nu-utils", version = "0.84.1" }
terminal_size = "0.2" terminal_size = "0.2"
strip-ansi-escapes = "0.2.0" strip-ansi-escapes = "0.2.0"
crossterm = "0.26" crossterm = "0.27"
ratatui = "0.20" ratatui = "0.23"
ansi-str = "0.8" ansi-str = "0.8"
lscolors = { version = "0.15", default-features = false, features = ["nu-ansi-term"] } lscolors = { version = "0.15", default-features = false, features = ["nu-ansi-term"] }