Re: Fwd: Proposed changes to supported build configurations (tiers)

218 views
Skip to first unread message

Steve Wendt

unread,
Aug 29, 2010, 4:46:12 PM8/29/10
to
> Change the description of tier 2:
>
> "Tier 2 platforms are platforms that the Mozilla community believes are
> important to maintain

It seems to me that "actively maintained" is a far better way to define
the second tier than "important to maintain." If the "community" is
truly encompassing, then every platform with a port is important to
those that use it. What distinguishes some over others is whether there
are people actively maintaining them.

> Move to tier 3:
>
> * OpenSolaris
> * Windows CE/Windows Mobile
> * OS/2
> * win32/mingw gcc

I have no idea about the win* builds, but Solaris and OS/2 clearly
continue to be actively maintained. Those should be tier 2.

Mike Connor

unread,
Aug 29, 2010, 6:22:41 PM8/29/10
to dev-planning@lists.mozilla.org planning

On 2010-08-29, at 4:46 PM, Steve Wendt wrote:

>> Change the description of tier 2:
>>
>> "Tier 2 platforms are platforms that the Mozilla community believes are
>> important to maintain
>
> It seems to me that "actively maintained" is a far better way to define the second tier than "important to maintain." If the "community" is truly encompassing, then every platform with a port is important to those that use it. What distinguishes some over others is whether there are people actively maintaining them.

I disagree here, and I think Benjamin's change is absolutely correct. A small group of developers interested in $random_platform does not feel like a sufficiently high bar to require all developers on the project to commit to fixing bustage if/when it occurs. If there isn't a consensus among the developer community that we should support $random_platform, it shouldn't be in tier 2.

A platform that isn't actively maintained shouldn't be on this list at all.

-- Mike

Justin Wood (Callek)

unread,
Aug 30, 2010, 1:19:58 AM8/30/10
to


I certainly agree with you Mike.

and to expand on my personal planning priorities with regard to reviews
and patchings as it relates here:

Tier 1->*I* have to ensure I don't break any of these when I patch, and
be completely cautious of it when I review.

Tier 2-> If I know of a reason one of these will break, I avoid it
heavily. I also try to remember these when I review. If I break one of
these I am expected to (and do) provide patches, but I am unable to test
if it does fix, other than code inspection. These get a higher review
priority.

Tier 3-> I'm unlikely to fix these unless I have added free time, and
sounds easy. I don't ever expect to be able to test a fix for these
platforms, and if I get a review request, I drop it down below other
reviews in general, but I still try to tackle it within 48 hours; as
broken for _anyone_ is something I try to avoid. [I see more OS/2
reviews/patches than other platforms, but that could just be a factor of
where I spend my time reviewing].

I have yet to see a patch for anything not on the tier_* list fly by.

--
~Justin Wood (Callek)

Benjamin Smedberg

unread,
Aug 30, 2010, 8:31:14 AM8/30/10
to
On 8/29/10 4:46 PM, Steve Wendt wrote:

> It seems to me that "actively maintained" is a far better way to define the
> second tier than "important to maintain." If the "community" is truly
> encompassing, then every platform with a port is important to those that use
> it. What distinguishes some over others is whether there are people actively
> maintaining them.

I agree with mconnor, but I'd like to follow up on this myself. As a project
with a community with many different desires, we have to prioritize some
things over others. The support tiers are a formalization of that support
mechanism. I am firmly convinced that OS/2 support should *never* cause us
to back out a patch. This is very different from our mobile platforms and
platforms we're trying to spin up into future products.

It isn't sufficient that a tier or feature be actively maintained. Overall,
it has to be important enough to get developers to spend time thinking about
it. There are many platforms which are definitely not that important: OS/2,
AIX, etc.

In some cases we've gone beyond and said that we will not support an
architecture at all, something like a "tier WONTFIX". This includes VMS, GCC
2.x and 3.x, Amiga, and MacOS 9. So far OS/2 has managed to avoid being on
this list by upgrading compilers and being generally unobtrusive. But when
we decide to require IPC, for example, I doubt that we would accept OS/2 new
compatibility into the chromium porting layer, even if we did have an active
maintainer. The cost/benefit ratio just doesn't make a good tradeoff.

--BDS

Steve Wendt

unread,
Aug 30, 2010, 2:26:03 PM8/30/10
to
On 8/30/2010 5:31 AM, Benjamin Smedberg wrote:

> As a project with a community with many different desires, we have to
> prioritize some things over others.

Of course.

