efraim pushed a commit to branch rust-team
in repository guix.
commit 7d0cba9e6c31114b1673aae56165b2a50c54d5a3
Author: Efraim Flashner <[email protected]>
AuthorDate: Mon Feb 20 17:48:11 2023 +0200
gnu: rust: Update to 1.67.
* gnu/packages/rust.scm (rust): Update to 1.67.
[arguments]: Add a phase to skip tests requiring mercurial. Extend the
custom 'patch-process-tests phase.
(rust-1.64)[arguments]: Adjust 'patch-cargo-checksums phase to patch
another file.
* guix/build/cargo-build-system.scm (package): Adjust to remove
Cargo.toml.orig file if it exists.
---
gnu/packages/rust.scm | 25 +++++++++++++++++++------
guix/build/cargo-build-system.scm | 8 ++++++--
2 files changed, 25 insertions(+), 8 deletions(-)
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index 9f0d7e2d89..8f3de11940 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -634,9 +634,10 @@ safety and thread safety guarantees.")
((#:phases phases)
`(modify-phases ,phases
(replace 'patch-cargo-checksums
- (lambda* _
+ (lambda _
(substitute* '("Cargo.lock"
- "src/bootstrap/Cargo.lock")
+ "src/bootstrap/Cargo.lock"
+ "src/tools/rust-analyzer/Cargo.lock")
(("(checksum = )\".*\"" all name)
(string-append name "\"" ,%cargo-reference-hash "\"")))
(generate-all-checksums "vendor"))))))))))
@@ -669,7 +670,7 @@ safety and thread safety guarantees.")
;;; 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.60))
+ (let ((base-rust rust-1.67))
(package
(inherit base-rust)
(outputs (cons "rustfmt" (package-outputs base-rust)))
@@ -711,6 +712,16 @@ safety and thread safety guarantees.")
"#[ignore]\nfn finds_author_git")
(("fn finds_local_author_git")
"#[ignore]\nfn finds_local_author_git"))))
+ (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"))
+ (substitute*
+
"src/tools/cargo/tests/testsuite/init/mercurial_autodetect/mod.rs"
+ (("fn mercurial_autodetect")
+ "#[ignore]\nfn mercurial_autodetect"))))
(add-after 'unpack 'patch-command-exec-tests
;; This test suite includes some tests that the stdlib's
;; `Command` execution properly handles in situations where
@@ -744,9 +755,11 @@ safety and thread safety guarantees.")
(string-append "\"" bash "/bin/sh\"")))
(substitute*
"library/std/src/sys/unix/process/process_common/tests.rs"
(("fn test_process_mask")
- "#[allow(unused_attributes)]
- #[ignore]
- fn test_process_mask")))))
+ "#[ignore]\nfn test_process_mask")
+ (("fn test_process_group_posix_spawn")
+ "#[ignore]\nfn test_process_group_posix_spawn")
+ (("fn test_process_group_no_posix_spawn")
+ "#[ignore]\nfn test_process_group_no_posix_spawn")))))
(add-after 'unpack 'disable-interrupt-tests
(lambda _
;; This test hangs in the build container; disable it.
diff --git a/guix/build/cargo-build-system.scm
b/guix/build/cargo-build-system.scm
index 5d7bfc8eb3..fbba554e9b 100644
--- a/guix/build/cargo-build-system.scm
+++ b/guix/build/cargo-build-system.scm
@@ -2,7 +2,7 @@
;;; Copyright © 2016 David Craven <[email protected]>
;;; Copyright © 2017 Mathieu Othacehe <[email protected]>
;;; Copyright © 2019 Ivan Petkov <[email protected]>
-;;; Copyright © 2019-2022 Efraim Flashner <[email protected]>
+;;; Copyright © 2019-2023 Efraim Flashner <[email protected]>
;;; Copyright © 2020 Jakub Kądziołka <[email protected]>
;;; Copyright © 2020 Marius Bakke <[email protected]>
;;;
@@ -231,7 +231,11 @@ directory = '" port)
(string-length ".tar.gz"))
".crate")))
(find-files "." "\\.tar\\.gz$"))))
- (apply invoke `("cargo" "package" ,@cargo-package-flags)))
+ (begin
+ ;;error: invalid inclusion of reserved file name Cargo.toml.orig in
package source
+ (when (file-exists? "Cargo.toml.orig")
+ (delete-file "Cargo.toml.orig"))
+ (apply invoke `("cargo" "package" ,@cargo-package-flags))))
(format #t "Not installing cargo sources, skipping `cargo package`.~%"))
#t)