From f900b205fdadaf98edec49fc6d0c2d3390ab5b6b Mon Sep 17 00:00:00 2001 From: Dheepak Krishnamurthy Date: Mon, 29 May 2023 12:58:40 -0400 Subject: [PATCH] =?UTF-8?q?feat:=20Update=20to=20ratatui=20v0.21.0=20?= =?UTF-8?q?=E2=9C=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Cargo.lock | 49 ++++++++++++++++++++------------------------- Cargo.toml | 10 ++++----- src/app.rs | 14 ++++++------- src/completion.rs | 2 +- src/help.rs | 4 ++-- src/pane/context.rs | 2 +- src/ui.rs | 2 +- 7 files changed, 39 insertions(+), 44 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 479c02d..91192eb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -26,6 +26,12 @@ dependencies = [ "memchr", ] +[[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" @@ -165,13 +171,13 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.24" +version = "0.4.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b" +checksum = "fdbc37d37da9e5bce8173f3a41b71d9bf3c674deebbaceacd0ebdabde76efb03" dependencies = [ + "android-tzdata", "iana-time-zone", "js-sys", - "num-integer", "num-traits", "time", "wasm-bindgen", @@ -742,11 +748,10 @@ dependencies = [ [[package]] name = "log" -version = "0.4.17" +version = "0.4.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" +checksum = "518ef76f2f87365916b142844c16d8fefd85039bc5699050210a7778ee1cd1de" dependencies = [ - "cfg-if", "serde", ] @@ -805,14 +810,14 @@ dependencies = [ [[package]] name = "mio" -version = "0.8.6" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b9d9a46eff5b4ff64b45a9e316a6d1e0bc719ef429cbec4dc630684212bfdf9" +checksum = "eebffdb73fe72e917997fad08bdbf31ac50b0fa91cec93e69a0662e4264d454c" dependencies = [ "libc", "log", "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.45.0", + "windows-sys 0.48.0", ] [[package]] @@ -846,16 +851,6 @@ dependencies = [ "minimal-lexical", ] -[[package]] -name = "num-integer" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" -dependencies = [ - "autocfg", - "num-traits", -] - [[package]] name = "num-traits" version = "0.2.15" @@ -886,9 +881,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.17.1" +version = "1.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" +checksum = "9670a07f94779e00908f3e686eab508878ebb390ba6e604d3a284c00e8d0487b" [[package]] name = "option-ext" @@ -1012,9 +1007,9 @@ dependencies = [ [[package]] name = "ratatui" -version = "0.20.1" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcc0d032bccba900ee32151ec0265667535c230169f5a011154cdcd984e16829" +checksum = "ce841e0486e7c2412c3740168ede33adeba8e154a15107b879d8162d77c7174e" dependencies = [ "bitflags", "cassowary", @@ -1384,9 +1379,9 @@ dependencies = [ [[package]] name = "tokio" -version = "1.28.1" +version = "1.28.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0aa32867d44e6f2ce3385e89dceb990188b8bb0fb25b0cf576647a6f98ac5105" +checksum = "94d7b1cfd2aa4011f2de74c2c4c63665e27a71006b0a192dcd2710272e73dfa2" dependencies = [ "autocfg", "bytes", @@ -1486,9 +1481,9 @@ dependencies = [ [[package]] name = "versions" -version = "4.1.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee97e1d97bd593fb513912a07691b742361b3dd64ad56f2c694ea2dbfe0665d3" +checksum = "32feb3eb91e495efe5b6b2e3ca9d78db603043434a3a398a84b47de28abb2d02" dependencies = [ "itertools", "nom", diff --git a/Cargo.toml b/Cargo.toml index e36606d..cd9fa48 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -20,7 +20,7 @@ crossterm-backend = ["tui/crossterm", "crossterm"] anyhow = "1.0.71" better-panic = "0.3.0" cassowary = "0.3.0" -chrono = "0.4.24" +chrono = "0.4.25" clap = { version = "4.3.0", features = ["derive"] } crossterm = { version = "0.26.1", optional = true, default-features = false, features = [ "event-stream", @@ -29,7 +29,7 @@ dirs = "5.0.1" futures = "0.3.28" itertools = "0.10.5" lazy_static = "1.4.0" -log = "0.4.17" +log = "0.4.18" log4rs = "1.2.0" path-clean = "1.0.1" rand = "0.8.5" @@ -40,14 +40,14 @@ serde_json = "1.0.96" shellexpand = "3.1.0" shlex = "1.1.0" task-hookrs = { git = "https://github.com/kdheepak/task-hookrs" } -tokio = { version = "1.28.1", features = ["full"] } +tokio = { version = "1.28.2", features = ["full"] } tokio-stream = "0.1.14" -tui = { package = "ratatui", version = "0.20.1" } +tui = { package = "ratatui", version = "0.21.0" } unicode-segmentation = "1.10.1" unicode-truncate = "0.2.0" unicode-width = "0.1.10" uuid = { version = "1.3.3", features = ["serde", "v4"] } -versions = "4.1.0" +versions = "5.0.0" [package.metadata.rpm] package = "taskwarrior-tui" diff --git a/src/app.rs b/src/app.rs index 06c09af..d8d2a5c 100644 --- a/src/app.rs +++ b/src/app.rs @@ -48,7 +48,7 @@ use tui::{ layout::{Alignment, Constraint, Direction, Layout, Margin, Rect}, style::{Color, Modifier, Style}, terminal::Frame, - text::{Span, Spans, Text}, + text::{Span, Line, Text}, widgets::{Block, BorderType, Borders, Clear, Gauge, LineGauge, List, ListItem, Paragraph, Wrap}, }; @@ -487,14 +487,14 @@ impl TaskwarriorTui { fn draw_tabs(&self, f: &mut Frame, layout: Rect) { let titles: Vec<&str> = vec!["Tasks", "Projects", "Calendar"]; - let tab_names: Vec<_> = titles.into_iter().map(Spans::from).collect(); + let tab_names: Vec<_> = titles.into_iter().map(Line::from).collect(); let selected_tab = match self.mode { Mode::Tasks(_) => 0, Mode::Projects => 1, Mode::Calendar => 2, }; let navbar_block = Block::default().style(self.config.uda_style_navbar); - let context = Spans::from(vec![ + let context = Line::from(vec![ Span::from("["), Span::from(if self.current_context.is_empty() { "none" @@ -964,7 +964,7 @@ impl TaskwarriorTui { Block::default() .borders(Borders::ALL) .border_type(BorderType::Rounded) - .title(Spans::from(vec![Span::styled("Context", Style::default().add_modifier(Modifier::BOLD))])), + .title(Line::from(vec![Span::styled("Context", Style::default().add_modifier(Modifier::BOLD))])), ) .header_style( self @@ -993,7 +993,7 @@ impl TaskwarriorTui { .candidates() .iter() .map(|p| { - let lines = vec![Spans::from(vec![ + let lines = vec![Line::from(vec![ Span::styled(p.3.clone(), Style::default().add_modifier(Modifier::BOLD)), Span::from(p.4.clone()), ])]; @@ -1053,9 +1053,9 @@ impl TaskwarriorTui { style = style.fg(Color::Red); }; let title_spans = if let Some(subtitle) = title.1 { - Spans::from(vec![title.0, Span::from(" ["), subtitle, Span::from("]")]) + Line::from(vec![title.0, Span::from(" ["), subtitle, Span::from("]")]) } else { - Spans::from(vec![title.0]) + Line::from(vec![title.0]) }; let title = Paragraph::new(Text::from(title_spans)).style(style); f.render_widget(title, rects[0]); diff --git a/src/completion.rs b/src/completion.rs index 54a759a..db75d74 100644 --- a/src/completion.rs +++ b/src/completion.rs @@ -3,7 +3,7 @@ use std::{error::Error, io}; use tui::{ layout::{Constraint, Corner, Direction, Layout}, style::{Color, Modifier, Style}, - text::{Span, Spans}, + text::{Span, Line}, widgets::{Block, Borders, List, ListItem, ListState}, Terminal, }; diff --git a/src/help.rs b/src/help.rs index 560874a..49c9eff 100644 --- a/src/help.rs +++ b/src/help.rs @@ -4,7 +4,7 @@ use tui::{ buffer::Buffer, layout::{Alignment, Rect}, style::{Modifier, Style}, - text::{Span, Spans, Text}, + text::{Span, Line, Text}, widgets::{Block, BorderType, Borders, Clear, Paragraph, Widget}, }; @@ -34,7 +34,7 @@ impl Default for Help { impl Widget for &Help { fn render(self, area: Rect, buf: &mut Buffer) { - let text: Vec = TEXT.lines().map(|line| Spans::from(format!("{}\n", line))).collect(); + let text: Vec = TEXT.lines().map(|line| Line::from(format!("{}\n", line))).collect(); Paragraph::new(text) .block( Block::default() diff --git a/src/pane/context.rs b/src/pane/context.rs index c82e5d6..a457cf5 100644 --- a/src/pane/context.rs +++ b/src/pane/context.rs @@ -14,7 +14,7 @@ use tui::{ layout::{Alignment, Rect}, style::{Color, Modifier, Style}, symbols, - text::{Span, Spans, Text}, + text::{Span, Line, Text}, widgets::{Block, BorderType, Borders, Clear, Paragraph, StatefulWidget, Widget}, }; diff --git a/src/ui.rs b/src/ui.rs index 4c06eb6..c8de8dc 100644 --- a/src/ui.rs +++ b/src/ui.rs @@ -3,7 +3,7 @@ use tui::{ layout::{Alignment, Constraint, Direction, Layout, Rect}, style::{Color, Modifier, Style}, symbols, - text::{Span, Spans}, + text::{Span, Line}, widgets::{Block, BorderType, Borders, Cell, LineGauge, Paragraph, Row, Table}, Frame, };