avhz / RustQuant

Rust library for quantitative finance.
https://avhz.github.io
Apache License 2.0
1.15k stars 134 forks source link

Run a simple example error[E0599] #271

Closed flhred closed 1 month ago

flhred commented 1 month ago

Describe the bug

I just init a project and try to run a example:

cargo init
cargo add RustQuant
cargo run --example yahoo_finance

got this error

error[E0599]: no method named raw_table_mut found for struct hashbrown::HashMap in the current scope

--> /home/allen/.cargo/registry/src/index.crates.io-6f17d22bba15001f/polars-core-0.41.3/src/chunked_array/builder/list/categorical.rs

kjura commented 1 month ago

Same thing for me. It might be related to this Polars issue -> error[E0599]: no method named raw_table_mut found for struct hashbrown::HashMap in the current scope

Disclaimer: [.....] before .cargo is me shortening the output :D

error[E0599]: no method named `raw_table_mut` found for struct `hashbrown::HashMap` in the current scope
   --> [.....].cargo\registry\src\index.crates.io-6f17d22bba15001f\polars-core-0.43.1\src\chunked_array\builder\list\categorical.rs:145:33
    |
145 |                 self.idx_lookup.raw_table_mut().find_or_find_insert_slot(
    |                                 ^^^^^^^^^^^^^ method not found in `HashMap<KeyWrapper, (), RandomState>`

error[E0599]: no method named `raw_table_mut` found for struct `hashbrown::HashMap` in the current scope
   --> [.....].cargo\registry\src\index.crates.io-6f17d22bba15001f\polars-core-0.43.1\src\chunked_array\builder\list\categorical.rs:164:41
    |
164 |                         self.idx_lookup.raw_table_mut().insert_in_slot(
    |                                         ^^^^^^^^^^^^^ method not found in `HashMap<KeyWrapper, (), RandomState>`

   Compiling nalgebra v0.32.6
   Compiling ndarray-rand v0.14.0
   Compiling ndarray v0.16.1
   Compiling uuid v1.11.0
   Compiling finitediff v0.1.4
error[E0599]: no method named `raw_table_mut` found for struct `hashbrown::HashMap` in the current scope
  --> [.....].cargo\registry\src\index.crates.io-6f17d22bba15001f\polars-core-0.43.1\src\chunked_array\logical\categorical\builder.rs:43:32
   |
43 |             self.local_mapping.raw_table_mut().find_or_find_insert_slot(
   |                                ^^^^^^^^^^^^^ method not found in `HashMap<KeyWrapper, (), RandomState>`

error[E0599]: no method named `raw_table_mut` found for struct `hashbrown::HashMap` in the current scope
  --> [.....].cargo\registry\src\index.crates.io-6f17d22bba15001f\polars-core-0.43.1\src\chunked_array\logical\categorical\builder.rs:63:26
   |
62 | /                     self.local_mapping
63 | |                         .raw_table_mut()
   | |                         -^^^^^^^^^^^^^ method not found in `HashMap<KeyWrapper, (), RandomState>`
   | |_________________________|
   |

   Compiling nalgebra v0.33.0
For more information about this error, try `rustc --explain E0599`.
error: could not compile `polars-core` (lib) due to 4 previous errors
warning: build failed, waiting for other jobs to finish...

Temporary solution is to downgrade polars?

avhz commented 1 month ago

Thanks for pointing this out. Will publish a temp fix for this shortly.