Highlights
- The next ESR will be Firefox 60, and will come with the Policy Engine to make it easier to configure mass Firefox installs in an enterprise environment.
- Firefox for the Amazon Fire TV was released!
- Prathiksha added the ability to deny permission prompts by default in about:preferences.
- We’re going to limit new platform features to only be available in secure contexts.
<script type=”module”>
has been enabled in Nightly builds.- Users with a unified Address Bar will now receive Search Suggestions before suggestions from history and open tabs. The behavior is easily changeable through a checkbox in the Search Preferences pane.
Friends of the Firefox team
- Resolved bugs (excluding employees): https://mzl.la/2D8ML8q
- More than one bug fixed:
- :prathiksha
- Aditya Bharti [:adbugger]
- Jeremy Lempereur
- Steve Pfister
- Tim Nguyen :ntim
- New contributors (🌟 = First Patch!)
- 86ecce74 got rid of some XBL bindings we don’t need anymore. XBL graphs continue to trend in the right direction!
- Archit Jugran got rid of some superfluous CSS from the Synced Tabs sidebar search input
- Ashish Verma [:ashish1500616] got rid of some superfluous CSS from the translation info bar
- 🌟 Ashwin Patil modified BHR to check
Telemetry::CanRecordPrereleaseData()
rather than thetoolkit.telemetry.enabled
preference - 🌟 Rohan Rajpal added an assertion to prevent Telemetry’s
registerEvent
from being used in the content process - 🌟 Steve Pfister fixed a bug where the SafeBrowsing warning notification bar wouldn’t go away after a page navigation, and made sure that the tab title was properly set in about:url-classifier
- More than one bug fixed:
Project Updates
Add-ons
- PageActions can now be shown and/or hidden automatically for specific pages via pattern matching.
- The webRequest API now merges multiple headers with the same name rather than using only the last one.
- We landed some detailed documentation about how to implement WebExtensions APIs.
- We now redirect the current tab to the restored New Tab after disabling a New Tab extension in the doorhanger.
- Added a couple of mechanisms to the webRequest API to allow for requests to be upgraded from HTTP to HTTPS.
- The cookies API now supports FPI mode and FPI cookies.
- Several protocols were added to the whitelist of allowed protocols for custom protocol handlers.
- browserAction set* methods can now accept a null value which removes the property.
- More detail has been added to sandbox names to aid in debugging.
- A memory reporter was added to show basic information about active WebExtensions in about:memory.
- Two major changes landed for WebExtension experiments:
- Experiments can now be bundled with an extension.
- Experiments can now include content-side APIs.
- Exceptions raised from a webRequest blocking listener now report the original error message and filename.
- about:preferences has been updated to show when an extension is managing Tracking Protection.
- Extensions can now control cookie behaviour, specifically the prefs for
network.cookie.cookieBehavior
andnetwork.cookie.lifetimePolicy
.
Activity Stream
- Drag and Drop landing for Top Sites in 59
- Tippy Top icons V2, where we crawl sites for high-res SVG icons for Top Sites
Browser Architecture
- XUL Template feature has been removed (thanks Gijs)
- Metabug filed for removing XUL overlays
- XBL replacement has continued to make good progress. Expect a newsletter update soon.
- Bindings removed since last meeting – thanks to Dão, Ian Moody, ntim, Paolo, 86ecce74, and Myk:
tabbrowser-close-tab-button
,toolbarbutton-image
,datetimepicker-base
,timepicker
,datepicker
,datepicker-grid
,datepicker-popup
,timed-textbox
,addengine-icon
,expander
,preferences
,preference
,prefwindow
,prefpane
,panebutton
,dialogheader
,optionsDialog
,stringbundleset
.
- Bindings removed since last meeting – thanks to Dão, Ian Moody, ntim, Paolo, 86ecce74, and Myk:
Firefox Core Engineering
- Crash machinery:
- The last piece of crash ping support (bringing the crash ping to Fennec) will be done within the month. Follow along here.
- Migration performance improvements:
- Doug Thayer has landed several performance improvements to migration in 59 (as he did in 58). Too many to list, so check them out.
- Update Agent:
- Will allow for checking for and downloading of updates async from Firefox.
- Was originally slated for incremental release, but has been changed to release as a complete feature, targeted for 62.
- Tracking meta bug is 1343669.
- Installer:
- Rename of Windows shortcut (first attempted for 57) from “Mozilla Firefox” to just “Firefox” landed in beta 58. (bringing Windows in line with Mac and Linux)
- Enterprise Policies Engine:
- Targeted for Firefox 60 (for the next ESR)
- Win/Mac/Linux support through .json, + Windows Group Policies
- Main bug: bug 1419102
- Ownership of policies: each policy is owned by the team who owns that feature
- Bug tree for policies to be implemented for first version:
- Spreadsheet with policies and ownership
Form Autofill
- V2 features were complete and got Pre-Beta sign off (yellow)
- The edit dialog of Address Autofill in Preferences now is able to change the layout according to the selected country
- Implemented a summary in the update doorhanger to let users know which profile will be updated
- Slightly refactored the core modules for better supporting sections
- Fixed some issues of Clear Form button caused by the cache mechanism in the autocomplete module
- Fixed a few RTL issues
- Fixed a lot of website compatible issues
Lint
- Lint’s dependencies (python & node) should now be installed when running
./mach bootstrap
(on Mac/Linux, Windows has them already installed for mozilla-build).
Performance
- Tab warming fixes landed on Nightly! Still not enabled by default on nightly pending more fixes, follow this bug to keep track of that.
- mconley wrote a blog post if you’re curious about what tab warming is
- There’s a known bug where in some cases, with warming enabled, opening a new tab results in a permanent spinner.
- Thanks to dao for the patch that warms tabs when using the Ctrl-Tab previews feature
- Patch to warm up the next tab when hovering close icon is waiting for review
- Patches to move FormHistory initialization off of the main thread are reviewed, and waiting until after the merge to land.
- Looking at replacing Cu.import with a WebIDL-implemented alternative
- This will likely land on a weekend, have an eslint rule, and rewrite existing callsites.
- Over on the platform side, bholley is reducing libxul size significantly by avoiding the use of Debug symbols for release-compiled Rust (e.g. those implicated by use of
{:?}
in format strings forpanic!
calls). If you write Rust, please read the relevant dev.platform posts.
Privacy/Security
- This is the meta bug for our new project that deals with some UX and privacy issues around storage/site data/cookies (we’re also doing a user study).
- :cfu improved integrating the canvas permission (against canvas fingerprinting in anti-fingerprinting mode) into our permission system
Search and Navigation
Address Bar & Search
- window.external.addSearchEngine has been removed
- Fixed a bug causing search engines set by add-ons updated to WebExtension with the Quantum update to be wrongly reset
- Fixed a bug where the one-off buttons in the urlbar were not properly hidden or were keyboard selectable when hidden
Places
- Doug Thayer landed a patch replacing the single onVisit notification with a new grouped onVisits notification, that helps batch insertion of visits avoiding too many crossings of the XPConnect boundary
- Some progress on reliability:
- Places will try to clone a corrupt databases into valid one on startup, allowing in most cases to keep history intact. In case of failure it fallbacks to the old method (new database with restored bookmarks).
- Fixed a UI bug allowing to create empty-named bookmark tags
- Some progress on bookmarks full syncability:
- Places’ tree
selectItem()
now takes guids as well as database ids.
PlacesUtils.isRootItem()
also will take guids as well as database ids.
Web Payments
- Landed our multiline rich-select custom element that will be used for the address selector as well as the basic-card selector.
Prasanna wrote on
Pascal Chevrel wrote on
Ferdinand wrote on
Daniel wrote on
ezh wrote on
kit wrote on
John M. wrote on