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

Building on stable results in error #102

Open
nathanielford opened this issue Oct 6, 2021 · 5 comments
Open

Building on stable results in error #102

nathanielford opened this issue Oct 6, 2021 · 5 comments

Comments

@nathanielford
Copy link

When building in a dockerfile on stable, rustdoc breaks.

The dockerfile, building a basic Rocket 5.0-rc1 app.

FROM ekidd/rust-musl-builder:latest
...
RUN rustup target add x86_64-unknown-linux-musl
...
RUN cargo build --release

The Cargo.toml contains:

[dependencies]
rocket = "0.5.0-rc.1"
rocket_cors = { git = "https://github.com/lawliet89/rocket_cors.git", branch = "master" }

And the build halts when attempting to build rocket_cors.

   Compiling rocket_cors v0.5.2 (https://github.com/lawliet89/rocket_cors.git?branch=master#a062933c)
error[E0710]: an unknown tool name found in scoped lint: `rustdoc::broken_intra_doc_links`
   --> /home/rust/.cargo/git/checkouts/rocket_cors-5d6823f67bcb0532/a062933/src/lib.rs:253:5
    |
253 |     rustdoc::broken_intra_doc_links
    |     ^^^^^^^

error: aborting due to previous error

For more information about this error, try `rustc --explain E0710`.
error: could not compile `rocket_cors`

Switching to nightly in the dockerfile works (as is probably expected) - so this is less an 'issue with things as they stand' as a 'thing that needs to be fixed for Rocket 0.5'. Notably, building outside the dockerfile (on Pop_OS/Ubuntu) works fine on stable. It may be related to this issue.

@somehowchris
Copy link
Contributor

somehowchris commented Oct 16, 2021

I‘m not a maintainer of this but here’s my guess.

Its probably due to the rust version of the base image, its 6 months old and runs 1.51.0 while your workstation probably runs a newer version which is needed for this.

TLDR; no bug, just an outdated version of rust being used by the base image. RUN rustup update might help, didn’t check it

@thomasmost
Copy link

I'm also seeing this:

error: failed to run custom build command for `pear_codegen v0.1.4`

Caused by:
  process didn't exit successfully: `/Users/thomas/bend/data-service/target/debug/build/pear_codegen-5da0a702cafd9dee/build-script-build` (exit status: 101)
  --- stderr
  Error: Pear requires a 'dev' or 'nightly' version of rustc.
  Installed version: 1.56.1 (2021-11-01)
  Minimum required:  1.31.0-nightly (2018-10-05)
  thread 'main' panicked at 'Aborting compilation due to incompatible compiler.', /Users/thomas/.cargo/registry/src/git.luolix.top-1ecc6299db9ec823/pear_codegen-0.1.4/build.rs:24:13
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
error: build failed

@thomasmost
Copy link

Updating to the master branch build (rocket_cors = { git = "https://github.com/lawliet89/rocket_cors", branch = "master" }) resolves this but I'm seeing several other errors trying to implement the example with the stable Rocket release candidate

@thomasmost
Copy link

Now just seeing:

38 |     .attach(cors)
   |             ^^^^ the trait `Fairing` is not implemented for `Result<Cors, rocket_cors::Error>`

with:

    rocket::build()
    .register("/", catchers![internal_error])
    .mount("/", routes![index])
    .mount("/v0", routes![info, org_count, org_list, org_create])
    .attach(cors)

@somehowchris
Copy link
Contributor

@thomasmost mind telling me which rocket version you are using?

Are you setting up cors something along the lines of this?

let cors = rocket_cors::CorsOptions::default().to_cors().unwrap()

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

3 participants