On Friday, October 23, 2015 at 3:58:07 AM UTC-4, Mike Hommey wrote:
> Hi,
> 
> This has been discussed in the past, to no avail. I would like to reopen
> the discussion.
> 
> Acknowledgment: this is heavily inspired from a list compiled by Joshua
> Cranmer, but please consider this *also* coming from me, with my build
> system peer hat on.
> 
> What:
> 
> Let's first summarize what this is about. This is about moving the
> development of Seamonkey, Thunderbird, and Lightning in the same
> repository as Firefox, by merging all their code and history from
> comm-central into mozilla-central.
> 
> Seamonkey and Thunderbird share a lot, so comm-central without
> Seamonkey wouldn't make a significant difference. Lightning is, AIUI, both
> standalone and an addon shipped with Thunderbird, so in practice, it
> can be considered as being part of Thunderbird.
> 
> Why:
> 
> - The interaction between the build system in mozilla-central and the
>   build system in comm-central is complex, and has been a never stopping
>   cause of all kinds of problems sometimes blocking changes in the
>   mozilla-central build system, sometimes making them unnecessarily more
>   complex.
> 
> - The interaction between both build systems and automation is complex, 
>   and got even more twisted with mozharness now being in
>   mozilla-central, because of the chicken-and-egg problem it introduces,
>   making integration with mozharness hard.
> 
> - Likewise with taskcluster.
> 
> - Subsequently, with mozilla-central now relying on mozharness and soon
>   switching away from buildbot, the differences in setup with
>   comm-central keep increasing, and makes maintaining those builds a
>   large hurdle.
> 
> - Historically, the contents of comm-central used to be in the same
>   repository as everything else, and the build system has never really
>   copped with the separation. Arguably, this was in the CVS days.
>   It's a testament to our build and release engineers that the cobbled
>   together result has held up for as long as it has, but it's really
>   not sustainable anymore.
> 
> - mozilla-central and comm-central are as tied as top-level
>   mozilla-central and js/ are. Imagine what development would look like
>   if js/ was in a separate repository.
> 
> - Relatedly, many codebase-wise changes (e.g. refactorings), or core API
>   changes tend to break comm-central. While it can be argued that it
>   shouldn't be platform engineers' burden to care about those, the fact
>   is that even if they do care, the complexity of testing those changes
>   on try or locally doesn't even slightly encourage them to actually do
>   the work.
> 
> - TTBOMK, Thunderbird is Mozilla's second largest project in terms of
>   number of users, behind Firefox, and before Firefox for Android and
>   Firefox OS.  Many of those users may legitimately want to contribute
>   to Thunderbird, and the bar to entry is made much higher by the
>   multi-repository setup and the extra complexity it entails. Mozilla is
>   actively making the bar to entry for Firefox/Firefox for
>   Android/Firefox OS contributions lower, at the expense of Thunderbird
>   contributors. This is a sad state of affairs.
> 
> Why not, and counter-counter-arguments:
> 
> - It would increase mozilla-central significantly.
>     Well, first, it's true, for some value of "significant".
>     comm-central is about 131M of .hg/ data, while is about 2309M as of
>     writing. That's a 5.7% increase in size of the repository. On the
>     other hand, 131M is less than the size mozilla-central grew in the
>     last 3 months.
> 
> - It sets a bad precedent, other Gecko-based projects might want to
>   merge.
>   - mobile/ set the precedent half a decade ago.
>   - as mentioned above, historically, everything was in the same
>     repository, and the split can be argued to be the oddity here
>   - there are barely any Gecko-based projects left that are not in
>     comm-central.
> 
> - It adds burden to developers, needing to support those projects
>   merged from comm-central.
>     Just look around in mozilla-central at all the optional things
>     that are not visible on treeherder and break regularly. The
>     situation wouldn't be different in that sense. But the people
>     that do care about those projects will have a better experience
>     supporting them.
> 
> Considering all the above, are there still objections to this
> happening, and can we finally allow Joshua to go ahead with his merge
> plan? (CCing bsmedberg, who, iirc, had Brendan's delegation to have the
> final word on this)
> 
> Cheers,
> 
> Mike

To be explicit,

I am on the SeaMonkey Council (drivers), and am an employee of MoCo.

>From the code complexity standpoint Mozilla Releng code would also be greatly 
>benefitted by the merge. Making our day-to-day easier and less cumbersome. 
>Though we don't deal directly with thunderbird, the ability to remove any/all 
>of the complexity which does would be a boon to productivity.

Also we too have the "thunderbird is lower priority than everything else" 
mandate, to which I abide. That said, I also will heartily proclaim that I will 
do the releng work required by this merge (possibly including the 
dead-code-removal itself) in my own volunteer time.

Which would allow us [decision makers] to ignore one of the few 
MoCo-employee-needed assumptions I've read in this thread (that is the 
assumption that releng needs to do changes to cope).

~Justin Wood (Callek)
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to