Google Groups Home
Help | Sign in
What's next after Firefox 3 and Gecko 1.9?
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  Messages 1 - 25 of 40 - Collapse all   Newer >
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
schrep  
View profile
(2 users)  More options May 19, 5:38 pm
Newsgroups: mozilla.dev.planning
From: schrep <sch...@mozilla.com>
Date: Mon, 19 May 2008 17:38:13 -0400
Local: Mon, May 19 2008 5:38 pm
Subject: What's next after Firefox 3 and Gecko 1.9?
There have been several discussions of 1.9.1/Moz2 and future product
releases here
(http://groups.google.com/group/mozilla.dev.planning/browse_frm/thread...,
http://groups.google.com/group/mozilla.dev.planning/browse_frm/thread...)
and it has been discussed many times in the Mozilla 2 meetings. Not
everyone could make those meetings but more importantly not everyone was
aware we would be discussing 1.9.1/moz2 there.

In order to drive us closer to conclusion I wanted to consolidate my
understanding of the current plan in *early* draft form below.  I
propose we iterate on this here and take a final form to the
wiki's/blogs for wider distribution.

So please edit, add questions, to the draft below...

Best,

Schrep

*** DRAFT PLAN ****
*******************

Product Releases
----------------

Firefox 2.0.0.x and 3.0.x:

We'll continue the maintenance schedule we set with Firefox 1.5 - namely
doing scheduled maintenance releases of Firefox 3.0.x and Firefox
2.0.0.x every 6-8 weeks.  These releases will focus on security and
stability improvements and cannot add new features, change UX, or break
extensions unless it is required for security purposes or is otherwise
critical.   Since Firefox 3.1 is coming out so quickly after 3.0 I
expect the size of these maintenance releases to be smaller than they
have been for the 2.0.0.x series.  Support releases for Firefox 2.0.0.x
will terminate at the latest approximately 6 months after the shipment
of Firefox 3.    This coincides with the approximate ship date of
Firefox 3.1.

Firefox 3.1:

There were a number of features that we held back from Firefox 3 because
they weren't quite ready - but they were nearly complete.    These
include things like XHR, native JSON DOM bindings, ongoing performance
tuning,  awesomebar++, better system integration, etc.  This along with
the overall quality of Gecko 1.9 as a basis for mobile and the desire to
get new platform features out to web developers sooner has lead to us
want to do a second release of Firefox this year.   This release would
be date-driven and targeted at the end of 2008.   Any features not ready
in time will move to the next major release.  This is currently planned
to be based on Gecko 1.9.1 - but if there are solid technical reasons
for breaking frozen APIs we will bump the version number to Mozilla2.

Firefox Mobile:

There are already devices shipping with early versions of Gecko 1.9 at
the core.  More are coming soon and we'll be releasing milestones of
full branded versions of Firefox (with XUL and the Firefox team taking a
lead in the user experience) later this year.  This lines up well with
Firefox 3.1 and a synchronized release schedule will make everything run
more smoothly.

Firefox 4:

Firefox 4 will incorporate some of the more aggressive platform
improvements in Mozilla2.   It is far too early to set a shipping date
but an initial target would be sometime in late 2009.  Mozilla2 work has
been underway for > 8 months

Platform Releases
-----------------

Gecko 1.9.0.x:

Release date: By end of June 2008
Status: Stable
Accepted Changes: Security, stability, performance, minor enhancements
that do not change *any* exposed APIs.   All changes must pass all
regression tests and not regress performance.
Development Tree: CVS Trunk
Bugzilla Flags: blocking1.9.0.x
Planning Center:

Gecko 1.9.1:

Release date: Beta stable summer 2008, production stable end of 2008
Status: In development
Accepted Changes: Anything that doesn't break frozen API's.   Passing
unit tests and proof of no negative impact on perf from Talos required
before check-in
Development Tree: Hg mozilla-central - will move to a branch before end
of summer 2008
Bugzilla Flags: blocking1.9.1
Planning Center:

Mozilla2:

Release date: Beta stable mid 2009
Status: In development
Accepted Changes: Anything that doesn't regress functionality or performance
Development Tree: Hg mozilla-central
Bugzilla Flags: ?
Planning Center: http://wiki.mozilla.org/Mozilla_2

Q&A
------

Q: I'm running a project based on Gecko and am confused as to weather to
ship on 1.9.0.x, 1.9.1, or Mozilla2?

A: If you are shipping before Nov/Dec 2008 we recommend you ship on
Gecko 1.9.0.x since it is the stable release.  If your product is
shipping after Dec 2008 we'd recommend you use Gecko 1.9.1.x since it
will be stable by then.   If you are shipping later you may want to
consider Mozilla2

Q: Will Firefox 3.1 ship on 1.9.1 or Mozilla2?

A: We will start with 1.9.1 but if there is a compelling technical
reason to break frozen APIs the drivers and module owners may decide to
do so.  If we break frozen APIs we will call it Gecko 2.0 and give fair
notice.

Q: .... please add common questions here..


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Jonas Sicking  
View profile
 More options May 19, 6:55 pm
Newsgroups: mozilla.dev.planning
From: Jonas Sicking <jo...@sicking.cc>
Date: Mon, 19 May 2008 15:55:37 -0700
Local: Mon, May 19 2008 6:55 pm
Subject: Re: What's next after Firefox 3 and Gecko 1.9?
Q: Will *all* APIs remain compatible between 1.9.1 and 1.9 as they were
    between 1.8.1 and 1.8?

A: No, only frozen APIs will remain compatible. I.e. we are free to
    change as many APIs between 1.9 and 1.9.1 as we did between 1.8 and
    1.9

At least that's what I'm hoping the answer is :)

