Veröffentlichung von Firefox 39 verzögert sich

Wer auf die für heute geplante Veröffentlichung von Firefox 39 wartet, muss sich noch ein wenig gedulden, denn die Veröffentlichung verzögert sich aufgrund eines Absturz-Problems, welches Mozilla vor der Veröffentlichung beheben will. Die Verzögerung betrifft ebenfalls Firefox ESR, Firefox für Android sowie die ursprünglich für Donnerstag geplante Beta 1 von Firefox 40.

Wer die geplanten Releasetermine von Firefox kennt und seinen Browser heute nach Updates hat suchen lassen, dem ist vielleicht aufgefallen, dass das für heute geplante Update auf Firefox 39 noch nicht erschienen ist. Der Grund ist denkbar einfach: Firefox 39 ist noch nicht fertig. Mozilla kämpft aktuell noch mit einer möglichen Absturzursache bei Programmstart, deren Behebung die Veröffentlichung von Firefox 39 verzögert. Von der Verzögerung ebenso betroffen sind die Updates für Firefox ESR, Firefox für Android sowie die kommende erste Beta-Version von Firefox 40. Zunächst soll noch ein weiterer Release Candidate auf dem Betakanal zur Verfügung gestellt werden.

Firefox 41: Mozilla optimiert Speicherverbrauch für Adblock Plus-Nutzer

Werbeblocker sind eine praktische Erfindung, kommen aber zu einem Preis: sie benötigen Ressourcen, teilweise nennenswert mehr als andere Add-ons. Nutzer von Adblock Plus können sich auf eine Optimierung in Firefox 41 freuen, welche besonders diesem Add-on zugute kommt.

Werbeblocker können teilweise signifikante Auswirkungen auf den Speicherverbrauch von Browsern haben. Auch wenn das ein Preis ist, den viele gerne bereit sind zu zahlen, ist das zumindest ein Punkt, den man im Hinterkopf behalten sollte, insbesondere wenn man Probleme mit dem Speicherverbrauch hat und der Browser an seine Leistungsgrenzen stößt. Gerade die populäre Erweiterung Adblock Plus hat mit der Zeit den Ruf erhalten, besonders speicherhungrig zu sein. Dies hängt zum einen mit Sicherheit damit zusammen, dass es sich hierbei schlicht um die mit Abstand populärste Erweiterung dieser Art handelt. Zum anderen hängt dies aber auch mit der Funktionsweise von Adblock Plus und von Firefox zusammen. Adblock Plus nutzt ein relativ großes Stylesheet, um Elemente zu verstecken, welche nicht blockiert werden können. Dieses wird von Adblock Plus nur einmal global eingebunden, Firefox erstellt davon intern allerdings für jeden Frame eine eigene Kopie und jede davon benötigt Speicher. So kann Adblock Plus in Extremfällen den Speicherverbrauch verdoppeln oder gar noch sehr viel höher ansteigen lassen. Das ist natürlich ein Extremfall, aber ein Fall, wie er vorkommt.

In der Nightly-Version von Firefox 41 ist nun eine entscheidende Änderung gelandet, welche es Firefox erlaubt, identische Stylesheets zwischen den Dokumenten zu teilen. Hiervon profitiert grundsätzlich jeder Firefox-Nutzer, da auch Firefox selbst ein Stylesheet mit Standard-Deklarationen in jedes Dokument einbindet. Während diese Neuerung ein Ersparnis von 120 KB pro Dokument bringt (abzüglich einmal 120 KB, da das Stylesheet einmal eingebunden werden muss), sind die Auswirkungen für Nutzer von Adblock Plus spürbar größer: hier werden über 2 MB pro Dokument eingespart, was sich zu einem deutlichen Speicherersparnis gegenüber Firefox 40 summieren kann. Gerade bei komplexen Webseiten mit vielen iFrames, die dadurch einen extremen Speicherverbrauch verursachen, dürfte der Unterschied entsprechend spürbar ausfallen. Wie viel das bringen kann, belegt ein Testcase eines Extremfalls, bei dem der Speicherverbrauch durch die Änderung um etwa 1,5 GB reduziert worden ist.

