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
next prev 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.