--- Begin Message ---
Subject: |
[PATCH] gnu: rust: Don't depend on 'git'. |
Date: |
Thu, 22 Nov 2018 14:58:30 +0100 |
* gnu/packages/rust.scm (rust-1.19)[inputs]: Remove GIT.
(rust-1.20)[arguments]: Disable Cargo tests that require git.
(rust-1.26)[arguments]: Likewise.
---
Notes:
Guix,
The Rust toolchain is very expensive to build and needs less volatility.
So far I have only built up to Rust 1.23 with this patch. I suggest
applying this on 'core-updates', and giving Rust in 'master' a
git-2.19.1 input to the previous substitutes are valid again.
WDYT?
gnu/packages/rust.scm | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index a56faad07..ae41a7dd3 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -41,7 +41,6 @@
#:use-module (gnu packages python)
#:use-module (gnu packages ssh)
#:use-module (gnu packages tls)
- #:use-module (gnu packages version-control)
#:use-module (gnu packages)
#:use-module (guix build-system cargo)
#:use-module (guix build-system gnu)
@@ -387,7 +386,6 @@ test = { path = \"../libtest\" }
("cmake" ,cmake)
("flex" ,flex) ; For the tests
("gdb" ,gdb) ; For the tests
- ("git" ,git)
("procps" ,procps) ; For the tests
("python-2" ,python-2)
("rustc-bootstrap" ,mrustc)
@@ -446,6 +444,13 @@ safety and thread safety guarantees.")
;; i686-linux.
(substitute* "src/tools/cargo/tests/test.rs"
(("fn cargo_test_env") "#[ignore]\nfn cargo_test_env"))
+
+ ;; These tests pull in a dependency on "git", which changes
+ ;; too frequently take part in the Rust toolchain.
+ (substitute* "src/tools/cargo/tests/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"))
#t))
(add-after 'patch-cargo-tests 'ignore-glibc-2.27-incompatible-test
;; https://github.com/rust-lang/rust/issues/47863
@@ -678,6 +683,12 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
;; i686-linux.
(substitute* "src/tools/cargo/tests/testsuite/test.rs"
(("fn cargo_test_env") "#[ignore]\nfn cargo_test_env"))
+
+ ;; Avoid dependency on "git".
+ (substitute* "src/tools/cargo/tests/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"))
#t))
(add-after 'patch-cargo-tests
'disable-cargo-test-for-nightly-channel
(lambda* _
--
2.19.1
--- End Message ---
--- Begin Message ---
Subject: |
Re: [bug#33465] [PATCH] gnu: rust: Don't depend on 'git'. |
Date: |
Sat, 24 Nov 2018 02:09:00 +0100 |
User-agent: |
Notmuch/0.28 (https://notmuchmail.org) Emacs/26.1 (x86_64-pc-linux-gnu) |
Pierre Langlois <address@hidden> writes:
> Pierre Langlois writes:
>
>> Whoops, ignore that patch, it doesn't do what I wanted it to do. The
>> point was to skip the tests *only* for temporary packages used for
>> bootstrapping the final one. But here it's disabled the tests all the
>> time, we don't want that... my bad! I'll another look when I have time.
>
> Right, attached is what I meant to do.
Hello!
I don't have a strong opinion for or against disabling tests in the Rust
bootstrap toolchain. But with Git removed, most (all?) of Rusts
dependencies are packages that do not change very frequently (i.e. only
on the 'staging' and 'core-updates' branches), so maybe it's not as
urgent?
Regardless, I've pushed the original patch to the 'core-updates'
branch. Could you submit the other patch to a separate issue or to
guix-devel? TIA!
signature.asc
Description: PGP signature
--- End Message ---