Nicht nur Speicher wird durch diese Neuerung gespart, sondern auch reale Zeit, wenn sich diese auch in einem kaum wahrnehmbaren Bereich befindet. Auf dem System des Patch-Erstellers (i7 2,6 GHz Macbook Pro von 2012) resultiert dies laut Bugzilla-Ticket in einem Ersparnis von 0,3ms für Firefox selbst respektive 13ms inklusive Adblock Plus-Stylesheet pro Seitenaufruf.

Firefox 41+: Seite festlegen, welche beim Öffnen eines neuen Tabs erscheint

Die Seite, welche beim Öffnen eines neuen Tabs erscheint, konnte bislang in Firefox beliebig angepasst werden, indem ein Schalter über about:config angepasst wurde. Ab Firefox 41 wird dies aus Hijacking-Gründen nicht länger möglich sein. Bereits jetzt gibt es ein von mir entwickeltes Add-on, welches diese Funktion zurück in Firefox bringt. Das Add-on steht ab sofort auf Mozillas Add-on-Webseite zum Download bereit.

Mit Firefox 41 (und höher) ist es nicht länger möglich, die Seite anzupassen, welche beim Öffnen eines neuen Tabs erscheint, indem die Einstellung browser.newtab.url über about:config verändert wird. Da diese Einstellung – wie leider viele gute Dinge – in der Vergangenheit von Hijackern missbraucht worden ist, hat sich Mozilla dazu entschieden, diese Einstellung aus dem Firefox-Core zu entfernen (siehe Bug 1118285). Glücklicherweise hat Mozilla nicht einfach nur die Einstellung entfernt, sondern gleichzeitig auch eine neue API bereitgestellt, welche es Entwicklern von Add-ons erlaubt, diese Funktionalität in Form eines Add-ons zurück in Firefox zu bringen.

Betroffen ist Firefox ab der morgen erscheinenden Nightly-Version von Firefox 41. Und bereits jetzt gibt es Ersatz für diese verloren gegangene Funktion. Ich habe ein kleines Add-on geschrieben, welche genau diese Möglichkeit zurück in Firefox bringt. Das Add-on steht unter der MIT-Lizenz, der Quelltext ist öffentlich einsehbar, das Add- ist signiert und damit auch schon bereit für die Nutzung, wenn die Signierung von Add-ons verpflichtend wird.

Verwendungsweise
Einfach die gewünschte URL in den Einstellungen des Add-ons eintragen. Änderungen werden umgehend übernommen. Es ist kein Neustart oder dergleichen notwendig. Wird das Feld leer gelassen, wird automatisch die Standard-Seite about:newtab angenommen.

Quelltext
Quelltext auf git.agenedia.com

Download
Download auf addons.mozilla.org (deutsche Beschreibung)
Download auf addons.mozilla.org (englische Beschreibung)

Screenshot

Besonderes Danke an Mozilla

Wer Add-ons für Firefox entwickelt, weiß vermutlich, dass es teilweise mehrere Wochen dauern kann, bis ein Add-on ein Review erhält. Bei diesem Add-on hat es keine fünf Minuten (!) gedauert, bis ein vollständiges Review gewährt worden ist. Darüber hinaus möchte ich noch einmal die Tatsache positiv hervorheben, dass Mozilla eine extrem einfach zu verwendende Schnittstelle als Ersatz implementiert hat, um die Funktionalität wiederherzustellen. Diese Änderung geht also definitiv nicht gegen die Anpassbarkeit durch die Nutzer, das kann Mozilla beim besten (oder eher schlechtesten) Willen absolut nicht vorgeworfen werden, ansonsten hätte Mozilla diese Option einfach ersatzlos streichen können. Viel mehr ist es so, dass jede tolle Option in Firefox auch für schlechte Dinge genutzt werden kann und das Ändern solcher Einstellungen gegen den ausdrücklichen Willen des Nutzers zu einem ernsten Problem geworden ist. Für Mozilla muss es darum gehen, die Masse zu schützen und es sind nicht die Experten, die eine Einstellung über about:config verändern können, die besonders geschützt werden müssten, sondern die Nutzer, welche diese Art der Anpassung nicht kennen. Wer about:config zu so einem Zweck verändern kann, dem ist auch die Installation eines Add-ons zuzumuten – meiner persönlichen Ansicht nach.

