* [bug#73864] [PATCH] gnu: rust: update to 1.82
@ 2024-10-18 15:10 Brennan Vincent
[not found] ` <handler.73864.B.172926426718316.ack@debbugs.gnu.org>
0 siblings, 1 reply; 12+ messages in thread
From: Brennan Vincent @ 2024-10-18 15:10 UTC (permalink / raw)
To: 73864; +Cc: efraim
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
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
[not found] ` <handler.73864.B.172926426718316.ack@debbugs.gnu.org>
@ 2024-10-21 18:08 ` Brennan Vincent
2024-10-21 20:34 ` Brennan Vincent
2024-10-22 7:31 ` Divya
2024-10-27 20:04 ` [bug#73864] " Brennan Vincent
1 sibling, 2 replies; 12+ messages in thread
From: Brennan Vincent @ 2024-10-21 18:08 UTC (permalink / raw)
To: divya; +Cc: guix-devel, efraim
Note that we already have Rust 1.81 in rust-team, and I have already
sent a patch to update to 1.82 (the latest stable). Usually Efraim
reviews these updates.
-------------------- Start of forwarded message --------------------
From: help-debbugs@gnu.org (GNU bug Tracking System)
To: Brennan Vincent <brennan@umanwizard.com>
Subject: bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
Date: Fri, 18 Oct 2024 15:12:01 +0000
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@gnu.org
If you wish to submit further information on this problem, please
send it to 73864@debbugs.gnu.org.
Please do not send mail to help-debbugs@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@gnu.org with problems
-------------------- End of forwarded message --------------------
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
2024-10-21 18:08 ` Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82) Brennan Vincent
@ 2024-10-21 20:34 ` Brennan Vincent
2024-10-22 6:42 ` R: " Marco Fortina
2024-10-22 7:31 ` Divya
1 sibling, 1 reply; 12+ messages in thread
From: Brennan Vincent @ 2024-10-21 20:34 UTC (permalink / raw)
To: divya; +Cc: guix-devel, efraim
By the way, if you want to use Rust 1.82.0 before it gets accepted for
the default guix channel, you can use my channel (and install
`rust-next`, `rust-next:cargo`, and `rust-next:tools`):
https://github.com/umanwizard/guix-rust-next
"Brennan Vincent" <brennan@umanwizard.com> writes:
> Note that we already have Rust 1.81 in rust-team, and I have already
> sent a patch to update to 1.82 (the latest stable). Usually Efraim
> reviews these updates.
>
> -------------------- Start of forwarded message --------------------
> From: help-debbugs@gnu.org (GNU bug Tracking System)
> To: Brennan Vincent <brennan@umanwizard.com>
> Subject: bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
> Date: Fri, 18 Oct 2024 15:12:01 +0000
>
> 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@gnu.org
>
> If you wish to submit further information on this problem, please
> send it to 73864@debbugs.gnu.org.
>
> Please do not send mail to help-debbugs@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@gnu.org with problems
> -------------------- End of forwarded message --------------------
^ permalink raw reply [flat|nested] 12+ messages in thread
* R: Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
2024-10-21 20:34 ` Brennan Vincent
@ 2024-10-22 6:42 ` Marco Fortina
2024-10-22 11:57 ` Brennan Vincent
0 siblings, 1 reply; 12+ messages in thread
From: Marco Fortina @ 2024-10-22 6:42 UTC (permalink / raw)
To: Brennan Vincent, divya@subvertising.org
Cc: guix-devel@gnu.org, efraim@flashner.co.il
[-- Attachment #1: Type: text/plain, Size: 2234 bytes --]
Is there any plan to add rustup to the package as well? This is useful for adding targets for cross-compilation.
Cheers,
Marco
________________________________
Da: guix-devel-bounces+marco_fortina=hotmail.it@gnu.org <guix-devel-bounces+marco_fortina=hotmail.it@gnu.org> per conto di Brennan Vincent <brennan@umanwizard.com>
Inviato: lunedì 21 ottobre 2024 22:34
A: divya@subvertising.org <divya@subvertising.org>
Cc: guix-devel@gnu.org <guix-devel@gnu.org>; efraim@flashner.co.il <efraim@flashner.co.il>
Oggetto: Re: Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
By the way, if you want to use Rust 1.82.0 before it gets accepted for
the default guix channel, you can use my channel (and install
`rust-next`, `rust-next:cargo`, and `rust-next:tools`):
https://github.com/umanwizard/guix-rust-next
"Brennan Vincent" <brennan@umanwizard.com> writes:
> Note that we already have Rust 1.81 in rust-team, and I have already
> sent a patch to update to 1.82 (the latest stable). Usually Efraim
> reviews these updates.
>
> -------------------- Start of forwarded message --------------------
> From: help-debbugs@gnu.org (GNU bug Tracking System)
> To: Brennan Vincent <brennan@umanwizard.com>
> Subject: bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
> Date: Fri, 18 Oct 2024 15:12:01 +0000
>
> 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@gnu.org
>
> If you wish to submit further information on this problem, please
> send it to 73864@debbugs.gnu.org.
>
> Please do not send mail to help-debbugs@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@gnu.org with problems
> -------------------- End of forwarded message --------------------
[-- Attachment #2: Type: text/html, Size: 3797 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
2024-10-21 18:08 ` Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82) Brennan Vincent
2024-10-21 20:34 ` Brennan Vincent
@ 2024-10-22 7:31 ` Divya
2024-10-22 8:57 ` Efraim Flashner
1 sibling, 1 reply; 12+ messages in thread
From: Divya @ 2024-10-22 7:31 UTC (permalink / raw)
To: Brennan Vincent; +Cc: guix-devel, efraim
[-- Attachment #1: Type: text/plain, Size: 1478 bytes --]
On 21 October 2024 18:08:44 GMT, Brennan Vincent <brennan@umanwizard.com> wrote:
>Note that we already have Rust 1.81 in rust-team, and I have already
>sent a patch to update to 1.82 (the latest stable). Usually Efraim
>reviews these updates.
>
>-------------------- Start of forwarded message --------------------
>From: help-debbugs@gnu.org (GNU bug Tracking System)
>To: Brennan Vincent <brennan@umanwizard.com>
>Subject: bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
>Date: Fri, 18 Oct 2024 15:12:01 +0000
>
>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@gnu.org
>
>If you wish to submit further information on this problem, please
>send it to 73864@debbugs.gnu.org.
>
>Please do not send mail to help-debbugs@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@gnu.org with problems
>-------------------- End of forwarded message --------------------
>
Hello Brennan,
That sounds like good news then. It should be available in the guix channel soon then?
[-- Attachment #2: Type: text/html, Size: 1629 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
2024-10-22 7:31 ` Divya
@ 2024-10-22 8:57 ` Efraim Flashner
2024-10-22 11:51 ` Brennan Vincent
0 siblings, 1 reply; 12+ messages in thread
From: Efraim Flashner @ 2024-10-22 8:57 UTC (permalink / raw)
To: Divya; +Cc: Brennan Vincent, guix-devel
[-- Attachment #1: Type: text/plain, Size: 1989 bytes --]
On Tue, Oct 22, 2024 at 07:31:05AM +0000, Divya wrote:
> On 21 October 2024 18:08:44 GMT, Brennan Vincent <brennan@umanwizard.com> wrote:
> >Note that we already have Rust 1.81 in rust-team, and I have already
> >sent a patch to update to 1.82 (the latest stable). Usually Efraim
> >reviews these updates.
> >
> >-------------------- Start of forwarded message --------------------
> >From: help-debbugs@gnu.org (GNU bug Tracking System)
> >To: Brennan Vincent <brennan@umanwizard.com>
> >Subject: bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
> >Date: Fri, 18 Oct 2024 15:12:01 +0000
> >
> >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@gnu.org
> >
> >If you wish to submit further information on this problem, please
> >send it to 73864@debbugs.gnu.org.
> >
> >Please do not send mail to help-debbugs@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@gnu.org with problems
> >-------------------- End of forwarded message --------------------
> >
>
> Hello Brennan,
>
> That sounds like good news then. It should be available in the guix channel soon then?
I'm not sure I have the time to do all the testing necessary for bumping
rust to 1.82 currently so right now I'm about to join the merge queue
with rust-1.81.
--
Efraim Flashner <efraim@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
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
2024-10-22 8:57 ` Efraim Flashner
@ 2024-10-22 11:51 ` Brennan Vincent
2024-10-22 14:18 ` Efraim Flashner
0 siblings, 1 reply; 12+ messages in thread
From: Brennan Vincent @ 2024-10-22 11:51 UTC (permalink / raw)
To: Efraim Flashner, Divya; +Cc: guix-devel
Efraim Flashner <efraim@flashner.co.il> writes:
> On Tue, Oct 22, 2024 at 07:31:05AM +0000, Divya wrote:
>> On 21 October 2024 18:08:44 GMT, Brennan Vincent <brennan@umanwizard.com> wrote:
>> >Note that we already have Rust 1.81 in rust-team, and I have already
>> >sent a patch to update to 1.82 (the latest stable). Usually Efraim
>> >reviews these updates.
>> >
>> >-------------------- Start of forwarded message --------------------
>> >From: help-debbugs@gnu.org (GNU bug Tracking System)
>> >To: Brennan Vincent <brennan@umanwizard.com>
>> >Subject: bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
>> >Date: Fri, 18 Oct 2024 15:12:01 +0000
>> >
>> >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@gnu.org
>> >
>> >If you wish to submit further information on this problem, please
>> >send it to 73864@debbugs.gnu.org.
>> >
>> >Please do not send mail to help-debbugs@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@gnu.org with problems
>> >-------------------- End of forwarded message --------------------
>> >
>>
>> Hello Brennan,
>>
>> That sounds like good news then. It should be available in the guix
>> channel soon then?
It will be available after (1) it is reviewed and merged to the
rust-team branch, and (2) the next time after that when rust-team is
merged to master.
I can't predict how long that will take, but it could be a few
months. If you urgently need Rust 1.82 faster than that, you need to
take another approach, for example, one of the following:
* Configure your system to use the rust-team branch rather than master,
* Use my guix-rust-next channel I linked in the other thread (note: not
supported by the official Guix project, but it's working for me),
* If you're on a foreign distro, just install Rustup and don't use Guix
for Rust stuff. (Less feasible if you're on GuixSD).
In general, Guix is not a distribution where major changes to packages
land immediately, so in cases like Rust where the language is
fast-moving enough that most developers want to use the latest version,
you have to get used to using some workaround.
>
> I'm not sure I have the time to do all the testing necessary for bumping
> rust to 1.82 currently so right now I'm about to join the merge queue
> with rust-1.81.
Efraim, let me know if/how I can help with testing/maintaining new Rust
releases. I've been sending the patches for new versions as they come
out but I'd also be able to help in other ways if you tell me more about
what your workflow is for merging them.
>
> --
> Efraim Flashner <efraim@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
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: R: Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
2024-10-22 6:42 ` R: " Marco Fortina
@ 2024-10-22 11:57 ` Brennan Vincent
0 siblings, 0 replies; 12+ messages in thread
From: Brennan Vincent @ 2024-10-22 11:57 UTC (permalink / raw)
To: Marco Fortina, divya@subvertising.org
Cc: guix-devel@gnu.org, efraim@flashner.co.il
Marco Fortina <marco_fortina@hotmail.it> writes:
> Is there any plan to add rustup to the package as well? This is useful for adding targets for cross-compilation.
>
I don't have plans to add that in my channel (I don't use it), but if
someone packages it and gets it to work, I'd be happy to take a PR.
I doubt it will ever land in the main Guix channel since distributing
software whose sole purpose is to download and install software in
binary form seems to me to be contrary to the Guix philosophy. That
said, there is no good reason someone couldn't package it and include it
in another channel.
> Cheers,
> Marco
> ________________________________
> Da: guix-devel-bounces+marco_fortina=hotmail.it@gnu.org <guix-devel-bounces+marco_fortina=hotmail.it@gnu.org> per conto di Brennan Vincent <brennan@umanwizard.com>
> Inviato: lunedì 21 ottobre 2024 22:34
> A: divya@subvertising.org <divya@subvertising.org>
> Cc: guix-devel@gnu.org <guix-devel@gnu.org>; efraim@flashner.co.il <efraim@flashner.co.il>
> Oggetto: Re: Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
>
> By the way, if you want to use Rust 1.82.0 before it gets accepted for
> the default guix channel, you can use my channel (and install
> `rust-next`, `rust-next:cargo`, and `rust-next:tools`):
>
> https://github.com/umanwizard/guix-rust-next
>
> "Brennan Vincent" <brennan@umanwizard.com> writes:
>
>> Note that we already have Rust 1.81 in rust-team, and I have already
>> sent a patch to update to 1.82 (the latest stable). Usually Efraim
>> reviews these updates.
>>
>> -------------------- Start of forwarded message --------------------
>> From: help-debbugs@gnu.org (GNU bug Tracking System)
>> To: Brennan Vincent <brennan@umanwizard.com>
>> Subject: bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
>> Date: Fri, 18 Oct 2024 15:12:01 +0000
>>
>> 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@gnu.org
>>
>> If you wish to submit further information on this problem, please
>> send it to 73864@debbugs.gnu.org.
>>
>> Please do not send mail to help-debbugs@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@gnu.org with problems
>> -------------------- End of forwarded message --------------------
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
2024-10-22 11:51 ` Brennan Vincent
@ 2024-10-22 14:18 ` Efraim Flashner
2024-10-22 15:16 ` Brennan Vincent
0 siblings, 1 reply; 12+ messages in thread
From: Efraim Flashner @ 2024-10-22 14:18 UTC (permalink / raw)
To: Brennan Vincent; +Cc: Divya, guix-devel
[-- Attachment #1: Type: text/plain, Size: 4984 bytes --]
On Tue, Oct 22, 2024 at 07:51:07AM -0400, Brennan Vincent wrote:
> Efraim Flashner <efraim@flashner.co.il> writes:
>
> > On Tue, Oct 22, 2024 at 07:31:05AM +0000, Divya wrote:
> >> On 21 October 2024 18:08:44 GMT, Brennan Vincent <brennan@umanwizard.com> wrote:
> >> >Note that we already have Rust 1.81 in rust-team, and I have already
> >> >sent a patch to update to 1.82 (the latest stable). Usually Efraim
> >> >reviews these updates.
> >> >
> >> >-------------------- Start of forwarded message --------------------
> >> >From: help-debbugs@gnu.org (GNU bug Tracking System)
> >> >To: Brennan Vincent <brennan@umanwizard.com>
> >> >Subject: bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
> >> >Date: Fri, 18 Oct 2024 15:12:01 +0000
> >> >
> >> >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@gnu.org
> >> >
> >> >If you wish to submit further information on this problem, please
> >> >send it to 73864@debbugs.gnu.org.
> >> >
> >> >Please do not send mail to help-debbugs@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@gnu.org with problems
> >> >-------------------- End of forwarded message --------------------
> >> >
> >>
> >> Hello Brennan,
> >>
> >> That sounds like good news then. It should be available in the guix
> >> channel soon then?
>
> It will be available after (1) it is reviewed and merged to the
> rust-team branch, and (2) the next time after that when rust-team is
> merged to master.
>
> I can't predict how long that will take, but it could be a few
> months. If you urgently need Rust 1.82 faster than that, you need to
> take another approach, for example, one of the following:
>
> * Configure your system to use the rust-team branch rather than master,
>
> * Use my guix-rust-next channel I linked in the other thread (note: not
> supported by the official Guix project, but it's working for me),
>
> * If you're on a foreign distro, just install Rustup and don't use Guix
> for Rust stuff. (Less feasible if you're on GuixSD).
>
> In general, Guix is not a distribution where major changes to packages
> land immediately, so in cases like Rust where the language is
> fast-moving enough that most developers want to use the latest version,
> you have to get used to using some workaround.
>
> >
> > I'm not sure I have the time to do all the testing necessary for bumping
> > rust to 1.82 currently so right now I'm about to join the merge queue
> > with rust-1.81.
>
> Efraim, let me know if/how I can help with testing/maintaining new Rust
> releases. I've been sending the patches for new versions as they come
> out but I'd also be able to help in other ways if you tell me more about
> what your workflow is for merging them.
Currently I first build the new version on the 3 supported architectures
for rust, x86_64, aarch64 and riscv64. I also try building the non-rust
package version, since we'll be using that one to build a future version
of rust.
After the rust package itself builds I normally try building something
simple like zoxide on each architecture, and I'll try cross-compiling it
too (only from x86_64) to test that the rust sysroot package doesn't
need changes. From there I can be pretty sure everything should be good
and I attempt to build the list of cargo-build packages which don't
start with "rust-" and fix those or their dependencies as needed. Then
I'll try building all the rust packages and fix those I can.
In terms of testing, for recent versions it's really only been a failed
test here or there for aarch64 and riscv64, so if the zoxide and cross
zoxide both build then that's pretty much everything.
Interesting tidbits:
In terms of cross building, on some versions the windows versions work
and on some they don't, they generally don't like that we strip out the
bundled libraries. The Hurd may or may not work, and a number of crates
still need some logic touch-ups to deal with it. 32-bit powerpc has some
quirks in rust that prevent some crates from working, but also makes a
good cross-target since it's such a niche target, being incredibly old
and big-endian. And I can actually test binaries built if necessary.
--
Efraim Flashner <efraim@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
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
2024-10-22 14:18 ` Efraim Flashner
@ 2024-10-22 15:16 ` Brennan Vincent
2024-10-23 6:24 ` Efraim Flashner
0 siblings, 1 reply; 12+ messages in thread
From: Brennan Vincent @ 2024-10-22 15:16 UTC (permalink / raw)
To: Efraim Flashner; +Cc: Divya, guix-devel
Efraim Flashner <efraim@flashner.co.il> writes:
> On Tue, Oct 22, 2024 at 07:51:07AM -0400, Brennan Vincent wrote:
>> Efraim Flashner <efraim@flashner.co.il> writes:
>>
>> > On Tue, Oct 22, 2024 at 07:31:05AM +0000, Divya wrote:
>> >> On 21 October 2024 18:08:44 GMT, Brennan Vincent <brennan@umanwizard.com> wrote:
>> >> >Note that we already have Rust 1.81 in rust-team, and I have already
>> >> >sent a patch to update to 1.82 (the latest stable). Usually Efraim
>> >> >reviews these updates.
>> >> >
>> >> >-------------------- Start of forwarded message --------------------
>> >> >From: help-debbugs@gnu.org (GNU bug Tracking System)
>> >> >To: Brennan Vincent <brennan@umanwizard.com>
>> >> >Subject: bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
>> >> >Date: Fri, 18 Oct 2024 15:12:01 +0000
>> >> >
>> >> >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@gnu.org
>> >> >
>> >> >If you wish to submit further information on this problem, please
>> >> >send it to 73864@debbugs.gnu.org.
>> >> >
>> >> >Please do not send mail to help-debbugs@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@gnu.org with problems
>> >> >-------------------- End of forwarded message --------------------
>> >> >
>> >>
>> >> Hello Brennan,
>> >>
>> >> That sounds like good news then. It should be available in the guix
>> >> channel soon then?
>>
>> It will be available after (1) it is reviewed and merged to the
>> rust-team branch, and (2) the next time after that when rust-team is
>> merged to master.
>>
>> I can't predict how long that will take, but it could be a few
>> months. If you urgently need Rust 1.82 faster than that, you need to
>> take another approach, for example, one of the following:
>>
>> * Configure your system to use the rust-team branch rather than master,
>>
>> * Use my guix-rust-next channel I linked in the other thread (note: not
>> supported by the official Guix project, but it's working for me),
>>
>> * If you're on a foreign distro, just install Rustup and don't use Guix
>> for Rust stuff. (Less feasible if you're on GuixSD).
>>
>> In general, Guix is not a distribution where major changes to packages
>> land immediately, so in cases like Rust where the language is
>> fast-moving enough that most developers want to use the latest version,
>> you have to get used to using some workaround.
>>
>> >
>> > I'm not sure I have the time to do all the testing necessary for bumping
>> > rust to 1.82 currently so right now I'm about to join the merge queue
>> > with rust-1.81.
>>
>> Efraim, let me know if/how I can help with testing/maintaining new Rust
>> releases. I've been sending the patches for new versions as they come
>> out but I'd also be able to help in other ways if you tell me more about
>> what your workflow is for merging them.
>
> Currently I first build the new version on the 3 supported architectures
> for rust, x86_64, aarch64 and riscv64. I also try building the non-rust
> package version, since we'll be using that one to build a future version
> of rust.
>
How are you building for riscv64 ? Do you have access to an actual
risc64 machine or are you using an emulator? Or do you cross-compile
from x86 or arm?
> After the rust package itself builds I normally try building something
> simple like zoxide on each architecture, and I'll try cross-compiling it
> too (only from x86_64) to test that the rust sysroot package doesn't
> need changes. From there I can be pretty sure everything should be good
> and I attempt to build the list of cargo-build packages which don't
> start with "rust-" and fix those or their dependencies as needed. Then
> I'll try building all the rust packages and fix those I can.
>
> In terms of testing, for recent versions it's really only been a failed
> test here or there for aarch64 and riscv64, so if the zoxide and cross
> zoxide both build then that's pretty much everything.
>
> Interesting tidbits:
> In terms of cross building, on some versions the windows versions work
> and on some they don't, they generally don't like that we strip out the
> bundled libraries. The Hurd may or may not work, and a number of crates
> still need some logic touch-ups to deal with it. 32-bit powerpc has some
> quirks in rust that prevent some crates from working, but also makes a
> good cross-target since it's such a niche target, being incredibly old
> and big-endian. And I can actually test binaries built if necessary.
>
> --
> Efraim Flashner <efraim@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
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
2024-10-22 15:16 ` Brennan Vincent
@ 2024-10-23 6:24 ` Efraim Flashner
0 siblings, 0 replies; 12+ messages in thread
From: Efraim Flashner @ 2024-10-23 6:24 UTC (permalink / raw)
To: Brennan Vincent; +Cc: Divya, guix-devel
[-- Attachment #1: Type: text/plain, Size: 6362 bytes --]
On Tue, Oct 22, 2024 at 11:16:44AM -0400, Brennan Vincent wrote:
> Efraim Flashner <efraim@flashner.co.il> writes:
>
> > On Tue, Oct 22, 2024 at 07:51:07AM -0400, Brennan Vincent wrote:
> >> Efraim Flashner <efraim@flashner.co.il> writes:
> >>
> >> > On Tue, Oct 22, 2024 at 07:31:05AM +0000, Divya wrote:
> >> >> On 21 October 2024 18:08:44 GMT, Brennan Vincent <brennan@umanwizard.com> wrote:
> >> >> >Note that we already have Rust 1.81 in rust-team, and I have already
> >> >> >sent a patch to update to 1.82 (the latest stable). Usually Efraim
> >> >> >reviews these updates.
> >> >> >
> >> >> >-------------------- Start of forwarded message --------------------
> >> >> >From: help-debbugs@gnu.org (GNU bug Tracking System)
> >> >> >To: Brennan Vincent <brennan@umanwizard.com>
> >> >> >Subject: bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82)
> >> >> >Date: Fri, 18 Oct 2024 15:12:01 +0000
> >> >> >
> >> >> >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@gnu.org
> >> >> >
> >> >> >If you wish to submit further information on this problem, please
> >> >> >send it to 73864@debbugs.gnu.org.
> >> >> >
> >> >> >Please do not send mail to help-debbugs@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@gnu.org with problems
> >> >> >-------------------- End of forwarded message --------------------
> >> >> >
> >> >>
> >> >> Hello Brennan,
> >> >>
> >> >> That sounds like good news then. It should be available in the guix
> >> >> channel soon then?
> >>
> >> It will be available after (1) it is reviewed and merged to the
> >> rust-team branch, and (2) the next time after that when rust-team is
> >> merged to master.
> >>
> >> I can't predict how long that will take, but it could be a few
> >> months. If you urgently need Rust 1.82 faster than that, you need to
> >> take another approach, for example, one of the following:
> >>
> >> * Configure your system to use the rust-team branch rather than master,
> >>
> >> * Use my guix-rust-next channel I linked in the other thread (note: not
> >> supported by the official Guix project, but it's working for me),
> >>
> >> * If you're on a foreign distro, just install Rustup and don't use Guix
> >> for Rust stuff. (Less feasible if you're on GuixSD).
> >>
> >> In general, Guix is not a distribution where major changes to packages
> >> land immediately, so in cases like Rust where the language is
> >> fast-moving enough that most developers want to use the latest version,
> >> you have to get used to using some workaround.
> >>
> >> >
> >> > I'm not sure I have the time to do all the testing necessary for bumping
> >> > rust to 1.82 currently so right now I'm about to join the merge queue
> >> > with rust-1.81.
> >>
> >> Efraim, let me know if/how I can help with testing/maintaining new Rust
> >> releases. I've been sending the patches for new versions as they come
> >> out but I'd also be able to help in other ways if you tell me more about
> >> what your workflow is for merging them.
> >
> > Currently I first build the new version on the 3 supported architectures
> > for rust, x86_64, aarch64 and riscv64. I also try building the non-rust
> > package version, since we'll be using that one to build a future version
> > of rust.
> >
>
> How are you building for riscv64 ? Do you have access to an actual
> risc64 machine or are you using an emulator? Or do you cross-compile
> from x86 or arm?
I've always been jealous of people who have access to exotic hardware so
I've actually picked up a bunch of other machines over the years. I
currently have 3 riscv64 boards which build reasonably quickly and a
number of aarch64 boards, not all of which I actually have in use. I do
occasionally use the qemu-binfmt-service on my x86_64 machine to speed
up builds, but generally for things like deblobbing the kernel or if a
build takes more RAM or storage than I can handle on one of the
machines.
> > After the rust package itself builds I normally try building something
> > simple like zoxide on each architecture, and I'll try cross-compiling it
> > too (only from x86_64) to test that the rust sysroot package doesn't
> > need changes. From there I can be pretty sure everything should be good
> > and I attempt to build the list of cargo-build packages which don't
> > start with "rust-" and fix those or their dependencies as needed. Then
> > I'll try building all the rust packages and fix those I can.
> >
> > In terms of testing, for recent versions it's really only been a failed
> > test here or there for aarch64 and riscv64, so if the zoxide and cross
> > zoxide both build then that's pretty much everything.
I realize I didn't mention it, but if zoxide and cross zoxide work from
x86_64 specifically then generally everything should be fine and I can
run the other architectures through a couple of times to update the
skipped tests there, if there are any.
> > Interesting tidbits:
> > In terms of cross building, on some versions the windows versions work
> > and on some they don't, they generally don't like that we strip out the
> > bundled libraries. The Hurd may or may not work, and a number of crates
> > still need some logic touch-ups to deal with it. 32-bit powerpc has some
> > quirks in rust that prevent some crates from working, but also makes a
> > good cross-target since it's such a niche target, being incredibly old
> > and big-endian. And I can actually test binaries built if necessary.
> >
--
Efraim Flashner <efraim@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
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* [bug#73864] Acknowledgement ([PATCH] gnu: rust: update to 1.82)
[not found] ` <handler.73864.B.172926426718316.ack@debbugs.gnu.org>
2024-10-21 18:08 ` Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82) Brennan Vincent
@ 2024-10-27 20:04 ` Brennan Vincent
1 sibling, 0 replies; 12+ messages in thread
From: Brennan Vincent @ 2024-10-27 20:04 UTC (permalink / raw)
To: 73864; +Cc: efraim
[-- Attachment #1: Type: text/plain, Size: 544 bytes --]
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).
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Patch v2 --]
[-- Type: text/x-patch, Size: 9913 bytes --]
From 9795a513a8555df6f6d94d5089318f39f20f832f Mon Sep 17 00:00:00 2001
Message-ID: <9795a513a8555df6f6d94d5089318f39f20f832f.1730059086.git.brennan@umanwizard.com>
From: Brennan Vincent <brennan@umanwizard.com>
Date: Fri, 18 Oct 2024 11:10:20 -0400
Subject: [PATCH v2] gnu: rust: update to 1.82
gnu/packages/rust.scm (rust-1.81): Fix bootstrap of 1.82 on riscv64.
gnu/packages/rust.scm (new variable): rust-1.82.
gnu/packages/rust.scm (rust): update to 1.82.
Change-Id: If6ff59011edca7a230946a3ba77b51f26cd47789
---
.../rust-1.81-fix-riscv64-bootstrap.patch | 40 ++++++++
gnu/packages/rust.scm | 94 +++++++++++++++----
2 files changed, 118 insertions(+), 16 deletions(-)
create mode 100644 gnu/packages/patches/rust-1.81-fix-riscv64-bootstrap.patch
diff --git a/gnu/packages/patches/rust-1.81-fix-riscv64-bootstrap.patch b/gnu/packages/patches/rust-1.81-fix-riscv64-bootstrap.patch
new file mode 100644
index 0000000000..39a79a9628
--- /dev/null
+++ b/gnu/packages/patches/rust-1.81-fix-riscv64-bootstrap.patch
@@ -0,0 +1,40 @@
+From 99e6a28804eac57faa37134d61a2bb17069996a2 Mon Sep 17 00:00:00 2001
+From: Nicholas Bishop <nicholasbishop@google.com>
+Date: Thu, 30 May 2024 18:32:46 -0400
+Subject: [PATCH] Add f16/f128 handling in a couple places
+
+---
+ compiler/rustc_codegen_llvm/src/abi.rs | 2 ++
+ compiler/rustc_target/src/abi/call/mod.rs | 2 ++
+ 2 files changed, 4 insertions(+)
+
+diff --git a/compiler/rustc_codegen_llvm/src/abi.rs b/compiler/rustc_codegen_llvm/src/abi.rs
+index a6a3f0f964611..2e52d3f426a83 100644
+--- a/compiler/rustc_codegen_llvm/src/abi.rs
++++ b/compiler/rustc_codegen_llvm/src/abi.rs
+@@ -121,8 +121,10 @@ impl LlvmType for Reg {
+ match self.kind {
+ RegKind::Integer => cx.type_ix(self.size.bits()),
+ RegKind::Float => match self.size.bits() {
++ 16 => cx.type_f16(),
+ 32 => cx.type_f32(),
+ 64 => cx.type_f64(),
++ 128 => cx.type_f128(),
+ _ => bug!("unsupported float: {:?}", self),
+ },
+ RegKind::Vector => cx.type_vector(cx.type_i8(), self.size.bytes()),
+diff --git a/compiler/rustc_target/src/abi/call/mod.rs b/compiler/rustc_target/src/abi/call/mod.rs
+index fc79c9232d1bd..f83d0492004a2 100644
+--- a/compiler/rustc_target/src/abi/call/mod.rs
++++ b/compiler/rustc_target/src/abi/call/mod.rs
+@@ -236,8 +236,10 @@ impl Reg {
+ _ => panic!("unsupported integer: {self:?}"),
+ },
+ RegKind::Float => match self.size.bits() {
++ 16 => dl.f16_align.abi,
+ 32 => dl.f32_align.abi,
+ 64 => dl.f64_align.abi,
++ 128 => dl.f128_align.abi,
+ _ => panic!("unsupported float: {self:?}"),
+ },
+ RegKind::Vector => dl.vector_align(self.size).abi,
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index 7f85402242..4fe529c5b4 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -1051,8 +1051,46 @@ (define-public rust-1.80
(string-append all ", \"use-libc\""))))))))))
(define-public rust-1.81
- (rust-bootstrapped-package rust-1.80 "1.81.0"
- "19yggj1qivdhf68gx2652cfi7nxjkdgy39wh7h6facpzppz4h947"))
+ (let ((base-rust (rust-bootstrapped-package rust-1.80 "1.81.0"
+ "19yggj1qivdhf68gx2652cfi7nxjkdgy39wh7h6facpzppz4h947")))
+ (package
+ (inherit base-rust)
+ (source
+ (origin
+ (inherit (package-source base-rust))
+ ;; see https://github.com/rust-lang/rust/issues/129268#issuecomment-2430133779
+ (patches (search-patches "rust-1.81-fix-riscv64-bootstrap.patch")))))))
+
+(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")))))))
+ (source
+ (origin
+ (inherit (package-source base-rust))
+ (patches '()))))))
+
(define (make-ignore-test-list strs)
"Function to make creating a list to ignore tests a bit easier."
@@ -1068,7 +1106,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 +1120,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 +1273,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: 14a0c80510da486fbe825f7d71544e309d482a65
--
2.46.0
[-- Attachment #3: Type: text/plain, Size: 812 bytes --]
help-debbugs@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@gnu.org
>
> If you wish to submit further information on this problem, please
> send it to 73864@debbugs.gnu.org.
>
> Please do not send mail to help-debbugs@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@gnu.org with problems
^ permalink raw reply related [flat|nested] 12+ messages in thread
end of thread, other threads:[~2024-10-27 20:06 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-18 15:10 [bug#73864] [PATCH] gnu: rust: update to 1.82 Brennan Vincent
[not found] ` <handler.73864.B.172926426718316.ack@debbugs.gnu.org>
2024-10-21 18:08 ` Fwd: [GNU bug Tracking System] bug#73864: Acknowledgement ([PATCH] gnu: rust: update to 1.82) Brennan Vincent
2024-10-21 20:34 ` Brennan Vincent
2024-10-22 6:42 ` R: " Marco Fortina
2024-10-22 11:57 ` Brennan Vincent
2024-10-22 7:31 ` Divya
2024-10-22 8:57 ` Efraim Flashner
2024-10-22 11:51 ` Brennan Vincent
2024-10-22 14:18 ` Efraim Flashner
2024-10-22 15:16 ` Brennan Vincent
2024-10-23 6:24 ` Efraim Flashner
2024-10-27 20:04 ` [bug#73864] " Brennan Vincent
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.