cargo-modules icon indicating copy to clipboard operation
cargo-modules copied to clipboard

Fails to build for Alpine Linux (0.13.0)

Open orhun opened this issue 1 year ago • 7 comments

Hello! I'm the maintainer of cargo-modules for Alpine Linux: https://pkgs.alpinelinux.org/package/edge/community/x86_64/cargo-modules

I created a merge request for updating the package to 0.13.0 but it fails due to the following error:

error[E0445]: private trait `FileIdToSyntax` in public interface
   --> /home/buildozer/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ra_ap_hir_expand-0.0.189/src/files.rs:107:1
    |
86  | trait FileIdToSyntax: Copy {
    | -------------------------- `FileIdToSyntax` declared as private
...
107 | impl<FileId: FileIdToSyntax, T> InFileWrapper<FileId, T> {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't leak private trait

I looked around but couldn't figure out why this happens. Can you take a look as well and let me know if there is anything I can do for fixing this?

Thanks!

orhun avatar Dec 16 '23 16:12 orhun

I had the same problem on Windows with rustc v1.73.0. After running rustup update, I got rustc v1.74.1. That was enough to fix it.

alef avatar Dec 20 '23 10:12 alef

ChangeLog says, "Bumped MSRV from 1.68.2 to 1.70.0" but, this doesn't look to be the case. Our (NetBSD) build servers running 1.73 fail to build binaries, while my machine running 1.74.1 has no problem.

0323pin avatar Dec 22 '23 16:12 0323pin

Looks like I was misled by the output of cargo msrv list, which made me believe 1.70.0 would be sufficient:

$ cargo msrv list

┌────────┬────────────────────────────────────────────────────────────────────────────────────────────┐
│ MSRV   ┆ Dependency                                                                                 │
╞════════╪════════════════════════════════════════════════════════════════════════════════════════════╡
│ …      ┆ …                                                                                          │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.70.0 ┆ cargo-modules, ra_ap_vfs, ra_ap_text_edit, ra_ap_syntax, ra_ap_project_model,              │
│        ┆ ra_ap_proc_macro_api, ra_ap_paths, ra_ap_load-cargo, ra_ap_ide_db, ra_ap_ide,              │
│        ┆ ra_ap_hir_ty, ra_ap_hir_def, ra_ap_hir, ra_ap_cfg, ra_ap_base_db, clap, ra_ap_stdx,        │
│        ┆ ra_ap_rustc-dependencies, ra_ap_profile, ra_ap_parser, ra_ap_toolchain, ra_ap_tt,          │
│        ┆ ra_ap_vfs-notify, ra_ap_limit, ra_ap_ide_ssr, ra_ap_ide_diagnostics, ra_ap_ide_completion, │
│        ┆ ra_ap_ide_assists, ra_ap_intern, ra_ap_hir_expand, ra_ap_mbe, ra_ap_test_utils,            │
│        ┆ clap_derive, clap_builder, clap_lex, anstyle, anstream, anstyle-wincon, anstyle-query,     │
│        ┆ anstyle-parse                                                                              │
└────────┴────────────────────────────────────────────────────────────────────────────────────────────┘
Full output
┌────────┬────────────────────────────────────────────────────────────────────────────────────────────┐
│ MSRV   ┆ Dependency                                                                                 │
╞════════╪════════════════════════════════════════════════════════════════════════════════════════════╡
│        ┆ yansi, thread_local, scopeguard, rust-analyzer-salsa-macros, rust-analyzer-salsa,          │
│        ┆ pulldown-cmark, memoffset, json, getopts, tap, cfg-if, heck, smallvec, rustc-hash,         │
│        ┆ parking_lot, oorandom, nohash-hasher, fst, text-size, triomphe, smol_str, rowan, either,   │
│        ┆ cov-mark, snap, memmap2, line-index, arrayvec, pulldown-cmark-to-cmark, dot, typed-arena,  │
│        ┆ ena, chalk-solve, chalk-recursive, chalk-ir, chalk-derive, drop_bomb, unicase, bitflags,   │
│        ┆ fixedbitset, autocfg, unicode-width, termcolor, humantime, wyz, radium, funty, winapi,     │
│        ┆ miow, libc, jod-thread, always-assert, countme, ra-ap-rustc_parse_format,                  │
│        ┆ ra-ap-rustc_lexer, ra-ap-rustc_index, ra-ap-rustc_abi, perf-event, home, cargo-platform,   │
│        ┆ camino, walkdir, lazy_static, synstructure, version_check, winapi-util, hermit-abi,        │
│        ┆ strsim, windows-targets, redox_syscall, winapi-x86_64-pc-windows-gnu,                      │
│        ┆ winapi-i686-pc-windows-gnu, unicode-properties, ra-ap-rustc_index_macros,                  │
│        ┆ perf-event-open-sys, same-file, mio, kqueue, inotify, fsevent-sys, filetime,               │
│        ┆ unicode-normalization, unicode-bidi, utf8parse, windows_x86_64_msvc,                       │
│        ┆ windows_x86_64_gnullvm, windows_x86_64_gnu, windows_i686_msvc, windows_i686_gnu,           │
│        ┆ windows_aarch64_msvc, windows_aarch64_gnullvm, wasi, kqueue-sys, inotify-sys, tinyvec,     │
│        ┆ tinyvec_macros                                                                             │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.6.0  ┆ equivalent                                                                                 │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.17.0 ┆ unicode-xid                                                                                │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.31.0 ┆ serde, semver, unicode-ident                                                               │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.36.0 ┆ ryu, itoa, dissimilar                                                                      │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.37.0 ┆ pin-project-lite                                                                           │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.38.0 ┆ crossbeam-channel, crossbeam-utils, crossbeam-deque, crossbeam-epoch                       │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.39.0 ┆ anyhow                                                                                     │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.40.0 ┆ wyz                                                                                        │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.43.1 ┆ itertools                                                                                  │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.48.0 ┆ windows-sys                                                                                │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.49.0 ┆ lock_api, parking_lot_core                                                                 │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.51.0 ┆ percent-encoding, idna, form_urlencoded                                                    │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.56.0 ┆ indoc, bitvec, syn, quote, proc-macro2, tracing, serde_json, la-arena, cargo_metadata,     │
│        ┆ url, bitflags, tracing-core, tracing-attributes, serde_derive, thiserror, thiserror-impl,  │
│        ┆ windows-sys, errno, windows-targets, windows_x86_64_msvc, windows_x86_64_gnullvm,          │
│        ┆ windows_x86_64_gnu, windows_i686_msvc, windows_i686_gnu, windows_aarch64_msvc,             │
│        ┆ windows_aarch64_gnullvm                                                                    │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.59.0 ┆ scoped-tls                                                                                 │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.60.0 ┆ log, env_logger, once_cell, object, notify, aho-corasick                                   │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.61.0 ┆ memchr                                                                                     │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.63.0 ┆ indexmap, rayon, hashbrown, is-terminal, rayon-core, rustix, linux-raw-sys                 │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.64.0 ┆ petgraph, colorchoice                                                                      │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.65.0 ┆ dashmap, regex, regex-syntax, regex-automata                                               │
├╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 1.70.0 ┆ cargo-modules, ra_ap_vfs, ra_ap_text_edit, ra_ap_syntax, ra_ap_project_model,              │
│        ┆ ra_ap_proc_macro_api, ra_ap_paths, ra_ap_load-cargo, ra_ap_ide_db, ra_ap_ide,              │
│        ┆ ra_ap_hir_ty, ra_ap_hir_def, ra_ap_hir, ra_ap_cfg, ra_ap_base_db, clap, ra_ap_stdx,        │
│        ┆ ra_ap_rustc-dependencies, ra_ap_profile, ra_ap_parser, ra_ap_toolchain, ra_ap_tt,          │
│        ┆ ra_ap_vfs-notify, ra_ap_limit, ra_ap_ide_ssr, ra_ap_ide_diagnostics, ra_ap_ide_completion, │
│        ┆ ra_ap_ide_assists, ra_ap_intern, ra_ap_hir_expand, ra_ap_mbe, ra_ap_test_utils,            │
│        ┆ clap_derive, clap_builder, clap_lex, anstyle, anstream, anstyle-wincon, anstyle-query,     │
│        ┆ anstyle-parse                                                                              │
└────────┴────────────────────────────────────────────────────────────────────────────────────────────┘
$ cargo msrv show

1.70.0

But evidently that's not the case:

$ cargo msrv verify                                                                             (base) 

Fetching index
Verifying the Minimum Supported Rust Version (MSRV) for toolchain x86_64-apple-darwin
Using check command cargo check
   Done Bad check for 1.70.0      ████████████████████████████████████████████████████████████ 00:00:03
   Failed check command cargo check didn't succeed
Crate source was found to be incompatible with its MSRV '1.70.0', as defined in '…/cargo-modules/Cargo.toml'

I've added a CI check for MSRV (#250) and will be publishing a fix on crates.io shortly.

Thanks for your feedback everybody!

regexident avatar Dec 26 '23 22:12 regexident

Thanks for looking into it and the fix!

orhun avatar Dec 27 '23 11:12 orhun

The fix (🤞 ) should be up now as 0.13.2. Would be great if you folks could let me know if it resolves the issue.

regexident avatar Dec 27 '23 13:12 regexident

Would be great if you folks could let me know if it resolves the issue.

NetBSD won't be on 1.74.x for another week. It builds fine on my machine but the package can not be updated yet.

0323pin avatar Dec 27 '23 23:12 0323pin

For Alpine it is the same. The package update is pending until 1.74.x available basically.

orhun avatar Dec 28 '23 10:12 orhun

@orhun am I right to assume that this issue had successfully been resolved by the 0.13.2 release?

regexident avatar Jul 23 '24 11:07 regexident

true sir!

orhun avatar Jul 25 '24 08:07 orhun