Serde_derive v1.0.172+ uses a precompiled binary

https://crates.io/crates/serde_derive has since v1.0.172, July 10, shipped a pre-compiled binary for Linux x64, which it uses to reduce compile times for users of this crate.

As this was a patch release, it has mostly gone under the radar. https://github.com/serde-rs/serde/issues/2538 was raised July 28 and closed August 17 as effectively wontfix, and the issue is now locked.

There are two PRs to make this feature optional:

This is filed under announcements as in the current state, some users in regulated industries (Automotive, Medicine, etc) will need to do additional work to document this precompiled binary as a separate dependency that is being injected into the Rust compilation phase.

4 Likes

FYI: v1.0.184 doesn't contain the precompiled binary any more and the release note


matklad raised the [target.'cfg(any())'.dependencies] hack to solve parallelism problem of building proc macro crates in GitHub - matklad/macro-dep-test , and dtolnay is watching it.


Update: found Pre-RFC: Sandboxed, deterministic, reproducible, efficient Wasm compilation of proc macros - language design - Rust Internals proposed by dtolnay a few hours ago.

6 Likes