On 2015-03-11 8:19 PM, Gregory Szorc wrote:
On Wed, Mar 11, 2015 at 11:50 AM, Joshua Cranmer 🐧 <pidgeo...@gmail.com>
wrote:

On 3/11/2015 1:13 PM, Gregory Szorc wrote:

So I guess we trend towards supporting 2 build modes: Mozilla's official
build environment via containers/chroots (preferred) or "host native" (for
the people who insist on using it). Only "host native" exists today and it
is a PITA.


Using docker containers for most new contributor builds is likely to be a
poorer experience for contributors than not doing so--most contributors are
likely to want to run the built product on their local, host side of things
rather than within the container, and if the runtime dependencies mismatch,
the end result will be very painful.


I think developers should be able to make the choice between:

a) build and develop in the exact same environment that Mozilla uses
officially [so that compiler errors, bugs, object code, etc are identical]
b) build for the host and accept some risk that behavior of the built
product may differ from what happens in automation

I'm pretty sure given the agony many of us have felt trying to reproduce
failures in Try or other parts of automation that "a" would be a reasonable
default for many scenarios. I think minimizing surprises would be good for
developer productivity. Now, getting this to "just work" does have its
challenges.

Note that in practice, in 99.99% of cases it is the characteristics of the test machine that cause us to be unable to reproduce try failures, not the exact toolchain. [1] (a) is actually not that valuable for a normal developer's workflow for reproducing the binaries that our infrastructure produces. What burns *most* people is differences in the compiler errors which occurs because of using different compiler (major) versions, for which (a) sounds like overkill. I think a simpler solution covers almost all of developers' needs.

[1] Anecdotally, I can probably count the number of times I have been bitten by a bug that required the exact setup of our build infra to find its way into the binaries we generate on one hand, and not even using all 5 fingers. :-)

_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to