Software-update: Pale Moon 32.2.0

Pale Moon logo (75 pix) Versie 32.2 van Pale Moon is uitgekomen. Deze webbrowser is ooit begonnen als een fork van Mozilla Firefox. Door optimalisaties voor moderne hardware en het weglaten van Accessibility-features en Parental Controls presteerde hij toen een stuk beter. Ook was er een 64bit-versie beschikbaar, ruim voordat Mozilla deze zelf aanbood. Intern werkt het op Goanna, een van Mozilla's Gecko afgeleide browserengine. De browser is beschikbaar voor Windows en Linux, en als bèta ook voor macOS en FreeBSD.

Vanaf versie 30 identificeert de browser zich naar buiten toe weer als een Firefox-browser, wat het eenvoudiger moet maken om oudere browserextensies te gebruiken. De download van Pale Moon is alleen in het Engels; een apart Nederlands taalbestand is beschikbaar. In deze uitgave zijn de volgende veranderingen en verbeteringen doorgevoerd:

Pale Moon version 32.2.0

This is another important, major development update, continuing our rapid development efforts in the v32 milestone. With this version we should have restored web compatibility with the majority of reported problematic websites. If you were previously running into websites being problematic in Pale Moon, it may be a good idea to try them again with this release. Special thanks to Job Bautista, martok, dbsoft, FranklinDM and Travis for continuing their hard work making this a reality! This updates our UXP/Goanna platform version to 6.2.

Changes/fixes:
  • Implemented dynamic module imports. See implementation notes.
  • Implemented exporting of async functions in modules.
  • Implemented JavaScript class fields. See implementation notes.
  • Implemented logical assignment operators ||=, &&= and ??=.
  • Implemented a solution for websites using the officially deprecated ambiguous window.event. This is disabled by default but can be enabled through about:config's dom.window.event.enabled preference. See implementation notes.
  • Implemented self.structuredClone() (this may be very obscure to anyone except web developers. Apologies ;-) )
  • Implemented Element.replaceChildren. Once again primarily a web developer note.
  • Improved Shadow DOM :host matching.
  • Implemented WebComponents' CSS ::slotted() and related functionality.
  • Improved page caching in our memory allocator.
  • Added support for FFmpeg 6.0, especially important for bleeding-edge Linux distros.
  • Fixed a potential drawing deadlock for images, specifically SVG. This solves a number of hang-on-shutdown scenarios.
  • Fixed various crashes related to WebComponents and our recent JavaScript work.
  • Fixed various build-from-source issues on secondary target platforms.
  • Fixed various small browser front-end scripting issues that could lead to errors or broken functionality.
  • Fixed handling of async (arrow) functions declared inside constructors.
  • Fixed various small JavaScript conformance issues.
  • Fixed an issue where JavaScript (only in modules) would not properly create async wrappers.
  • Updated the DOM Performance API to the current spec (User Timing L3).
    See implementation notes, especially if you intend to use this in web content for critical functionality.
  • Updated keypress event handling to send keypress events on Ctrl+Enter.
  • Updated internal JavaScript structures to make future porting easier, as well as improve JavaScript performance.
  • Updated window handling and styling on Mac.
  • Updated the Freetype lib to 2.13.0.
  • Updated the Harfbuzz lib to 7.1.0.
  • Updated our DNS lookup calls to use inet_ntoa() instead of the deprecated inet_ntop().
  • Updated the Fetch API to use the global's base URL instead of the entry document's base URL for spec compliance.
  • We no longer support the outmoded fontconfig on GTK systems.
  • We no longer parse or return the body of known-empty responses from servers (content-length of 0, or in case of HEAD or CONNECT methods).
  • Implemented scaled font caching on GTK, improving performance.
  • Fixed a build issue when building for Linux on ARM64 on later distros.
  • Split out more parts of the browser into separate .dll files on Windows to reduce compiler strain and an oversized xul.dll
  • Removed mozilla::AlignedStorage (code cleanup).
  • Builds for FreeBSD now use xz for packaging instead of bzip2. By request, we now also offer GTK2 builds for FreeBSD.
  • Merged the preference dom.getRootNode.enabled into the dom.webcomponents.enabled pref. See implementation notes.
  • Fixed a potential DoS issue with JPEG decoding.
  • Fixed a potential issue in Windows widget code that could lead to crashes.
  • Disabled potentially hazardous external protocols on Windows.
  • Added known-problematic .dlls to the internal blocklist.
  • Security issues addressed: CVE-2023-32209, CVE-2023-32214 and several others that do not have a CVE designation.
  • UXP Mozilla security patch summary: 4 fixed, 1 rejected, 27 not applicable.
