all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Fries via Guix-patches via <guix-patches@gnu.org>
To: 64804@debbugs.gnu.org
Cc: Fries <fries1234@protonmail.com>, efraim@flashner.co.il, juli@incana.org
Subject: [bug#64804] [PATCH 5/5] gnu: rust: Update to 1.71.
Date: Mon, 24 Jul 2023 05:36:53 +0000	[thread overview]
Message-ID: <5a852a27410291cb2dda00ed3f137b3cfbbca645.1690176958.git.fries1234@protonmail.com> (raw)
In-Reply-To: <MZN9YR.MV79N2FVWSJD@incana.org>

* gnu/packages/rust.scm (rust): Update to 1.71.
[arguments]: Extend the disable-tests-requiring-git and
disable-tests-requiring-mercurial phases to ignore more tests that will
fail the build.
---
 gnu/packages/rust.scm | 55 +++++++++++++++++++++++++++++++------------
 1 file changed, 40 insertions(+), 15 deletions(-)

diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index 03681d55ac..505075b9d6 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -776,7 +776,7 @@ (define rust-1.71
 ;;; Here we take the latest included Rust, make it public, and re-enable tests
 ;;; and extra components such as rustfmt.
 (define-public rust
-  (let ((base-rust rust-1.67))
+  (let ((base-rust rust-1.71))
     (package
       (inherit base-rust)
       (outputs (cons "rustfmt" (package-outputs base-rust)))
@@ -811,23 +811,42 @@ (define-public rust
                     (which "env")))))
              (add-after 'unpack 'disable-tests-requiring-git
                (lambda _
-                 (substitute* "src/tools/cargo/tests/testsuite/new.rs"
-                   (("fn author_prefers_cargo")
-                    "#[ignore]\nfn author_prefers_cargo")
-                   (("fn finds_author_git")
-                    "#[ignore]\nfn finds_author_git")
-                   (("fn finds_local_author_git")
-                    "#[ignore]\nfn finds_local_author_git"))))
+                 (substitute* "src/tools/cargo/tests/testsuite/git.rs"
+                    ,@(make-ignore-test-list
+                      '("fn fetch_downloads_with_git2_first_then_with_gitoxide_and_vice_versa"
+                        "fn git_fetch_cli_env_clean"
+                        "fn git_with_cli_force"
+                        "fn use_the_cli")))
+                  ;; Gitoxide tests require the network.
+                  (substitute* "src/tools/cargo/tests/testsuite/git_shallow.rs"
+                    ,@(make-ignore-test-list
+                      '("fn gitoxide_clones_git_dependency_with_shallow_protocol_and_git2_is_used_for_followup_fetches"
+                        "fn gitoxide_clones_registry_with_shallow_protocol_and_aborts_and_updates_again"
+                        "fn gitoxide_clones_registry_with_shallow_protocol_and_follow_up_fetch_maintains_shallowness"
+                        "fn gitoxide_clones_registry_with_shallow_protocol_and_follow_up_with_git2_fetch"
+                        "fn gitoxide_clones_registry_without_shallow_protocol_and_follow_up_fetch_uses_shallowness"
+                        "fn gitoxide_clones_shallow_two_revs_same_deps"
+                        "fn gitoxide_git_dependencies_switch_from_branch_to_rev"
+                        "fn gitoxide_shallow_clone_followed_by_non_shallow_update"
+                        "fn shallow_deps_work_with_revisions_and_branches_mixed_on_same_dependency")))
+                  (substitute* "src/tools/cargo/tests/testsuite/offline.rs"
+                    ,@(make-ignore-test-list '("fn gitoxide_cargo_compile_offline_with_cached_git_dep_shallow_dep")))
+                  (substitute* "src/tools/cargo/tests/testsuite/patch.rs"
+                    ,@(make-ignore-test-list '("fn gitoxide_clones_shallow_old_git_patch")))))
              (add-after 'unpack 'disable-tests-requiring-mercurial
                (lambda _
                  (substitute*
-                   "src/tools/cargo/tests/testsuite/init/simple_hg_ignore_exists/mod.rs"
-                   (("fn simple_hg_ignore_exists")
-                    "#[ignore]\nfn simple_hg_ignore_exists"))
+                  "src/tools/cargo/tests/testsuite/init/simple_hg_ignore_exists/mod.rs"
+                  ,@(make-ignore-test-list '("fn case")))
                  (substitute*
                    "src/tools/cargo/tests/testsuite/init/mercurial_autodetect/mod.rs"
-                   (("fn mercurial_autodetect")
-                    "#[ignore]\nfn mercurial_autodetect"))))
+                   ,@(make-ignore-test-list '("fn case")))
+                 (substitute*
+                  "src/tools/cargo/tests/testsuite/init/simple_hg/mod.rs"
+                  ,@(make-ignore-test-list '("fn case")))
+                 (substitute*
+                  "src/tools/cargo/tests/testsuite/new.rs"
+                  ,@(make-ignore-test-list '("fn simple_hg")))))
              (add-after 'unpack 'disable-tests-broken-on-aarch64
                (lambda _
                  (with-directory-excursion "src/tools/cargo/tests/testsuite/"
@@ -870,7 +889,7 @@ (define-public rust
                ;; We skip the test since it's drastically unlikely Guix's
                ;; packaging will introduce a bug here.
                (lambda _
-                 (delete-file "src/test/ui/parser/shebang/sneaky-attrib.rs")))
+                 (delete-file "tests/ui/parser/shebang/sneaky-attrib.rs")))
              (add-after 'unpack 'patch-process-tests
                (lambda* (#:key inputs #:allow-other-keys)
                  (let ((bash (assoc-ref inputs "bash")))
@@ -903,11 +922,17 @@ (define-public rust
                                      "gdb = \"" gdb "/bin/gdb\"\n"))))))
              (replace 'build
                ;; Phase overridden to also build rustfmt.
-               (lambda* (#:key parallel-build? #:allow-other-keys)
+               (lambda* (#:key parallel-build? outputs #:allow-other-keys)
                  (let ((job-spec (string-append
                                   "-j" (if parallel-build?
                                            (number->string (parallel-job-count))
                                            "1"))))
+                   ;; Append the default output's lib folder to the RUSTFLAGS
+                   ;; environment variable. This lets programs like rustfmt
+                   ;; that depend on rustc's shared libraries like rustfmt work.
+                   (setenv "RUSTFLAGS"
+                    (format #f "-C link-arg=-Wl,-rpath,~a/lib"
+                      (assoc-ref outputs "out")))
                    (invoke "./x.py" job-spec "build"
                            "library/std" ;rustc
                            "src/tools/cargo"
-- 
2.41.0






  parent reply	other threads:[~2023-07-24  7:31 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-23  6:38 [bug#64804] [PATCH] gnu: rust: Update to Rust 1.71.0 Fries via Guix-patches via
2023-07-23 20:38 ` Juliana Sims
2023-07-24  5:36   ` [bug#64804] [PATCH 1/5] gnu: rust: Add rust-1.69 Fries via Guix-patches via
2023-07-24  5:36   ` [bug#64804] [PATCH 2/5] gnu: rust: Add rust-1.70 Fries via Guix-patches via
2023-07-24  5:36   ` [bug#64804] [PATCH 3/5] gnu: rust: Add rust-1.71 Fries via Guix-patches via
2023-07-24  5:36   ` [bug#64804] [PATCH 4/5] gnu: rust: Add make-ignore-test-list function Fries via Guix-patches via
2023-07-24  5:36   ` Fries via Guix-patches via [this message]
2023-07-24  5:51     ` [bug#64804] [PATCH 5/5] gnu: rust: Update to 1.71 Fries via Guix-patches via
2023-10-01  7:10       ` Efraim Flashner
2023-09-30 15:40 ` [bug#64804] Please merge it Milan Svoboda
2023-10-01  9:30   ` Malte Frank Gerdes
2023-10-01  3:47 ` [bug#64804] [PATCH] gnu: rust: Update to Rust 1.71.0 jaeme via Guix-patches via

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5a852a27410291cb2dda00ed3f137b3cfbbca645.1690176958.git.fries1234@protonmail.com \
    --to=guix-patches@gnu.org \
    --cc=64804@debbugs.gnu.org \
    --cc=efraim@flashner.co.il \
    --cc=fries1234@protonmail.com \
    --cc=juli@incana.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.