Firefox Replay, the Firefox debugging tool. At the moment only for MacOS

Recientemente Mozilla released a tool, which was released through a new website (the link is this). Called as firefox replay, Mozilla presents it as a new debugging tool which has already been included in the Nightly versions of Firefox, but at the moment it is only available for MacOS.

"Web Replay" is a project that allows Firefox content processes to record their behavior, reproduce it later and rewind to previous states. Playback processes retain the same JS behavior, DOM structures, graphical updates, and most other behaviors that occurred during recording. The browser's JS debugger can be used to inspect and control playback.

Mozilla says that the timeline of the playback function shows various points in real time, such as exceptions, events, and network requests, making it easy to "pause and inspect replay."

Also, since it is assumed that the replay function should be used by developers, The record of the playback function can be saved and read.

Since errors that are experienced in web development are not always easy to reproduce, so they tend to be difficult for others to verify and the debugging work may not be done slowly, but when recording the operation with the function of playback and share the record with others, the efficiency is also excellent.

By including tools like Firefox Replay, Mozilla could attract more developers to your browser. This will increase the number of sites that are tested in Firefox.

This will provide a better experience.a for normal Firefox users who would have otherwise switched to a rival browser. In addition to an overview of the Firefox Replay home page, you can find more detailed information on the Mozilla developer site.

In practice, reproduction is allowed in the following areas:

  • The IPC and debugger components can make heap allocations and therefore may differ between recording and playback.
  • JS builds and some other internal state are affected by the presence of the debugger and which connection / breakpoints are active, so they can differ between recording and playback.
  • The debugger can assign GC elements, and the assignment of other GC elements can differ in the presence of the debugger. For example, compiling the script involves mapping.

In addition, it also allows advanced options:

  • devtools.recordreplay.enableRewinding  When disabled, Firefox registers a page significantly faster. default true . 
  • devtools.recordreplay.fastLogpoints  When enabled, Firefox Replay evaluates log points consecutively. Record points cannot have side effects or deviate from recording in any other way in this mode. by default false.
  • devtools.recordreplay.logging  When enabled, Firefox will log internal Replay actions in the terminal, which is useful when debugging hangs and crashes. default false

Web Replay has so far been included in the Nightly versions of Firefox, until it is more stable. Although the function is included, it is disabled by default, but it can be enabled with the "devtools.recordreplay.enabled" preference.

Which functions are accessed through the Tools -> Web Developer menu, and through a new debugging interface enabled when a record and playback tab is displayed.

As mentioned at the beginning the deployment work so far has been on macOS, but Mozilla is already working to implement the tool in its versions for Windows. Although for Linux nothing has been mentioned.

Well Mozilla comments that work for other systems is difficult to discover the system library API set to intercept, in making the memory management and dirty memory parts of the rewind infrastructure work, and in handling the different graphics and IPC paths on different platforms.


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.