rust-cargo: Update to 0.60.0 to support Edition2021 projects

OpenSubmitted by Paul Alesius.
Details
4 participants
  • Maxime Devos
  • Tobias Geerinckx-Rice
  • Mekeor Melire
  • Paul Alesius
Owner
unassigned
Severity
normal
P
P
Paul Alesius wrote on 21 Mar 18:46 +0100
(address . guix-patches@gnu.org)
CAL8jUGV9EwAm9KLKFcgjHiPV_GrQSZV4ec6Epcb0otXBNaD17Q@mail.gmail.com
The current rust-cargo version is 0.53.0, this supports rust
edition2018 projects.

To install the latest cargo from crates.io using the existing version
(cargo install cargo), it will fail because the latest version is an
"edition2021" rust-cargo project.

-- log
Caused by:
failed to parse manifest at `/xyz/cargo-0.59.0/Cargo.toml`
Caused by:
feature `edition2021` is required
--

This patch updates rust-cargo and its dependencies to support the the
latest rust edition2021, and edition2021 cargo projects.

With regards,
- Paul
Toggle diff (283 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 90c95b6368..5bfb545389 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -9763,10 +9763,10 @@ (define-public rust-caps-0.3
         ("rust-error-chain" ,rust-error-chain-0.12)
         ("rust-libc" ,rust-libc-0.2))))))
 
