Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compilation failure for Kaleido feature (due to dependency) #53

Closed
joeftiger opened this issue Feb 12, 2022 · 3 comments
Closed

Compilation failure for Kaleido feature (due to dependency) #53

joeftiger opened this issue Feb 12, 2022 · 3 comments

Comments

@joeftiger
Copy link

Using plotly with

[dependencies]
plotly = { version = "0.7", features = ["kaleido"] }

leads to a compiler error:

Caused by:
  process didn't exit successfully: `/.../target/debug/build/plotly_kaleido-db1bf438fb17485d/build-script-build` (exit status: 101)
  --- stderr
      Updating crates.io index
    Installing ruget v0.4.3
     Compiling .... (omitted)
  error[E0432]: unresolved import `seahorse::color`
   --> /.../.cargo/registry/src/github.com-1ecc6299db9ec823/ruget-0.4.3/src/main.rs:6:16
    |
  6 | use seahorse::{color, Action, App, Flag, FlagType};
    |                ^^^^^ no `color` in the root

  For more information about this error, try `rustc --explain E0432`.
  error: failed to compile `ruget v0.4.3`, intermediate artifacts can be found at `/tmp/cargo-installdOI6h7`

  Caused by:
    could not compile `ruget` due to previous error

As far as I can see this stems from using ruget (in plotly_kaleido/build.rs) to download some things.
The error stems from ruget's dependency seahorse::module no longer being available.

ruget itself uses a version of seahorse however, where seahorse::color is still available.
I am a bit unsure why cargo seems to update ruget's dependency when compiling it and how to fix it.

I have a brand new Linux install and have not changed any settings at all regarding rust/cargo.

@acshi
Copy link

acshi commented Feb 16, 2022

The main issue is that seahorse made a breaking change removing the color module, but only updated the minor version number. This breaks cargo's assumption of semantic versioning.

You can get around this by installing ruget manually with the "--locked" option, and then the build script will use this version, since the build script runs it without this option.
cargo install ruget --locked

@acshi
Copy link

acshi commented Feb 16, 2022

Seahorse has yanked the non-semantic versioning release and rereleased with a major version bump: ksk001100/seahorse#70

So this issue should now be resolved.

@joeftiger
Copy link
Author

Yes, I can confirm it works now :-)
Thank you for the update there!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants