Hauro
Fleet Admiral
- Registriert
- Apr. 2010
- Beiträge
- 13.632
Am Dienstag, 14.11.2017 hat Mozilla mit Firefox (Quantum) eine von Grund auf überarbeitet Firefox Version veröffentlicht. 75 Prozent des Codes – fast beinahe sieben Millionen Code Zeilen – wurden verändert. Deshalb hat die Version 57 mit Quantum einen eigenen Namen erhalten. Mit dem Photon Design System wurde ein neues Software Design (look and feel) entwickelt, das Konsistenz zwischen den verschiedenen Produkten für die Desktop Betriebssysteme Windows, macOS und Linux und den mobilen Betriebssysteme Android, iOS schafft.
Dieses Thema soll die Intention hinter Firefox (Quantum) beschreiben und ein Hilfestellung für die häufigsten Fragen geben.
Intention hinter Quantum
Mozillas Herausforderung ist Firefox zu modifizieren und für die Zukunft fit zu machen. Die Zukunft gehört CPUs mit mehreren Kernen/Threads, da das sich der Takt pro Kern nicht mehr wie früher steigern lässt. Die neue Render-Engine Servo ist von Beginn an auf Parallelität ausgelegt.
Das Project Quantum ist ein Mozillas Projekt, um auf der Gecko-Engine als solide Basis aufbauend, die Next-Generation Web-Engine für Firefox zu entwickeln. Quantum nutzt die Parallelität von Rust und Komponenten von Servo, um mehr Parallelität und GPU-Auslagerung in Firefox zu integrieren. Die Roadmap zeigt auch, dass Teile von Servo wo möglich in Firefox integriert werden.
Mozilla ist außerdem nicht in der Position wie Google mit Chrome, die den Browser 'start from scratch' entwickeln konnten und über Android die Plattform haben/hatten, um ihn am Markt zu positionieren/durchzusetzen. Die verbleibende Option wäre gewesen einen neuen Browser auf Basis von Servo zu entwickeln und Firefox einzustellen, das Ergebnis wäre sicher nicht gut gewesen, da es schwierig ist, einen neuen unbekannten Browser zu etablieren.
WebExtensions
Wie bereits bei Intention geschrieben, gehört die Zukunft CPUs mit mehreren Kernen/Threads. Was bei System on a Chip (SoC) bereits länger der Fall und seit Ryzen im Desktop angekommen ist, sind CPUs mit mehreren physischen Kernen/Threads. In den Themen wurde auch mehrfach gefordert, dass die Software dies unterstützen muss.
Es ist sehr komplex eine Anwendung für die Parallelisierung (Multitasking, Nebenläufigkeit) von Prozessen/Threads zu entwickeln, da bei der Parallelisierung Konflikte auftreten können. Aktuell kommt es bereits zu Problemen in Zusammenhang mit Add-Ons, die verschwinden, wenn das entsprechende Add-On deaktiviert wird. Das Risiko weiterhin in die Tiefen, wie dies mit XUL möglich ist, eingreifen zuzulassen und gleichzeitig Parallelisierung (Nebenläufigkeit) von Prozessen/Threads sicher zu stellen, ist extrem bzw. nicht möglich, da es schnell zu Konflikten kommt.
Über die WebExtensions wird eine standardisierte Schnittstelle (API) vorgegeben und es kann nicht mehr wie bei XUL in die tiefen Eingegriffen werden. Dies hat in logischer Konsequenz zur Folge, dass nur das umgesetzt werden kann, was die Schnittstelle anbietet / zulässt. Durch eine wohldefinierte Schnittstelle bleibt ein System aber über einen langen Zeitraum stabil, bis eine Methode als 'deprecated' (überholt) markiert und zu einem späteren Zeitpunkt ersetzt wird. Der Eingriff den XUL zulässt, kann zum Einen zur Instabilität bis zum Absturz führen und erfordert eine Anpassung sobald der Kern geändert wird. Wird ein Add-on nicht permanent gepflegt und an Änderungen angepasst, wird Firefox oder das Add-on nicht mehr korrekt oder gar nicht mehr funktionieren.
Die hier schreiben sind ein kleiner Teil der Anwenderinnen/Anwendern, den normalen und damit allermeisten Anwenderinnen/Anwendern geht es um Geschwindigkeit und nicht um Add-ons. Eine Außnahme sind Werbeblocker, wie uBlock Origin ggf. NoScript und andere.
Stylo für Android
Stylo is built as default even if Fennec/Android
[*1] 1411802 Build stylo on Android as default - RESOLVED FIXED in Firefox 58
[*2] 1366049 enable Stylo for Android -
Siehe auch Quantum/Stylo
Vorherige Version
Firefox ESR (Extended Support Release) ist eine Version mit Langzeitunterstützung. Sie wird vor ihrer Auslieferung streng vom QA-Team überprüft. Die ESR-Version ist für ein Jahr von Programmfunktions-Updates ausgenommen und wird nur mit Sicherheitsupdates versorgt. Genauso wie die Release-Version sollten in der ESR-Version keine Programmfehler mehr enthalten sein.
siehe auch: Mozilla: Firefox Extended Support Release FAQ
Download ESR-Version
Alle, die nicht auf Firefox 57 (Quantum) gehen wollen, sollten die ESR-Version verenden, da diese Sicherheits-Updates erhält, was bei der Release-Version <=56.0.2 nicht mehr der Fall ist. Aktuell z.B.
Siehe RapidRelease/Calendar
Hinweis:
Beim Rückstieg auf die ESR-Version ist es ratsam ein neues Profil zu verwenden und die Lesezeichen zu importieren oder Firefox Sync zu verwenden. Siehe auch Beitrag #7 von macko125.
Historie
Dieses Thema soll die Intention hinter Firefox (Quantum) beschreiben und ein Hilfestellung für die häufigsten Fragen geben.
- Intention hinter Quantum
Was ist/war die Intention von Mozilla mit dem Project Quantum Firefox von Grund auf zu überarbeiten. - WebExtensions
In der Vergangenheit konnten Firefox-Erweiterungen mit einem von drei verschiedenen Systemen entwickelt werden: XUL/XPCOM-Overlays, bootstrapperkomponenten-Erweiterungen oder das Add-on-SDK. Ab Version 57 sind die WebExtensions APIs die einzige Möglichkeit Firefox-Erweiterungen zu entwickeln.
Dieser Teil versucht zu beschreiben, weshalb die WebExtensions APIs vorgegeben werden. - Stylo für Android
Der aktueller Stand zu Stylo für Android.
Ab Firefox 58 steht Quantum CSS auch auf Android zur Verfügung, muss aber über die Konfiguration (about:config) aktiviert werden. Dazu ist 'layout.css.servo.enabled' zu aktivieren (true). Die standardmäßige Aktivierung für Android ist derzeit für Firefox 59 geplant.
Siehe 1366049 enable Stylo for Android (Status RESOLVED as FIXED for Firefox 59)
Die Aktivierung kann über about:support > Stylo: content = true (enabled by default), chrome = false (disabled by default) überprüft werden. - Vorherige Version
Alle, die nicht auf Version 57 gehen wollen, sollten die ESR-Version verwenden. - Add-ons
Der aktueller Stand zu den Add-ons, wie NoScript, usw.. - FAQ
Eine Sammlung von Fragen und hilfreiche Antworten.- Oberfläche
- userChrome.css
- Leistungseinstellungen
- Benutzerprofil
- Firefox parallel verwenden
Intention hinter Quantum
Mozillas Herausforderung ist Firefox zu modifizieren und für die Zukunft fit zu machen. Die Zukunft gehört CPUs mit mehreren Kernen/Threads, da das sich der Takt pro Kern nicht mehr wie früher steigern lässt. Die neue Render-Engine Servo ist von Beginn an auf Parallelität ausgelegt.
Das Project Quantum ist ein Mozillas Projekt, um auf der Gecko-Engine als solide Basis aufbauend, die Next-Generation Web-Engine für Firefox zu entwickeln. Quantum nutzt die Parallelität von Rust und Komponenten von Servo, um mehr Parallelität und GPU-Auslagerung in Firefox zu integrieren. Die Roadmap zeigt auch, dass Teile von Servo wo möglich in Firefox integriert werden.
Während sich das Project Quantum entwickelt, werden Servo-Komponenten in Firefox integriert und die Erkenntnisse aus der Forschung tragen dazu bei, um Firefox schneller und zuverlässiger zu machen. Servo ist ein Forschungsprojekt und es war nicht vorgesehen, einen Browser daraus zu entwickeln, sondern nur um Dinge auszuprobieren und Ideen umzusetzen. Servo hat außerdem noch nicht alle Funktionen, die ein Anwender/-in von einem voll ausgestatteten Webbrowser erwartet. Durch einen inkrementellen Ansatz und die Zusammenführung bewährter Komponenten von Servo zu Gecko, sobald sie bereit sind, können die Verbesserungen und damit mehr Leistung und Stabilität dem Anwender/-in schneller bereitgestellt werden. Die große Verbesserungen werden in 2017 mit Version 57 (Quantum) ausgeliefert und es wird von da iterativ vorwärts gehen.Our long-term plan is to:
Our 2017 goals for Servo are:
- Incrementally replace components in Firefox with ones written in Rust and shared with Servo.
- Determine product opportunities for a standalone Servo browser or embeddable library (e.g., for Android).
Mozilla ist außerdem nicht in der Position wie Google mit Chrome, die den Browser 'start from scratch' entwickeln konnten und über Android die Plattform haben/hatten, um ihn am Markt zu positionieren/durchzusetzen. Die verbleibende Option wäre gewesen einen neuen Browser auf Basis von Servo zu entwickeln und Firefox einzustellen, das Ergebnis wäre sicher nicht gut gewesen, da es schwierig ist, einen neuen unbekannten Browser zu etablieren.
WebExtensions
Wie bereits bei Intention geschrieben, gehört die Zukunft CPUs mit mehreren Kernen/Threads. Was bei System on a Chip (SoC) bereits länger der Fall und seit Ryzen im Desktop angekommen ist, sind CPUs mit mehreren physischen Kernen/Threads. In den Themen wurde auch mehrfach gefordert, dass die Software dies unterstützen muss.
Es ist sehr komplex eine Anwendung für die Parallelisierung (Multitasking, Nebenläufigkeit) von Prozessen/Threads zu entwickeln, da bei der Parallelisierung Konflikte auftreten können. Aktuell kommt es bereits zu Problemen in Zusammenhang mit Add-Ons, die verschwinden, wenn das entsprechende Add-On deaktiviert wird. Das Risiko weiterhin in die Tiefen, wie dies mit XUL möglich ist, eingreifen zuzulassen und gleichzeitig Parallelisierung (Nebenläufigkeit) von Prozessen/Threads sicher zu stellen, ist extrem bzw. nicht möglich, da es schnell zu Konflikten kommt.
Bereits jetzt verursachen Add-Ons Performance-Probleme, Abstürze, usw. Dies würde sich durch Parallelisierung (Nebenläufigkeit) von Prozessen/Threads potenzieren. Dies ist auch der Grund warum dies in Chromium von Anfang an nicht vorgesehen wurde.Konflikte wikipedia.org schrieb:Der Kontext jedes Programmteils muss vor unerwarteter Veränderung durch andere Teile geschützt werden (Synchronisierung). Soll ein gemeinsamer Zugriff auf Daten realisiert werden, wobei zumindest eine Partei schreibend/verändernd zugreifen möchte, dann muss der Zugriff synchronisiert werden, bspw. durch gegenseitigen Ausschluss (Mutex) unter Benutzung von Monitoren oder von Semaphoren. Alternativ kann auch verlangt werden, dass bestimmte Aktionen von zwei Prozessen gemeinsam ausgeführt werden, mit so genannten Rendezvous. Eine weitere sichere Art der Kommunikation sind Warteschlangen. Diese Techniken lösen das Problem des gleichzeitigen Zugriffs auf Ressourcen, verhindern jedoch keine Verklemmungen (ganz im Gegenteil).
Über die WebExtensions wird eine standardisierte Schnittstelle (API) vorgegeben und es kann nicht mehr wie bei XUL in die tiefen Eingegriffen werden. Dies hat in logischer Konsequenz zur Folge, dass nur das umgesetzt werden kann, was die Schnittstelle anbietet / zulässt. Durch eine wohldefinierte Schnittstelle bleibt ein System aber über einen langen Zeitraum stabil, bis eine Methode als 'deprecated' (überholt) markiert und zu einem späteren Zeitpunkt ersetzt wird. Der Eingriff den XUL zulässt, kann zum Einen zur Instabilität bis zum Absturz führen und erfordert eine Anpassung sobald der Kern geändert wird. Wird ein Add-on nicht permanent gepflegt und an Änderungen angepasst, wird Firefox oder das Add-on nicht mehr korrekt oder gar nicht mehr funktionieren.
Die hier schreiben sind ein kleiner Teil der Anwenderinnen/Anwendern, den normalen und damit allermeisten Anwenderinnen/Anwendern geht es um Geschwindigkeit und nicht um Add-ons. Eine Außnahme sind Werbeblocker, wie uBlock Origin ggf. NoScript und andere.
Stylo für Android
Stylo is built as default even if Fennec/Android
Hi, all.
You know, stylo (Quantum CSS) is turned on Firefox Desktop only. Stylo team is working very hard for Android too, then all reftests and mochitests are passed now even if Fennec/Android.
So I would like to turn on stylo build on Android of Nightly channel for feedback. Although the preference still keeps off as default on 58 cycle, it will be turned on 59 cycle.
After landing bug 1411802 [*1], you can enable stylo with layout.css.servo.enabled=true via about:config even if Android.
Also, this change is nightly channel only. Even if 58, beta and release channel for Fennec don't build stylo due to package size (incremented size is 1.6MB when using NDK11c's gcc).
And, developers don't require additional build config after this change. But you might require ./mach bootstrap if you don't install clang (for bindgen) yet. Of course, we can use --disable-stylo not to build sytlo.
If you want to know current status for Android/stylo, please watch bug 1366049 [*2] that is meta bug.
-- Makoto Kato
[*1] 1411802 Build stylo on Android as default - RESOLVED FIXED in Firefox 58
[*2] 1366049 enable Stylo for Android -
Siehe auch Quantum/Stylo
Vorherige Version
Firefox ESR (Extended Support Release) ist eine Version mit Langzeitunterstützung. Sie wird vor ihrer Auslieferung streng vom QA-Team überprüft. Die ESR-Version ist für ein Jahr von Programmfunktions-Updates ausgenommen und wird nur mit Sicherheitsupdates versorgt. Genauso wie die Release-Version sollten in der ESR-Version keine Programmfehler mehr enthalten sein.
siehe auch: Mozilla: Firefox Extended Support Release FAQ
Download ESR-Version
Alle, die nicht auf Firefox 57 (Quantum) gehen wollen, sollten die ESR-Version verenden, da diese Sicherheits-Updates erhält, was bei der Release-Version <=56.0.2 nicht mehr der Fall ist. Aktuell z.B.
Diese Übergangslösung funktioniert bis zum 28.08.2018. Ab da basiert die ESR-Version 60.2 auf der offiziellen Release Version 60.
Siehe RapidRelease/Calendar
quarter | merge date | central | beta | release date | release | ESR |
---|---|---|---|---|---|---|
Q1 | 2018-01-22 | Firefox 60 | Firefox 59 | 2018-01-23 | Firefox 58 | Firefox 52.6 |
Q1 | 2018-03-12 | Firefox 61 | Firefox 60 | 2018-03-13 | Firefox 59 | Firefox 52.7 |
Q2 | 2018-05-07 | Firefox 62 | Firefox 61 | 2018-05-08 | Firefox 60 | Firefox 52.8; 60.0 |
Q2 | 2018-07-02 | Firefox 63 | Firefox 62 | 2018-03-12 | Firefox 61 | Firefox 52.9; 60.1 |
Q3 | 2018-08-27 | Firefox 64 | Firefox 63 | 2018-08-28 | Firefox 62 | Firefox 60.2 |
Q4 | 2018-10-22 | Firefox 65 | Firefox 64 | 2018-10-23 | Firefox 63 | Firefox 60.3 |
Q4 | 2018-11-26 | Firefox 66 | Firefox 65 | 2018-11-27 | Firefox 64 | Firefox 60.4 |
Hinweis:
Beim Rückstieg auf die ESR-Version ist es ratsam ein neues Profil zu verwenden und die Lesezeichen zu importieren oder Firefox Sync zu verwenden. Siehe auch Beitrag #7 von macko125.
Historie
- 22.11.2017 Kapitel 'Add-ons'
- Verlinkungen zu 'Add-ons für Firefox' eingefügt, Anmerkungen ergänzt, Status-4-Evar in die Liste aufgenommen und das Kapitel um einen Hinweis ergänzt.
- Beschreibung zur Anpassung und Teilen der Oberfläche eingefügt
- 23.11.2017 Kapitel 'FAQ'
Ergänzung und kleinere Korrekturen - 24.11.2017 Kapitel 'FAQ'
Beschreibung zur userChrome.css eingefügt. - 26.11.2017 Kapitel 'FAQ'
Beschreibung zu den Leistungseinstellungen eingefügt. - 26.11.2017 Kapitel 'Vorherige Version' / Kapitel 'FAQ'
- Beschreibung zum Benutzerprofil eingefügt.
- Beschreibung zu 'Firefox parallel verwenden' eingefügt.
- 27.11.2017 Kapitel 'FAQ'
Beschreibung zu 'Intelligente Schlüsselwörter / Schlagwörter' eingefügt. - 27.11.2017 Kapitel 'Add-ons' und 'FAQ'
Kapitel 'Add-ons' und 'FAQ' nach Beitrag #2 übertragen und verlinkt. - 29.11.2017 Kapitel 'Vorherige Version'
Ergänzung um ein Beispiel. - 20.12.2019 Kapitel 'Vorherige Version'
Anpassung an die aktualisierte Release-Planng - 20.12.2019 Kapitel 'Tastenkombinationen' hinzugefügt
- 30.12.2017 Text zu Tab Mix Plus überarbeitet
- 31.01.2018 Kapitel 'Stylo für Android'
- 31.01.2018 Kapitel 'Add-ons' > NoScript Security Suite > A basic guide to NoScript 10
- 07.09.2018 Are we WebExtensions yet? entfernt, da nicht mehr aufrufbar.
Zuletzt bearbeitet:
(Übrearbeitung)