Programmiersprache: Rust 1.1 und Rust 1.2 Beta stehen bereit

Rust ist eine neue Programmiersprache, in welcher die ebenfalls sich in Entwicklung befindliche neue Rendering-Engine von Mozilla geschrieben wird, die auf den Namen Servo hört. Sechs Wochen nach der Fertigstellung von Rust 1.0 stehen nun Rust 1.1 und Rust 1.2 Beta bereit.

Für die neue Programmiersprache Rust, in welcher auch Mozillas neue Engine Servo entwickelt wird, wurde ein Release-Zyklus versprochen, den man ähnlich auch von Firefox kennt: alle sechs Wochen erscheint eine neue Version und gleichzeitig eine erste Betaversion des Nachfolgers der neuen Version. Erwartungsgemäß wurde nun also, sechs Wochen nach Erscheinen von Rust 1.0, die Verfügbarkeit von Rust 1.1 und Rust 1.2 Beta angekündigt.

Rust 1.1

Hervorgehoben in der Ankündigung werden die schnelleren Kompilierzeiten. So soll Rust 1.1 hierbei eine Verbesserung um 32 Prozent gegenüber Rust 1.0 vorweisen können. Ein weiterer Schwerpunkt lag bei der Ausgabe von Fehlermeldungen beim Kompilieren. Über das Flag –explain stehen für viele Fälle ausführlichere Informationen zur Verfügung. Neue std::fs-APIs erweitern die Schnittstellen für den Zugriff auf das Dateisystem, womit es nun beispielsweise möglich ist, den Rust Paketmanager Cargo mit Rust zu kompilieren. Weitere Neuerungen sind den Release Notes zu entnehmen.

Rust 1.2 Beta

Auch in Rust 1.2 wird wieder an der Performance-Schraube gedreht: Benchmarks zeigen eine weitere Verbesserung der Kompilierzeit um noch einmal 30 Prozent gegenüber Rust 1.1. Parallel Codegen, noch nicht standardmäßig aktiviert, kann außerdem die Erstellung großer Builds im Debugmodus beschleunigen, hier werden 33 Prozent als erste Zahl auf einem System mit Vier-Kern-CPU genannt. Cargo hat ebenfalls Performance-Verbesserungen erhalten. Außerdem erhält Rust 1.2 eine erste Unterstützung für Microsoft Visual C (MSVC).

Firefox: Standard-Suchmaschine in Sekundenschnelle ändern & weitere Effizienz-Tipps

Mit Firefox 36 hat Mozilla die alte Suchleiste durch eine neue Suchleiste ersetzt, welche vor allem die häufige Verwendung verschiedener Suchmaschinen verbessern soll. Das Ändern der Standard-Suchmaschine ist auf den ersten Blick umständlicher geworden. Was vielen nicht bekannt ist: Tastatur-Befehle erlauben eine extrem effiziente Benutzung der neuen Suchleiste. Damit ist auch das Ändern der Standard-Suchmaschine kein großer Aufwand.

Wer die von Firefox verwendete Standard-Suchmaschine ändern möchte, kann dies über die Firefox-Einstellungen im Reiter Suche machen. Aber es geht auch einfacher; bei fokussierter Suchleiste kann ganz einfach bei gedrückter Strg-Taste (OS X: Cmd) mit den Pfeiltasten die Standard-Suchmaschine geändert werden.

Doch das ist nicht das einzige nützliche Tastatur-Kommando: wird stattdessen die Alt-Taste gedrückt gehalten, kann die Suchmaschine für die aktuelle Suche ohne Verwendung der Maus geändert werden. Dies hat dann keine Auswirkungen auf die Standard-Suchmaschine. Wird keine weitere Taste gedrückt, navigiert man mit den Pfeiltasten in den Suchvorschlägen respektive der Suchchronik. Und wer diese Tipps anwendet, will möglicherweise auch gleich die Suchleiste mit der Tastatur fokussieren, so dass die Maus überhaupt nicht mehr benötigt wird. Das geht über die Tastenkombination Strg + K (OS X: Cmd + K). Dies funktioniert sogar, wenn die Suchleiste im Firefox-Menü und nicht in der Navigationssymbolleiste ist. In dem Fall öffnet Firefox das Menü und fokussiert dann das Suchfeld.

