Closed thomcc closed 1 year ago
This issue is not meant to be used for technical discussion. There is a Zulip stream for that. Use this issue to leave procedural comments, such as volunteering to review, indicating that you second the proposal (or third, etc), or raising a concern that you would like to be addressed.
cc @rust-lang/compiler @rust-lang/compiler-contributors
@rustbot second
Link to the wg stream: https://rust-lang.zulipchat.com/#narrow/stream/405744-wg-binary-size/topic/stream.20events
Proposal
The binary size of Rust programs and libraries is a frequent complaint from users, so in order to centralize and track all efforts that reduce binary size of these artifacts, we propose forming a Binary Size Working Group (
wg-binary-size
) undert-compiler
with support fromt-libs
.This working group aims to, ultimately, reduce the binary size of Rust programs, or at least give users the tools to do so. To support that top-level goal, the group will work towards:
I-heavy
issues.-Copt-level=z
being larger than otheropt-levels
is a frequent complaint).And so on. Note that it seems very likely that the precise contents of this list will change/fluctuate as a result of measurement and data gathering.
Scope
The focus of the group is primarily artifacts which are frequently distributed or installed (for example
bin
,cdylib
,dylib
, orstaticlib
crates). Concretely, some things which are not considered in-scope include the total size of cargo's target directory, rustup toolchain bundles, or ephemeral build arifacts (for example metadata, incremental cache, and so on).Explicitly in-scope are build configurations where
std
is present (in addition tono_std
), and even optimization levels besidess
andz
(for example, if we can reduce the binary size ofopt-level=3
without hurting performance, that would be a win).Team
The leads will be myself (@thomcc) and Mara Bos (@m-ou-se). The initial list of members will be @davidtwco, @nbdd0121, @Kobzol, @nnethercote, @h1467792822, @workingjubilee, and @wain303009 although may grow over time.
Process
The main points of the Major Change Process are as follows:
@rustbot second
.-C flag
, then full team check-off is required.@rfcbot fcp merge
on either the MCP or the PR.You can read more about Major Change Proposals on forge.
Comments
This issue is not meant to be used for technical discussion. There is a Zulip stream for that. Use this issue to leave procedural comments, such as volunteering to review, indicating that you second the proposal (or third, etc), or raising a concern that you would like to be addressed.