Subject: [PATCH 01/39] gnu: Add rust-tui-0.19.

From: Jaeme Sifat <[email-masked]>
Date: Mon, 30 Oct 2023 22:52:05 -0400

This patch also fixes both rust-tui-0.16 and rust-tui-0.15 so that they are
both built and tested (rust-tui-0.15 didn't even have all the correct
dev-dependencies).

* gnu/packages/crates-io.scm (rust-tui-0.19): New variable.

Change-Id: Ibee980780517ebfeec91012fa95c34ddb233fecf
---
 gnu/packages/crates-io.scm | 91 +++++++++++++++++++++++++-------------
 1 file changed, 60 insertions(+), 31 deletions(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index fc26147157..5ead7a9a0e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -78617,34 +78617,31 @@ (define-public rust-ttf-parser-0.6
         (base32 "1p4z969pwd5adayy3ijq94iiak42yfxz8hk5wnkdsirymgbpqp9y"))))
     (arguments `(#:skip-build? #t))))
 
-(define-public rust-tui-0.16
+(define-public rust-tui-0.19
   (package
     (name "rust-tui")
-    (version "0.16.0")
+    (version "0.19.0")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "tui" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "08qcdjmi8sn2xyh38ilr17i9bn89ic2aaqx3rybyv7h44x7cxj1r"))))
+        (base32 "1ldswnqgmdkd2fkislyh1amd6rmnbx3s8b97k9j7w03lsv5jdpfc"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:skip-build? #t
-       #:cargo-inputs
-       (("rust-bitflags" ,rust-bitflags-1)
-        ("rust-cassowary" ,rust-cassowary-0.3)
-        ("rust-crossterm" ,rust-crossterm-0.20)
-        ("rust-easycurses" ,rust-easycurses-0.12)
-        ("rust-pancurses" ,rust-pancurses-0.16)
-        ("rust-rustbox" ,rust-rustbox-0.11)
-        ("rust-serde" ,rust-serde-1)
-        ("rust-termion" ,rust-termion-1)
-        ("rust-unicode-segmentation" ,rust-unicode-segmentation-1)
-        ("rust-unicode-width" ,rust-unicode-width-0.1))
-       #:cargo-development-inputs
-       (("rust-argh" ,rust-argh-0.1)
-        ("rust-rand" ,rust-rand-0.8))))
+     `(#:cargo-test-flags `("--"
+                            "--skip=buffer::tests::index_of_panics_on_out_of_bounds"
+                            "--skip=buffer::tests::pos_of_panics_on_out_of_bounds")
+       #:cargo-inputs (("rust-bitflags" ,rust-bitflags-1)
+                       ("rust-cassowary" ,rust-cassowary-0.3)
+                       ("rust-crossterm" ,rust-crossterm-0.25)
+                       ("rust-serde" ,rust-serde-1)
+                       ("rust-termion" ,rust-termion-1)
+                       ("rust-unicode-segmentation" ,rust-unicode-segmentation-1)
+                       ("rust-unicode-width" ,rust-unicode-width-0.1))
+       #:cargo-development-inputs (("rust-argh" ,rust-argh-0.1)
+                                   ("rust-rand" ,rust-rand-0.8))))
     (home-page "https://github.com/fdehau/tui-rs")
     (synopsis "Library to build rich terminal user interfaces or dashboards")
     (description
@@ -78652,9 +78649,38 @@ (define-public rust-tui-0.16
 or dashboards.")
     (license license:expat)))
 
+(define-public rust-tui-0.16
+  (package
+    (inherit rust-tui-0.19)
+    (name "rust-tui")
+    (version "0.16.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tui" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "08qcdjmi8sn2xyh38ilr17i9bn89ic2aaqx3rybyv7h44x7cxj1r"))))
+    (arguments
+     `(#:cargo-test-flags `("--"
+                            "--skip=buffer::tests::index_of_panics_on_out_of_bounds"
+                            "--skip=buffer::tests::pos_of_panics_on_out_of_bounds")
+       #:cargo-inputs (("rust-bitflags" ,rust-bitflags-1)
+                       ("rust-cassowary" ,rust-cassowary-0.3)
+                       ("rust-crossterm" ,rust-crossterm-0.20)
+                       ("rust-easycurses" ,rust-easycurses-0.12)
+                       ("rust-pancurses" ,rust-pancurses-0.16)
+                       ("rust-rustbox" ,rust-rustbox-0.11)
+                       ("rust-serde" ,rust-serde-1)
+                       ("rust-termion" ,rust-termion-1)
+                       ("rust-unicode-segmentation" ,rust-unicode-segmentation-1)
+                       ("rust-unicode-width" ,rust-unicode-width-0.1))
+       #:cargo-development-inputs (("rust-argh" ,rust-argh-0.1)
+                                   ("rust-rand" ,rust-rand-0.8))))))
+
 (define-public rust-tui-0.15
   (package
-    (inherit rust-tui-0.16)
+    (inherit rust-tui-0.19)
     (name "rust-tui")
     (version "0.15.0")
     (source
@@ -78665,18 +78691,21 @@ (define-public rust-tui-0.15
        (sha256
         (base32 "0w9azg9zj1nnwcwbra9pxrwy47ab0m2bhanbkchydv8lscx8y7c6"))))
     (arguments
-     `(#:skip-build? #t
-       #:cargo-inputs
-       (("rust-bitflags" ,rust-bitflags-1)
-        ("rust-cassowary" ,rust-cassowary-0.3)
-        ("rust-crossterm" ,rust-crossterm-0.19)
-        ("rust-easycurses" ,rust-easycurses-0.12)
-        ("rust-pancurses" ,rust-pancurses-0.16)
-        ("rust-rustbox" ,rust-rustbox-0.11)
-        ("rust-serde" ,rust-serde-1)
-        ("rust-termion" ,rust-termion-1)
-        ("rust-unicode-segmentation" ,rust-unicode-segmentation-1)
-        ("rust-unicode-width" ,rust-unicode-width-0.1))))))
+     `(#:cargo-test-flags `("--"
+                            "--skip=buffer::tests::index_of_panics_on_out_of_bounds"
+                            "--skip=buffer::tests::pos_of_panics_on_out_of_bounds")
+       #:cargo-inputs (("rust-bitflags" ,rust-bitflags-1)
+                       ("rust-cassowary" ,rust-cassowary-0.3)
+                       ("rust-crossterm" ,rust-crossterm-0.19)
+                       ("rust-easycurses" ,rust-easycurses-0.12)
+                       ("rust-pancurses" ,rust-pancurses-0.16)
+                       ("rust-rustbox" ,rust-rustbox-0.11)
+                       ("rust-serde" ,rust-serde-1)
+                       ("rust-termion" ,rust-termion-1)
+                       ("rust-unicode-segmentation" ,rust-unicode-segmentation-1)
+                       ("rust-unicode-width" ,rust-unicode-width-0.1))
+       #:cargo-development-inputs (("rust-argh" ,rust-argh-0.1)
+                                   ("rust-rand" ,rust-rand-0.8))))))
 
 (define-public rust-tuikit-0.4
   (package
-- 
2.34.1