/ Jonas


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Mike Beltzner  
View profile
(1 user)  More options May 19, 7:03 pm
Newsgroups: mozilla.dev.planning
From: "Mike Beltzner" <beltz...@mozilla.com>
Date: Mon, 19 May 2008 16:03:34 -0700 (PDT)
Local: Mon, May 19 2008 7:03 pm
Subject: Re: What's next after Firefox 3 and Gecko 1.9?
What would that answer mean for add-on compatibility?

cheers,
mike


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Jonas Sicking  
View profile
 More options May 19, 7:15 pm
Newsgroups: mozilla.dev.planning
From: Jonas Sicking <jo...@sicking.cc>
Date: Mon, 19 May 2008 16:15:45 -0700
Local: Mon, May 19 2008 7:15 pm
Subject: Re: What's next after Firefox 3 and Gecko 1.9?
I think we gained very little as far as add-on compatibility goes by
freezing as many APIs as we did. Only binary extensions have anything to
gain by the level of freezing that we used, script-only extensions will
not be affected.

I don't have any data on how many of our top-extensions have binary
components though.

The cost of freezing all interfaces was quite high. It uglified new code
a good bit as well as cost in performance and memory (though probably
not to a significant extent).

This was sort of ok when the changes went in to a branch that is
eventually going to die. It would suck a lot more to do that to
mozilla-central where we'd have to clean up the mess later, or live with
it forever.

/ Jonas


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Mike Beltzner  
View profile
(1 user)  More options May 19, 7:23 pm
Newsgroups: mozilla.dev.planning
From: "Mike Beltzner" <beltz...@mozilla.com>
Date: Mon, 19 May 2008 16:23:49 -0700 (PDT)
Local: Mon, May 19 2008 7:23 pm
Subject: Re: What's next after Firefox 3 and Gecko 1.9?
Heh, so it would mean compat would be affected, then :)

I'm not saying we should or shouldn't feeze. APIs, and most definitely we
should make the decision based on previous experience. Just wanted to make
sure I understood the impact.

cheers,
mike


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Jonas Sicking  
View profile
(1 user)  More options May 19, 7:30 pm
Newsgroups: mozilla.dev.planning
From: Jonas Sicking <jo...@sicking.cc>
Date: Mon, 19 May 2008 16:30:03 -0700
Local: Mon, May 19 2008 7:30 pm
Subject: Re: What's next after Firefox 3 and Gecko 1.9?
Yes, compat would definitely be affected. But I believe the benefit/cost
ratio is low enough that it's not worth it.

/ Jonas


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
chris hofmann  
View profile
 More options May 19, 8:19 pm