> I am firmly convinced that OS/2 support should *never* cause us to
> back out a patch.

I'm pretty sure that has never happened, and I agree that it should not
(because that is the definition reserved for tier 1). The definition
for tier 2 does state that patches "may" need to backed out, but even
that leaves a lot of room for interpretation.

> It isn't sufficient that a tier or feature be actively maintained.

In that case, perhaps several of the existing platforms (beos, qnx,
irix, ?) should be dropped from tier 3. It just doesn't make sense to
group the Solaris and OS/2 builds with those.

> But when we decide to require IPC, for example, I doubt that we would
> accept OS/2 new compatibility into the chromium porting layer, even
> if we did have an active maintainer. The cost/benefit ratio just
> doesn't make a good tradeoff.

So you are suggesting that you want to force parts of the larger
community to fork the code, because you won't accept actively maintained
contributions to support more platforms? That sounds unhealthy for an
open source project.

Benjamin Smedberg

unread,
Aug 30, 2010, 3:01:30 PM8/30/10
to
On 8/30/10 2:26 PM, Steve Wendt wrote:

>> I am firmly convinced that OS/2 support should *never* cause us to
>> back out a patch.
>
> I'm pretty sure that has never happened, and I agree that it should not
> (because that is the definition reserved for tier 1). The definition for
> tier 2 does state that patches "may" need to backed out, but even that
> leaves a lot of room for interpretation.

Yes, tier-2 means "it either needs to be fixed or backed out, eventually".
OS/2 is definitely not in that category.

> In that case, perhaps several of the existing platforms (beos, qnx, irix, ?)
> should be dropped from tier 3. It just doesn't make sense to group the
> Solaris and OS/2 builds with those.

Why not?

> So you are suggesting that you want to force parts of the larger community
> to fork the code, because you won't accept actively maintained contributions
> to support more platforms? That sounds unhealthy for an open source project.

Yes. The benefit of taking code for the small minority of the community
which cares about OS/2 support is not worth the cost to the entire community
of reading and maintaining that code.

--BDS

Mike Connor

unread,
Aug 30, 2010, 3:08:34 PM8/30/10
to Steve Wendt, dev-pl...@lists.mozilla.org

On 2010-08-30, at 2:26 PM, Steve Wendt wrote:

>> But when we decide to require IPC, for example, I doubt that we would
>> accept OS/2 new compatibility into the chromium porting layer, even
>> if we did have an active maintainer. The cost/benefit ratio just
>> doesn't make a good tradeoff.
>
> So you are suggesting that you want to force parts of the larger community to fork the code, because you won't accept actively maintained contributions to support more platforms? That sounds unhealthy for an open source project.

The overhead may/may not be worth it in a given case. If taking the contributions result in disproportionate overhead for core code maintainers, I think it's far more unhealthy to expect that we'll do it anyway. The health of an open source project is best measured by making the right choices to achieve the overall goals of the project. If the cost of OS/2 support is higher than the benefit of OS/2 support, measured in terms of the overall mission of Mozilla, then it would be unhealthy to continue to pay that cost.

-- Mike

Steve Wendt

unread,
Aug 30, 2010, 3:12:55 PM8/30/10
to
On 8/30/2010 12:01 PM, Benjamin Smedberg wrote:

>> In that case, perhaps several of the existing platforms (beos,
>> qnx, irix, ?) should be dropped from tier 3. It just doesn't make
>> sense to group the Solaris and OS/2 builds with those.
>
> Why not?

mconnor wrote: "A platform that isn't actively maintained shouldn't be
on this list at all," so it sounds like he agrees with me...

Steve Wendt

unread,
Aug 30, 2010, 3:19:35 PM8/30/10
to
On 8/30/2010 12:08 PM, Mike Connor wrote:

>> So you are suggesting that you want to force parts of the larger
>> community to fork the code, because you won't accept actively
>> maintained contributions to support more platforms? That sounds
>> unhealthy for an open source project.
>
> The overhead may/may not be worth it in a given case. If taking the
> contributions result in disproportionate overhead for core code
> maintainers, I think it's far more unhealthy to expect that we'll do
> it anyway. The health of an open source project is best measured by
> making the right choices to achieve the overall goals of the project.
> If the cost of OS/2 support is higher than the benefit of OS/2
> support, measured in terms of the overall mission of Mozilla, then it
> would be unhealthy to continue to pay that cost.

