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

"cargo install diesel_cli" fails with a generic overflow on latest nightly #1450

Closed
blm768 opened this Issue Jan 5, 2018 · 4 comments

Comments

Projects
None yet
4 participants
@blm768

blm768 commented Jan 5, 2018

I'm running cargo install diesel_cli on a fairly fresh installation of Arch Linux, and cargo is spitting out an error message partway through the process:

$ cargo install diesel_cli
    Updating registry `https://github.com/rust-lang/crates.io-index`
  Installing diesel_cli v1.0.0
   Compiling [[a bunch of dependency crates]]
   Compiling diesel v1.0.0
error[E0275]: overflow evaluating the requirement `<&_ as insertable::Insertable<_>>::Values`
  |
  = help: consider adding a `#![recursion_limit="128"]` attribute to your crate
  = note: required because of the requirements on the impl of `insertable::Insertable<_>` for `std::option::Option<&_>`
  = note: required because of the requirements on the impl of `insertable::Insertable<_>` for `&std::option::Option<_>`
  = note: required because of the requirements on the impl of `insertable::Insertable<_>` for `std::option::Option<&std::option::Option<_>>`
  = note: required because of the requirements on the impl of `insertable::Insertable<_>` for `&std::option::Option<std::option::Option<_>>`
[[more lines of increasingly deeply nested Options]]

It seems to compile and install fine on stable, though, so it shouldn't be a significant issue unless it's also affecting other users.

What makes this particularly odd is that compiling Diesel as a project dependency works just fine for me on nightly; it's only cargo install diesel_cli that chokes on the diesel crate. Is anyone else seeing this behavior?

Versions

  • Rust: 1.24.0-nightly
  • Diesel: 1.0.0
  • Operating System: Linux (Arch)
@virome

This comment has been minimized.

Contributor

virome commented Jan 5, 2018

This appears to be a known regression in beta and nightly rust, I believe this is the same issue that was encountered on Diesel's nightly ci builds.

rust-lang/rust#47139

@sgrif

This comment has been minimized.

Member

sgrif commented Jan 5, 2018

Yes, this is an issue in Rust not Diesel.

@sgrif sgrif closed this Jan 5, 2018

@AyushyaChitransh

This comment has been minimized.

AyushyaChitransh commented Mar 31, 2018

It would be very useful to mention here which version of rust solves the issue.

From the link to comments, it seems that the problem was solved by this commit, but am unable to install diesel_cli using following versions:

  • nightly-x86_64-apple-darwin unchanged - rustc 1.26.0-nightly (80785a547 2018-03-30)
  • stable-x86_64-apple-darwin unchanged - rustc 1.25.0 (84203cac6 2018-03-25)
@AyushyaChitransh

This comment has been minimized.

AyushyaChitransh commented Mar 31, 2018

My build was failing but not due to the reasons mentioned in this issue. I was getting following error:

error: linking with `cc` failed: exit code: 1
 |
  = note: "cc" "-m64" "-L" ...
  ...
  = note: ld: library not found for -lmysqlclient

And I was able to resolve it by using:

cargo install diesel_cli --no-default-features --features postgres

Thanks to the comment

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment