User:Biesi

  • Revision slug: User:Biesi
  • Revision title: User:Biesi
  • Revision id: 133964
  • Created:
  • Creator: Biesi
  • Is current revision? No
  • Comment /* What's new in Gecko 1.9 */

Revision Content


Me

Christian Biesinger <cbiesinger@web.de>, Mozilla Developer.


Release table

For my reference, here's a table of Gecko releases, their branch dates, and corresponding releases of other products:

Gecko release Release date Branch date Other products
Mozilla "0.6" 2000-12-06  ? Netscape 6.0
Mozilla 0.9.2 2001-06-29 2001-06-22 Netscape 6.1
Mozilla 0.9.4 2001-09-14 2001-09-04 Netscape 6.2
Mozilla 1.0 2002-05-29 2002-04-09 Netscape 7.0
Mozilla 1.1 2002-08-27 2002-08-05
Mozilla 1.2 2002-11-26 2002-11-05
Mozilla 1.3 2003-03-12 2003-02-21
Mozilla 1.4 2003-07-01 2003-05-23 Netscape 7.1
Mozilla 1.5 2003-10-07 2003-09-10
Mozilla 1.6 2004-01-15 2003-12-18
Mozilla 1.7 2004-06-17 2004-04-12 Camino 0.8.x; Netscape 7.2; Firefox 1.0 (off the aviary branch)
Mozilla 1.8 n/a 2005-08-12 Camino 1.0 (?); SeaMonkey 1.0; Firefox 1.5

What's new in Gecko 1.9