Mit diesen Tipps sollte sich die Suchleiste von Firefox deutlich effizienter nutzen lassen.

Pro-Tipps: über die Einstellungen kann die Reihenfolge der Suchmaschinen, wie sie in der Suchleiste erscheinen, angepasst werden, dies geschieht ganz einfach per Drag and Drop. Wird der Haken bei einer Suchmaschine entfernt, erscheint diese nicht länger im Suchfeld. Suchmaschinen können hier aber auch komplett entfernt werden. Per Doppelklick in die entsprechende Spalte können für jede Suchmaschine Schlüsselwörter vergeben werden. Auf diese Weise können verschiedene Suchmaschinen auch in der Adressleiste benutzt werden. Beispielsweise führt bei „y“ als Schlüsselwort für Yahoo! die Eingabe von „y firefox“ zu einer „firefox“-Suche auf Yahoo!. Live-Suchvorschläge im Suchfeld können ebenfalls hier deaktiviert werden, falls nicht erwünscht.

Mozilla möchte es einfacher machen, Chrome-Erweiterungen für Firefox zu portieren

Von den relevanten Browsern besitzt Firefox das wohl mächtigste Erweiterungssystem. Entwickler von Add-ons können nahezu jeden Aspekt von Firefox verändern. Doch heißt das nicht automatisch, dass jedes Add-on, welches für andere Browser existiert, auch für Firefox existiert. Um es Entwicklern von Add-ons einfacher zu machen, hat sich Mozilla die Chrome Extension API vorgenommen und erweitert Firefox um fehlende Schnittstellen.

Unter den Abhängigkeiten des Meta-Tickets mit dem Titel „Parity with Chrome extension API“ in Mozillas Bugtracker sind in den letzten Wochen mehrere Patches in Firefox gelandet, welche Entwicklern von Add-ons zugute kommen sollen. Die Idee ist einfach: Erweiterungen für Googles Browser Chrome sollen mit möglichst wenig Aufwand für Firefox portiert werden können. Hierfür ist es naheliegenderweise sinnvoll, möglichst ähnliche Schnittstellen zu besitzen.

Mozilla-Entwickler Erik Vold hat vor wenigen Wochen mit „Chrome Tailor“ außerdem ein experimentelles Tool auf GitHub veröffentlicht, welches aus Chrome-Erweiterungen Add-ons für Firefox machen soll. Welche Chrome-APIs unterstützt werden, kann der Information im Repository entnommen werden.

Mozilla, Google & Microsoft arbeiten gemeinsam an Binärformat für das Web

Mozilla, Google und Microsoft kooperieren bei der Entwicklung eines Binärformats für das Web, welches deutliche Geschwindigkeitsvorteile gegenüber JavaScript verspricht. Noch steht WebAssembly, kurz: wasm, aber ganz am Anfang.

Mozilla, Google und Microsoft haben in den letzten Jahren enorme Fortschritte im Bereich der JavaScript-Performance gemacht. Doch schnell ist nicht schnell genug, vor allem wenn es um komplexere Anwendungen als einfache Webseiten geht. Aus diesem Grund haben sich Googles Experten für V8 und Portable Native Client (PNaCl), Entwickler von Microsoft sowie Mozillas Spezialisten für asm.js und Emscripten zusammengetan, um einen neuen Standard zu schaffen, der JavaScript ergänzen soll: WebAssembly, oder kurz wasm.

