pact-foundation / pact-reference

Reference implementations for the pact specifications
https://pact.io
MIT License
91 stars 46 forks source link

Feat/smaller binaries #433

Closed YOU54F closed 3 weeks ago

YOU54F commented 3 weeks ago

Slim executables as per

[profile.release]
strip = true
opt-level = "z"
codegen-units = 1

we do not use lto=true, as this config is applied at the root level to both the pact_ffi and verifier_cli crates.

lto=true inflates the size of the static libraries dramatically generated by \pact_ffi`.

It may be prudent to apply these additional RUSTFLAGS in the release scripts for the verifier cli to allow for further executable size reductions.

Question

Testing

Have been testing in this draft PR against my forks, which are all working as expected however it uncovered an issue in one of pact-net's test against the current released 0.4.20 version (more detail in the pr draft) - I've still to yak shave that one but it's not relevant to this PR

https://github.com/YOU54F/pact-reference/pull/6