Firefox Articles
-
Compiler Compiler: A Twitch series about working on a JavaScript engine
Yulia Startsev, a JavaScript engineer on Firefox's SpiderMonkey team, introduces her new Twitch stream called Compiler Compiler. In the three opening interactive episodes, we get an inside look at how the JavaScript Specification, ECMA-262, is implemented in SpiderMonkey, by reading the spec and fixing issues in the implementation.
-
A New RegExp Engine in SpiderMonkey
Regular expressions – commonly known as RegExps – are a powerful and heavily used tool for manipulating strings in JavaScript. This post describes how we updated the RegExp engine in SpiderMonkey, Firefox's JavaScript engine, by building a shim layer to V8's Irregexp. The outcome: reduced maintenance and stronger collaboration among the browsers, full support for all the new RegExp features, and compatibility with the latest ECMAScript standard.
-
New in Firefox 77: DevTool improvements and web platform updates
Firefox 77 is now available with a variety of developer tool updates and new web platform features. With your feedback, we've removed performance bottlenecks, resulting in faster, leaner JavaScript debugging. We also report on some changes to Firefox extensions, including fewer permission requests.
-
Building FunctionTrace, a graphical Python profiler
Firefox Profiler is a powerful web-based performance analysis interface featuring call trees, stack charts, flame graphs, and more. All data filtering, zooming, slicing, and transformation actions are preserved in shareable URLs. FunctionTrace is a low-overhead profiler that runs on unmodified Python applications. Integrated with Firefox, it's a new breed of analysis tool project built conveniently on top of the Firefox Profiler.
-
High Performance Web Audio with AudioWorklet in Firefox
Earlier this week, Audio Worklets landed in the release of Firefox 76. We’re ready to start bridging the gap between web audio and native. Developers can now leverage
AudioWorklet
to write arbitrary audio processing code. This exciting new functionality raises the bar for emerging web experiences like 3D games, VR, and music production. -
Firefox 76: Audio worklets and other tricks
Firefox 76 delivers great new features for web platform support, such as Audio Worklets and
Intl
improvements, on the JavaScript side. Also, we’ve added a number of topnotch improvements to Firefox DevTools to make JavaScript debugging and development easier and quicker. -
Fuzzing Firefox with WebIDL
Fuzzing, or fuzz testing, is an automated approach for testing the safety and stability of software. For the past 3 years, the Firefox fuzzing team has been developing a new fuzzer to identify security vulnerabilities in the implementation of WebAPIs in Firefox. This fuzzer leverages the WebAPIs’ own WebIDL definitions as a fuzzing grammar.
-
Engineering code quality in the Firefox browser: A look at our tools and challenges
Here's an insider's look at Firefox's code quality toolchain that's been designed to manage the ongoing development and monthly releases of our desktop browser. This post explores the architecture, challenges, and ongoing evolution of the process for managing code quality and patches for dealing with 21 million lines of code.
-
Firefox 75: Ambitions for April
Firefox 75 is chock full of handy new dev tooling: instant evaluation in the web console, event breakpoints for WebSockets, and more. New web platform features include HTML lazy loading for images, the CSS min(), max(), and clamp() functions, public static class fields, and additions to Web Animations API support.
-
Twitter Direct Message Caching and Firefox
Distinguished engineer Martin Thomson explains how this problem occurred, the implications for people who might be affected, and how problems of this nature might be avoided in future. To get there, we need to dig a little into how web caching works.