We discussed the pros and cons of adding a Beta to the Firefox 3 schedule at last week's development [1] and product delivery [2] meetings, and then had a follow up call with representatives from the build, QA, and development teams to review the commentary and discussion and come back with a proposal.
// Proposal
After that discussion, the decision was to propose that we add a third beta milestone for Firefox 3.1, as well as a requirement that by Thursday, December 4th, all component owners re-triage their blocker lists in order to identify which require beta exposure, and also to develop estimates for driving those lists to zero. From here forward we will focus on blocker numbers at our weekly meetings, requiring component leads to present plans for reducing the numbers over time to ensure we're trending in the right direction. We believe that we can add this milestone without a major impact on the shipping schedule for the release.
// Rationale
We don't have full clarity into the nature of our remaining blockers, some of which likely require beta exposure. In order to close this release, a re-triaging (like we did around Firefox 3 Beta 4) is required both to identify the severity of the remaining blockers and the time required to address them properly. Further, the impact of late Beta 2 landings such as Private Browsing Mode, Worker Threads, Speculative Parsing and TraceMonkey will benefit from multiple beta releases.
The insertion of another beta also offers another public consultation point for web and add-on developers, allowing us to react to their feedback. Again, with wide-reaching changes like those listed above, it was felt that this was prudent, especially if it could be done without major impact to schedule.
Finally, as mentioned during the meetings last week, since we will be holding off from any additional changes that would affect themers and add-on developers, this gives our add-ons community a full beta cycle to test and update their add-ons. The hope is that when Beta 3 is released, compatibility with our existing add-ons will be high, encouraging more users to shift to the beta to provide their usage feedback.
// Process
* Only patches for blocker bugs and those with explicit approval will be accepted into the Gecko 1.9.1 / Firefox 3.1 codebase (initially to be on the mozilla-central repository, soon to be branched to the mozilla-1.9.1 repository).
* Component leads will re-triage their blocking bugs marking those requiring Beta exposure as "P1", and those required for release as "P2"; any other priority will imply that the blocker is a significant issue but one which should only get attention if the P1s and P2s aren't being actively worked. This is to be completed by Thursday, December 4th.
* Regular triage meetings will be held to process outstanding blocker nominations and approval requests. At the weekly development meetings the blocker fix rates and acceptance rates will be presented & discussed to ensure we keep an eye on progress.
* No new features will be accepted into Beta 3. Limited string changes will be accepted. No add-on compatibility changes will be accepted.
* Beta 3 code freeze will be scheduled based on the results of the triage, but is expected to be in early January 2009.
// Discussion
Please discuss the aspects of this proposal on this thread (follow-up to dev.planning). We will also discuss it during today's development meeting at 11am PST (see https://wiki.mozilla.org/Platform/2008-11-25 for details).
We still want to make the promise to add-ons developers that beta2 will be "stable enough" to start mass converting add-ons, and your email does mention this.
It follows in my mind that by making this statement we're committing to keep major functionality after beta2. For example, it would be bad if someone wants to take advantage of DOM worker threads in their add-on, and we pull it before beta3.
I just want to call this out as something that's an implicit promise we're making. If we're not ready to make that promise we should make sure we say so.
Mike Beltzner wrote: > * No new features will be accepted into Beta 3. Limited string changes > will be accepted. No add-on compatibility changes will be accepted.
For what it's worth, I have some changes that still need to happen to the tab drag/drop stuff that are technically add-on compat changes (in that they change the notifications add-ons see), but are actually aiming to reduce the bar for add-ons working correctly. Would those be accepted for beta 3? The current notifications are just wildly wrong when a page that's still loading is dragged to a different window.
On 25-Nov-08, at 11:06 AM, Christopher Blizzard wrote:
> We still want to make the promise to add-ons developers that beta2 > will be "stable enough" to start mass converting add-ons, and your > email does mention this.
Yes, this is an important plank of both the rationale and the process!
> It follows in my mind that by making this statement we're committing > to keep major functionality after beta2. For example, it would be bad > if someone wants to take advantage of DOM worker threads in their > add-on, and we pull it before beta3.
Part of the Beta 2 criteria was that anything that made it into that beta was being accepted as our set of technologies to ship in Firefox 3.1. I concur that we're making this implicit promise, and will make sure that's a point drawn clearly on the call.
Of course, if it turns out that worker threads puts our overall release at risk, or introduces massive-scope security problems, etc, we might have to re-evaluate. We're never going to ship something unless it's ready. However, because we're making a commitment to our add-on developers, it wouldn't be removed lightly or without evaluating alternatives.
> I just want to call this out as something that's an implicit promise > we're making. If we're not ready to make that promise we should make > sure we say so.
This is a little tricky, as I don't want to walk down the route where we're making platform-promises to anyone. Firefox is the product that's driving here, and we'll do what's best for Firefox. Wherever possible we will do things to work with and make things easier for our add-on community, but we can't get into a position where we limit our ability to make required changes to the codebase in order to serve that portion of our community. I'm perhaps focusing on a semantic nit here (about what "required") means, and indeed it would have to be a pretty major issue to appear at this point to make us change course, but I don't want to make blanket promises that handcuff us, either.
> Mike Beltzner wrote: >> * No new features will be accepted into Beta 3. Limited string >> changes will be accepted. No add-on compatibility changes will be >> accepted.
> For what it's worth, I have some changes that still need to happen > to the tab drag/drop stuff that are technically add-on compat > changes (in that they change the notifications add-ons see), but are > actually aiming to reduce the bar for add-ons working correctly. > Would those be accepted for beta 3? The current notifications are > just wildly wrong when a page that's still loading is dragged to a > different window.
It depends. If I were an add-on developer, and I started building my add-on one way, would that still work after these changes? That's what I'd consider "compatibility". Improvements will always be accepted. :)
Mike Beltzner wrote: >> For what it's worth, I have some changes that still need to happen to >> the tab drag/drop stuff that are technically add-on compat changes (in >> that they change the notifications add-ons see), but are actually >> aiming to reduce the bar for add-ons working correctly. Would those >> be accepted for beta 3? The current notifications are just wildly >> wrong when a page that's still loading is dragged to a different window.
> It depends. If I were an add-on developer, and I started building my > add-on one way, would that still work after these changes?
That really depends on how invasive your add-on was, what assumptions it made, and how much it tried to work around the existing bugginess.
Put another way, any change in the event sequence add-ons see is a potential add-on failure point if add-ons make enough assumptions.
I think in this case add-ons that don't make boneheaded assumptions will still work after these changes, and the number of addons that don't make boneheaded assumptions and still work will increase.
>> Mike Beltzner wrote: >>> * No new features will be accepted into Beta 3. Limited string >>> changes will be accepted. No add-on compatibility changes will be >>> accepted.
>> For what it's worth, I have some changes that still need to happen >> to the tab drag/drop stuff that are technically add-on compat >> changes (in that they change the notifications add-ons see), but >> are actually aiming to reduce the bar for add-ons working >> correctly. Would those be accepted for beta 3? The current >> notifications are just wildly wrong when a page that's still >> loading is dragged to a different window.
> It depends. If I were an add-on developer, and I started building my > add-on one way, would that still work after these changes? That's > what I'd consider "compatibility". Improvements will always be > accepted. :)
I think that if the current way is broken, and this enables a more stable and reliable addon, we should tell addon authors that this specific piece needs work, and b2 should not be their target for that specific functionality. If the implementation of a new feature is flawed, we should tell addon authors that we're fixing it and just do it, rather than ship a substandard impl. This would obviously need to be done by b3, of course.
Christopher Blizzard wrote: > Mike, thanks for the mail.
> We still want to make the promise to add-ons developers that beta2 > will be "stable enough" to start mass converting add-ons, and your > email does mention this.
But what if extensions don't work with 3.1b2? I can't get many good things to happen with -chrome <chromeurl> based extensions.
<johnjbar...@johnjbarton.com> wrote: > Christopher Blizzard wrote:
>> Mike, thanks for the mail.
>> We still want to make the promise to add-ons developers that beta2 >> will be "stable enough" to start mass converting add-ons, and your >> email does mention this.
> But what if extensions don't work with 3.1b2? I can't get many good things > to happen with -chrome <chromeurl> based extensions.
Do they work with 3.1b1? With 3.0.x? Bug numbers? Test cases?
Mike Shaver wrote: > On Tue, Nov 25, 2008 at 7:21 PM, John J Barton > <johnjbar...@johnjbarton.com> wrote: >> Christopher Blizzard wrote: >>> Mike, thanks for the mail.
>>> We still want to make the promise to add-ons developers that beta2 >>> will be "stable enough" to start mass converting add-ons, and your >>> email does mention this. >> But what if extensions don't work with 3.1b2? I can't get many good things >> to happen with -chrome <chromeurl> based extensions.
> Do they work with 3.1b1? With 3.0.x? Bug numbers? Test cases?
> Mike Shaver wrote: >> On Tue, Nov 25, 2008 at 7:21 PM, John J Barton >> <johnjbar...@johnjbarton.com> wrote: >>> Christopher Blizzard wrote: >>>> Mike, thanks for the mail.
>>>> We still want to make the promise to add-ons developers that beta2 >>>> will be "stable enough" to start mass converting add-ons, and your >>>> email does mention this. >>> But what if extensions don't work with 3.1b2? I can't get many >>> good things >>> to happen with -chrome <chromeurl> based extensions. >> Do they work with 3.1b1? With 3.0.x? Bug numbers? Test cases?
> No, yes, 465993, 465993.
You should probably nominate things like this when you find them.
Mike Beltzner wrote: > [...] I don't want to walk down the route where > we're making platform-promises to anyone. Firefox is the product that's > driving here, and we'll do what's best for Firefox.
I think that's one point that is rarely explicitely stated but often felt in a hard way by the platform/XULRunner community, and if we're serious about spreading the paltform and XULRunner, we need to think hard about this topic - probably not right at this point in the 3.1 cycle, but generally.
> Mike Beltzner wrote: >> [...] I don't want to walk down the route where >> we're making platform-promises to anyone. Firefox is the product >> that's >> driving here, and we'll do what's best for Firefox.
> I think that's one point that is rarely explicitely stated but often > felt in a hard way by the platform/XULRunner community, and if we're > serious about spreading the paltform and XULRunner, we need to think > hard about this topic - probably not right at this point in the 3.1 > cycle, but generally.
Without disagreeing that there's a lot to talk about here, in this case I was speaking more in terms of Firefox-as-platform (for add-on developers) than Gecko-as-platform (which is I think more relevant to the point you're making.)
Mike Beltzner wrote: > On 26-Nov-08, at 11:27 AM, Robert Kaiser wrote:
>> Mike Beltzner wrote: >>> [...] I don't want to walk down the route where >>> we're making platform-promises to anyone. Firefox is the product that's >>> driving here, and we'll do what's best for Firefox.
>> I think that's one point that is rarely explicitely stated but often >> felt in a hard way by the platform/XULRunner community, and if we're >> serious about spreading the paltform and XULRunner, we need to think >> hard about this topic - probably not right at this point in the 3.1 >> cycle, but generally.
> Without disagreeing that there's a lot to talk about here, in this case > I was speaking more in terms of Firefox-as-platform (for add-on > developers) than Gecko-as-platform (which is I think more relevant to > the point you're making.)
Mike Beltzner wrote: > On 26-Nov-08, at 11:27 AM, Robert Kaiser wrote:
> Without disagreeing that there's a lot to talk about here, in this case > I was speaking more in terms of Firefox-as-platform (for add-on > developers) than Gecko-as-platform (which is I think more relevant to > the point you're making.)
That's the same platform. XULRunner doesn't get its own... anything, pretty much. If, hypothetically, worker threads gets dropped in Firefox 3.1, it won't ever show up in XULRunner 1.9.1. Please either stop separating the two in your mind, or actually separate them and have people actually driving XULRunner by itself?
> Mike Beltzner wrote: >> On 26-Nov-08, at 11:27 AM, Robert Kaiser wrote: >> Without disagreeing that there's a lot to talk about here, in this >> case I was speaking more in terms of Firefox-as-platform (for add- >> on developers) than Gecko-as-platform (which is I think more >> relevant to the point you're making.)
> That's the same platform. XULRunner doesn't get its own... > anything, pretty much. If, hypothetically, worker threads gets > dropped in Firefox 3.1, it won't ever show up in XULRunner 1.9.1. > Please either stop separating the two in your mind, or actually > separate them and have people actually driving XULRunner by itself?
They're not fully separate in my head, no. The point I was making was specifically about the add-on community, which is a very different subset than the application-built-on-Gecko community.
People are welcome to drive XULRunner by itself. I'm pretty sure some people are.
I don't know if I should be posting here about such a trivial thing but I would like to speak up for the Mac OS X users who would like to see more of the swish graphics used in Safari in FF, like search, that's built into cocoa and you can use it, I'm sure, I've seem Smultron use it. And dragging tabs is so much prettier too.
Thanks.
On Nov 27, 10:04 pm, Mike Beltzner <beltz...@mozilla.com> wrote:
> > Mike Beltzner wrote: > >> On 26-Nov-08, at 11:27 AM, Robert Kaiser wrote: > >> Without disagreeing that there's a lot to talk about here, in this > >> case I was speaking more in terms of Firefox-as-platform (for add- > >> on developers) than Gecko-as-platform (which is I think more > >> relevant to the point you're making.)
> > That's the same platform. XULRunner doesn't get its own... > > anything, pretty much. If, hypothetically, worker threads gets > > dropped in Firefox 3.1, it won't ever show up in XULRunner 1.9.1. > > Please either stop separating the two in your mind, or actually > > separate them and have people actually driving XULRunner by itself?
> They're not fully separate in my head, no. The point I was making was > specifically about the add-on community, which is a very different > subset than the application-built-on-Gecko community.
> People are welcome to drive XULRunner by itself. I'm pretty sure some > people are.
>> Mike Beltzner wrote: >> pretty much. If, hypothetically, worker threads gets dropped in >> ...
> They're not fully separate in my head, no. The point I was making was > specifically about the add-on community, which is a very different > subset than the application-built-on-Gecko community.
Being a member of application-built-on-Gecko community with an application that uses worker threads, I am worried about them being dropped even hypothetically.
Could you please provide some links to where this topic is discussed in details?
----- Original Message ----- From: dev-planning-bounces+beltzner=mozilla....@lists.mozilla.org
<dev-planning-bounces+beltzner=mozilla....@lists.mozilla.org> To: dev-plann...@lists.mozilla.org <dev-plann...@lists.mozilla.org> Sent: Fri Nov 28 00:40:24 2008 Subject: Re: Firefox 3.1: Beta 3 proposal
On 2008-11-28 00:04, Mike Beltzner wrote: > On 27-Nov-08, at 4:58 PM, Mook wrote:
>> Mike Beltzner wrote: >> pretty much. If, hypothetically, worker threads gets dropped in >> ...
> They're not fully separate in my head, no. The point I was making was > specifically about the add-on community, which is a very different > subset than the application-built-on-Gecko community.
Being a member of application-built-on-Gecko community with an application that uses worker threads, I am worried about them being dropped even hypothetically.
Could you please provide some links to where this topic is discussed in details?
Christopher Blizzard wrote: > Mike, thanks for the mail.
> We still want to make the promise to add-ons developers that beta2 > will be "stable enough" to start mass converting add-ons, and your > email does mention this.
> It follows in my mind that by making this statement we're committing > to keep major functionality after beta2. For example, it would be bad > if someone wants to take advantage of DOM worker threads in their > add-on, and we pull it before beta3.
My only concern here is suddenly it seems a majorly wanted feature for SM2 (which will base off 1.9.1) was just backed out due to a possible test failure, (harder for patches author to figure out since test was mac-only, we'll try to figure it out though).. anyway, its a patch that had been waiting for gavins review since before b1, (as in quite a long while) he just reviewed it, but it does have potentially addon breaking changes...
See Bug 407725 for the bug I talk about. And Bug 467045 for an actual addon that broke due to that landing.
Will SM be able to have time to investigate and still get this in? (if nothing else than because we've tried so hard to get the bug fixed) ;-)
[even better if because: it appears (to me, but again hard to test locally) that the test failure failure due to a perf increase in a mini-race-condition]
Justin Wood (Callek) wrote: > My only concern here is suddenly it seems a majorly wanted feature for > SM2 (which will base off 1.9.1) was just backed out due to a possible > test failure, (harder for patches author to figure out since test was > mac-only, we'll try to figure it out though).. anyway, its a patch that > had been waiting for gavins review since before b1, (as in quite a long > while) he just reviewed it, but it does have potentially addon breaking > changes...
Actually, this already was tried to get in for 1.9.0 (!) but took several longer review cycles for the smaller fixes until this last really long one for the to-believed-final patch. I really really hope we can get this back in again very soon as it is something that surely should have a nice period of nightly testing and at least one beta before it gets into a final - and it's _the_ blocker for 1.9.1-based SeaMonkey 2 getting customizable toolbar capability at all.