This is my perspective of the developer-related news in gecko 1.9. Planned as a list of the changes I do, although I might add changes made by others to this list if I consider them important.

  • <object> loading rewritten
    • The source of an object can be dynamically changed (object.setAttribute("data", "foo.swf") or equivalent; same for <embed> and <applet>) (qawanted on this part)
    • Fallback to alternate content for objects happens per the HTML4 specification
    • Server-sent type overrides the type attribute (not for embed/applet)
    • bug 1156
  • (largely bz's work, some parts by me) Pseudo-classes for broken and blocked plugins
    •  :-moz-broken, :-moz-user-disabled, :-moz-suppressed
    •  :-moz-loading
    • Not really meant for web developers; mostly an implementation detail (and for embeddors); maybe useful for userContent.css
    • Note that this work also added :-moz-empty-except-children-with-localname(tagname) which might be useful for some cases (namespace of tagname must be same as the one of the parent element. this selector mishandles dynamic changes)
    • bug 11011, bug 1156, others
  • http-on-examine-response observers can modify/remove the cookie header
    • bug 313414
  • Attempts to access local files using XMLHttpRequest will always try to parse them as XML, irrespective of what their extension is and of what the OS believes their type to be
    • bug 305243


Planned, not yet implemented:

  • allowing extensions to intercept all redirects, giving them the old and new channels
    • DO NOT DO THIS BY IMPLEMENTING "@mozilla.org/netwerk/global-channel-event-sink;1" -- that would almost certainly create security bugs
    • bug 315598
  • Selectors :-moz-type-unsupported, :-moz-has-handlerref
    • bug 309521
  • (likely not me) allowing to use nsIEventQueue from javascript
    • bug 315442
  • text-shadow support
    • might be without blurring
    • bug 10713

New in 1.8 already

I need to merge this into some "what's new in 1.8" list

  • nsIWebBrowserPersist's listeners can now implement nsIInterfaceRequestor::GetInterface and will get an opportunity to provide all interfaces that channels might ask for, including nsIProgressEventSink (not too useful, redundant with nsIWebProgressListener). Useful interfaces here include nsIChannelEventSink and nsIBadCertListener
    • bug 312370, bug 304286 (for nsIBadCertListener), bug 312367
  • Extensions or other necko consumers, including XMLHttpRequest, can set a Cookie header explicitly, and necko will not replace it. stored cookies will be merged with the explicitly set header, in a way that the explicit header will override the stored cookies
    • bug 250375

Revision Source

<p><br>
</p>
<h3 name="Me"> Me </h3>
<p>Christian Biesinger &lt;cbiesinger@web.de&gt;, Mozilla Developer.
</p><p><br>
</p>
<h3 name="Release_table"> Release table </h3>
<p>For my reference, here's a table of Gecko releases, their branch dates, and corresponding releases of other products:
</p>
<table border="1">
<tbody><tr>
<th> Gecko release </th><th> Release date </th><th> Branch date </th><th> Other products
</th></tr>
<tr>
<td> Mozilla "0.6"
</td><td> 2000-12-06
</td><td> ?
</td><td> Netscape 6.0
</td></tr>
<tr>
<td> Mozilla 0.9.2
</td><td> 2001-06-29
</td><td> 2001-06-22
</td><td> Netscape 6.1
</td></tr>
<tr>
<td> Mozilla 0.9.4
</td><td> 2001-09-14
</td><td> 2001-09-04
</td><td> Netscape 6.2
</td></tr>
<tr>
<td> Mozilla 1.0
</td><td> 2002-05-29
</td><td> 2002-04-09
</td><td> Netscape 7.0
</td></tr>
<tr>
<td> Mozilla 1.1
</td><td> 2002-08-27
</td><td> 2002-08-05
</td></tr>
<tr>
<td> Mozilla 1.2
</td><td> 2002-11-26
</td><td> 2002-11-05
</td></tr>
<tr>
<td> Mozilla 1.3
</td><td> 2003-03-12
</td><td> 2003-02-21
</td></tr>
<tr>
<td> Mozilla 1.4
</td><td> 2003-07-01
</td><td> 2003-05-23
</td><td> Netscape 7.1
</td></tr>
<tr>
<td> Mozilla 1.5
</td><td> 2003-10-07
</td><td> 2003-09-10
</td></tr>
<tr>
<td> Mozilla 1.6
</td><td> 2004-01-15
</td><td> 2003-12-18
</td></tr>
<tr>
<td> Mozilla 1.7
</td><td> 2004-06-17
</td><td> 2004-04-12
</td><td> Camino 0.8.x; Netscape 7.2; Firefox 1.0 (off the aviary branch)
</td></tr>
<tr>
<td> Mozilla 1.8
</td><td> n/a
</td><td> 2005-08-12
</td><td> Camino 1.0 (?); SeaMonkey 1.0; Firefox 1.5
</td></tr></tbody></table>
<h3 name="What.27s_new_in_Gecko_1.9"> What's new in Gecko 1.9 </h3>
<p>This is my perspective of the developer-related news in gecko 1.9. Planned as a list of the changes I do, although I might add changes made by others to this list if I consider them important.
</p>
<ul><li> <code>&lt;object&gt;</code> loading rewritten
<ul><li> The source of an object can be dynamically changed (<code>object.setAttribute("data", "foo.swf")</code> or equivalent; same for <code>&lt;embed&gt;</code> and <code>&lt;applet&gt;</code>) (qawanted on this part)
</li><li> Fallback to alternate content for objects happens per the HTML4 specification
</li><li> Server-sent type overrides the type attribute (not for embed/applet)
</li><li> bug 1156
</li></ul>
</li><li> (largely bz's work, some parts by me) Pseudo-classes for broken and blocked plugins
<ul><li> :-moz-broken, :-moz-user-disabled, :-moz-suppressed
</li><li> :-moz-loading
</li><li> Not really meant for web developers; mostly an implementation detail (and for embeddors); maybe useful for userContent.css
</li><li> Note that this work also added :-moz-empty-except-children-with-localname(<i>tagname</i>) which might be useful for some cases (namespace of tagname must be same as the one of the parent element. this selector mishandles dynamic changes)
</li><li> bug 11011, bug 1156, others
</li></ul>
</li><li> http-on-examine-response observers can modify/remove the cookie header
<ul><li> bug 313414
</li></ul>
</li><li> Attempts to access local files using XMLHttpRequest will always try to parse them as XML, irrespective of what their extension is and of what the OS believes their type to be
<ul><li> bug 305243
</li></ul>
</li></ul>
<p><br>
Planned, not yet implemented:
</p>
<ul><li> allowing extensions to intercept all redirects, giving them the old and new channels
<ul><li> DO NOT DO THIS BY IMPLEMENTING "@mozilla.org/netwerk/global-channel-event-sink;1" -- that would almost certainly create security bugs
</li><li> bug 315598
</li></ul>
</li><li> Selectors :-moz-type-unsupported, :-moz-has-handlerref
<ul><li> bug 309521
</li></ul>
</li><li> (likely not me) allowing to use nsIEventQueue from javascript
<ul><li> bug 315442
</li></ul>
</li><li> text-shadow support
<ul><li> might be without blurring
</li><li> bug 10713
</li></ul>
</li></ul>
<h4 name="New_in_1.8_already"> New in 1.8 already </h4>
<p>I need to merge this into some "what's new in 1.8" list
</p>
<ul><li> nsIWebBrowserPersist's listeners can now implement nsIInterfaceRequestor::GetInterface and will get an opportunity to provide all interfaces that channels might ask for, including nsIProgressEventSink (not too useful, redundant with nsIWebProgressListener). Useful interfaces here include nsIChannelEventSink and nsIBadCertListener
<ul><li> bug 312370, bug 304286 (for nsIBadCertListener), bug 312367
</li></ul>
</li><li> Extensions or other necko consumers, including XMLHttpRequest, can set a Cookie header explicitly, and necko will not replace it. stored cookies will be merged with the explicitly set header, in a way that the explicit header will override the stored cookies
<ul><li> bug 250375
</li></ul>
</li></ul>
Revert to this revision