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

cargo-bitbake does not honor .cargo/config.toml, and modifies my Cargo.lock

Open jaskij opened this issue 2 years ago • 3 comments

As in the title - running cargo-bitbake modifies my Cargo.lock, and removes a dependency (valuable-derive).

The issue seems to revolve around honoring the dependency chain tracing-core->valuable->valuable-derive. In tracing the support (and requirement) for valuable depends on a configuration flag (--cfg tracing_unstable). It is set in my $HOME/.cargo/config.toml, but cargo-bitbake seems to not honor it.

I can confirm that manually adding the depenency, either in my Cargo.toml, or in the generated bitbake file, fixes the build.

Overall, this is kind of weird, and raises a few questions:

  • Why is cargo-bitbake modifying Cargo.lock in the first place?
  • Why is cargo-bitbake not honoring my .cargo/config.toml settings?
  • How can this be fixed?
  • Is there any workaround?

jaskij avatar May 26 '23 07:05 jaskij

cc @eivindbergem as this may be related to #58 - both revolve around dependency resoluton

jaskij avatar May 26 '23 07:05 jaskij

@jaskij I was also surprised by this, and honestly don't really understand the intended interaction between Cargo.lock files and cargo bitbake. For my private organization, I added a quick flag that just looks at an existing Cargo.lock file and skips resolution. Here's the PR: https://github.com/meta-rust/cargo-bitbake/pull/71

Might be interesting to you!

BKDaugherty avatar Aug 31 '23 00:08 BKDaugherty

@BKDaugherty thanks! That does look interesting. Sadly, I'm already using the version from #70 because of git dependencies.

jaskij avatar Aug 31 '23 00:08 jaskij