This is reasonable - if the "patch" is a few lines of code and an ifdef
or two, that is different from adding 1K lines of completely different
code (although, if it is in a completely separate source file, that is
again not quite the same thing). I agree that the cost/benefit ratio
does need to be measured and acted on for the best overall interest, and
take into account what any upstream projects are doing (i.e. Cairo
accepts OS/2 patches).

kbr_n...@guzzi.demon.nospam.nl

unread,
Aug 30, 2010, 8:11:09 PM8/30/10
to
In <HZCdnToVGbiXneHR...@mozilla.org>, on 08/30/10
at 03:01 PM, Benjamin Smedberg <benj...@smedbergs.us> said:

>Yes. The benefit of taking code for the small minority of the community
>which cares about OS/2 support is not worth the cost to the entire
>community of reading and maintaining that code.

Isn't it? One of the reasons I am using firefox ist that it is available
on the platform of my choice. Note: platfrorm of my choice, not browser of
my choice....I don't have much choice, mind you, but one of the reasons I
support mozilla is that it is still available on the platform of my
choice. Arora is not an option yet. The netire communty consists of many
OS users, and all in all a fair number of those use 'obscure' OS's.
Mozilla is one of the things that keep those os's viable. So the benefits
are perhaps much greater then just the numbers would suggest. Supporting
'obscure' platforms keeps them alive, and this benefits not only the users
of those platforms, but anyone and all who choose not to use mainstream
os's but something that fits their need and preferences. The really great
thing about open source software like mozilla is that they cater to the
needs of those users. I do understand the cost/ratio argument. Ratio here
might be much greater then it seems at first glance. Abondoning platforms
because of cost/ratio also means that the 'portability'concept doesn't
really work. IMHO, the differences betweem current OS's aren't THAT big
yet. There are quite a few OS/2 users left, both corporate and private,
and the number is not decreasing. I realise this is more a plea than an
argument, but Mozilla is rather important to us.

>--BDS
Cheers, Bjorn.
--
-----------------------------------------------------------
k...@guzzi.demon.nl
-----------------------------------------------------------

Justin Dolske

unread,
Aug 30, 2010, 10:36:31 PM8/30/10
to
On 8/30/10 5:11 PM, kbr_n...@guzzi.demon.nospam.nl wrote:

>> Yes. The benefit of taking code for the small minority of the community
>> which cares about OS/2 support is not worth the cost to the entire
>> community of reading and maintaining that code.
>
> Isn't it?

The needs of the many outweigh the needs of the few.

(I mostly just wanted to reply to say that.)

> One of the reasons I am using firefox ist that it is available
> on the platform of my choice.

There's no free lunch. You have the freedom to choose, but that doesn't
mean everyone else must pay the price to make that choice available.

In any case, it's worth pointing out that this thread started with
bsmedberg proposing changing the docs/policy to match our _actual
practices_. So I don't think we're talking about making changes that
have any real or sudden effect on users of Tier 2/3 platforms -- we're
just formalizing the way things have already been for quite some time.

[It's also worth mentioning that, in my experience, OS/2 in particular
has not been onerous to support, and I've had nothing but good
interactions with those who actively work on it.]

Justin

Robert Kaiser

unread,
Aug 31, 2010, 10:00:49 AM8/31/10
to
Justin Dolske schrieb:

> The needs of the many outweigh the needs of the few.

Real Vulcans will undoubtedly always agree with that strong piece of
logic - but last I checked, most of our community was human, quite
emotional and sometimes irrational. :P

Robert Kaiser

--
Note that any statements of mine - no matter how passionate - are never
meant to be offensive but very often as food for thought or possible
arguments that we as a community needs answers to. And most of the time,
I even appreciate irony and fun! :)

Robert O'Callahan

unread,
Sep 1, 2010, 10:47:32 PM9/1/10
to
On 31/08/10 7:01 AM, Benjamin Smedberg wrote:
> On 8/30/10 2:26 PM, Steve Wendt wrote:
>> In that case, perhaps several of the existing platforms (beos, qnx,
>> irix, ?)
>> should be dropped from tier 3. It just doesn't make sense to group the
>> Solaris and OS/2 builds with those.
>
> Why not?

OS/2, Solaris, mingw and AIX are actively maintained --- I've reviewed
or landed patches for those platforms relatively recently.

BeOS and QNX ports are completely dead. There are no maintainers and
Gecko hasn't worked on those platforms for a long time. They should be
removed from tier 3. I'm not sure about IRIX or any other other other
current tier 3 members.

Rob

Reply all
Reply to author
Forward
0 new messages