minor update post source parity

Cameron Kaiser 2018-07-14 21:56:03 +00:00
parent 4e635775e2
commit 699a4ae941

@ -1,6 +1,8 @@
TenFourFox "10.4Fx" is designed to be as close to Mozilla sources as possible, for as long as possible (see [[our Parity page|Parity]] for how we plan to deal with the inevitable code divergence). In general, pretty much anything that applies to Firefox applies to 10.4Fx. However, because of limitations in earlier versions of OS X that we still support, there are some omissions and changes in features that should be noted by users and porters, and 10.4Fx also adds new PowerPC-specific features that are unique.
TenFourFox "10.4Fx" was designed to be as close to Mozilla sources as possible, for as long as possible, and in general pretty much anything that applies to Firefox 45 applies to 10.4Fx. However, because of limitations in earlier versions of OS X that we still support, there are some omissions and changes in features that should be noted by users and porters, and 10.4Fx also adds new PowerPC-specific features that are unique.
* 10.4Fx only partially supports the Mozilla IPC system, and only insofar as it is needed to build. The actual IPC internals only work between threads and not processes. Electrolysis multi-process support is not planned due to limitations of the core operating system.
(This document covers only low-level and system features implemented or different in TenFourFox; new HTML5 and Web-facing features in the FPR releases that don't fall in those categories are not enumerated here.)
* 10.4Fx only partially supports the Mozilla IPC system, and only insofar as it is needed to build. The actual IPC internals only work between threads and not processes. Electrolysis multi-process support is implemented due to limitations of the core operating system.
* Because of increasingly poor plugin support on Tiger and PowerPC, plugins ship disabled in 10.4Fx 6.0, and no longer function at all in 19.0 and up. This is both for reasons of security (particularly with Flash) and the use of incompatible later OS X APIs. Bug reports related to plugins will not be accepted. See our document on [[plugin non-support|PluginsNoLongerSupported]].
@ -9,7 +11,7 @@ TenFourFox "10.4Fx" is designed to be as close to Mozilla sources as possible, f
* MP3 audio support was added using the [`minimp3`](http://keyj.emphy.de/minimp3/) library starting in 31.2 (but due to various streaming bugs was not officially supported until version 38). Starting in version 45.5.0, this support is implemented as a full platform decoder to integrate into Mozilla's MP3 parser-seeker ([issue 325](https://github.com/classilla/tenfourfox/issues/325)).
* OpenGL support is presently disabled in 10.4Fx. This is Apple's fault, as Mozilla requires non-power-of-two texture sizes, which require OpenGL 2. Unfortunately, PPC Tiger does not support OpenGL 2 at all, and only a subset of cards support it in PPC Leopard (the really irritating part is that Intel Tiger does have OpenGL 2, and OpenGL 2 came out in 2004!). It may be enabled in the future for those handful of configurations on Leopard, but this won't benefit the majority of users. Note that many graphics features will work just fine; they just won't be hardware-accelerated.
* OpenGL support is presently disabled in 10.4Fx. This is Apple's fault, as Mozilla requires non-power-of-two texture sizes, which require OpenGL 2. Unfortunately, PPC Tiger does not support OpenGL 2 at all, and only a subset of cards support it in PPC Leopard (the really irritating part is that Intel Tiger does have OpenGL 2, and OpenGL 2 came out in 2004!). Note that many graphics features will work just fine; they just won't be hardware-accelerated.
* Because there is no OpenGL 2, there is no WebGL. The Linux version of Firefox has a fallback to `libOSMesa`, which is a software OpenGL rendering library. Some work has been done on porting this to 10.4 without the X11 dependencies so that it is a pure renderer suitable for this task, but it is currently not working. The `libOSMesa` that is built-in to 10.4 cannot be used, because it is not OpenGL 2 (10.5's may be useable, but this is not yet explored or enabled).
@ -24,7 +26,7 @@ TenFourFox "10.4Fx" is designed to be as close to Mozilla sources as possible, f
* All text rendering in 10.4Fx uses Apple Type Services (ATS) and HarfBuzz, an OpenType font shaper. While some portions of code leverage Tiger's private CoreText framework (yes, CoreText is in Tiger too), Tiger's CoreText does not support enough font features to allow Mozilla's built-in CoreText shaper to function correctly. HarfBuzz actually works just fine for the vast majority of cases, and appears to be faster overall to boot, so this is a net win.
However, installed fonts and scripts that require Apple Advanced Typography features to correctly render, such as Indic and Arabic fonts, may not have correct ligatures or glyph substitution or reordering depending on if HarfBuz can interpret AAT information encoded in the fonts that come standard with OS X. As a result, although the characters will appear on-screen, they may not be linked or ordered properly; if the site provides an OpenType-equivalent, however, some scripts may be able to display correctly (and more will work correctly in the future). Most European and other Asian characters and scripts obviously work fine, of course. For more information, see [issue 5](/classilla/tenfourfox/issues/5).
However, installed fonts and scripts that require Apple Advanced Typography features to correctly render, such as Indic and Arabic fonts, may not have correct ligatures or glyph substitution or reordering depending on if HarfBuzz can interpret AAT information encoded in the fonts that come standard with OS X. As a result, although the characters will appear on-screen, they may not be linked or ordered properly; if the site provides an OpenType or Graphite equivalent, however, many scripts may be able to display correctly. Most European and other Asian characters and scripts obviously work fine, of course. For more information, see [issue 5](/classilla/tenfourfox/issues/5).
Because of the underlying use of ATS for font instantiation and enumeration, certain fonts that may be otherwise compatible with CoreText are filtered using a built-in series of blocklists if they trip bugs in ATS. Starting in 38.0, the browser also implements a font directory cache of installed fonts for higher performance during enumeration.