Electron100 / butane

An ORM for Rust with a focus on simplicity and on writing Rust, not SQL
Apache License 2.0
83 stars 11 forks source link

Intermittent failure on MacOS building for clippy --all-features -- -D warnings #227

Open jayvdb opened 3 months ago

jayvdb commented 3 months ago

I am pretty sure I saw this recently, and now again https://github.com/Electron100/butane/actions/runs/8432584319/job/23091944587?pr=223

   Generated /Users/runner/work/butane/butane/target/doc/butane/index.html and 6 other files
cargo +stable clippy --all-features -- -D warnings
    Checking butane_core v0.6.1 (/Users/runner/work/butane/butane/butane_core)
   Compiling butane v0.6.1 (/Users/runner/work/butane/butane/butane)
   Compiling example v0.1.0 (/Users/runner/work/butane/butane/example)
    Checking butane_codegen v0.6.1 (/Users/runner/work/butane/butane/butane_codegen)
error: could not compile `butane_codegen` (lib)

Caused by:
  process didn't exit successfully: `/Users/runner/.rustup/toolchains/stable-x86_64-apple-darwin/bin/clippy-driver /Users/runner/.rustup/toolchains/stable-x86_64-apple-darwin/bin/rustc --crate-name butane_codegen --edition=2021 butane_codegen/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type proc-macro --emit=dep-info,metadata -C prefer-dynamic -C embed-bitcode=no --cfg 'feature="datetime"' --cfg 'feature="json"' --cfg 'feature="uuid"' -C metadata=b2998384337eeebb -C extra-filename=-b2998384337eeebb --out-dir /Users/runner/work/butane/butane/target/debug/deps -C strip=debuginfo -L dependency=/Users/runner/work/butane/butane/target/debug/deps --extern butane_core=/Users/runner/work/butane/butane/target/debug/deps/libbutane_core-06f176cb5efbe978.rmeta --extern proc_macro2=/Users/runner/work/butane/butane/target/debug/deps/libproc_macro2-488748b65e6005e1.rmeta --extern quote=/Users/runner/work/butane/butane/target/debug/deps/libquote-2466d2e89b984c2e.rmeta --extern syn=/Users/runner/work/butane/butane/target/debug/deps/libsyn-5199a5c49da696e5.rmeta --extern proc_macro -D warnings` (signal: 6, SIGABRT: process abort signal)
warning: build failed, waiting for other jobs to finish...
make: *** [lint] Error 101
Electron100 commented 3 months ago

I saw it too. Almost certainly a bug in Clippy/Rust rather than our bug. I suppose I should figure out whether there's any way to enable core dumps on the Github runners to get something that would make an actionable bug report. I don't have any Mac hardware to attempt a local repro I'm afraid.

jayvdb commented 2 months ago

It is still quite common. https://github.com/Electron100/butane/actions/runs/8762148379/job/24049541255 is the latest.

I wonder if we should move lint to after build, in order to help determine where the bug is.

jayvdb commented 2 months ago

It might be worth seeing if this is happening in other projects. I checked a few macos workflows & PRs in https://github.com/diesel-rs/diesel/actions and they seem to not be having these failures, or not mentioning it on PRs which seems unlikely.

Anyways, https://github.com/Electron100/butane/pull/255 passed at https://github.com/jayvdb/butane/actions/runs/8763613341 , and then on the PR, and again on main. Not bad. If it stops happening now, perhaps it is Rust on a specific version of macos.

jayvdb commented 2 months ago

It occurs on macos-12 also https://github.com/Electron100/butane/actions/runs/8767317756/job/24060424467?pr=257