On 21/09/25 15:35, Jonas Smedegaard wrote:
I am not part of the Rust team. I am part of Debian.
I am raining an issue generally in Debian, about a seemingly team-wide
behaviour that I find inappropriate for Debian.
I did not initially talk about build flags, but if others want to mix
that into the conversation, then fine with me. The conversation is then
the issue of how a seemingly team-wide behaviour fits into geneal Debian
ways of working.
Or, using "policy" words: I talk about Debian Policy, not some local
team-specific policy which I chose to exclude myself from when I, the
very first day that I joint said team, was told that policy dictated
that I*MUST* package every Rust library package in one giant git repo.
It was not optional or up for discussion, which made be leave that team.
So no, I am quite certainly not discussing Rust team policies here
(only, since you kinda ask for it, point fingers at them).
To get back to the topic of this conversation: DEB_BUILD_OPTIONS is a
quite common mechanism in Debian - not well supported by dh-cargo but
somewhat better by dh-rust.
I am suggesting to do what is common in Debian: Enable build flags for
optimization by default, and use DEB_BUILD_OPTIONS to disable where
needed.
We can play with words however we like, the issue still remains that
you're unsatisfied with how Rust team's tests are built by default
(which I summarize as "Rust team policy", as it's currently hard-coded
in our tooling. You may use different wording if you don't like it).
Changing that means changing defaults, so we should first and foremost
be having a conversation about those defaults. As soon as we change
them, thousands of packages are going to start running optimized tests
automatically after their first upload, and we need to understand if
that's sustainable. For instance, this would put meaningful extra load
on debci. I would support a change that enables optimizations in tests
by default for at least a subset of packages' features, I'm not not sure
whether doing so for all features is sustainable.