GNU bug report logs - #73864
[PATCH] gnu: rust: update to 1.82

Previous Next

Package: guix-patches;

Reported by: Brennan Vincent <brennan <at> umanwizard.com>

Date: Fri, 18 Oct 2024 15:12:01 UTC

Severity: normal

Tags: patch

Done: Efraim Flashner <efraim <at> flashner.co.il>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 73864 in the body.
You can then email your comments to 73864 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#73864; Package guix-patches. (Fri, 18 Oct 2024 15:12:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Brennan Vincent <brennan <at> umanwizard.com>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Fri, 18 Oct 2024 15:12:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Brennan Vincent <brennan <at> umanwizard.com>
To: guix-patches <at> gnu.org
Cc: efraim <at> flashner.co.il
Subject: [PATCH] gnu: rust: update to 1.82
Date: Fri, 18 Oct 2024 11:10:20 -0400
gnu/packages/rust.scm (new variable): rust-1.82.
gnu/packages/rust.scm (rust): update to 1.82.

Change-Id: If6ff59011edca7a230946a3ba77b51f26cd47789
---
 gnu/packages/rust.scm | 79 +++++++++++++++++++++++++++++++++++--------
 1 file changed, 65 insertions(+), 14 deletions(-)

diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index 7f85402242..97afb81cbc 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -1054,6 +1054,33 @@ (define-public rust-1.81
   (rust-bootstrapped-package rust-1.80 "1.81.0"
    "19yggj1qivdhf68gx2652cfi7nxjkdgy39wh7h6facpzppz4h947"))
 