Ähnlich wie bei Mozillas asm.js oder Googles PNaCl ist WebAssembly das Resultat kompilierten Codes. Zunächst wird vorrangig auf C und C++ abgezielt, später sollen weitere Sprachen unterstützt werden. Das Projekt steckt noch relativ am Anfang und es ist noch unklar, wann mit einer nativen Unterstützung in den gängigen Browsern zu rechnen ist. Bis dahin soll eine Polyfill-Bibliothek WebAssembly kompatibel zu aktuellen Browsern machen, welche den wasm-Code in JavaScript konvertiert. Erste Experimente mit einem Polyfill-Prototyp zeigen eine Verbesserung der Performance um den Faktor 23 für das Dekodieren des Binärformats gegenüber dem Parsen der entprechenden asm.js-Quelle. Die Entwicklung kann von Interessierten über GitHub verfolgt werden, wo auch eine FAQ-Seite bereitsteht, welche wichtige Fragen zu diesem Thema ausführlich beantwortet. Unter anderem wird dort die Frage nach einer Quelltextansicht, die sich unweigerlich in Anbetracht der Tatsache stellt, dass es sich bei WebAssembly um ein Binärformat handelt, bejaht. Eine andere Wiki-Seite zeigt mögliche Anwendungsfälle für WebAssembly. Weitere Informationen gibt es in im Blog von Mozilla-Gründer und JavaScript-Erfinder Brendan Eich sowie im Blog von Mozilla-Entwickler Luke Wagner.

Let’s Encrypt: Kostenlose TLS-Zertifikate ab September

Let’s Encrypt ist eine von unter anderem Mozilla, der Electronic Frontier Foundation (EFF), Cisco, Akamai und IdenTrust gegründete Certificate Authority (CA), welche in Zukunft kostenlose TLS-Zertifikate anbieten wird. Im September fällt der offizielle Startschuss.

Sehr viele Webseiten übertragen ihre Daten über eine unverschlüsselte HTTP-Verbindung und nicht über eine verschlüsselte HTTPS-Verbindung.  Die zwei wichtigsten Gründe hierfür dürften eine oftmals komplizierte Einrichtung sein sowie die Tatsache, dass die notwendigen Zertifikate häufig Geld kosten. Mit StartSSL gibt es allerdings auch eine kommerzielle Firma, welche kostenlos TLS-Zertfikate bereitstellt.

Unter anderem Mozilla, die Electronic Frontier Foundation (EFF), Cisco, Akamai und IdenTrust haben im November 2014 die Gründung der Internet Security Research Group (ISRG) bekanntgegeben, die mit Let’s Encrypt diesen Sommer eine Certificate Authority (CA) bereitstellen will, welche kostenlos TLS-Zertfikate ausstellt. Mittlerweile zählen auch der wordpress.org-Betreiber Automattic sowie die Linux Foundation zu den Unterstützern des Projekts.

Nun hat man den inoffiziellen Startschuss für die Woche des 27. Juli sowie den offiziellen Startschuss für die Woche des 14. Septembers bekannt gegeben. Zunächst sollen ab Ende Juli erste Zertifikate für ausgewählte Webseiten ausgestellt werden. Browser und andere Clients müssen dabei noch das entsprechende Wurzelzertifikat installiert haben, denn ausgeliefert wird bislang kein Browser mit einem Wurzelzertifkat von Let’s Encrypt. Dies dient als Testphase, bevor Mitte September der offizelle Start für jeden sein soll. Die dann ausgestellten Zertifikate werden zudem von IdenTrust signiert sein, womit die Zertifikate von Let’s Encrypt direkt von jedem Browser akzeptiert werden.

Sollte der Zeitplan eingehalten werden können, dann haben die beteiligten Organisationen lediglich elf Monate benötigt, um eine komplette Certificate Authority aufzubauen.

Firefox 41: Suchmaschinen-Vorschläge ergänzen Ergebnisliste in Adressleiste

Die Adressleiste von Firefox kann bereits seit vielen Jahren auch zur Suche über Suchmaschinen verwendet werden. Mozilla hat die Adressleiste in der aktuellen Nightly-Version von Firefox 41 nun optional um Live-Vorschläge der eingestellten Standard-Suchmaschine erweitert.

Die Adressleiste von Firefox ist ein mächtiges Werkzeug und schlägt nicht nur bereits besuchte Webseiten oder Webseiten aus der Chronik vor, sondern erlaubt auch die Suche über Suchmaschinen – entweder bei der eingstellten Standard-Suchmaschine oder bei Verwendung von Schlüsselwörtern auch bei allen anderen installierten Suchmaschinen.

