Found a virtual manifest at instead of a package manifest

I want some local patch for cloned rust-bitcoincore-rpc repo. So changed Cargo.toml like that:

[dependencies]
bitcoincore-rpc = "0.19.0"

[patch.crates-io]
bitcoincore-rpc = { path = "rust-bitcoincore-rpc" }

but with this crate, I get following message on build:

found a virtual manifest at instead of a package manifest

because it uses manifest, I have no experience with that form of configuration, is it possible to work with this library locally or there is lot of external dependencies?

I just want to patch this file only.

A virtual manifest means the Cargo.toml for a workspace declares a workspace that is not also a package in itself. Because it isn't a package, you can't depend on it as if it were a package. Rather, the rust-bitcoincore-rpc repository declares three packages, in the directory client, json and integration-test. The package in the client directory consists of a library crate named bitcoincore-rpc, which seems to be what you are trying to depend on. So it seems the solution here is that the path should be rust-bitcoincore-rpc/client.

2 Likes

It's so simple! I spent the whole day trying everything except this path.

Thank you so much - it works now!