Litecraft icon indicating copy to clipboard operation
Litecraft copied to clipboard

Dependency build failure

Open PureTryOut opened this issue 6 years ago โ€ข 4 comments

Using the latest nightly (just updated a few minutes before making this issue) some dependency fails to compile. This seems to happen in rhai-0.9.0 but I'm not entirely sure.

Expected Behavior ๐Ÿค”

Successful compilation.

Current Behavior ๐Ÿ˜”

~/Git/litecraft  master โœ”                                                                                                       31d  
โ–ถ cargo run    
   Compiling cc v1.0.29
   Compiling arrayvec v0.4.10
   Compiling semver-parser v0.7.0
   Compiling nodrop v0.1.13
   [ ... ]
   Compiling rhai v0.9.0
   [ ... ]
error[E0034]: multiple applicable items in scope
  --> /home/bart/.cargo/registry/src/github.com-1ecc6299db9ec823/rhai-0.9.0/src/any.rs:40:26
   |
40 |         let boxed = self.type_id();
   |                          ^^^^^^^ multiple `type_id` found
   |
note: candidate #1 is defined in the trait `any::Any`
  --> /home/bart/.cargo/registry/src/github.com-1ecc6299db9ec823/rhai-0.9.0/src/any.rs:5:5
   |
5  |     fn type_id(&self) -> TypeId;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   = help: to disambiguate the method call, write `any::Any::type_id(&self)` instead
note: candidate #2 is defined in the trait `std::any::Any`
   = help: to disambiguate the method call, write `std::any::Any::type_id(&self)` instead

   [ ... ]
error: aborting due to previous error

For more information about this error, try `rustc --explain E0034`.
error: Could not compile `rhai`.
warning: build failed, waiting for other jobs to finish...
error: build failed

Steps to Reproduce ๐Ÿ˜ฑ

  1. Update your Rust to the latest nighly (can be done easily via Rustup)
  2. Run cargo build or cargo run
  3. ???
  4. Build failure

Context (Environment) ๐Ÿคจ

I'm just trying to compile the project for the first time. This is a clean git clone.

PureTryOut avatar Feb 19 '19 14:02 PureTryOut

I can reproduce this issue as well ;)

Mis012 avatar Feb 20 '19 13:02 Mis012

@PureTryOut I have no Rust experience, but this compiles:

let boxed = self.type_id(); -- vvv --- let boxed = Any::type_id(self);

Mis012 avatar Feb 20 '19 13:02 Mis012

Thanks for reporting! We will upload a fix soon

KernelFreeze avatar Feb 22 '19 18:02 KernelFreeze

0.9.0 is a very old version of rhai (an embedded scripting language and evaluation engine for Rust) by now, this appears to be fixed by rhai 0.19.8, updating in Cargo.toml:

-rhai = "0.9.0"
+rhai = "0.19.8"

though then compilation fails with https://github.com/KernelFreeze/Litecraft/issues/23

iceiix avatar Dec 28 '20 21:12 iceiix