Skip to content

Improve behaviour around rustfmt #217

@PaulOlteanu

Description

@PaulOlteanu

Hello, I'm having issues building mediasoup inside of Docker. mediasoup uses planus-codegen in their build.rs, and their build script seems to be failing here because of this with the following error:

16.46 error: failed to run custom build command for `mediasoup-sys v0.7.2`
16.46 
16.46 Caused by:
16.46   process didn't exit successfully: `/target/debug/build/mediasoup-sys-8057748db0303d06/build-script-build` (exit status: 101)
16.46   --- stderr
16.46   thread 'main' panicked at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/mediasoup-sys-0.7.2/build.rs:39:14:
16.46   Failed to generate Rust code from flatbuffers: Unable to write the file to rustfmt
16.46 
16.46   Caused by:
16.46       Broken pipe (os error 32)
16.46 
16.46   Location:
16.46       /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/planus-codegen-0.4.0/src/rust/mod.rs:985:14
16.46   stack backtrace:
16.46      0: rust_begin_unwind
16.46                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:645:5
16.46      1: core::panicking::panic_fmt
16.46                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/panicking.rs:72:14
16.46      2: core::result::unwrap_failed
16.46                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/result.rs:1653:5
16.46      3: core::result::Result<T,E>::expect
16.46                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/result.rs:1034:23
16.46      4: build_script_build::main
16.46                at ./build.rs:38:9
16.46      5: core::ops::function::FnOnce::call_once
16.46                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/ops/function.rs:250:5
16.46   note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

This is reproducible just by creating a new Rust project, adding mediasoup = "0.15" to the dependencies, and trying to build a simple image with docker build .:

# Dockerfile
FROM rust:1.75-bookworm
COPY . .
# RUN apt update && apt install -y pip
ENV RUST_BACKTRACE=full
ENV CARGO_PROFILE_DEV_BUILD_OVERRIDE_DEBUG=true
RUN cargo build

I don't think I'll have time to help create a more minimal reproduction in the near future

Thanks

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions