I suspect that people don't know/care about the fine print and just want to do their work. We should think about how to serve developers best in practice. To be clear, I'm not necessarily against the proposal at this point, I just don't think that reason #1 should be part of the justification.
Yeah, I don't know. This definitely isn't the fine print and is just the... regular print. In general I'm not moved by arguments that we need to hinder ourselves because other people ended up taking implicit dependencies on implementation details that we never actually exposed as part of a contract. I'm open to making exceptions to that rule where pragmatic to avoid breaking wide swaths of people, but this won't break anyone. Anyone who's currently working on Firefox already has Python 2 installed so this strictly affects people who are starting fresh with new dev environments, and they can install Python themselves, it's not hard (unless your OS doesn't allow you to, in which case
bootstrap wouldn't have been able to do it for you either, so the point is moot). You only have to do it once as well, since it's not like Python 2 is changing at any point in the future.
All that said, even if we ignore all of that and completely exclude reason #1 as you suggested, I think there's more than enough stuff to talk about here anyway.
Tangential, but if the documentation of
bootstrap doesn't match what the actual contract of
bootstrap is (or if we're unclear on what the actual contract of
bootstrap currently is), then we should fix that.
Can the build system telemetry help here? Can we establish some bar of "commands that X% of developers use Y% of the time don't need Python 2" before proceeding?
*** EDIT: The dashboard already has some version of this info, to an extent. Let me take a look at that.