Pale Moon: Pre-release notes for Goanna

26.0.0 beta 4 (2015-12-16)

Note: this beta (specifically) enables Firefox Compatibility mode by default, to gauge overall website compatibility when this mode is enabled. The final version may or may not enable this by default, depending on compatibility feedback. Please try both settings and let us know your experiences!

Over 240 changes since beta 3, highlighting the most prominent:
  • Implemented JavaScript Promises! Websites that rely on this technology for their framework (and don't implement a server-side solution for this as they are supposed to, to be browser-agnostic) should now render properly.
  • Implemented an XSS filter! Pale Moon will now check for XSS (Cross-site scripting) attacks and block XSS content in the resulting pages. This is brand-new technology and feedback on this filter specifically (e.g. bugs, false positives, etc.) should be posted in the dedicated thread on the forum for this feature. Please also see that thread for details on how to use and control this filter.
  • Autoplay of media now has a separate control preference for scripted content. This allows you to have the previous behavior to allow scripted content while blocking standard autoplaying media, or to also block scripted content (setting media.autoplay.allowscripted to false in addition to media.autoplay.enabled) which would effectively stop all automatic playing (but has a few drawbacks for scripted players e.g. on youtube and soundcloud).
  • Several updates to the default theme, including certificate and network error pages.
  • Added a "containing folder" column to search results (can be enabled through "views" -> "show columns") in the history/bookmarks library, and an option to open this folder in the context menu.
  • Removed support for ancient versions of GCC (Minimum supported version is now 4.6) and dehydra, as well as misc. other obsolete pieces of code.
  • Added a History drop-down navigation menu button.
  • Improved handling of very large numbers of tabs.
  • Removed the maintenance service code completely. We never use this, it's unmaintained and a security hazard if built.
  • Updated CSP to handle improper full URLs with otherwise unhandled or mis-handled characters.
  • Removed filtering of preferences to display (specifically the capability.* preferences that Mozilla explicitely hid).
  • Removed text reflow text inside combobox frames to avoid quirks resulting from text-overflow hacks to hide selection comboboxes (e.g. hacks to hide the drop-down arrow needed for older browsers).
  • We now explicitly tell servers we accept WebP image formats in the HTTP header.
  • Updated libpng, libjpeg-turbo, libvpx, and misc other upstream libraries/modules.
  • Applied 25.8.1-comparable security fixes.
  • Implemented a more adaptive style of UserAgent construction to present the finalized versions of the UA in native and Firefox Compatibility modes.
  • Dev: Added a GetElementById() function to document fragments in addition to actual documents.

26.0.0 beta 3 (2015-10-27)

Over 150 changes since beta 2, highlighting the most prominent:
  • Regular expressions behavior change for capturing groups: in the case of a capturing group with quantifiers preventing its exercise, the matched text for a capturing group is now undefined instead of an empty string.
  • Dragging and dropping an image that is served behind a redirect will now properly grab the image instead of the redirect code.
  • Autoplay of media will now also be blocked when autoplay is set to false and the user hasn't interacted with the element, even if this would normally be script-triggered (previously, this media playback triggered by JS would not be blocked).
  • navigator.product will now return "Gecko" instead of "Goanna" since this is a historical requirement (all browsers return "Gecko", even IE and Safari, and some libraries break otherwise). This should make the browser more compatible with particular libraries like certain in-page editors.
  • The Goanna milestone version has been bumped to 2.0 for the first release of Pale Moon with it. This to avoid a platform version used in legacy checks on the web for Gecko 1.8 and 1.9 (Firefox era 3.*) and following the logic that Pale Moon 25.* was in principle milestone 1.0.
  • Added Ecosia as a green search engine alternative.
  • Changed the J-PAKE server configuration to our own key server.
  • Added support for 128-bit Camellia-GCM ciphers in addition to the CBC ciphers.
  • Fixed the handling of location hash changes (hang).
  • Aligned the use of scrollbars in frames&iframes with the HTML5 spec, that states that overflow styling should not affect scrollbars in the frame.
  • Improved scaling for vector images (previously bitmap scaled, now drawn directly at the target resolution).
  • Improved GC memory shrinking.
  • Fixed the handling of media changes in onload= (hang).
  • Updated libnestegg.
  • Fixed a Netscape legacy bug where empty locations would hang the browser or cause rapid and endless reloads.
  • Changed the tab close buttons to be red on hover (Windows aero). Still needs some graphics updates.
  • Added a control pref for onunload= events as dom.disable_beforeunload.
  • Prevented (simulated) clicks during onunload to prevent DoS caused by unload looping. (bad pages are bad, mmkay?)
  • Prevented content preferences (dictionary) from being written without the user's interaction.
  • Fixed incorrect handling by WASAPI for surround channels (crash).
  • Removed N/A download listeners in the status bar code.
  • Permitted spec-breaking Regex classes for ranges.
  • Improved pure string matching performance for Regex (fast path).
  • Bumped Firefox compat version to 38.*.
  • Re-worked the theme styling for the default theme, including specific Win10 adjustments and fixes for the changes in metrics on that OS.
  • Added app/vendor specific UA override section + first entry for WhatsApp.
  • Crash fix: Gracefully handle bogus URIs passed to CSS style filters.
  • Pale Moon will now honor margin-left and margin-right on elements in inline layouts that have 0 width and/or height.
  • Added CSS media queries for determining OS: Linux, MacOS X, BSD in addition to the Windows ones.
  • Properly fixed the dictionary logic (rewrite).
  • Disabled battery API by default to prevent privacy leaks.
  • Removed incorrect orange color from the AppMenu button's edge.
  • Removed metro browser code.

26.0.0 beta 2 (2015-08-28)

Main changes:
  • Fixed integration of modules.
  • Improved website compatibility (Gecko compatibility pref, etc.).
  • Implemented Ruby Annotations.
  • Updated GL texture formats.
  • Fixed scaling of JPEG images with EXIF data.
  • Fixed reading of EXIF data for little-endian encoded files.
  • Made sure that a table following left float clears it when it can't fit next to it.
  • Added support for BASE tag parsing in source view.
  • Added a preference to stop focusing the Pale Moon window on opening an external link ('browser.tabs.noWindowActivationOnExternal' pref)

26.0.0 beta 1 (2015-08-04)

Main changes:
  • Switched over the code base to Goanna.
  • Added support for element.matches()
  • Added conservative image decoding.
  • Added WebP support.
  • Restored the library scope bar.
  • Removed various invasive telemetry components.
  • Aligned 3D transforms with the spec.
  • Improved performance of TypeOf calls.
  • Changed handling of DNS to be more efficient.
  • Added background-repeat:space and background-repeat:round CSS keywords.
    Note: "space" still has an issue when using hardware acceleration.

Site and contents Copyright © 2009-2023 Moonchild Productions - All rights reserved
Pale Moon is subject to the following licensing.
Policies: Cookies - User Content - Privacy.