Newsgroups: mozilla.dev.planning
From: chris hofmann <chofm...@meer.net>
Date: Mon, 19 May 2008 17:19:12 -0700
Local: Mon, May 19 2008 8:19 pm
Subject: Re: What's next after Firefox 3 and Gecko 1.9?

To add some data:

I recently saw that overall about 10% of add-ons on the AMO site today
have binary components.

More importantly I'm not sure how this 10% is weighted as far as actual
use.  I do know there are several in the top 20,50, 100...   That would
be the key to compatibility and the ability to recover from changes.

We should also plan on a lot longer ship cycle if we start introducing
signficant levels of API changes.     In Firefox 2 it took about a 2-3
month push to get extension compatibility to an acceptable shipping
level, and for the most part it was just a testing and version
compatibilty rev'ing exercise.    In Firefox 3 it was more like a 5-6
month push, with a lot more work, and with a lot more people working
hard to make that happen.  In the end we didn't quite get to the level
of extension compatibility we had for Firefox 2, but we came pretty close.

This is not to say we should/should not freeze api's.  This is to say
that the number and area of API changes is one of the factors that will
determine a realistic schedule, since we need a reasonable level of
extension compatibility to ship any release.

The best thing that could be done is to map out *which* APIs might
change, then do a bit of estimating on what the impact of the changes
might be on extension compatibility and the back end of the schedule.  
Where is a good area to start mapping out the proposed changes?

The other thing is that if we are going to change APIs, we need to get
this work done early, and enforce some early API freeze dates.  
Dragging the API changes out into late betas also lengthens the period
needed to get extension developers working on compatibility, and will
turn out to lengthen the overall shipping schedule.

Extension compatibility also relies on a wide variety of areas beyond
binary compatibility, so freeze dates ought to account for all those areas.

-chofmann


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
John J Barton  
View profile
(1 user)  More options May 19, 9:18 pm
Newsgroups: mozilla.dev.planning
From: John J Barton <johnjbar...@johnjbarton.com>
Date: Mon, 19 May 2008 18:18:04 -0700
Local: Mon, May 19 2008 9:18 pm
Subject: Re: What's next after Firefox 3 and Gecko 1.9?

Jonas Sicking wrote:
> I think we gained very little as far as add-on compatibility goes by
> freezing as many APIs as we did. Only binary extensions have anything to
> gain by the level of freezing that we used, script-only extensions will
> not be affected.

Mozilla seems to have several different kinds of APIs so I'm not clear
on what freezing/compatibility issues are being discussed.  But late in
FF3, the effective API for extensions changed because of changes in
security model. At least for Firebug this had far more impact than any
reworking of APIs I can imagine.  Similarly the new https requirement on
extensions.  So if some good comes from evolving the APIs, its seems
like it would not be significant additional cost for extensions.

John.


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Boris Zbarsky  
View profile
(1 user)  More options May 19, 9:58 pm
Newsgroups: mozilla.dev.planning
From: Boris Zbarsky <bzbar...@mit.edu>
Date: Mon, 19 May 2008 20:58:12 -0500
Local: Mon, May 19 2008 9:58 pm
Subject: Re: What's next after Firefox 3 and Gecko 1.9?

chris hofmann wrote:
> The best thing that could be done is to map out *which* APIs might
> change, then do a bit of estimating on what the impact of the changes
> might be on extension compatibility and the back end of the schedule.  
> Where is a good area to start mapping out the proposed changes?

Can we turn that around?  Would it be possible, given an interface, to scan AMO
for binary extensions that use that interface in their binary blobs?

> The other thing is that if we are going to change APIs, we need to get
> this work done early, and enforce some early API freeze dates.  

The problem is that API changes are not the end in and of themselves, usually.
They are often needed, for our core "internal" APIs to address other issues that
come up.  No one is suggesting changing APIs for the fun of it, I don't think.

For example, note that if a blocker issue comes up in RC1 right now that can be
most easily fixed by changing nsIContent we would change nsIContent before we
ship final.  The question is whether 1.9.1 should be held to a higher bar than
this (as 1.8.1 was).

-Boris


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.