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

nannou crate build failed #471

Closed
mitchmindtree opened this issue Nov 8, 2019 · 14 comments
Closed

nannou crate build failed #471

mitchmindtree opened this issue Nov 8, 2019 · 14 comments
Labels
C-build-failure Category: This is a crate that failed to build

Comments

@mitchmindtree
Copy link

Crate name: nannou
Build failure link: https://docs.rs/crate/nannou/0.12.0/builds/196525

Additional details:
The build seems to fail on the xcb dependency version 0.8.2, however this build has succeeded in the past and is currently available on docs.rs. This leads me to wonder if the cause is a bug in the latest rustdoc nightly. Is it possible to get the documentation re-built with stable?

@mitchmindtree mitchmindtree added the C-build-failure Category: This is a crate that failed to build label Nov 8, 2019
@jyn514
Copy link
Member

jyn514 commented Nov 8, 2019

Related: #229, #228

@jyn514
Copy link
Member

jyn514 commented Nov 8, 2019

Your build error doesn't seem to be related to the version of rust, though. cc @pietroalbini, do you intentionally make /opt/rustwide/cargo-home read-only?

@jyn514
Copy link
Member

jyn514 commented Nov 8, 2019

It looks like xcb is a new dependency in nannou 0.12, I wonder if it's trying to write to part of the filesystem it's not supposed to. I know we changed the sandboxing pretty significantly about a month ago in the switch to rustwide: #407, xcb hasn't been rebuilt since 2018: https://docs.rs/crate/xcb/0.8.2/builds/87332

@pietroalbini
Copy link
Member

Your build error doesn't seem to be related to the version of rust, though. cc @pietroalbini, do you intentionally make /opt/rustwide/cargo-home read-only?

Yeah, otherwise a malicious crate could've messed up the state for other crates.

@alberdingk-thijm
Copy link

It looks like xcb is a new dependency in nannou 0.12, I wonder if it's trying to write to part of the filesystem it's not supposed to. I know we changed the sandboxing pretty significantly about a month ago in the switch to rustwide: #407, xcb hasn't been rebuilt since 2018: https://docs.rs/crate/xcb/0.8.2/builds/87332

I just tried building xcb 0.8.2 myself using docker-compose run web build crate xcb 0.8.2, and this appears to be what caused the problem.
The crate has a python script rs_client.py which it uses to create some FFI files. The exact line it fails at is rs_client.py:114.

The good news is, xcb 0.9.0 works fine, so I think if x11-clipboard (the dependency of copypasta, the dependency of conrod_core, the dependency of nannou) upgrades to 0.9.0, this should be fixed.

@jyn514
Copy link
Member

jyn514 commented Nov 21, 2019

Looks like this isn't a bug in docs.rs, going to close this.

@jyn514 jyn514 closed this as completed Nov 21, 2019
@mitchmindtree
Copy link
Author

Thanks for digging into this @alberdingk-thijm!

@alberdingk-thijm
Copy link

Looks like this isn't a bug in docs.rs, going to close this.

@jyn514, do you happen to know when docs.rs will try to build nannou (and the other crates related to this error in xcb) again?

@jyn514
Copy link
Member

jyn514 commented Dec 5, 2019

Rebuilding automagically is #464 . Currently someone has to schedule a manual build.

@jyn514
Copy link
Member

jyn514 commented Dec 5, 2019

This particular crate won't be helped by rebuilding however because it tries to write to a read only filesystem.

@alberdingk-thijm
Copy link

We tracked down the dependency (x11-clipboard) that caused the error and sent a PR quininer/x11-clipboard#17 through, which has been bubbled up to the other dependency copypasta in a minor patch alacritty/alacritty#3024. conrod_core (the dependency which pulls in copypasta) just requests 0.6, so I would think building with copypasta 0.6.1 would get rid of this issue, although admittedly I can't seem to figure out how to tell the docker container to do that on my own machine.

@jyn514
Copy link
Member

jyn514 commented Dec 5, 2019

@alberdingk-thijm Could you make these updates in a different repo, such as nannou-org/nannou#429? This is not a docs.rs bug.

@jyn514
Copy link
Member

jyn514 commented Dec 5, 2019

Oh hold on I think I misunderstood your comment. You're asking us to build with a different version of a minor dependency? We don't control dependency management, that's done by cargo. If you've fixed the bug you can publish a new version and docs.rs will build that version.

@alberdingk-thijm
Copy link

Oh hold on I think I misunderstood your comment. You're asking us to build with a different version of a minor dependency? We don't control dependency management, that's done by cargo. If you've fixed the bug you can publish a new version and docs.rs will build that version.

Gotcha, that's what I was asking. Thanks for your help!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-build-failure Category: This is a crate that failed to build
Projects
None yet
Development

No branches or pull requests

4 participants