Implementation notes:
  • JavaScript modules have various methods of being loaded into web page content. One of the later introduced methods is a function-style import() declaration, so-called "dynamic module imports" that has been used by various web frameworks, causing issues for Pale Moon resulting in blank pages in most cases (since the websites would not actually use document structure HTML, but rather JavaScript to create content, all from imported modules). This has been a major web compatibility issue lately and we're pleased to announce that this complex bit of machinery has been implemented.
  • JavaScript's language specification is continuing to be watered down from a prototyping language towards a more "C-like" hybrid. As part of that effort, JavaScript classes were introduced in ECMAScript 6, and now further expanded in ES2022 with class fields and private class fields/methods, as well as statics. We should have a complete implementation of this now, which constitutes the more important parts of the ES2022 language update.
  • The use of the outdated Microsoft Internet Explorer global window.event has been a pervasive web compatibility issue for us, especially since it was officially deprecated and we never implemented this ambiguous and unreliable property that is highly-context sensitive. Websites should use the event as passed into the event handler to get the event source instead. However, since neither Chrome nor Firefox have dropped this and seem to be playing a game of "chicken", it remains in use on the web. To deal with this conflict, we have now implemented the equivalent behind a preference to enable users to (temporarily) use the global window.event while webmasters update their websites. We hope the Google camp will finally drop this one soon so we can be done with this legacy quirk.
  • The DOM Performance API was updated to the User Timing level 3 spec. It should be critically noted that the DOM Performance API was never designed to be used as a matter of course on published content, and was designed only for page performance analysis use by web designers. Of course, as part of making dev tools available to the web, a lot of abuse ensued because of the accurate navigation and timing measurements that this API can provide (looking at you, Google!). Because of tight integration with web content analysis, the older spec implementation we had was causing issues and actually breaking some services, so we updated it, but with a few important key differences:
    • In Pale Moon, we keep navigation timing disabled because it's a notable privacy issue for the data it can gather (exact navigational events and timings). If you're a web dev and need these timing measurements, you can enable them with dom.enable_performance_navigation_timing.
    • Our implementation, contrary to the spec, does not allow unlimited recording of performance events (effectively logging every page event!) which can also rapidly eat up memory. Instead we enforce a sane default quota that should be roomy enough for all legitimate use, but prevents runaway resource use or extensive logging of user actions.
    • If the set quota is reached, a warning will be printed in the console and the recorded performance events will be thrown away. If you (foolishly) rely on Performance API events for your web application to function, be aware this may cause compatibility issues as the API was, again, not designed to be used in such a fashion. For event handling, there are much better alternatives available which do not involve extensive recording of user data or relying on a developer tool API.
  • We've historically implemented the DOM getRootNode function as it was being used in the wild as a standalone function, however its main intent has always been to be a helper function part of Shadow DOM/WebComponents. As such we have now merged the preference into the WebComponents preference, enabling and disabling it along with the rest of our WebComponents implementation.

Pale Moon

Versienummer 32.2.0
Releasestatus Final
Besturingssystemen Windows 7, Linux, BSD, macOS, Windows 8, Windows 10, Windows 11
Website Moonchild Productions
Download https://www.palemoon.org/download.shtml
Licentietype GPL

Door Bart van Klaveren

Downloads en Best Buy Guide

16-05-2023 • 15:55

7

