Serde, a popular Rust (de)serialization project, has decided to ship its serde_derive macro as a precompiled binary. This has generated a fair amount of concern among some developers who highlight the future legal and technical issues this may pose, along with a potential for supply chain attacks.
I don’t get what the serde maintainers get by shipping precompiled binaries. Can someone enlighten me?
It helps with compile time. I don’t know why exactly rust macros are slow, and precompiling them helps. Unfortunately, it means distributing a binary along your build process which I personally think is not worth the few seconds of build time speedup.
Btw I do think it is a technically clever solution to improving build times. I’m convinced serde’s author is trying to improve the project and this does address one of the common complaints. Clever solutions are not always the right ones though.