Live-Vorschläge von der eingestellten Standard-Suchmaschine bietet Firefox ebenso bereits seit langem an, bislang aber ausschließlich über das Suchfeld. Die aktuelle Nightly-Version von Firefox 41 beherrscht nun auch Suchmaschinen-Vorschläge direkt in der Adressleiste. In der bisherigen Umsetzung werden die Vorschläge der Suchmaschine dabei aber nicht permanent angezeigt, sondern ergänzen die Ergebnisse im Adressleisten-Auswahlfeld, wenn es keine oder kaum andere Treffer, zum Beispiel aus der Chronik, gibt. Bis dieses Feature in einer finalen Version von Firefox landet, kann sich selbstverständlich noch viel an der Funktionsweise wie auch an der Darstellung ändern.

Natürlich möchte nicht jeder Suchmachinen-Vorschläge in der Adressleiste erhalten und darum lässt sich dieses Feature wie so ziemlich jedes andere Feature von Firefox auch deaktivieren. Dieser Neuerung wurde nicht nur ein Schalter in about:config, sondern eine sichtbare Einstellung im Reiter Datenschutz spendiert, nämlich dort, wo sich auch die Vorschläge aus der Chronik, den Lesezeichen sowie den bereits geöffneten Tabs aktivieren respektive deaktivieren lassen. Wer im Reiter Suche die Suchvorschläge deaktiviert, deaktiviert damit ebenfalls die Vorschläge in der Adressleiste (aber auch in der Suchleiste). Außerdem ist es wahrscheinlich, dass Firefox an noch prominenterer Stelle den Nutzer fragen wird, ob die Vorschläge in der Adressleiste aktiviert werden sollen oder nicht. Wie das aussehen kann, wissen Nutzer von Firefox für Android, denn dort fragt Firefox explizit nach: „Sollen Suchvorschläge angezeigt werden? [Ja] [Nein]“. Aber soweit ist die Implementierung in der Nightly-Version noch nicht.

Firefox 41: Webseitenübersetzung mit Yandex Translate API

Firefox besitzt ein verstecktes Feature zur maschinellen Übersetzung von Webseiten. Hierfür kommt im Hintergrund eine API von Microsoft zum Einsatz. In der Nightly-Version von Firefox 41 ist nun die Unterstützung einer alternativen Übersetzung-Engine dazugekommen, nämlich der von Yandex.

Wer über about:config den Schalter browser.translation.ui.show auf true setzt, erhält in den Einstellungen im Reiter Inhalt eine zusätzliche Checkbox, um ein Übersetzungs-Feature für Webseiten zu aktivieren. Die Übersetzungen liefert dabei Microsoft über seine Translator API. Damit die maschinelle Übersetzung funktioniert, muss allerdings zunächst noch ein API-Key in Firefox hinterlegt werden, wie bereits in einem Artikel vor fast genau einem Jahr beschrieben. Die Microsoft Translator API kann für bis zu zwei Millionen Zeichen pro Monat kostenlos verwendet werden.

In der Nightly-Version von Firefox 41 ist nun die Unterstützung für eine weitere Übersetzungs-Engine gelandet, nämlich für die Translate API vom russischen Suchmaschinenanbieter Yandex. Diese erlaubt in der kostenfreien Version sogar zehn Millionen Zeichen pro Monat (aber nicht mehr als eine Million Zeichen pro 24 Stunden).

Um die Webseitenübersetzung von Yandex anstelle von Microsoft antreiben zu lassen, muss zunächst der Schalter browser.translation.engine von „bing“ auf „yandex“ geändert werden. Anschließend muss auch hier ein API-Key in Firefox hinterlegt werden, und zwar über den neu als String anzulegenden Schalter browser.translation.yandex.apiKeyOverride. Der API-Key kann hier kostenfrei generiert werden. Kleiner Kosmetik-Fehler: In den Firefox-Einstellungen wird weiterhin das Microsoft-Logo angezeigt. Die Übersetzung funktioniert aber trotzdem.

Inhalt abgleichen