+(define-public rust-1.82
+  (let ((base-rust (rust-bootstrapped-package rust-1.81 "1.82.0"
+                                              "0ajiryki2aqsg3ydx3nfhrb5i1mmxvasfszs9qblw66skr8g8lvw")))
+    (package
+      (inherit base-rust)
+      (arguments
+       (substitute-keyword-arguments (package-arguments base-rust)
+         ((#:phases phases)
+          `(modify-phases ,phases
+             (replace 'patch-cargo-checksums
+               (lambda _
+                 (substitute* (cons* "Cargo.lock"
+                                     "src/bootstrap/Cargo.lock"
+                                     "library/Cargo.lock"
+                                     (filter
+                                      ;; don't mess with the
+                                      ;; lock files in the Cargo testsuite; it
+                                      ;; messes up the tests.
+                                      (lambda (path)
+                                        (not
+                                         (string-contains path "cargo/tests/testsuite")))
+                                      (find-files "src/tools" "Cargo.lock")))
+                   (("(checksum = )\".*\"" all name)
+                    (string-append name "\"" ,%cargo-reference-hash "\"")))
+                 (generate-all-checksums "vendor"))))))))))
+
+
 (define (make-ignore-test-list strs)
   "Function to make creating a list to ignore tests a bit easier."
   (map (lambda (str)
@@ -1068,7 +1095,7 @@ (define (make-ignore-test-list strs)
 ;;; 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.81))
+  (let ((base-rust rust-1.82))
     (package
       (inherit base-rust)
       (properties (append
@@ -1082,32 +1109,50 @@ (define-public rust
           '(begin
              (for-each delete-file-recursively
                        '("src/llvm-project"
+                         "vendor/jemalloc-sys-0.5.3+5.3.0-patched/jemalloc"
                          "vendor/jemalloc-sys-0.5.4+5.3.0-patched/jemalloc"
+                         "vendor/openssl-src-111.17.0+1.1.1m/openssl"
                          "vendor/openssl-src-111.28.2+1.1.1w/openssl"
                          "vendor/tikv-jemalloc-sys-0.5.4+5.3.0-patched/jemalloc"
                          ;; These are referenced by the cargo output
                          ;; so we unbundle them.
-                         "vendor/curl-sys-0.4.72+curl-8.6.0/curl"
+                         "vendor/curl-sys-0.4.52+curl-7.81.0/curl"
+                         "vendor/curl-sys-0.4.74+curl-8.9.0/curl"
                          "vendor/libffi-sys-2.3.0/libffi"
-                         "vendor/libnghttp2-sys-0.1.9+1.58.0/nghttp2"
-                         "vendor/libz-sys-1.1.16/src/zlib"))
+                         "vendor/libz-sys-1.1.3/src/zlib"
+                         "vendor/libz-sys-1.1.18/src/zlib"
+                         "vendor/libz-sys-1.1.19/src/zlib"))
              ;; Use the packaged nghttp2
-             (delete-file "vendor/libnghttp2-sys-0.1.9+1.58.0/build.rs")
-             (with-output-to-file "vendor/libnghttp2-sys-0.1.9+1.58.0/build.rs"
-               (lambda _
-                 (format #t "fn main() {~@
+             (for-each
+              (lambda (ver)
+                (let ((vendored-dir (format #f "vendor/libnghttp2-sys-~a/nghttp2" ver))
+                      (build-rs (format #f "vendor/libnghttp2-sys-~a/build.rs" ver)))
+                  (delete-file-recursively vendored-dir)
+                  (delete-file build-rs)
+                  (with-output-to-file build-rs
+                    (lambda _
+                      (format #t "fn main() {~@
                          println!(\"cargo:rustc-link-lib=nghttp2\");~@
-                         }~%")))
+                         }~%")))))
+              '("0.1.10+1.61.0"
+                "0.1.7+1.45.0"))
              ;; Remove vendored dynamically linked libraries.
              ;; find . -not -type d -executable -exec file {} \+ | grep ELF
              ;; Also remove the bundled (mostly Windows) libraries.
              (for-each delete-file
                        (find-files "vendor" "\\.(a|dll|exe|lib)$"))
              ;; Adjust vendored dependency to explicitly use rustix with libc backend.
-             (substitute* '("vendor/tempfile-3.7.1/Cargo.toml"
-                            "vendor/tempfile-3.10.1/Cargo.toml")
-               (("features = \\[\"fs\"" all)
-                (string-append all ", \"use-libc\"")))))))
+             (for-each
+              (lambda (ver)
+                (let ((f (format #f "vendor/tempfile-~a/Cargo.toml" ver)))
+                  (substitute* f
+                    (("features = \\[\"fs\"" all)
+                     (string-append all ", \"use-libc\"")))))
+              '("3.3.0"
+                "3.4.0"
+                "3.7.1"
+                "3.10.1"
+                "3.12.0"))))))
       (arguments
        (substitute-keyword-arguments
          (strip-keyword-arguments '(#:tests?)
@@ -1217,7 +1262,13 @@ (define-public rust
                (lambda _
                  (substitute* "src/tools/cargo/tests/testsuite/install.rs"
                    ,@(make-ignore-test-list
-                      '("fn install_global_cargo_config")))))
+                      '("fn install_global_cargo_config")))
+                 (substitute* "src/tools/cargo/tests/testsuite/cargo_info/within_ws_with_alternative_registry/mod.rs"
+                   ,@(make-ignore-test-list
+                      '("fn case")))
+                 (substitute* "src/tools/cargo/tests/testsuite/package.rs"
+                   ,@(make-ignore-test-list
+                      '("fn workspace_with_local_deps_index_mismatch")))))
              (add-after 'unpack 'disable-miscellaneous-broken-tests
                (lambda _
                  (substitute* "src/tools/cargo/tests/testsuite/check_cfg.rs"

base-commit: 878b5a9f890ec1317b54e577159ebbfa6a7ccbce
-- 
2.46.0






Information forwarded to guix-patches <at> gnu.org:
bug#73864; Package guix-patches. (Sun, 27 Oct 2024 20:06:02 GMT) Full text and rfc822 format available.

Message #8 received at 73864 <at> debbugs.gnu.org (full text, mbox):

From: "Brennan Vincent" <brennan <at> umanwizard.com>
To: 73864 <at> debbugs.gnu.org
Cc: efraim <at> flashner.co.il
Subject: Re: bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
Date: Sun, 27 Oct 2024 16:04:48 -0400
[Message part 1 (text/plain, inline)]
v2 of the patch (attached) fixes 1.81 -> 1.82 bootstrap on riscv64

Efraim:

I've performed the following tests, all of which are working fine.

* Build `rust` on x86-64
* Build `rust` on aarch64
* Build `rust` on riscv64
* Build `zoxide` on all three platforms
* Cross-build `zoxide` from x86-64 to the other two platforms

Let me know if I can help further by performing any other tests. Note
that I have access to quite fast x86 and aarch64 machines. But doing
anything on riscv64 takes forever (I only have access to an emulated
machine).

[v2-0001-gnu-rust-update-to-1.82.patch (text/x-patch, attachment)]
[Message part 3 (text/plain, inline)]

help-debbugs <at> gnu.org (GNU bug Tracking System) writes:

> Thank you for filing a new bug report with debbugs.gnu.org.
>
> This is an automatically generated reply to let you know your message
> has been received.
>
> Your message is being forwarded to the package maintainers and other
> interested parties for their attention; they will reply in due course.
>
> Your message has been sent to the package maintainer(s):
>  guix-patches <at> gnu.org
>
> If you wish to submit further information on this problem, please
> send it to 73864 <at> debbugs.gnu.org.
>
> Please do not send mail to help-debbugs <at> gnu.org unless you wish
> to report a problem with the Bug-tracking system.
>
> -- 
> 73864: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=73864
> GNU Bug Tracking System
> Contact help-debbugs <at> gnu.org with problems

Reply sent to Efraim Flashner <efraim <at> flashner.co.il>:
You have taken responsibility. (Sat, 09 Nov 2024 16:14:01 GMT) Full text and rfc822 format available.

Notification sent to Brennan Vincent <brennan <at> umanwizard.com>:
bug acknowledged by developer. (Sat, 09 Nov 2024 16:14:02 GMT) Full text and rfc822 format available.

Message #13 received at 73864-done <at> debbugs.gnu.org (full text, mbox):

From: Efraim Flashner <efraim <at> flashner.co.il>
To: Brennan Vincent <brennan <at> umanwizard.com>
Cc: 73864-done <at> debbugs.gnu.org
Subject: Re: bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
Date: Sat, 9 Nov 2024 18:12:27 +0200
[Message part 1 (text/plain, inline)]
Thanks! Patch pushed

-- 
Efraim Flashner   <efraim <at> flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[signature.asc (application/pgp-signature, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 08 Dec 2024 12:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 253 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.