Release: Stripped & Non-Stripped Builds
As mentioned upstream on https://github.com/hashicorp/vault/issues/22893#issuecomment-1712305020:
We are aware of the size of the binary. Many design decisions are a factor, for example the debug symbols upon which many of our customers rely for information and troubleshooting.
(which was mentioned after debug symbols were re-added after removal in https://github.com/hashicorp/vault/pull/20294 as mentioned in https://github.com/hashicorp/vault/issues/21069 as well).
Certain vendors' offerings require non-stripped release builds to instrument the binary in production for monitoring. Unfortunately, in Go in particular, this greatly bloats binary size. Having both options (stripped and non-stripped) built from the same SHA would be great to let users choose between a smaller binary size versus needing debug symbols.
Additionally, something like UPX can be considered to compress portions of the binary to further reduce the size (at the expense of slightly slower startup & release build times -- though, this could be only done for the server and proxy binaries if separated, and not the user-facing CLI).
This compliments the size reduction in #64 and #73.
Source: openbao/openbao