Bron: Moonchild Productions

Update-historie

Reacties (7)

7
7
4
0
0
2
Wijzig sortering
Wat heeft het voor voordeel om deze browser te gebruiken?
Beter in security?
Sneller?
Ik heb als OS Linux Mint en gebruik als standaard browser Waterfox.
Voor MacOS 10.7.5 en 10.8 is het nog een prima browser. Safari werkt daar echt niet meer lekker op vanwege de veroudere TLS/SSL. Bijna alle websites werken daar gewoonweg niet meer op. Met deze browser is het wel weer mogelijk. Of het veilig en wenselijk is, is een andere discussie. Punt is, het werkt en een Macbook uit 2006 kan hiermee gewoon weer websites bezoeken.
Palemoon is meer privacy minded dan Firefox. Alleen duren de updates dan weer langer.
Al kan je bij Firefox ook de nodige privacy extensions voor installeren.
Ik heb jaren Waterfox gebruikt, maar ben sedert meer dan een jaar overgeschakeld naar LibreWolf. Die is ook meer privacy-minded, en de updates komen net zo snel als die voor Firefox zelf.

[Reactie gewijzigd door JanVQ op 23 juli 2024 10:32]

In ieder geval praktisch meer privacy-minded, want het overgrote deel van de browsers zijn in handen van advertentie bedrijven of moet er links of rechtsom geld aan verdiend worden.

Waterfox is tegenwoordig van advertentie bedrijf System1

Chrome en andere Chromium based browsers (Microsoft Edge, Opera, .Vivaldi, Brave..) moeten nou eenmaal de lijn van Google volgen, met als resultaat dat add-ons zoals uBlock Origin dankzij Manifest V3 gekortwiekt worden.

Mozilla probeert steeds maar weer met Firefox iets van een verdienmodel dat afbreuk doet aan de privacy van de gebruikers in te voeren. Ook levert het haar gebruikers uit aan Google voor een zak geld, onder andere Google als standaard zoekmachine, maar ook de "Safe Browsing"-functionaliteit.

Bij Pale Moon hoeft er geen geld worden te verdiend. Bovendien zijn de meeste standaard instellingen al privacy minded. Bij de rest moet je vaak een heel tutorial doorlopen om allerlei instellingen aan te passen. Als die instellingen niet eruit gesloopt zijn.

Daarnaast is Pale Moon beter aan te passen aan je workflow dan andere browsers.

En dankzij deze update wordt er weer een inhaalslag gemaakt wat betreft implementatie van (bedenkelijke) JavaScript en andere W3C-nieuwigheden. Waardoor er weer meer websites gaan werken die door "domme" webdevelopers zijn gemaakt die enkel hun website met Chromium-based browsers testen.

Gebruik Pale Moon als je wilt voorkomen dat Google (en de rest van Big Tech) de grip op World Wide Web versterkt.

[Reactie gewijzigd door RoestVrijStaal op 23 juli 2024 10:32]

Bij mij waren o.a. de websites voor internetbankieren (ING, ABN Amro) onbruikbaar geworden in Pale Moon (melding "u gebruikt een verouderde browser", of je zag alleen een blanco pagina), en daarvoor moest ik voor die sites noodgedwongen uitwijken naar Firefox.
Sinds deze update werkt alles weer in Pale Moon, perfect! Firefox kan weer terug de kast in.
Gisteren moest ik nog voor een website van de Belastingdienst de optie dom.window.event.enabled op true zetten, omdat die website de deprecated window.event gebruikt. Best humor, want andere browsers ondersteunen schijnbaar deze deprecated property nog helaas standaard wel.

Helaas gebruikt forumsoftware Discourse het verfoeide user agent sniffing, die dan Pale Moon aan ziet voor een verouderde webbrowser. In plaats van het slimme feature detection.

"Wie is hier nou goed bezig voor het web?"

[Reactie gewijzigd door RoestVrijStaal op 23 juli 2024 10:32]

Op dit item kan niet meer gereageerd worden.