-(define-public rust-cargo-0.53
+(define-public rust-cargo-0.60
   (package
     (name "rust-cargo")
-    (version "0.53.0")
+    (version "0.60.0")
     (source
      (origin
        (method url-fetch)
@@ -9775,7 +9775,7 @@ (define-public rust-cargo-0.53
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "12ns9v4dd8vnvsaqgd897h2zc19w00i5ii3slda653zbhfzm6zna"))))
+         "0xws4y7h4mmq8flnzsgf6fph2hx3rjgypyll4wzp15035ymly6dw"))))
     (build-system cargo-build-system)
     (arguments
      `(;; The test suite is disabled as the internal 'cargo-test-macro' and
@@ -9786,6 +9786,7 @@ (define-public rust-cargo-0.53
         ("rust-atty" ,rust-atty-0.2)
         ("rust-bytesize" ,rust-bytesize-1)
         ("rust-cargo-platform" ,rust-cargo-platform-0.1)
+        ("rust-cargo-util" ,rust-cargo-util-0.1)
         ("rust-clap" ,rust-clap-2)
         ("rust-core-foundation" ,rust-core-foundation-0.9)
         ("rust-crates-io" ,rust-crates-io-0.33)
@@ -9793,7 +9794,7 @@ (define-public rust-cargo-0.53
         ("rust-crypto-hash" ,rust-crypto-hash-0.3)
         ("rust-curl" ,rust-curl-0.4)
         ("rust-curl-sys" ,rust-curl-sys-0.4)
-        ("rust-env-logger" ,rust-env-logger-0.8)
+        ("rust-env-logger" ,rust-env-logger-0.9)
         ("rust-filetime" ,rust-filetime-0.2)
         ("rust-flate2" ,rust-flate2-1)
         ("rust-flate2" ,rust-flate2-1)
@@ -9815,22 +9816,23 @@ (define-public rust-cargo-0.53
         ("rust-memchr" ,rust-memchr-2)
         ("rust-miow" ,rust-miow-0.3)
         ("rust-num-cpus" ,rust-num-cpus-1)
-        ("rust-opener" ,rust-opener-0.4)
+        ("rust-opener" ,rust-opener-0.5)
         ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-os-info" ,rust-os-info-3)
         ("rust-percent-encoding" ,rust-percent-encoding-2)
         ("rust-pretty-env-logger" ,rust-pretty-env-logger-0.4)
         ("rust-rand" ,rust-rand-0.8)
         ("rust-rustc-workspace-hack" ,rust-rustc-workspace-hack-1)
-        ("rust-rustfix" ,rust-rustfix-0.5)
+        ("rust-rustfix" ,rust-rustfix-0.6)
         ("rust-same-file" ,rust-same-file-1)
         ("rust-semver" ,rust-semver-0.10)
         ("rust-serde" ,rust-serde-1)
         ("rust-serde-ignored" ,rust-serde-ignored-0.1)
         ("rust-serde-json" ,rust-serde-json-1)
         ("rust-shell-escape" ,rust-shell-escape-0.1)
+        ("rust-socket2" ,rust-socket2-0.4)
         ("rust-strip-ansi-escapes" ,rust-strip-ansi-escapes-0.1)
         ("rust-tar" ,rust-tar-0.4)
-        ("rust-tar" ,rust-tar-0.4)
         ("rust-tempfile" ,rust-tempfile-3)
         ("rust-termcolor" ,rust-termcolor-1)
         ("rust-toml" ,rust-toml-0.5)
@@ -10094,7 +10096,7 @@ (define-public rust-cargo-lock-7
 (define-public rust-cargo-platform-0.1
   (package
     (name "rust-cargo-platform")
-    (version "0.1.1")
+    (version "0.1.2")
     (source
      (origin
        (method url-fetch)
@@ -10103,7 +10105,7 @@ (define-public rust-cargo-platform-0.1
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "1mzi60pf0z83qkzqp7jwd61xnqz2b5ydsj7rnnikbgyicd5989h2"))))
+         "09zsf76b9yr02jh17xq925xp1w824w2bwvb78fd0gpx5m1fq5nyb"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -10114,6 +10116,25 @@ (define-public rust-cargo-platform-0.1
 supported by Cargo.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-cargo-util-0.1
+  (package
+    (name "rust-cargo-util")
+    (version "0.1.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "cargo-util" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1sz0gzcyp9ycb4zwj69qs9gd8kn9hv9nh2dq42c59x5xccqph755"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/rust-lang/cargo")
+    (synopsis "Utils for Cargo")
+    (description "Miscellaneous support code used by Cargo.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-cargon-0.0
   (package
     (name "rust-cargon")
@@ -13801,7 +13822,7 @@ (define-public rust-crates-index-0.5
 (define-public rust-crates-io-0.33
   (package
     (name "rust-crates-io")
-    (version "0.33.0")
+    (version "0.33.1")
     (source
      (origin
        (method url-fetch)
@@ -13810,7 +13831,7 @@ (define-public rust-crates-io-0.33
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "147mggf85fz77vsrzsvsxxwid4f4fg30zwfyirx7sl1k7y33hw91"))))
+         "0nmpzr697a6v12ljwpmjrhqpmkf784nsm8m1g6jwadmkq96p3mxj"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -15585,14 +15606,14 @@ (define-public rust-cty-0.2
 (define-public rust-curl-0.4
   (package
     (name "rust-curl")
-    (version "0.4.34")
+    (version "0.4.43")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "curl" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "0vkm6fyizf8m9yxpv3n5pm9ag3bwlyqa6nz2ga8qkzm5y4m1cs72"))))
+        (base32 "07v5s3qafyl9gnnlzbddgg5fzy41gncy00ahbbv46nr0xyp5bn1p"))))
     (build-system cargo-build-system)
     (arguments
      `(#:tests? #false                  ;require internet access
@@ -15622,7 +15643,7 @@ (define-public rust-curl-0.4
 (define-public rust-curl-sys-0.4
   (package
     (name "rust-curl-sys")
-    (version "0.4.39+curl-7.74.0")
+    (version "0.4.53+curl-7.82.0")
     (source
       (origin
         (method url-fetch)
@@ -15630,7 +15651,7 @@ (define-public rust-curl-sys-0.4
         (file-name (string-append name "-" version ".tar.gz"))
         (sha256
          (base32
-          "0x7qhq7c3b1vmp3740yiigzm09qvkzpdf578jjrs0s3v3s3cxa07"))
+          "0lh398vd34c55afyw5csbxqmnp7caxgpgci3y89c60lmb9d914l0"))
         (modules '((guix build utils)))
         (snippet
          '(begin (delete-file-recursively "curl") #t))))
@@ -30137,7 +30158,7 @@ (define-public rust-jni-sys-0.3
 (define-public rust-jobserver-0.1
   (package
     (name "rust-jobserver")
-    (version "0.1.22")
+    (version "0.1.24")
     (source
      (origin
        (method url-fetch)
@@ -30146,7 +30167,7 @@ (define-public rust-jobserver-0.1
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "1zg7p4khibisbvd8b1lqvvni6lr00g49d4bq2zj6m76bs7jmlbwp"))))
+         "1yn1vxbbqv7dqir6qbfcj8h8ddjf89m5mhvm36h13xx7k5raf9dg"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -39195,10 +39216,10 @@ (define-public rust-open-1
        (("rust-pathdiff" ,rust-pathdiff-0.2)
         ("rust-winapi" ,rust-winapi-0.3))))))
 
-(define-public rust-opener-0.4
+(define-public rust-opener-0.5
   (package
     (name "rust-opener")
-    (version "0.4.1")
+    (version "0.5.0")
     (source
      (origin
        (method url-fetch)
@@ -39207,7 +39228,7 @@ (define-public rust-opener-0.4
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "1bpknqvhqkalhmq8n2m97apc0r3y194ppybl1qxay34xr83p848k"))))
+         "0lkrn4fv1h4m8gmp7ll6x7vjvb6kls2ngwa5cgsh2ix5fb6yp8sf"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -39569,14 +39590,14 @@ (define-public rust-ordermap-0.3
 (define-public rust-os-info-3
   (package
     (name "rust-os-info")
-    (version "3.0.6")
+    (version "3.0.7")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "os_info" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "1pbcf2in8i9w6zjzk6jmrd89gm5h7qpyqi3hvkl0axpzp1m57lmk"))))
+        (base32 "09x2sm4pgcpk14hakj4iq0zkglx1bwxlq3a5mbwc737dpwh11jba"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
@@ -51059,6 +51080,40 @@ (define-public rust-rustdoc-stripper-0.1
      "This package provides a tool to manipulate rustdoc comments.")
     (license license:asl2.0)))
 
+(define-public rust-rustfix-0.6
+  (package
+    (name "rust-rustfix")
+    (version "0.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rustfix" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0apkjxv3z70vhnyz2kpwsivvndk6qk7kkp0rf7sg8pk7q1gy02vg"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-anyhow" ,rust-anyhow-1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1))
+       #:cargo-development-inputs
+       (("rust-difference" ,rust-difference-2)
+        ("rust-duct" ,rust-duct-0.13)
+        ("rust-env-logger" ,rust-env-logger-0.6)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-proptest" ,rust-proptest-0.9)
+        ("rust-tempdir" ,rust-tempdir-0.3))))
+    (home-page "https://github.com/rust-lang/rustfix")
+    (synopsis "Automatically apply the suggestions made by rustc")
+    (description
+     "Automatically apply the suggestions made by rustc.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-rustfix-0.5
   (package
     (name "rust-rustfix")
@@ -60554,7 +60609,7 @@ (define-public rust-tap-1
 (define-public rust-tar-0.4
   (package
     (name "rust-tar")
-    (version "0.4.26")
+    (version "0.4.36")
     (source
       (origin
         (method url-fetch)
@@ -60562,7 +60617,7 @@ (define-public rust-tar-0.4
         (file-name (string-append name "-" version ".tar.gz"))
         (sha256
          (base32
-          "1lr6v3cpkfxd2lk5ll2jd8wr1xdskwj35smnh5sfb8xvzzxnn6dk"))))
+          "0iz40bd47xr69dsbckd6rv5ry2nqb2dp3z850q41pvpnmk6xk441"))))
     (build-system cargo-build-system)
     (arguments
      `(#:tests? #f      ; Test tarballs not included in crate.
M
M
Maxime Devos wrote on 21 Mar 19:46 +0100
7645a04d4bbd9261ef32be711a9302085481d44c.camel@telenet.be
Paul Alesius schreef op ma 21-03-2022 om 18:46 [+0100]:
Toggle quote (4 lines)
> +(define-public rust-rustfix-0.6
> +  (package
> +    (name "rust-rustfix")

rustfix is already packaged in Guix.

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYjjH6RccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7gvAAP91OiD51I/Nz0fT9ncu/9wn2FnD
SgweZAAqDwCGx3I4SgEAwJ1c97DcO1lBTHWuoRp1EY5ehHJS1H9y+wjTxJ5JxgY=
=6Lll
-----END PGP SIGNATURE-----


P
P
Paul Alesius wrote on 21 Mar 21:59 +0100
CAL8jUGUTgBKbBj-pe1ftJPBvJq_UnR-6VVTSyBNvbgKZ1xG-7g@mail.gmail.com
Updated patch.

On Mon, 21 Mar 2022 at 19:46, Maxime Devos <maximedevos@telenet.be> wrote:
Toggle quote (10 lines)
>
> Paul Alesius schreef op ma 21-03-2022 om 18:46 [+0100]:
> > +(define-public rust-rustfix-0.6
> > + (package
> > + (name "rust-rustfix")
>
> rustfix is already packaged in Guix.
>
> Greetings,
> Maxime.
Toggle diff (272 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 90c95b6368..294cb2aae1 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -9763,10 +9763,10 @@ (define-public rust-caps-0.3
         ("rust-error-chain" ,rust-error-chain-0.12)
         ("rust-libc" ,rust-libc-0.2))))))
 
-(define-public rust-cargo-0.53
+(define-public rust-cargo-0.60
   (package
     (name "rust-cargo")
-    (version "0.53.0")
+    (version "0.60.0")
     (source
      (origin
        (method url-fetch)
@@ -9775,7 +9775,7 @@ (define-public rust-cargo-0.53
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "12ns9v4dd8vnvsaqgd897h2zc19w00i5ii3slda653zbhfzm6zna"))))
+         "0xws4y7h4mmq8flnzsgf6fph2hx3rjgypyll4wzp15035ymly6dw"))))
     (build-system cargo-build-system)
     (arguments
      `(;; The test suite is disabled as the internal 'cargo-test-macro' and
@@ -9786,6 +9786,7 @@ (define-public rust-cargo-0.53
         ("rust-atty" ,rust-atty-0.2)
         ("rust-bytesize" ,rust-bytesize-1)
         ("rust-cargo-platform" ,rust-cargo-platform-0.1)
+        ("rust-cargo-util" ,rust-cargo-util-0.1)
         ("rust-clap" ,rust-clap-2)
         ("rust-core-foundation" ,rust-core-foundation-0.9)
         ("rust-crates-io" ,rust-crates-io-0.33)
@@ -9793,7 +9794,7 @@ (define-public rust-cargo-0.53
         ("rust-crypto-hash" ,rust-crypto-hash-0.3)
         ("rust-curl" ,rust-curl-0.4)
         ("rust-curl-sys" ,rust-curl-sys-0.4)
-        ("rust-env-logger" ,rust-env-logger-0.8)
+        ("rust-env-logger" ,rust-env-logger-0.9)
         ("rust-filetime" ,rust-filetime-0.2)
         ("rust-flate2" ,rust-flate2-1)
         ("rust-flate2" ,rust-flate2-1)
@@ -9815,22 +9816,23 @@ (define-public rust-cargo-0.53
         ("rust-memchr" ,rust-memchr-2)
         ("rust-miow" ,rust-miow-0.3)
         ("rust-num-cpus" ,rust-num-cpus-1)
-        ("rust-opener" ,rust-opener-0.4)
+        ("rust-opener" ,rust-opener-0.5)
         ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-os-info" ,rust-os-info-3)
         ("rust-percent-encoding" ,rust-percent-encoding-2)
         ("rust-pretty-env-logger" ,rust-pretty-env-logger-0.4)
         ("rust-rand" ,rust-rand-0.8)
         ("rust-rustc-workspace-hack" ,rust-rustc-workspace-hack-1)
-        ("rust-rustfix" ,rust-rustfix-0.5)
+        ("rust-rustfix" ,rust-rustfix-0.6)
         ("rust-same-file" ,rust-same-file-1)
         ("rust-semver" ,rust-semver-0.10)
         ("rust-serde" ,rust-serde-1)
         ("rust-serde-ignored" ,rust-serde-ignored-0.1)
         ("rust-serde-json" ,rust-serde-json-1)
         ("rust-shell-escape" ,rust-shell-escape-0.1)
+        ("rust-socket2" ,rust-socket2-0.4)
         ("rust-strip-ansi-escapes" ,rust-strip-ansi-escapes-0.1)
         ("rust-tar" ,rust-tar-0.4)
-        ("rust-tar" ,rust-tar-0.4)
         ("rust-tempfile" ,rust-tempfile-3)
         ("rust-termcolor" ,rust-termcolor-1)
         ("rust-toml" ,rust-toml-0.5)
@@ -10094,7 +10096,7 @@ (define-public rust-cargo-lock-7
 (define-public rust-cargo-platform-0.1
   (package
     (name "rust-cargo-platform")
-    (version "0.1.1")
+    (version "0.1.2")
     (source
      (origin
        (method url-fetch)
@@ -10103,7 +10105,7 @@ (define-public rust-cargo-platform-0.1
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "1mzi60pf0z83qkzqp7jwd61xnqz2b5ydsj7rnnikbgyicd5989h2"))))
+         "09zsf76b9yr02jh17xq925xp1w824w2bwvb78fd0gpx5m1fq5nyb"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -10114,6 +10116,25 @@ (define-public rust-cargo-platform-0.1
 supported by Cargo.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-cargo-util-0.1
+  (package
+    (name "rust-cargo-util")
+    (version "0.1.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "cargo-util" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1sz0gzcyp9ycb4zwj69qs9gd8kn9hv9nh2dq42c59x5xccqph755"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/rust-lang/cargo")
+    (synopsis "Utils for Cargo")
+    (description "Miscellaneous support code used by Cargo.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-cargon-0.0
   (package
     (name "rust-cargon")
@@ -13801,7 +13822,7 @@ (define-public rust-crates-index-0.5
 (define-public rust-crates-io-0.33
   (package
     (name "rust-crates-io")
-    (version "0.33.0")
+    (version "0.33.1")
     (source
      (origin
        (method url-fetch)
@@ -13810,7 +13831,7 @@ (define-public rust-crates-io-0.33
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "147mggf85fz77vsrzsvsxxwid4f4fg30zwfyirx7sl1k7y33hw91"))))
+         "0nmpzr697a6v12ljwpmjrhqpmkf784nsm8m1g6jwadmkq96p3mxj"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -15585,14 +15606,14 @@ (define-public rust-cty-0.2
 (define-public rust-curl-0.4
   (package
     (name "rust-curl")
-    (version "0.4.34")
+    (version "0.4.43")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "curl" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "0vkm6fyizf8m9yxpv3n5pm9ag3bwlyqa6nz2ga8qkzm5y4m1cs72"))))
+        (base32 "07v5s3qafyl9gnnlzbddgg5fzy41gncy00ahbbv46nr0xyp5bn1p"))))
     (build-system cargo-build-system)
     (arguments
      `(#:tests? #false                  ;require internet access
@@ -15622,7 +15643,7 @@ (define-public rust-curl-0.4
 (define-public rust-curl-sys-0.4
   (package
     (name "rust-curl-sys")
-    (version "0.4.39+curl-7.74.0")
+    (version "0.4.53+curl-7.82.0")
     (source
       (origin
         (method url-fetch)
@@ -15630,7 +15651,7 @@ (define-public rust-curl-sys-0.4
         (file-name (string-append name "-" version ".tar.gz"))
         (sha256
          (base32
-          "0x7qhq7c3b1vmp3740yiigzm09qvkzpdf578jjrs0s3v3s3cxa07"))
+          "0lh398vd34c55afyw5csbxqmnp7caxgpgci3y89c60lmb9d914l0"))
         (modules '((guix build utils)))
         (snippet
          '(begin (delete-file-recursively "curl") #t))))
@@ -30137,7 +30158,7 @@ (define-public rust-jni-sys-0.3
 (define-public rust-jobserver-0.1
   (package
     (name "rust-jobserver")
-    (version "0.1.22")
+    (version "0.1.24")
     (source
      (origin
        (method url-fetch)
@@ -30146,7 +30167,7 @@ (define-public rust-jobserver-0.1
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "1zg7p4khibisbvd8b1lqvvni6lr00g49d4bq2zj6m76bs7jmlbwp"))))
+         "1yn1vxbbqv7dqir6qbfcj8h8ddjf89m5mhvm36h13xx7k5raf9dg"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -39195,10 +39216,10 @@ (define-public rust-open-1
        (("rust-pathdiff" ,rust-pathdiff-0.2)
         ("rust-winapi" ,rust-winapi-0.3))))))
 
-(define-public rust-opener-0.4
+(define-public rust-opener-0.5
   (package
     (name "rust-opener")
-    (version "0.4.1")
+    (version "0.5.0")
     (source
      (origin
        (method url-fetch)
@@ -39207,7 +39228,7 @@ (define-public rust-opener-0.4
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "1bpknqvhqkalhmq8n2m97apc0r3y194ppybl1qxay34xr83p848k"))))
+         "0lkrn4fv1h4m8gmp7ll6x7vjvb6kls2ngwa5cgsh2ix5fb6yp8sf"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -39569,14 +39590,14 @@ (define-public rust-ordermap-0.3
 (define-public rust-os-info-3
   (package
     (name "rust-os-info")
-    (version "3.0.6")
+    (version "3.0.7")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "os_info" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "1pbcf2in8i9w6zjzk6jmrd89gm5h7qpyqi3hvkl0axpzp1m57lmk"))))
+        (base32 "09x2sm4pgcpk14hakj4iq0zkglx1bwxlq3a5mbwc737dpwh11jba"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
@@ -51059,8 +51080,28 @@ (define-public rust-rustdoc-stripper-0.1
      "This package provides a tool to manipulate rustdoc comments.")
     (license license:asl2.0)))
 
-(define-public rust-rustfix-0.5
+(define-public rust-rustfix-0.6
   (package
+    (name "rust-rustfix")
+    (version "0.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rustfix" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0apkjxv3z70vhnyz2kpwsivvndk6qk7kkp0rf7sg8pk7q1gy02vg"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/rust-lang/rustfix")
+    (synopsis "Automatically apply the suggestions made by rustc.")
+    (description
+     "Automatically apply the suggestions made by rustc.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-rustfix-0.5
+  (package/inherit rust-rustfix-0.6
     (name "rust-rustfix")
     (version "0.5.1")
     (source
@@ -60554,7 +60595,7 @@ (define-public rust-tap-1
 (define-public rust-tar-0.4
   (package
     (name "rust-tar")
-    (version "0.4.26")
+    (version "0.4.36")
     (source
       (origin
         (method url-fetch)
@@ -60562,7 +60603,7 @@ (define-public rust-tar-0.4
         (file-name (string-append name "-" version ".tar.gz"))
         (sha256
          (base32
-          "1lr6v3cpkfxd2lk5ll2jd8wr1xdskwj35smnh5sfb8xvzzxnn6dk"))))
+          "0iz40bd47xr69dsbckd6rv5ry2nqb2dp3z850q41pvpnmk6xk441"))))
     (build-system cargo-build-system)
     (arguments
      `(#:tests? #f      ; Test tarballs not included in crate.
M
M
Mekeor Melire wrote on 30 Jun 00:57 +0200
bump: make rust-cargo understand rust-edition2021 which rustc already does
(address . 54509@debbugs.gnu.org)
87bkub5b4l.fsf@posteo.de
the rust-compiler which is packaged for guix supports edition2021. but
the cargo version packaged for guix does not. that's a pity! because it
makes the cargo version packaged for guix pretty unusable as most
projects already use edition2021. can we please merge this patch so that
cargo is usable for recent rust-projects?
M
M
Maxime Devos wrote on 30 Jun 10:10 +0200
eb52fedfbd9ce41ba736c348030092f4335d70f0.camel@telenet.be
Mekeor Melire schreef op wo 29-06-2022 om 22:57 [+0000]:
Toggle quote (3 lines)
> the rust-compiler which is packaged for guix supports edition2021
> but the cargo version packaged for guix does not

Pretty sure that it does, IIRC under antioxidant-build-system I've seen
some things being compiled with the 2021 edition of rust, presumably
they also compiled under cargo-build-system.

Also, rust-cargo does not have the cargo binary (but a cargo library!),
you may be looking for the 'cargo' output of the 'rust' package
instead.

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYr1aXRccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7sKUAQCZMp8iec0bJj6cdHj5UbrTDjrm
YR1gbNJekNUzBDkwnQEAp9eqEQPu2HXATw2/nH+SMQ+3XLqw8JOwQOXqM9DKOwA=
=oZmp
-----END PGP SIGNATURE-----


M
M
Mekeor Melire wrote on 1 Jul 23:48 +0200
(name . Maxime Devos)(address . maximedevos@telenet.be)(address . 54509@debbugs.gnu.org)
87sfnk4e3j.fsf@posteo.de
2022-06-30 / 10:10 / maximedevos@telenet.be:

Toggle quote (9 lines)
> Mekeor Melire schreef op wo 29-06-2022 om 22:57 [+0000]:

> > the rust-compiler which is packaged for guix supports edition2021
> > but the cargo version packaged for guix does not
>
> Pretty sure that it does, IIRC under antioxidant-build-system I've seen
> some things being compiled with the 2021 edition of rust, presumably
> they also compiled under cargo-build-system.

i tested this again. i'll describe the issue with some instructions:

create a cargo project:

$ cargo new foo
$ cd foo

use edition 2021 instead of 2018:

$ sed -i 's/2018/2021/' Cargo.toml

attempt to build and run. you'll observe an error:

$ cargo run

> error: failed to parse manifest at `/home/user/foo/Cargo.toml`
> Caused by:
> feature `edition2021` is required
> consider adding `cargo-features = ["edition2021"]` to the manifest

specify the 2021-edition as a cargo-feature, as suggested by cargo.
and try building and running again. it'll work fine:

$ (echo 'cargo-features = ["edition2021"]' && cat Cargo.toml) | \
sponge Cargo.toml
$ cargo run

> [...]
> Hello world!

but now, let's add a package as dependency - a package which uses
edition2021. and then, try to build and run:

$ echo 'axum = "0.5.4"' >> Cargo.toml
$ cargo run

> error: failed to download `axum-core v0.2.6`
> Caused by:
> unable to get packages from source
> Caused by:
> failed to parse manifest at
> `/home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/axum-core-0.2.6/Cargo.toml`
> Caused by:
> feature `edition2021` is required
> consider adding `cargo-features = ["edition2021"]` to the manifest

TLDR: you can't build projects which depend on packages which depend on
edition2021.

Toggle quote (6 lines)
> Also, rust-cargo does not have the cargo binary (but a cargo library!),
> you may be looking for the 'cargo' output of the 'rust' package
> instead.
>
> Greetings,
> Maxime.
T
T
Tobias Geerinckx-Rice wrote on 2 Jul 13:27 +0200
Re: [bug#54509] bump: make rust-cargo underst and rust-edition2021 which rustc already does
(address . 54509@debbugs.gnu.org)
2CEC1F61-FC4D-4E59-BFCF-6698380038A6@tobias.gr
Hi,

λ cargo new foo
Created binary (application) `foo` package
λ cd foo
λ cargo run
λ sed -i 's/2018/2021/' Cargo.toml
λ cargo run
Compiling foo v0.1.0 (/home/nckx/c/foo)
Finished dev [unoptimized + debuginfo] target(s) in 1.11s
Running `target/debug/foo`
Hello, world!
λ echo 'axum = "0.5.4"' >> Cargo.toml
λ cargo run
[...]
Downloaded httpdate v1.0.2
Compiling foo v0.1.0 (/home/nckx/c/foo)
Finished dev [unoptimized + debuginfo] target(s) in 54.46s
Running `target/debug/foo`
Hello, world!

Did you read the entirety of Maxime's reply? How are you controlling your environment?

Kind regards,

T G-R

Sent on the go. Excuse or enjoy my brevity.
T
T
Tobias Geerinckx-Rice wrote on 2 Jul 13:35 +0200
(address . 54509@debbugs.gnu.org)
80250AB2-5494-44CE-B234-943A314AE963@tobias.gr
Could you be using a recent rust with an older rust:cargo installed in an 'underlying' profile (e.g., your system profile), for example?

Kind regards,

T G-R

Sent on the go. Excuse or enjoy my brevity.
M
M
Mekeor Melire wrote on 6 Jul 16:06 +0200
Re: [bug#54509] bump: make rust-cargo understand rust-edition2021 which rustc already does
(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)
87edyybaaj.fsf@posteo.de
thank you both. and sorry for falsly bumping the ticket!

i think i was missing the rust:cargo package/output. i solved my issue
with the following steps, but i'm not sure which steps were essential:

$ rm -rf ~/.cargo
$ guix package -r rust rust-cargo
$ unset RUSTC_BOOTSTRAP
$ guix package -i rust:out rust:cargo

kind regards
mekeor



2022-07-02 / 11:35 / me@tobias.gr:

Toggle quote (5 lines)
> Could you be using a recent rust with an older rust:cargo installed in
> an 'underlying' profile (e.g., your system profile), for example?
>
> Kind regards,
> T G-R
?