Skip to content

Can't build cargo-c due to dependency problems in cargo #15387

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
sergio-costas opened this issue Apr 4, 2025 · 4 comments · Fixed by #15397
Closed

Can't build cargo-c due to dependency problems in cargo #15387

sergio-costas opened this issue Apr 4, 2025 · 4 comments · Fixed by #15397
Labels
C-bug Category: bug S-triage Status: This issue is waiting on initial triage.

Comments

@sergio-costas
Copy link

sergio-costas commented Apr 4, 2025

Problem

Can't do a bootstrap, because it returns an error when building cargo-c. It returns a compiling error. Seems to be either a bug in cargo's dependencies, not being strict enough, or one of the dependencies breaking the API without updating versions accordingly. This is the full output:

cargo install cargo-c

Updating crates.io index
Downloaded cargo-c v0.10.11+cargo-0.86.0
Downloaded 1 crate (57.2 KB) in 0.13s
Installing cargo-c v0.10.11+cargo-0.86.0
Updating crates.io index
Locking 377 packages to latest compatible versions
Adding cargo v0.86.0 (available: v0.87.0)
Downloaded adler2 v2.0.0
Downloaded anstyle-parse v0.2.6
Downloaded annotate-snippets v0.11.5
Downloaded anstyle v1.0.10
Downloaded colorchoice v1.0.3
Downloaded anstyle-query v1.1.2
Downloaded percent-encoding v2.3.1
Downloaded ahash v0.8.11
Downloaded parking_lot_core v0.9.10
Downloaded equivalent v1.0.2
Downloaded pathdiff v0.2.3
Downloaded pin-project-lite v0.2.16
Downloaded matchers v0.1.0
Downloaded gix-discover v0.37.0
Downloaded num-conv v0.1.0
Downloaded maybe-async v0.2.10
Downloaded gix-features v0.39.1
Downloaded nu-ansi-term v0.46.0
Downloaded ordered-float v2.10.1
Downloaded zeroize v1.8.1
Downloaded shell-escape v0.1.5
Downloaded gix-negotiate v0.17.0
Downloaded tinyvec_macros v0.1.1
Downloaded git2 v0.19.0
Downloaded terminal_size v0.4.2
Downloaded icu_locid_transform v1.5.0
Downloaded libloading v0.8.6
Downloaded gix-ref v0.49.1
Downloaded thiserror-impl v1.0.69
Downloaded memoffset v0.9.1
Downloaded gix-url v0.28.2
Downloaded log v0.4.27
Downloaded gix-traverse v0.43.1
Downloaded thiserror-impl v2.0.12
Downloaded implib v0.3.5
Downloaded ignore v0.4.23
Downloaded gix-transport v0.44.0
Downloaded zerofrom v0.1.6
Downloaded is_terminal_polyfill v1.70.1
Downloaded gix-fs v0.12.1
Downloaded gix-glob v0.17.1
Downloaded idna_adapter v1.2.0
Downloaded is_executable v1.0.4
Downloaded icu_provider v1.5.0
Downloaded yoke-derive v0.7.5
Downloaded socket2 v0.5.9
Downloaded gix-lock v15.0.1
Downloaded gix-validate v0.9.3
Downloaded gix-utils v0.1.14
Downloaded gix-protocol v0.47.0
Downloaded gix-index v0.37.0
Downloaded icu_collections v1.5.0
Downloaded miniz_oxide v0.8.5
Downloaded libssh2-sys v0.3.1
Downloaded lazy_static v1.5.0
Downloaded icu_normalizer v1.5.0
Downloaded zerocopy v0.7.35
Downloaded rusqlite v0.32.1
Downloaded minimal-lexical v0.2.1
Downloaded indexmap v2.8.0
Downloaded im-rc v15.1.0
Downloaded unicode-width v0.2.0
Downloaded openssl-sys v0.9.106
Downloaded syn v2.0.100
Downloaded nom v7.1.3
Downloaded winnow v0.6.26
Downloaded rustix v0.38.44
Downloaded winnow v0.7.4
Downloaded itertools v0.14.0
Downloaded itertools v0.13.0
Downloaded orion v0.17.9
Downloaded idna v1.0.3
Downloaded icu_properties_data v1.5.1
Downloaded regex-automata v0.4.9
Downloaded object v0.36.7
Downloaded zerocopy v0.8.24
Downloaded hashbrown v0.15.2
Downloaded rustix v1.0.5
Downloaded regex-syntax v0.8.5
Downloaded regex-syntax v0.6.29
Downloaded regex v1.11.1
Downloaded memchr v2.7.4
Downloaded tracing-subscriber v0.3.19
Downloaded hashlink v0.9.1
Downloaded globset v0.4.16
Downloaded time v0.3.41
Downloaded serde_json v1.0.140
Downloaded p384 v0.13.1
Downloaded group v0.13.0
Downloaded gix-pathspec v0.8.1
Downloaded gix-pack v0.56.0
Downloaded libc v0.2.171
Downloaded gix-path v0.10.14
Downloaded gix-packetline-blocking v0.18.2
Downloaded gix-packetline v0.18.3
Downloaded libz-sys v1.1.22
Downloaded unicode-normalization v0.1.24
Downloaded regex-automata v0.1.10
Downloaded url v2.5.4
Downloaded prodash v29.0.1
Downloaded jiff v0.1.29
Downloaded pasetors v0.7.2
Downloaded typenum v1.18.0
Downloaded toml_edit v0.22.24
Downloaded ryu v1.0.20
Downloaded rand v0.8.5
Downloaded hkdf v0.12.4
Downloaded libnghttp2-sys v0.1.11+1.64.0
Downloaded tracing-core v0.1.33
Downloaded tracing v0.1.41
Downloaded serde v1.0.219
Downloaded cargo v0.86.0
Downloaded gix-odb v0.66.0
Downloaded glob v0.3.2
Downloaded gix-worktree v0.38.0
Downloaded kstring v2.0.2
Downloaded jobserver v0.1.33
Downloaded itoa v1.0.15
Downloaded hashbrown v0.14.5
Downloaded linux-raw-sys v0.4.15
Downloaded toml v0.8.20
Downloaded sharded-slab v0.1.7
Downloaded serde_derive v1.0.219
Downloaded curl-sys v0.4.80+curl-8.12.1
Downloaded tinyvec v1.9.0
Downloaded tar v0.4.44
Downloaded quote v1.0.40
Downloaded icu_properties v1.5.1
Downloaded icu_normalizer_data v1.5.1
Downloaded libdbus-sys v0.2.5
Downloaded proc-macro2 v1.0.94
Downloaded icu_provider_macros v1.5.0
Downloaded gix-object v0.46.1
Downloaded yoke v0.7.5
Downloaded unicode-ident v1.0.18
Downloaded zerofrom-derive v0.1.6
Downloaded linux-raw-sys v0.9.3
Downloaded libgit2-sys v0.17.0+1.8.1
Downloaded utf16_iter v1.0.5
Downloaded unicode-xid v0.2.6
Downloaded tracing-attributes v0.1.28
Downloaded tempfile v3.19.1
Downloaded sized-chunks v0.6.5
Downloaded primeorder v0.13.6
Downloaded gix-ignore v0.12.1
Downloaded gix-hashtable v0.6.0
Downloaded gix-hash v0.15.1
Downloaded overload v0.1.1
Downloaded once_cell v1.21.3
Downloaded lazycell v1.3.0
Downloaded tinystr v0.7.6
Downloaded time-macros v0.2.22
Downloaded smallvec v1.14.0
Downloaded pkcs8 v0.10.2
Downloaded writeable v0.5.5
Downloaded write16 v1.0.0
Downloaded walkdir v2.5.0
Downloaded os_info v3.10.0
Downloaded openssl-probe v0.1.6
Downloaded opener v0.7.2
Downloaded lock_api v0.4.12
Downloaded zerovec v0.10.4
Downloaded encoding_rs v0.8.35
Downloaded gix-submodule v0.16.0
Downloaded ppv-lite86 v0.2.21
Downloaded sha2 v0.10.8
Downloaded semver v1.0.26
Downloaded gix-trace v0.1.12
Downloaded gix-tempfile v15.0.0
Downloaded zerovec-derive v0.10.3
Downloaded unicode-bom v2.0.3
Downloaded tracing-log v0.2.0
Downloaded thiserror v2.0.12
Downloaded strsim v0.11.1
Downloaded spki v0.7.3
Downloaded sec1 v0.7.3
Downloaded scopeguard v1.2.0
Downloaded same-file v1.0.6
Downloaded rustc-hash v2.1.1
Downloaded utf8_iter v1.0.4
Downloaded thread_local v1.1.8
Downloaded synstructure v0.13.1
Downloaded serde_ignored v0.1.11
Downloaded rustc-stable-hash v0.1.2
Downloaded gix-prompt v0.9.1
Downloaded memmap2 v0.9.5
Downloaded litemap v0.7.5
Downloaded utf8parse v0.2.2
Downloaded bstr v1.11.3
Downloaded version_check v0.9.5
Downloaded unicase v2.8.1
Downloaded typeid v1.0.3
Downloaded tracing-chrome v0.7.2
Downloaded toml_datetime v0.6.8
Downloaded time-core v0.1.4
Downloaded thiserror v1.0.69
Downloaded supports-hyperlinks v3.1.0
Downloaded static_assertions v1.1.0
Downloaded rustfix v0.9.0
Downloaded rfc6979 v0.4.0
Downloaded powerfmt v0.2.0
Downloaded gix v0.69.1
Downloaded cbindgen v0.28.0
Downloaded signature v2.2.0
Downloaded shell-words v1.1.0
Downloaded sha1_smol v1.0.1
Downloaded sha1 v0.10.6
Downloaded serde_spanned v0.6.8
Downloaded serde-value v0.7.0
Downloaded serde-untagged v0.1.7
Downloaded rand_core v0.6.4
Downloaded subtle v2.6.1
Downloaded stable_deref_trait v1.2.0
Downloaded shlex v1.3.0
Downloaded rand_xoshiro v0.6.0
Downloaded rand_chacha v0.3.1
Downloaded pkg-config v0.3.32
Downloaded icu_locid_transform_data v1.5.1
Downloaded icu_locid v1.5.0
Downloaded http-auth v0.1.10
Downloaded hmac v0.12.1
Downloaded humantime v2.2.0
Downloaded home v0.5.11
Downloaded hex v0.4.3
Downloaded heck v0.5.0
Downloaded heck v0.4.1
Downloaded gix-shallow v0.1.0
Downloaded gix-sec v0.10.11
Downloaded gix-revwalk v0.17.0
Downloaded gix-revision v0.31.1
Downloaded gix-refspec v0.27.0
Downloaded gix-quote v0.4.15
Downloaded vcpkg v0.2.15
Downloaded supports-unicode v3.0.0
Downloaded fiat-crypto v0.2.9
Downloaded blake3 v1.8.1
Downloaded clap_builder v4.5.35
Downloaded aho-corasick v1.1.3
Downloaded dbus v0.9.7
Downloaded curl v0.4.47
Downloaded anstream v0.6.18
Downloaded num-traits v0.2.19
Downloaded gix-command v0.4.1
Downloaded flate2 v1.1.1
Downloaded der v0.7.9
Downloaded crypto-bigint v0.5.5
Downloaded crossbeam-channel v0.5.14
Downloaded cc v1.2.17
Downloaded bytes v1.10.1
Downloaded base64 v0.22.1
Downloaded anyhow v1.0.97
Downloaded gix-config v0.42.0
Downloaded fallible-iterator v0.3.0
Downloaded elliptic-curve v0.13.8
Downloaded clap_lex v0.7.4
Downloaded block-buffer v0.10.4
Downloaded arrayref v0.3.9
Downloaded arc-swap v1.7.1
Downloaded parking_lot v0.12.3
Downloaded gix-dir v0.11.0
Downloaded gix-diff v0.49.0
Downloaded gix-credentials v0.26.0
Downloaded getrandom v0.3.2
Downloaded getrandom v0.2.15
Downloaded erased-serde v0.4.6
Downloaded ecdsa v0.16.9
Downloaded displaydoc v0.2.5
Downloaded crossbeam-utils v0.8.21
Downloaded crossbeam-epoch v0.9.18
Downloaded const-oid v0.9.6
Downloaded clap_derive v4.5.32
Downloaded clap_complete v4.5.47
Downloaded libsqlite3-sys v0.30.1
Downloaded clap v4.5.35
Downloaded cargo-credential-libsecret v0.4.12
Downloaded bitflags v2.9.0
Downloaded base64ct v1.7.3
Downloaded arrayvec v0.7.6
Downloaded foldhash v0.1.5
Downloaded either v1.15.0
Downloaded ed25519-compact v2.1.1
Downloaded crc32fast v1.4.2
Downloaded color-print v0.3.7
Downloaded cargo-util-schemas v0.7.3
Downloaded cargo-util v0.2.19
Downloaded cargo-credential v0.4.8
Downloaded base16ct v0.2.0
Downloaded allocator-api2 v0.2.21
Downloaded gix-filter v0.16.0
Downloaded gix-date v0.9.3
Downloaded gix-config-value v0.14.11
Downloaded gix-commitgraph v0.25.1
Downloaded gix-chunk v0.4.11
Downloaded gix-attributes v0.23.1
Downloaded gix-actor v0.33.2
Downloaded generic-array v0.14.7
Downloaded form_urlencoded v1.2.1
Downloaded fnv v1.0.7
Downloaded filetime v0.2.25
Downloaded ff v0.13.1
Downloaded digest v0.10.7
Downloaded deranged v0.4.1
Downloaded faster-hex v0.9.0
Downloaded fallible-streaming-iterator v0.1.9
Downloaded errno v0.3.10
Downloaded ct-codecs v1.1.3
Downloaded crossbeam-deque v0.8.6
Downloaded cpufeatures v0.2.17
Downloaded color-print-proc-macro v0.3.7
Downloaded clru v0.6.2
Downloaded bytesize v1.3.3
Downloaded bitmaps v2.1.0
Downloaded autocfg v1.4.0
Downloaded fastrand v2.3.0
Downloaded crypto-common v0.1.6
Downloaded crates-io v0.40.9
Downloaded constant_time_eq v0.3.1
Downloaded cfg-if v1.0.0
Downloaded cargo-platform v0.2.0
Downloaded pem-rfc7468 v0.7.0
Downloaded git2-curl v0.20.0
Downloaded gix-bitmap v0.2.14
Downloaded 322 crates (40.8 MB) in 2.03s (largest was libsqlite3-sys at 5.1 MB)
Compiling proc-macro2 v1.0.94
Compiling libc v0.2.171
Compiling unicode-ident v1.0.18
Compiling cfg-if v1.0.0
Compiling shlex v1.3.0
Compiling memchr v2.7.4
Compiling pkg-config v0.3.32
Compiling vcpkg v0.2.15
Compiling serde v1.0.219
Compiling regex-syntax v0.8.5
Compiling once_cell v1.21.3
Compiling thiserror v2.0.12
Compiling autocfg v1.4.0
Compiling version_check v0.9.5
Compiling smallvec v1.14.0
Compiling log v0.4.27
Compiling crossbeam-utils v0.8.21
Compiling fastrand v2.3.0
Compiling gix-trace v0.1.12
Compiling bitflags v2.9.0
Compiling parking_lot_core v0.9.10
Compiling scopeguard v1.2.0
Compiling tinyvec_macros v0.1.1
Compiling crc32fast v1.4.2
Compiling same-file v1.0.6
Compiling adler2 v2.0.0
Compiling bytes v1.10.1
Compiling tinyvec v1.9.0
Compiling lock_api v0.4.12
Compiling walkdir v2.5.0
Compiling miniz_oxide v0.8.5
Compiling sha1_smol v1.0.1
Compiling itoa v1.0.15
Compiling home v0.5.11
Compiling aho-corasick v1.1.3
Compiling ahash v0.8.11
Compiling zerocopy v0.7.35
Compiling quote v1.0.40
Compiling typenum v1.18.0
Compiling rustix v1.0.5
Compiling crossbeam-channel v0.5.14
Compiling syn v2.0.100
Compiling jobserver v0.1.33
Compiling allocator-api2 v0.2.21
Compiling linux-raw-sys v0.9.3
Compiling zeroize v1.8.1
Compiling cc v1.2.17
Compiling unicode-normalization v0.1.24
Compiling parking_lot v0.12.3
Compiling stable_deref_trait v1.2.0
Compiling jiff v0.1.29
Compiling winnow v0.6.26
Compiling getrandom v0.3.2
Compiling generic-array v0.14.7
Compiling hashbrown v0.14.5
Compiling prodash v29.0.1
Compiling litemap v0.7.5
Compiling subtle v2.6.1
Compiling icu_locid_transform_data v1.5.1
Compiling writeable v0.5.5
Compiling memmap2 v0.9.5
Compiling const-oid v0.9.6
Compiling icu_properties_data v1.5.1
Compiling icu_normalizer_data v1.5.1
Compiling getrandom v0.2.15
Compiling regex-automata v0.4.9
Compiling write16 v1.0.0
Compiling utf8_iter v1.0.4
Compiling utf16_iter v1.0.5
Compiling percent-encoding v2.3.1
Compiling rand_core v0.6.4
Compiling base64ct v1.7.3
Compiling rustix v0.38.44
Compiling unicode-bom v2.0.3
Compiling serde_json v1.0.140
Compiling form_urlencoded v1.2.1
Compiling linux-raw-sys v0.4.15
Compiling gix-sec v0.10.11
Compiling crypto-common v0.1.6
Compiling block-buffer v0.10.4
Compiling pem-rfc7468 v0.7.0
Compiling digest v0.10.7
Compiling foldhash v0.1.5
Compiling ryu v1.0.20
Compiling static_assertions v1.1.0
Compiling kstring v2.0.2
Compiling der v0.7.9
Compiling hmac v0.12.1
Compiling hashbrown v0.15.2
Compiling libz-sys v1.1.22
Compiling openssl-sys v0.9.106
Compiling libnghttp2-sys v0.1.11+1.64.0
Compiling curl-sys v0.4.80+curl-8.12.1
Compiling libssh2-sys v0.3.1
Compiling equivalent v1.0.2
Compiling curl v0.4.47
Compiling flate2 v1.1.1
Compiling tempfile v3.19.1
Compiling shell-words v1.1.0
Compiling openssl-probe v0.1.6
Compiling indexmap v2.8.0
Compiling ff v0.13.1
Compiling socket2 v0.5.9
Compiling filetime v0.2.25
Compiling spki v0.7.3
Compiling tracing-core v0.1.33
Compiling pkcs8 v0.10.2
Compiling base16ct v0.2.0
Compiling group v0.13.0
Compiling sec1 v0.7.3
Compiling hkdf v0.12.4
Compiling libgit2-sys v0.17.0+1.8.1
Compiling crypto-bigint v0.5.5
Compiling synstructure v0.13.1
Compiling num-traits v0.2.19
Compiling zerocopy v0.8.24
Compiling thiserror v1.0.69
Compiling anyhow v1.0.97
Compiling cpufeatures v0.2.17
Compiling pin-project-lite v0.2.16
Compiling anstyle v1.0.10
Compiling utf8parse v0.2.2
Compiling typeid v1.0.3
Compiling powerfmt v0.2.0
Compiling anstyle-parse v0.2.6
Compiling colorchoice v1.0.3
Compiling bstr v1.11.3
Compiling num-conv v0.1.0
Compiling winnow v0.7.4
Compiling is_terminal_polyfill v1.70.1
Compiling fnv v1.0.7
Compiling time-core v0.1.4
Compiling regex-syntax v0.6.29
Compiling anstyle-query v1.1.2
Compiling anstream v0.6.18
Compiling regex v1.11.1
Compiling gix-utils v0.1.14
Compiling serde_derive v1.0.219
Compiling thiserror-impl v2.0.12
Compiling zerofrom-derive v0.1.6
Compiling yoke-derive v0.7.5
Compiling zerovec-derive v0.10.3
Compiling displaydoc v0.2.5
Compiling icu_provider_macros v1.5.0
Compiling tracing-attributes v0.1.28
Compiling elliptic-curve v0.13.8
Compiling thiserror-impl v1.0.69
Compiling regex-automata v0.1.10
Compiling gix-path v0.10.14
Compiling gix-date v0.9.3
Compiling zerofrom v0.1.6
Compiling yoke v0.7.5
Compiling gix-validate v0.9.3
Compiling zerovec v0.10.4
Compiling gix-actor v0.33.2
Compiling gix-chunk v0.4.11
Compiling gix-quote v0.4.15
Compiling gix-config-value v0.14.11
Compiling gix-command v0.4.1
Compiling gix-bitmap v0.2.14
Compiling tracing v0.1.41
Compiling sha2 v0.10.8
Compiling gix-prompt v0.9.1
Compiling terminal_size v0.4.2
Compiling rfc6979 v0.4.0
Compiling libsqlite3-sys v0.30.1
Compiling signature v2.2.0
Compiling crossbeam-epoch v0.9.18
Compiling tinystr v0.7.6
Compiling icu_collections v1.5.0
Compiling base64 v0.22.1
Compiling icu_locid v1.5.0
Compiling overload v0.1.1
Compiling clru v0.6.2
Compiling strsim v0.11.1
Compiling semver v1.0.26
Compiling clap_lex v0.7.4
Compiling heck v0.5.0
Compiling minimal-lexical v0.2.1
Compiling lazy_static v1.5.0
Compiling clap_derive v4.5.32
Compiling sharded-slab v0.1.7
Compiling clap_builder v4.5.35
Compiling nu-ansi-term v0.46.0
Compiling icu_provider v1.5.0
Compiling nom v7.1.3
Compiling ppv-lite86 v0.2.21
Compiling icu_locid_transform v1.5.0
Compiling crossbeam-deque v0.8.6
Compiling ecdsa v0.16.9
Compiling tar v0.4.44
Compiling icu_properties v1.5.1
Compiling matchers v0.1.0
Compiling primeorder v0.13.6
Compiling ordered-float v2.10.1
Compiling maybe-async v0.2.10
Compiling globset v0.4.16
Compiling tracing-log v0.2.0
Compiling blake3 v1.8.1
Compiling bitmaps v2.1.0
Compiling memoffset v0.9.1
Compiling im-rc v15.1.0
Compiling thread_local v1.1.8
Compiling encoding_rs v0.8.35
Compiling faster-hex v0.9.0
Compiling deranged v0.4.1
Compiling toml_datetime v0.6.8
Compiling serde_spanned v0.6.8
Compiling gix-hash v0.15.1
Compiling gix-packetline v0.18.3
Compiling toml_edit v0.22.24
Compiling gix-packetline-blocking v0.18.2
Compiling gix-features v0.39.1
Compiling gix-hashtable v0.6.0
Compiling erased-serde v0.4.6
Compiling fiat-crypto v0.2.9
Compiling gix-object v0.46.1
Compiling gix-fs v0.12.1
Compiling gix-tempfile v15.0.0
Compiling icu_normalizer v1.5.0
Compiling gix-commitgraph v0.25.1
Compiling gix-lock v15.0.1
Compiling gix-glob v0.17.1
Compiling idna_adapter v1.2.0
Compiling gix-revwalk v0.17.0
Compiling idna v1.0.3
Compiling gix-attributes v0.23.1
Compiling gix-ref v0.49.1
Compiling gix-traverse v0.43.1
Compiling url v2.5.4
Compiling gix-revision v0.31.1
Compiling gix-index v0.37.0
Compiling gix-url v0.28.2
Compiling gix-refspec v0.27.0
Compiling gix-pathspec v0.8.1
Compiling gix-credentials v0.26.0
Compiling gix-ignore v0.12.1
Compiling time v0.3.41
Compiling gix-worktree v0.38.0
Compiling gix-transport v0.44.0
Compiling gix-config v0.42.0
Compiling gix-discover v0.37.0
Compiling toml v0.8.20
Compiling gix-negotiate v0.17.0
Compiling gix-pack v0.56.0
Compiling gix-shallow v0.1.0
Compiling either v1.15.0
Compiling object v0.36.7
Compiling arc-swap v1.7.1
Compiling gix-protocol v0.47.0
Compiling gix-dir v0.11.0
Compiling gix-filter v0.16.0
Compiling gix-diff v0.49.0
Compiling orion v0.17.9
Compiling cargo-credential v0.4.8
Compiling gix-odb v0.66.0
Compiling gix-submodule v0.16.0
Compiling serde-untagged v0.1.7
Compiling clap v4.5.35
Compiling sized-chunks v0.6.5
Compiling tracing-subscriber v0.3.19
Compiling serde-value v0.7.0
Compiling ignore v0.4.23
Compiling color-print-proc-macro v0.3.7
Compiling cargo v0.86.0
Compiling p384 v0.13.1
Compiling rand_chacha v0.3.1
Compiling rand_xoshiro v0.6.0
Compiling ed25519-compact v2.1.1
Compiling hashlink v0.9.1
Compiling libloading v0.8.6
Compiling arrayvec v0.7.6
Compiling fallible-streaming-iterator v0.1.9
Compiling ct-codecs v1.1.3
Compiling shell-escape v0.1.5
Compiling unicode-xid v0.2.6
Compiling cbindgen v0.28.0
Compiling unicode-width v0.2.0
Compiling constant_time_eq v0.3.1
Compiling arrayref v0.3.9
Compiling is_executable v1.0.4
Compiling hex v0.4.3
Compiling fallible-iterator v0.3.0
Compiling clap_complete v4.5.47
Compiling annotate-snippets v0.11.5
Compiling cargo-util-schemas v0.7.3
Compiling cargo-util v0.2.19
Compiling pasetors v0.7.2
Compiling cargo-credential-libsecret v0.4.12
Compiling color-print v0.3.7
Compiling rand v0.8.5
Compiling tracing-chrome v0.7.2
Compiling gix v0.69.1
Compiling itertools v0.13.0
Compiling crates-io v0.40.9
Compiling rustfix v0.9.0
Compiling serde_ignored v0.1.11
Compiling cargo-platform v0.2.0
Compiling opener v0.7.2
Compiling sha1 v0.10.6
Compiling http-auth v0.1.10
Compiling os_info v3.10.0
Compiling pathdiff v0.2.3
Compiling supports-hyperlinks v3.1.0
Compiling bytesize v1.3.3
Compiling rustc-stable-hash v0.1.2
Compiling glob v0.3.2
Compiling supports-unicode v3.0.0
Compiling heck v0.4.1
Compiling humantime v2.2.0
Compiling unicase v2.8.1
Compiling lazycell v1.3.0
Compiling rustc-hash v2.1.1
Compiling implib v0.3.5
Compiling itertools v0.14.0
Compiling git2 v0.19.0
Compiling git2-curl v0.20.0
Compiling rusqlite v0.32.1
error[E0277]: std::option::Option<PackageName> doesn't implement std::fmt::Display
--> /home/raster/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cargo-0.86.0/src/cargo/util/toml/targets.rs:120:13
|
120 | package.name
| ^^^^^^^^^^^^ std::option::Option<PackageName> cannot be formatted with the default formatter
|
= help: the trait std::fmt::Display is not implemented for std::option::Option<PackageName>
= note: in format strings you may be able to use {:?} (or {:#?} for pretty-print) instead
= note: this error originates in the macro $crate::__export::format_args which comes from the expansion of the macro format (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
--> /home/raster/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cargo-0.86.0/src/cargo/util/toml/mod.rs:334:13
|
331 | normalized_toml.lib = targets::normalize_lib(
| ---------------------- arguments to this function are incorrect
...
334 | &original_package.name,
| ^^^^^^^^^^^^^^^^^^^^^^ expected &str, found &Option<PackageName>
|
= note: expected reference &str
found reference &std::option::Option<PackageName>
note: function defined here
--> /home/raster/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cargo-0.86.0/src/cargo/util/toml/targets.rs:128:8
|
128 | pub fn normalize_lib(
| ^^^^^^^^^^^^^
...
131 | package_name: &str,
| ------------------

error[E0308]: mismatched types
--> /home/raster/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cargo-0.86.0/src/cargo/util/toml/mod.rs:342:13
|
339 | normalized_toml.bin = Some(targets::normalize_bins(
| ----------------------- arguments to this function are incorrect
...
342 | &original_package.name,
| ^^^^^^^^^^^^^^^^^^^^^^ expected &str, found &Option<PackageName>
|
= note: expected reference &str
found reference &std::option::Option<PackageName>
note: function defined here
--> /home/raster/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cargo-0.86.0/src/cargo/util/toml/targets.rs:256:8
|
256 | pub fn normalize_bins(
| ^^^^^^^^^^^^^^
...
259 | package_name: &str,
| ------------------

error[E0308]: mismatched types
--> /home/raster/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cargo-0.86.0/src/cargo/util/toml/mod.rs:389:13
|
385 | deprecated_underscore(
| --------------------- arguments to this function are incorrect
...
389 | package_name,
| ^^^^^^^^^^^^ expected &str, found &Option<PackageName>
|
= note: expected reference &str
found reference &std::option::Option<PackageName>
note: function defined here
--> /home/raster/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cargo-0.86.0/src/cargo/util/toml/mod.rs:2596:4
|
2596 | fn deprecated_underscore(
| ^^^^^^^^^^^^^^^^^^^^^
...
2600 | name: &str,
| ----------

error[E0308]: mismatched types
--> /home/raster/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cargo-0.86.0/src/cargo/util/toml/mod.rs:409:13
|
405 | deprecated_underscore(
| --------------------- arguments to this function are incorrect
...
409 | package_name,
| ^^^^^^^^^^^^ expected &str, found &Option<PackageName>
|
= note: expected reference &str
found reference &std::option::Option<PackageName>
note: function defined here
--> /home/raster/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cargo-0.86.0/src/cargo/util/toml/mod.rs:2596:4
|
2596 | fn deprecated_underscore(
| ^^^^^^^^^^^^^^^^^^^^^
...
2600 | name: &str,
| ----------

error[E0599]: no method named contains found for reference &std::option::Option<PackageName> in the current scope
--> /home/raster/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cargo-0.86.0/src/cargo/util/toml/mod.rs:1143:21
|
1143 | if package_name.contains(':') {
| ^^^^^^^^ &std::option::Option<PackageName> is not an iterator
|
help: call .into_iter() first
|
1143 | if package_name.into_iter().contains(':') {
| ++++++++++++

error[E0599]: no method named as_str found for enum std::option::Option in the current scope
--> /home/raster/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cargo-0.86.0/src/cargo/util/toml/mod.rs:1482:33
|
1482 | normalized_package.name.as_str().into(),
| ^^^^^^ method not found in Option<PackageName>
|
note: the method as_str exists on the type PackageName
--> /home/raster/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/string.rs:1081:5
|
1081 | pub const fn as_str(&self) -> &str {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
help: consider using Option::expect to unwrap the PackageName value, panicking if the value is an Option::None
|
1482 | normalized_package.name.expect("REASON").as_str().into(),
| +++++++++++++++++

Some errors have detailed explanations: E0277, E0308, E0599.
For more information about an error, try rustc --explain E0277.
error: could not compile cargo (lib) due to 7 previous errors
error: failed to compile cargo-c v0.10.11+cargo-0.86.0, intermediate artifacts can be found at /tmp/cargo-installzSdB1v.
To reuse those artifacts with a future compilation, set the environment variable CARGO_TARGET_DIR to that path.

Steps to reproduce

> curl https://sh.rustup.rs/ -sSf > cargo.sh
> ./cargo.sh -y
[...]
> . "$HOME/.cargo/env"
> ~/.cargo/bin/cargo install cargo-c

Notes

This is part of a snapcraft build recipe. It has been working fine for months, every time we rebuilt the snap, but yesterday began to fail. I tested it manually on my computer, typing the commands manually on a prompt, and failed too, when it worked fine months ago.

A workaround was commented in the cargo-c repository, consisting on adding --locked. It seems to work.

Version

cargo 1.86.0 (adf9b6ad1 2025-02-28)
@sergio-costas sergio-costas added C-bug Category: bug S-triage Status: This issue is waiting on initial triage. labels Apr 4, 2025
@sdroege
Copy link
Contributor

sdroege commented Apr 4, 2025

This also affects cargo-outdated and probably everything else depending on cargo: kbknapp/cargo-outdated#415

@weihanglo
Copy link
Member

It is probably due to: 6ec8da9 via #15168. the TomlPackage.name field has changed from non-Option to Option. This is a SemVer major change. Unfortunately, neither maintainers nor cargo-semver-checks has caught that SemVer violation.

Repro:

git switch -d origin/rust-1.86.0
cargo semver-checks -p cargo-util-schemas --baseline-version 0.7.2

@obi1kenobi I guess the tracking issue of catching type changes is obi1kenobi/cargo-semver-checks#1005?

@weihanglo
Copy link
Member

weihanglo commented Apr 4, 2025

Plan to mitigate SemVer violations:

  • Release a new [email protected] with the same source code of 0.7.3 (on rust-1.86.0 branch).
  • Release a new [email protected] that depends on [email protected] instead of 0.7.3 (on rust-1.86.0 branch)
  • Release a new [email protected] with the same source code of 0.7.2, which follows SemVer.
    • This might not be needed? A bit awkward on rust-1.86.0 we bump to 0.8.0 and then revert back to 0.7.4.
  • Yank [email protected] and [email protected].
  • On rust-1.86.0 branch, bump cargo-utils-schemas accordingly (presumably 0.8.1).
  • On rust-1.86.0 branch, bump cargo-utils-schemas accordingly (presumably 0.8.2).

See the release process: https://doc.crates.io/contrib/process/release.html#cratesio-publishing.

weihanglo added a commit to weihanglo/cargo that referenced this issue Apr 5, 2025
This is needed because a type of public field has changed
but was overlooked and was SemVer breaking.

See rust-lang#15387
Muscraft added a commit that referenced this issue Apr 5, 2025
### What does this PR try to resolve?

This is needed because a type of public field has changed
but was overlooked and was SemVer breaking.

See also

*
#15387 (comment)
* [#t-cargo > [email protected] SemVer
Violations](https://rust-lang.zulipchat.com/#narrow/channel/246057-t-cargo/topic/cargo-util-schemas.400.2E7.2E3.20SemVer.20Violations)


These commit are cherry-picked in order to make CI happy:

* 62bd1ad
* 9946566
* 251a078
@weihanglo weihanglo linked a pull request Apr 5, 2025 that will close this issue
@weihanglo
Copy link
Member

New versions are just dropped! Kudos to the Rust Release Team!

And thanks everyone for your reporting!

github-merge-queue bot pushed a commit that referenced this issue Apr 6, 2025
### What does this PR try to resolve?

This is required due to a SemVer breaking change introduced in 0.7.3.

See

* <#15387>
* <#15397>
* <#15402>
weihanglo added a commit that referenced this issue Apr 6, 2025
### What does this PR try to resolve?

This is required due to a SemVer breaking change introduced in 0.7.3.

See

* <#15387>
* <#15397>

These commits are cherry-picked in order to make CI happy:

* 62bd1ad
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Category: bug S-triage Status: This issue is waiting on initial triage.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants