【发布时间】:2020-06-15 20:35:58
【问题描述】:
我有一个项目使用 Rust nightly 和 logos 0.11.4 作为依赖项。当我运行cargo build 时,我得到了
error: failed to download `logos v0.11.4`
Caused by:
unable to get packages from source
Caused by:
failed to parse manifest at `C:\Users\jonat\.cargo\registry\src\github.com-1ecc6299db9ec823\logos-0.11.4\Cargo.toml`
Caused by:
readme file with name '../README.md' was not found
事实证明,logos 有一个名为 logos-derive 的嵌套包,并且该项目的 Cargo.toml 具有 readme = "../README.md" 行。换句话说,它指向父目录中的 README。但是,Cargo 源注册表将logos-0-11.4 和logos-derive-0.11.5 目录放在同一级别,而不是嵌套它们,这就解释了为什么找不到文件。我实际上可以通过创建一个空的.cargo/registry/src/github.com-1ecc6299db9ec823/README.md 来构建它。但这显然不是一个令人满意的长期解决方案。
请注意,我在两天前(2020-06-11)能够构建得很好,但是尽管当时没有对徽标或徽标派生进行任何更改,但我现在无法构建 - 即使在之后从那时起检查我的项目并将我的工具链降级到nightly-2020-06-11。我不确定这怎么可能,或者我的构建过程发生了什么变化。
是我做错了什么,logos-derive 做错了什么,还是 Cargo 最近改变了什么?谁有合适的解决方案?
【问题讨论】:
标签: rust rust-cargo