Subject: [PATCH v2 2/8] gnu: rust-analyzer: Fix build of version 2022-01-10.

From: Distopico <[email-masked]>
Date: Wed, 30 Aug 2023 14:58:14 -0500

* gnu/packages/rust-apps.scm (rust-analyzer): Update dependency
rust-notify-5-pre.13.

This fixes the build of `rust-analyzer@2022-01-10`, which required a pinned
version of `rust-notify` (`rust-notify-5-pre.13`) to compile and
rust >= 1.64.
---
* gnu/packages/rust-apps.scm (rust-analyzer): Update dependency
rust-notify-5-pre.13.

This fixes the build of `rust-analyzer@2022-01-10`, which required a pinned
version of `rust-notify` (`rust-notify-5-pre.13`) to compile and
rust >= 1.64.

 gnu/packages/rust-apps.scm | 22 +++++++++++++++-------
 gnu/packages/rust.scm      |  6 +++---
 2 files changed, 18 insertions(+), 10 deletions(-)

diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index a291282325..8c7d8006cc 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -1780,9 +1780,10 @@ (define-public rust-analyzer
          "1ci85bp8xwqrk8nqr8sh6yj8njgd98nhgnhaks2g00c77wwyra41"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:install-source? #f             ; virtual manifest
+     `(#:rust ,rust-1.64
+       #:install-source? #f             ; virtual manifest
        #:cargo-test-flags
-       '("--release" "--"
+       '("--release" "--lib" "--tests" "--"
          "--skip=tests::test_version_check" ;it need rustc's version
          ;; FIXME: Guix's rust does not install source in
          ;; %out/lib/rustlib/src/rust so "can't load standard library from
@@ -1793,12 +1794,19 @@ (define-public rust-analyzer
          "--skip=tests::sourcegen::sourcegen_assists_docs" ;need rustfmt
          "--skip=tests::sourcegen_ast::sourcegen_ast"      ;same
 
-         "--skip=tidy::cargo_files_are_tidy"    ;not needed
          "--skip=tidy::check_licenses"          ;it runs cargo metadata
          "--skip=tidy::check_merge_commits"     ;it runs git rev-list
          "--skip=tidy::check_code_formatting"   ;need rustfmt as cargo fmt
-         "--skip=tidy::generate_grammar"        ;same
-         "--skip=tidy::generate_assists_tests") ;same
+
+         ;; These tests require rust <= 1.60 and too many packages
+         ;; has as dependency rust-serde-json-1 that use indexmap2
+         ;; and it need rust >= 1.64
+         "--skip=tests::list_test_macros"
+         "--skip=tests::test_derive_empty"
+         "--skip=tests::test_attr_macro"
+         "--skip=tests::test_fn_like_macro"
+         "--skip=tests::test_fn_like_macro2"
+         "--skip=tests::test_derive_error")
        #:cargo-development-inputs
        (("rust-arbitrary" ,rust-arbitrary-1)
         ("rust-derive-arbitrary" ,rust-derive-arbitrary-1)
@@ -1845,7 +1853,7 @@ (define-public rust-analyzer
         ("rust-memmap2" ,rust-memmap2-0.5)
         ("rust-mimalloc" ,rust-mimalloc-0.1)
         ("rust-miow" ,rust-miow-0.4)
-        ("rust-notify" ,rust-notify-5)
+        ("rust-notify" ,rust-notify-5-pre.13)
         ("rust-object" ,rust-object-0.28)
         ("rust-once-cell" ,rust-once-cell-1)
         ("rust-parking-lot" ,rust-parking-lot-0.11)
@@ -1927,7 +1935,7 @@ (define-public rust-analyzer
                (chdir "../..")
                (install-file "LICENSE-MIT" doc)
                (install-file "LICENSE-APACHE" doc)))))))
-    (native-inputs (list rust-src))
+    (native-inputs (list rust-src-1.64))
     (home-page "https://rust-analyzer.github.io/")
     (synopsis "Experimental Rust compiler front-end for IDEs")
     (description "Rust-analyzer is a modular compiler frontend for the Rust
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index 4ee5ded5de..5cfdeffa81 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -652,7 +652,7 @@ (define rust-1.63
   (rust-bootstrapped-package
    rust-1.62 "1.63.0" "1l4rrbzhxv88pnfq94nbyb9m6lfnjwixma3mwjkmvvs2aqlq158z"))
 
-(define rust-1.64
+(define-public rust-1.64
   (let ((base-rust
          (rust-bootstrapped-package
           rust-1.63 "1.64.0" "018j720b2n12slp4xk64jc6shkncd46d621qdyzh2a8s3r49zkdk")))
@@ -891,10 +891,10 @@ (define-public rust
                             `("procps" ,procps)
                             (package-native-inputs base-rust))))))
 
-(define-public rust-src
+(define-public rust-src-1.64
   (hidden-package
    (package
-     (inherit rust)
+     (inherit rust-1.64)
      (name "rust-src")
      (build-system copy-build-system)
      (native-inputs '())
-- 
2.41.0