20 Aug 2026

feedPlanet Mozilla

Tom Ritter: webaudio fingerprinting on alibaba

There's a popular post going around about Alibaba doing WebAudio fingerprinting and in the process, mucking around with the author's Bluetooth headphones. Here's the tl;dr: browser fingerprinting is a far-too-pervasive method of tracking users across the web, but at least for WebAudio specifically, it's not very effective. Firefox has largely eliminated this fingerprinting vector.

I work on Firefox. Chrome, Brave, Safari probably have defenses against this. I'm pretty sure Chrome's WebAudio code was made approximately constant (like ours) many years ago. It probably still leaks CPU architecture though.

I don't fully agree with the adage "given enough eyeballs, all bugs are shallow" - I think a more true one might be "given enough victims, your attack code is going to change something that makes someone notice". And that's exactly what happened with... sorry, wrong link. That's exactly what happened with Alibaba's fingerprinting code.

If you want to test Alibaba's WebAudio fingerprint, I had claude extract it into a standalone page. My value is sha256:9a388c0dd04cfdc54314f9d961c7e2d247b972067e28d1cea76bd6060cf1392e, and the other value we saw in an internal survey was sha256:16d3191880ce01f726015ec6a1f9a072a81ebd04bf489098d4685d1d1c0b2711.

WebAudio Fingerprinting in Firefox

We made the WebAudio constant in Firefox 118 as part of our initial round of Fingerprinting Protection features. This eliminated most of the differences.

99.24% of users belong to one of three values, and .76% of users had that data collection point fail (a value of zero.) So virtually all users have one of these three values but why are there three values??? Why isn't there one?? Well this is why we collected this telemetry - to ensure we really had made things constant the way we thought we had, and if we hadn't, figure out why and fix it.

The improvements we put into 118 eliminated a lot of differences and I wish I had a graph I could show you of what it looked like before (but I don't.) But what about these remaining three buckets? We were able to figure out that the differences between these are CPU-level differences, which is not surprising given the math operations of audio processing. Specifically one value comes from (all) x86 CPUs and x64 CPUs that lack fused multiply-add instructions, one value from x64 with FMA, and one value from CPUs with the NEON instruction set (ARM).

We followed up on that effort to collapse these buckets into one another. Bug 2036977 collapses the x64 (with FMA3) into the x86/x64 (without FMA3) bucket. Bug 2040494 is on file to collapse the remaining bucket into the NEON bucket but I haven't worked on it in a while because it's just not as high a priority as larger improvements we can make like Sanitizing the WebGL Renderer and Vendor (something I talked a bit about a few months ago).

Because if you've read this far you surely care about the rest of the graph also. There is also the long-tail of 23 other values belonging to 48 other users. This is very unfortunate, as it makes these users completely unique, but it is also not terribly unusual - computers are weird and these results could have been caused by bad RAM, a CPU bug, or possibly some crazy architecture (LoongArch??).

But at the end of the day, WebAudio fingerprinting is nearly useless. I don't expect browser fingerprinting to disappear from websites entirely (unless some regulatory action occurs, fingers crossed) - it's still going to be effective against a majority of users on the web, but at least for privacy focused browsers, it should be wildly less effective.

20 Aug 2026 7:56pm GMT

The Mozilla Blog: A New Framework for Open Source AI

Open or closed AI isn't a fringe question anymore; it's a live policy debate, with real consequences for who gets to build, audit, and compete in the AI ecosystem. But as that debate plays out in Washington, Brussels, and beyond, the harder questions are still very much up for discussion. What does meaningful openness actually require? Where should the guardrails sit? And who gets a say in setting them?

That's exactly the gap a group of us set out to close two years ago.

Back in 2024, Mozilla and the Columbia Institute of Global Politics brought together more than 40 researchers, builders, and policy experts for the Columbia Convening on Openness and AI. The goal was simple to state, but hard to do: figure out what "open" actually means once you're talking about foundational models rather than traditional software, and build a shared vocabulary that researchers, developers, policymakers, and civil society could all work from.

The convening was the start of a years-long effort to turn a room full of perspectives on openness into something durable and useful for developers, builders, and policymakers alike. Recently, that effort reached a new milestone: Communications of the ACM published "Unpacking Open Source AI: Toward a Framework for Openness in Foundation Models," which I co-authored alongside a host of other allies spanning academia, industry, and civil society.

The paper outlines a framework that does something the open source AI debate badly needs. It stops treating "open" as a single switch you flip on or off. Instead, it breaks the AI stack down into its component parts - data, code, model weights, documentation, and more - and looks at how openness at each layer shapes who actually gets to inspect, use, and build on a system. That kind of specificity matters. A lot of the current policy debate treats open source AI as a monolith, when in reality the details of what gets shared (and how) are what determine whether openness delivers on its promise of safety, competition, and accountability.

A few of the framework's ideas are worth pulling out. First, it treats openness as a gradient rather than a binary. A system can be open on weights while remaining closed on training data, or open on code while offering little documentation on how it was evaluated. The framework offers language to describe that mix precisely, instead of lumping it under one vague label. Second, it argues that safety can't be assessed at the model level alone: what matters just as much is the surrounding system - the deployment environment, the safeguards, the moderation layers, and governance structures. That's because a model's real-world risk profile is shaped by all of it together, not by the weights in isolation. Critically, the framework deliberately stops short of prescribing one "correct" level of openness for every system. Instead, it gives developers, researchers, and regulators a common vocabulary to make and evaluate those tradeoffs on a case-by-case basis.

It's worth pausing on who's behind this work. Scroll through the author list, and you'll find a genuine cross-section of the individuals and organizations contributing to moving the development of open systems forward. It's a collection of people who've spent years arguing, in good faith and often across real disagreements, that open approaches can be a foundation for safer, more democratic, more accountable AI. That's the same spirit that drove the original convening, and it's what makes this paper a genuinely important milestone for our mission to make AI systems accessible to the many, rather than the few.

You can read the full paper here.

The post A New Framework for Open Source AI appeared first on The Mozilla Blog.

20 Aug 2026 3:57pm GMT

Firefox Add-on Reviews: Extension starter pack

You've probably heard about "ad blockers," "tab managers," "anti-trackers" or any number of browser customization tools commonly known as extensions. And maybe you're intrigued to try one, but you've never installed an extension before and the whole notion just seems a bit vague.

Let's demystify extensions.

An extension is simply an app that runs on a browser like Firefox. From serious productivity and privacy enhancing features to fun stuff like changing the way the web looks and feels, extensions give you the power to completely personalize your browsing experience.

Addons.mozilla.org (AMO) is a discovery site that hosts thousands of independently developed Firefox extensions. It's a vast and eclectic ecosystem of features, so we've hand-picked a small collection of great extensions to get you started…

I've always wanted an ad blocker!

uBlock Origin

Works beautifully "right out of the box." Just add it to Firefox and uBlock Origin will automatically start blocking all types of advertising - display ads, banners, video pre-rolls, pop-ups - you name it.

Of course, if you prefer deeper content blocking customization, uBlock Origin allows for fine control as well, like the ability to import your own custom block filters or access a data display that shows how much of a web page was blocked by the extension. More than just an ad blocker, uBlock Origin also effectively thwarts some websites that may be infected with malware.

For more insights about this excellent ad blocker, please see uBlock Origin - everything you need to know about the ad blocker, or to explore even more ad blocker options, check out What's the best ad blocker for you?

I'm concerned about my privacy and tracking around the web

Privacy Badger

The flagship anti-tracking extension from privacy proponents at the Electronic Frontier Foundation, Privacy Badger is programmed to look for tracking heuristics (i.e. specific actions that indicate someone is trying to track you).

Zero set up required. Just install Privacy Badger and it will automatically search for third-party cookies, HTML5 local storage "supercookies," canvas fingerprinting, and other sneaky tracking methods.

Consent-O-Matic

Not only will Consent-O-Matic automatically handle pop-up data consent forms (per GDPR regulations), but it's brilliantly designed to interpret the often intentionally confusing language of consent pop-ups trying to trick you into agreeing to invasive tracking.

Developed by internet privacy researchers at Aarhus University in Denmark who grew sick of seeing so many deceptive consent pop-ups, Consent-O-Matic's decision-making logic is built upon studying hundreds of pop-ups and identifying duplicitous patterns. So using this extension not only gives you a great ally in the fight against intrusive tracking, but you're spared the annoyance of constantly clicking consent forms all over the internet.

I need an easier way to translate languages

Simple Translate

Do you do a lot of language translations on the web? If so, it's a hassle always copying text and navigating away from the page you're on just to translate a word or phrase. Simple Translate solves this problem by giving you the power to perform translations right there on the page.

Just highlight the text you want translated and right-click to get instant translations in a handy pop-up display, so you never have to leave the page again.

YouTube your way

Enhancer for YouTube

Despite offering dozens of creative customization features, Enhancer for YouTube is easy to grasp and gives you a variety of ways to radically alter YouTube functionality.

Once the extension is installed you'll find an additional set of controls just beneath YouTube's video player (you can even select the extension features you want to appear in the control bar).

Key features include…

I'm drowning in browser tabs! Send help!

OneTab

You've got an overwhelming number of open tabs. You can't close them. You need them. But you can't organize them all right now either. You're too busy. What to do?!

If you have OneTab on Firefox you just click the toolbar button and suddenly all those open tabs become a clean list of text links listed on a single page. Ahhh serenity.

Not only will you create browser breathing room for yourself, but with all those previously open tabs now closed and converted to text links, you've also freed up a bunch of CPU and memory, which should improve browser speed and performance.

If you've never installed a browser extension before, we hope you found something here that piques your interest to try. To continue exploring ways to personalize Firefox through the power of extensions, please see our collection of 100+ Recommended Extensions.

20 Aug 2026 1:16am GMT

Firefox Add-on Reviews: YouTube your way — browser extensions put you in charge of your video experience

YouTube wants you to experience YouTube in prescribed ways. But with the right browser extension, you're free to alter YouTube to taste. Change the way the site looks, behaves, and delivers your favorite videos.

Enhancer for YouTube

With dozens of customization features, Enhancer for YouTube has the power to dramatically reorient the way you watch videos.

While a bunch of customization options may seem overwhelming, Enhancer for YouTube actually makes it very simple to navigate settings and select just your favorite features. You can even choose which of your preferred features will display in the extension's easy access interface that appears just beneath the video player.

Key features…

Enhancer for YouTube provides feature controls just beneath the video player.

Return YouTube Dislike

Do you like the Dislike? YouTube removed the display that reveals the number of thumbs-down Dislikes a video has, but with Return YouTube Dislike you can bring back the brutal truth.

"Does exactly what the name suggests. Can't see myself without this extension. Seriously, bad move on YouTube for removing such a vital tool."

Firefox user OFG

"i have never smashed 5 stars faster."

Firefox user 12918016

YouTube High Definition

Though its primary function is to automatically play all YouTube videos in their highest possible resolution, YouTube High Definition has a few other fine features to offer.

In addition to automatic HD, YouTube High Definition can…

YouTube NonStop

So simple. So awesome. YouTube NonStop remedies the headache of interrupting your music with that awful "Video paused. Continue watching?" message.

Works on YouTube and YouTube Music. Now you're free to navigate away from the YouTube tab for as long as you like and never worry about music interruption again.

YouTube Screenshot Button

If you take a lot of screenshots on YouTube, then the aptly titled YouTube Screenshot Button is worth your time.

You'll find a "Screenshot" button conveniently located on the control panel of videos, or at the top of the screen on Shorts (or you can use custom keystrokes), so it's always easy to snap a quick shot. Set preferences to automatically download screenshots as JPEG or PNG files.

Unhook: Remove YouTube Recommended Videos & Comments

Instant serenity for YouTube! Unhook strips away unwanted distractions like the promotional sidebar, end-screen suggestions, trending tab, and much more.

More than two dozen customization options make this an essential extension for anyone seeking escape from YouTube rabbit holes. You can even hide notifications and live chat boxes.

"This is the best extension to control YouTube usage, and not let YouTube control you."

Firefox user Shubham Mandiya

PocketTube

If you subscribe to a lot of YouTube channels PocketTube is a fantastic way to organize all your subscriptions by themed collections.

Group your channel collections by subject, like "Sports," "Cooking," "Cat videos," etc. Other key features include…

PocketTube keeps your channel collections neatly tucked away to the side.

AdBlocker for YouTube

It's not just you who's noticed a lot more ads lately. Regain control with AdBlocker for YouTube.

The extension very simply and effectively removes both video and display ads from YouTube. Period. Enjoy a faster, more focused YouTube.

SponsorBlock

It's a terrible experience when you're enjoying a video or music on YouTube and you're suddenly interrupted by a blaring ad. SponsorBlock solves this problem in a highly effective and original way.

Leveraging the power of crowd sourced information to locate where - precisely - interruptive sponsored segments appear in videos, SponsorBlock learns where to automatically skip sponsored segments with its ever growing database of videos. You can also participate in the project by reporting sponsored segments whenever you encounter them (it's easy to report right there on the video page with the extension).

SponsorBlock can also learn to skip non-music portions of music videos and intros/outros, as well. If you'd like a deeper dive of SponsorBlock we profiled its developer and open source project on Mozilla Distilled.

We hope one of these extensions enhances the way you enjoy YouTube. Feel free to explore more great media extensions on addons.mozilla.org.

20 Aug 2026 1:10am GMT

The Rust Programming Language Blog: Supply chain attack on arrayref

What happened

On 2026-08-20 at 7:15 UTC we got a report that the proc-macro1 crate was malicious.

The Rust Security Response Team verified this to be the case: the crate had a build script that was downloading a malicious payload.

This crate proc-macro1 and others like it (proc-macro-en, aovine, arone, aronenao, tinymember) have been deleted.

Furthermore, we discovered that the popular arrayref crate had recently been republished and made to depend on this crate, with the most recent versions yanked. We have removed the malicious version and unyanked the maliciously-yanked versions. Other crates by that author (internment, append-only-vec) were also affected so we have done the same for those, and locked the account as a precaution. We do not believe the author of arrayref to be acting maliciously, but their computer or credentials are likely compromised, and we are attempting to contact them.

What you need to do

We recommend you check your local dependencies to ensure these crates were not pulled in. Here are the malicious versions that we deleted from crates.io:

You can quickly check if these crates have been used locally by going through ~/.cargo/registry/cache with this command:

find ~/.cargo/registry/cache -type f \( \
  -name 'append-only-vec-0.1.9.crate' -o \
  -name 'arrayref-0.3.10.crate' -o \
  -name 'internment-0.8.7.crate' -o \
  -name 'proc-macro1-*.crate' -o \
  -name 'proc-macro-en-*.crate' -o \
  -name 'aovine-*.crate' -o \
  -name 'arone-*.crate' -o \
  -name 'aronenao-*.crate' -o \
  -name 'tinymember-*.crate' \
\) -print

Thanks

We'd like to thank the Research Team at Nextron Systems GmbH for initially discovering this and reporting it to us. We'd also like to thank Emily Albini, Manish Goregaokar, Marco Ieni, Tobias Bieniek, Ubiratan Soares, and Walter Pearce for participating in the response here.

20 Aug 2026 12:00am GMT

The Rust Programming Language Blog: Announcing Rust 1.98.0

The Rust team is happy to announce a new version of Rust, 1.98.0. Rust is a programming language empowering everyone to build reliable and efficient software.

If you have a previous version of Rust installed via rustup, you can get 1.98.0 with:

$ rustup update stable

If you don't have it already, you can get rustup from the appropriate page on our website, and check out the detailed release notes for 1.98.0.

If you'd like to help us out by testing future releases, you might consider updating locally to use the beta channel (rustup default beta) or the nightly channel (rustup default nightly). Please report any bugs you might come across!

What's in 1.98.0 stable

Algebraic floating-point methods

The floating-point types f32 and f64 now have "algebraic" methods for addition, subtraction, multiplication, division, and remainder. These allow optimizations on these operations using the algebraic properties of real numbers, even though these properties do not hold with the limitations of floating-point representations. The exact set of optimizations is not specified, but may be similar to the kind of optimization you would see with the -ffast-math option in other languages.

For example, floating-point addition is not associative, so a sum like a + b + c + d must be evaluated in the left-associative order in which it is parsed, like ((a + b) + c) + d. If you write the same sum as a chain of algebraic_add calls, then the compiler is free to reorder it, perhaps like (a + b) + (c + d) to evaluate the partial sums simultaneously. Broader loop-vectorization is often enabled by using these algebraic methods as well.

These methods are non-deterministic, since the compiler is free to choose different optimizations, but they never cause undefined behavior. See the library documentation and the original API change proposal for more details.

Buffered integer formatting

All of the primitive integer types now have a format_into method that takes a &mut NumBuffer<Self> parameter, which is a buffer that is large enough to hold the decimal format of any value of that type. The buffer itself is opaque, but the method returns the formatted &str with a lifetime borrowed from that buffer.

This method also bypasses much of the dynamic dispatch that you would get with buffered write! formatting, which can be a boon to performance. The itoa-benchmark repo now shows that format_into performs similarly to itoa itself, so this could serve as a standard replacement for that dependency and others like it.

Fix interaction between ManuallyDrop and Box

Prior to Rust 1.96.0, there was a bug in the Rust compiler, which made the following code undefined behavior:

let mut x = ManuallyDrop::new(Box::new(1));
unsafe { ManuallyDrop::drop(&mut x) }
let x = x; // UB!

This is because the compiler considers it undefined behavior to move a Box that has been dropped (deallocated), and ManuallyDrop used to propagate that, such that moving ManuallyDrop<Box<_>> where the box has been dropped would also be considered UB.

In Rust 1.96.0 we fixed this, so this code was no longer UB. In this release we have updated the ManuallyDrop documentation, providing a stable guarantee that this code will continue to not be UB in the future. See ManuallyDrop docs and the related RFC 3336 for more information.

Stabilized APIs

Other changes

Check out everything that changed in Rust, Cargo, and Clippy.

Contributors to 1.98.0

Many people came together to create Rust 1.98.0. We couldn't have done it without all of you. Thanks!

20 Aug 2026 12:00am GMT

19 Aug 2026

feedPlanet Mozilla

Support.Mozilla.Org: Firefox new release cadence and what to expect

Some of you may have heard about this change from the announcement the team shared in early July, but Firefox is moving to a two-week release cycle. The first release on the new cadence is Firefox 155 on September 1, 2026, two weeks earlier than the originally planned September 15 release.

Why this is happening

If you've been following recent Firefox releases, you may have noticed that we've shipped multiple dot releases for several versions (up to six for Firefox 152). This new release cadence is designed to get bug fixes and completed features into users' hands sooner, while making the release process more predictable.

It's important to note that this doesn't mean Firefox will ship twice as many features. Instead, we'll be releasing updates more frequently, using a two-week rhythm instead of the current four-week cadence. For contributors, the biggest benefit is predictability: rather than waiting for an unpredictable series of dot releases, we'll have a more consistent release schedule to plan around.

That said, it doesn't mean dot releases will disappear entirely. They may still happen when needed, albeit not as often.

Here's what to expect, how we're preparing, and how you can help.

What it means for SUMO

Community Forum

On a typical Firefox release, we see an average of 30% increase in incoming support questions during the first 10 days. Under the new two-week release cadence, we expect these waves of questions will arrive more frequently.

The good news is that we've observed a consistent pattern after each release. Most questions fall into a handful of common categories, including UI changes ("Where did this go?"), lost data after updating, and crashes. We expect to see the same types of questions, just on a more frequent schedule, which gives us an opportunity to prepare ahead of each release.

Knowledge Base & Localization

A faster release cadence also means a faster content cycle. We expect that content requests will arrive on a more distributed timeline instead of every 4 weeks. But of course, this will also have a downstream impact on localization, as new and updated KB articles become available for translation more frequently. We recognize the additional pressure this could put on localization communities, and we'll be monitoring the transition closely to make sure we're mindful of contributor capacity.

Release preparation

We'll be preparing a release wiki page every two weeks instead of every four. For now, our monthly Community Call will remain on its existing monthly schedule, though we'll revisit that if the new release cadence creates a need for more frequent community updates.

How we're preparing and how you can help

Here's what we're doing:

Here's how you can help:

Looking after each other

We also want to acknowledge that contributor burnout is a real risk when the quieter periods between releases become shorter. We'll be monitoring the transition closely and adjusting as we learn. Most importantly, you should never feel like you have to be "on" all the time. Every contribution, no matter how big or small, makes a difference.

The first major test of this new cadence will likely come with Firefox 157, when Project Nova is expected to roll out more broadly. We'll treat that release as an opportunity to learn what works, identify where we need to improve, and fine-tune our approach together.

Thank you for everything you do to support Firefox users. This transition is only possible because of our contributor community. If you have any questions, concerns, or ideas, we'd love to hear them. Join our Community Call where we'll also discuss more about this change.

19 Aug 2026 4:07pm GMT

This Week In Rust: This Week in Rust 665

Hello and welcome to another issue of This Week in Rust! Rust is a programming language empowering everyone to build reliable and efficient software. This is a weekly summary of its progress and community. Want something mentioned? Tag us at @thisweekinrust.bsky.social on Bluesky or @ThisWeekinRust on mastodon.social, or send us a pull request. Want to get involved? We love contributions.

This Week in Rust is openly developed on GitHub and archives can be viewed at this-week-in-rust.org. If you find any errors in this week's issue, please submit a PR.

Want TWIR in your inbox? Subscribe here.

Updates from Rust Community

Official
Newsletters
Project/Tooling Updates
Observations/Thoughts
Rust Walkthroughs
Research
Miscellaneous

Crate of the Week

This week's crate is tokio_with_wasm, a crate that lets a single tokio codebase run both natively and in web browsers.

Thanks to Kim Dong-Hyun for the self-suggestion!

Please submit your suggestions and votes for next week!

Calls for Testing

An important step for RFC implementation is for people to experiment with the implementation and give feedback, especially before stabilization.

If you are a feature implementer and would like your RFC to appear in this list, add a call-for-testing label to your RFC along with a comment providing testing instructions and/or guidance on which aspect(s) of the feature need testing.

Cargo

No calls for testing were issued this week by Rust, Rustup or Rust language RFCs.

Let us know if you would like your feature to be tracked as a part of this list.

Call for Participation; projects and speakers

CFP - Projects

Always wanted to contribute to open-source projects but did not know where to start? Every week we highlight some tasks from the Rust community for you to pick and get started!

Some of these tasks may also have mentors available, visit the task page for more information.

If you are a Rust project owner and are looking for contributors, please submit tasks here or through a PR to TWiR or by reaching out on Bluesky or Mastodon!

CFP - Events

Are you a new or experienced speaker looking for a place to share something cool? This section highlights events that are being planned and are accepting submissions to join their event as a speaker.

If you are an event organizer hoping to expand the reach of your event, please submit a link to the website through a PR to TWiR or by reaching out on Bluesky or Mastodon!

Updates from the Rust Project

613 pull requests were merged in the last week

Compiler
Library
Cargo
Rustdoc
Clippy
Rust-Analyzer
Rust Compiler Performance Triage

There were almost no regressions this week, while the next trait solver saw several significant performance improvements!

Triage done by @kobzol. Revision range: 771916f9..8fa1c96c

Summary:

(instructions:u) mean range count
Regressions ❌
(primary)
0.4% [0.2%, 0.5%] 6
Regressions ❌
(secondary)
0.6% [0.2%, 1.0%] 17
Improvements ✅
(primary)
-0.5% [-1.7%, -0.2%] 166
Improvements ✅
(secondary)
-2.3% [-16.0%, -0.1%] 219
All ❌✅ (primary) -0.5% [-1.7%, 0.5%] 172

0 Regressions, 6 Improvements, 7 Mixed; 4 of them in rollups 50 artifact comparisons made in total

Full report here.

Approved RFCs

Changes to Rust follow the Rust RFC (request for comments) process. These are the RFCs that were approved for implementation this week:

Final Comment Period

Every week, the team announces the 'final comment period' for RFCs and key PRs which are reaching a decision. Express your opinions now.

Tracking Issues & PRs

Rust

Cargo

Compiler Team (MCPs only)

No Items entered Final Comment Period this week for Rust RFCs, Language Team, Language Reference, Leadership Council or Unsafe Code Guidelines. Let us know if you would like your PRs, Tracking Issues or RFCs to be tracked as a part of this list.

New and Updated RFCs

This RFC will appear in the Call for Testing section of the next issue (#) of This Week in Rust (TWiR). You may remove the call-for-testing label. Please feel free to leave the call-for-testing label in place if you would like this RFC to appear again in another issue of TWiR.

Upcoming Events

Rusty Events between 2026-08-19 - 2026-09-16 🦀

Virtual
Africa
Asia
Europe
North America
Oceania

If you are running a Rust event please add it to the calendar to get it mentioned here. Please remember to add a link to the event too. Email the Rust Community Team for access.

Jobs

Please see the latest Who's Hiring thread on r/rust

Quote of the Week

ass-bind is peak

- Clar Fon on rust-zulip discussion "assumptions on binders" abbreviations

Thanks to Theemathas for the suggestion!

Please submit quotes and vote for next week!

This Week in Rust is edited by:

Email list hosting is sponsored by The Rust Foundation

Discuss on r/rust

19 Aug 2026 4:00am GMT

18 Aug 2026

feedPlanet Mozilla

Firefox Tooling Announcements: MozPhab 2.17.0 Released

Bugs resolved in Moz-Phab 2.17.0:

Discuss these changes in #engineering-workflow on Slack or #Conduit Matrix.

1 post - 1 participant

Read full topic

18 Aug 2026 9:16pm GMT

Mozilla Privacy Blog: Brasil dá um passo importante para a promoção de mercados digitais abertos e competitivos

Leia a versão em inglês aqui.

A concorrência é o ponto forte da internet. Com a possibilidade de as pessoas escolherem navegadores, mecanismos de pesquisa e aplicativos livremente, a concorrência entre das empresas se baseia no mérito. No entanto, os mercados digitais estão concentrados em "guardiões" que controlam a descoberta, dificultando o alcance de usuários por desenvolvedores independentes. A fiscalização tradicional acabou se tornando ineficaz, normalmente sendo muito tardia. Agora, governos do mundo todo estão adotando novas ferramentas para garantir um mercado aberto e contestável.

O projeto de lei (PL) 4675/2025 é um passo importante nessa direção. Baseando-se na DMA (Digital Markets Act) da União Europeia e na DMCCA (Digital Markets, Competition and Consumers Act) do Reino Unido, esse projeto de lei aborda questões de concorrência sistêmica voltadas à realidade do mercado brasileiro. A Mozilla é a favor dessa legislação, que visa criar uma estrutura segmentada de concorrência para os mercados digitais brasileiros.

A concorrência possibilita produtos melhores e liberdade de escolha

Há vinte anos, a Mozilla desenvolve o Firefox como um navegador independente, priorizando a privacidade, a segurança e a escolha. Operamos no Gecko, um dos três mecanismos de navegador existentes no mundo. A independência é essencial para evitar dominância no mercado e garantir que os usuários tenham liberdade de escolha. A inovação não é suficiente. Os produtos precisam de oportunidades justas de concorrência sem barreiras de pré-instalação ou interoperabilidade.

O PL 4675/2025 trata dessa questão por meio de uma estrutura ex ante, permitindo que a autoridade relevante mitigue os riscos antes de se tornarem irreversíveis. O anteprojeto mais recente contém melhorias importantes dessa estrutura. Ele determina as obrigações de acordo com produtos ou serviços específicos, em vez de aplicá-las automaticamente a todo um grupo corporativo; define proteções processuais durante todo o processo de designação; e traça limites mais claros sobre a capacidade da autoridade de fazer algo as obrigações além daquelas estabelecidas na legislação. De forma mais notável, ele determina uma arquitetura de escolha "isonômica e não discriminatória", incluindo telas de opções para selecionar, instalar ou definir produtos de terceiros como padrão.

A experiência da Mozilla com telas de escolha de navegador, em conformidade com a DMA da União Europeia, mostra que essas disposições funcionam. O Firefox foi o navegador de escolha mais de seis milhões de vezes. A probabilidade de as pessoas que escolheram o Firefox nessas telas continuarem usando o navegador é cinco vezes maior. Ao tornar a estrutura segmentada e previsível, o PL 4675/2025 estabelece a base para um ecossistema de concorrência em que a inovação impulsiona o sucesso.

Qual é o benefício da concorrência para as pessoas

A política de concorrência defende as pessoas. Mercados abertos permitem a liberdade de escolha e o sucesso de empresas menores. Críticos argumentam que essas propostas prejudicam a inovação, mas nossa experiência sugere o contrário. O Gecko, mecanismo de navegador do Firefox, continua sendo o maior mecanismo não controlado por uma operadora dominante de sistema operacional. Essa independência nos permite priorizar inovações voltadas aos usuários, como proteções avançadas de privacidade e segurança.

Decisões de design, como padrões pré-instalados e barreiras de interoperabilidade, moldam significativamente a experiência de usuários. A pesquisa Over the Edge 2.0 da Mozilla destaca como essas práticas afetam a liberdade de escolha. Startups também se beneficiam, pois podem alcançar usuários e concorrer com base no mérito, em vez de depender de decisões de plataformas dominantes. O projeto de lei brasileiro promove essas condições ao proporcionar ao Cade (Conselho Administrativo de Defesa Econômica) as ferramentas para tratar de práticas anticoncorrenciais, garantindo que a concorrência de plataformas dominantes ocorra por meio de melhoria da qualidade do produto, não por controle da infraestrutura.

De olho no futuro

Os mercados digitais evoluem, mas os princípios de concorrência justa (abertura, liberdade de escolha, interoperabilidade e transparência) continuam iguais. O PL 4675/2025 transforma esses princípios em normas aplicáveis. Seu modelo ex ante segmentado e suas proteções processuais posicionam o Brasil entre os países que visam restaurar o equilíbrio do mercado. Por fim, o sucesso da estrutura será medido por sua capacidade de proporcionar uma mudança significativa para os usuários.

A Mozilla é a favor desse projeto de lei e se dispõe a colaborar com o poder legislativo, o Cade e todas as partes interessadas. Com alterações segmentadas, o PL 4675/2025 pode se tornar uma estrutura duradoura a favor da concorrência, da inovação e da liberdade de escolha.

The post Brasil dá um passo importante para a promoção de mercados digitais abertos e competitivos appeared first on Open Policy & Advocacy.

18 Aug 2026 8:59pm GMT

Mozilla Privacy Blog: Brazil is Taking an Important Step Toward More Open & Competitive Digital Markets

Read the Portuguese version here.

Competition is a strength of the internet. When people freely choose among browsers, search engines, and apps, companies compete on merit. However, digital markets have concentrated around 'gatekeepers' that control discovery, making it harder for independent developers to reach users. Traditional enforcement has proven ineffective, often arriving too late. Governments worldwide are now adopting new tools to ensure open, contestable markets.

Brazil's Bill 4,675/2025 is a critical step in this direction. Drawing lessons from the EU's Digital Markets Act and the UK's Digital Markets, Competition and Consumers regime, the bill addresses structural competition concerns with an approach calibrated to Brazil's market realities. Mozilla strongly supports this legislation, which aims to establish a tailored competition framework for Brazil's digital markets.

Competition unlocks better products and meaningful choice

For over twenty years, Mozilla has built Firefox as an independent browser prioritizing privacy, security, and choice. We operate on Gecko, one of only three browser engines worldwide. Maintaining independence is critical to preventing market dominance and ensuring users have genuine choices. Innovation alone isn't enough; products need fair opportunities to compete without being hindered by preinstallation or interoperability barriers.

Bill 4,675 addresses this via an ex ante framework, allowing Brazil's competition authority to mitigate risks before they become irreversible. The latest draft improves this framework in several important ways. It tailors obligations to specific products and services rather than automatically applying them across an entire corporate group, strengthens procedural safeguards throughout the designation process, and places clearer limits on the authority's ability to expand obligations beyond those established in legislation. Most notably, it requires "neutral and non-discriminatory" choice architecture, including choice screens, for selecting, installing, or setting third-party products as defaults.

Mozilla's experience with browser choice screens under the EU Digital Markets Act proves these provisions work. Firefox has been selected more than six million times, and users who select Firefox through these screens are five times more likely to continue using it. By making the framework targeted and predictable, Bill 4,675 establishes a foundation for a competitive ecosystem where innovation drives success.

How competition delivers for people

Competition policy is about people. Open markets provide genuine choice and allow smaller players to thrive. Critics argue these proposals harm innovation, but our experience suggests the opposite. Gecko, Firefox's browser engine, remains the only major engine not controlled by a dominant OS operator. This independence enables us to prioritize user-focused innovations like advanced privacy and security protections.

Design decisions, like preinstalled defaults and interoperability barriers, significantly shape the user experience. Mozilla's Over the Edge 2.0 research highlights how these practices undermine choice. Startups similarly benefit when they can reach users and compete on merit rather than relying on dominant platform decisions. Brazil's bill can foster these conditions by providing CADE with tools to address anti-competitive practices, ensuring dominant platforms compete by improving product quality rather than leveraging infrastructure control.

Looking ahead

Digital markets evolve, but healthy competition principles (openness, choice, interoperability, and transparency) remain constant. Bill 4,675 translates these into enforceable rules. Its tailored ex ante model and procedural safeguards position Brazil among jurisdictions restoring market balance. Ultimately, the framework's success will be measured by its ability to deliver meaningful change for users.

Mozilla supports this bill and looks forward to collaborating with lawmakers, CADE, and stakeholders. With targeted refinements, Bill 4,675 can become a durable framework that promotes competition, supports innovation, and empowers people with greater choice.

The post Brazil is Taking an Important Step Toward More Open & Competitive Digital Markets appeared first on Open Policy & Advocacy.

18 Aug 2026 8:59pm GMT

The Mozilla Blog: The wait is over. NVIDIA GeForce NOW adds Firefox to its supported browser lineup.

Gamers have asked for GeForce NOW support for years. Today, NVIDIA made it official, opening up GeForce RTX-powered play to Firefox on Windows.

Firefox users can now stream more than 2,000 PC games from virtually anywhere, no downloads, installs, or hardware upgrades required, just a Windows PC and a browser.

Gaming: one of the web's toughest tests

Cloud gaming pushes a browser in ways most websites never do. Every click and frame matters. Behind today's announcement is months of collaboration and engineering between Mozilla and NVIDIA to deliver GeForce NOW on Firefox for Windows.

Now, players can jump into high-performance PC gaming directly from Firefox, no waiting on lengthy game downloads, installs, or updates. The experience delivers GeForce RTX-powered performance at up to 1440p and up to 120 frames per second for GeForce NOW Ultimate members.

"Firefox earned its place on our list of supported browsers by delivering the first-class experience GeForce NOW players expect. We set a high bar for browser support, and we're excited to welcome Firefox - giving millions of Firefox fans a new way to stream the games they love," said Andrew Fear, Director of NVIDIA GeForce NOW.

Versatility and customization baked into your gaming rig

Gamers put real effort into making their rigs their own, and Firefox gets that. Users can choose themes, custom colors, and tab settings to customize their setup, instead of sitting there like just another window.

We also know online gaming doesn't happen in just one window. It's social and sometimes spontaneous. With Firefox, you can have a Discord call running in Split View, a guide open in another tab, or Reddit pulled up between matches. Then go full screen when you're ready to play, no need to switch browsers to stream games.

"Teaming up with NVIDIA to bring GeForce NOW to Firefox is a milestone moment - one of the world's leading cloud gaming services, now running on a browser built for privacy, control and flexibility. This is a big win for the Firefox community and for NVIDIA's gaming community - and a sign of even bigger things ahead," said Ajit Varma, Head of Firefox.

If Firefox is already your browser of choice, online gaming and your PC game library can join the party. Whether your library lives on Steam, Epic Games Store, GOG, Xbox PC Game Pass, or Ubisoft Connect, you can sign in, open your library, and start streaming the games you already own. For all the gamers returning to Night City in Cyberpunk 2077, jumping into Halo: Campaign Evolved, or dropping in for a quick round of Fortnite, Firefox users can now play where you want.

Try it today

Update to the latest version of Firefox, go to play.geforcenow.com, and sign in with your GeForce NOW account.

Join us August 25 as NVIDIA heads to Gamescom, where we'll have more to share about what this partnership means for gamers.

The post The wait is over. NVIDIA GeForce NOW adds Firefox to its supported browser lineup. appeared first on The Mozilla Blog.

18 Aug 2026 2:58pm GMT

The Mozilla Blog: A billion searches a year, now built in: Startpage comes to Firefox

Firefox users were choosing Startpage long before today - to the tune of more than a billion searches a year, every one of them required some assembly: an extension, a manual setting, a workaround.

Today, starting with Firefox 154, that choice becomes as easy as head to the drop-down menu, hit 'select,' and start searching. Startpage is now a built-in search option for Firefox users on desktop in Germany, France, Austria, Switzerland, and the Netherlands. Android and iOS are coming soon. Whether you want to search with Startpage, or another preferred search engine, it's as easy as opening your search settings, picking a default, and done.

And if you're happy with your current search engine, nothing about your setup changes.

Why Europe first

This launch starts in Startpage's home markets: a Netherlands-based search engine, now built into the browser for some of the most privacy-conscious users in the world. At a moment when so much of the web experience is decided by a handful of very large companies, a search option that's private by design and European by origin isn't a small thing.

What Startpage delivers

Startpage delivers full, high-quality search results without the privacy trade off. Queries aren't stored or linked to you, and there are no AI answers pushed above your search results. In fact, there's no AI at all. Based in the Netherlands, Startpage built its product around a simple idea: great search and personal privacy can go hand in hand.

"So much of your web experience is prescribed before you ever open a browser. We'd rather you decide how you want to search. Adding Startpage puts a genuinely private search engine option - real results, zero profiling, AI-free - one click away for millions of people in Europe," said Ajit Varma, Head of Firefox.

Users asked with one billion searches

Startpage ranks among the most-requested search engines in the Firefox community. When demand is this clear, our job is to remove the friction.

"More and more of what people use online comes from a handful of very large companies, and search is where that concentration gets felt most directly. Firefox has always been the browser for people who want to make their own decisions about the web, which makes it a natural home for private search. Firefox users already run over a billion Startpage searches a year. Now Startpage is built in for everyone in these markets," said Stewart Marlborough, President of Startpage.

That's the pattern we want: people who use Firefox every day tell us what they need, and we ship it.

Search is a choice. Firefox treats it like one.

Most browsers have already decided how you're going to search. Firefox hasn't. Pick your search engine, control what happens to your queries, decide who sees data about you, even turn AI on or off. It should always be your call. Not everyone wants the same thing from search, and a browser shouldn't pretend they do.

Try it out

If you're in Germany, France, Austria, Switzerland, or the Netherlands, update to Firefox 154 and you'll find Startpage in your search settings.

The post A billion searches a year, now built in: Startpage comes to Firefox appeared first on The Mozilla Blog.

18 Aug 2026 2:57pm GMT

The Mozilla Blog: Smart Window: Finish what you start online

Browsers make it easy to start things, but picking them back up is another story.

We start planning a trip or researching a purchase, and before long we're comparing options and chasing ideas across dozens of tabs. That work rarely happens in one sitting. When we come back after an interruption, we have to figure out where we were, what we'd already found, and what we were trying to do in the first place.

Smart Window is Firefox's privacy-first, AI-powered browsing experience designed to help people finish what they start online. It works with the context you choose to share, such as your open tabs and relevant browsing history, so you can get back to what you were doing without retracing your steps.

We've spent the last several months building and testing Smart Window in beta with our community. Today, we're adding new capabilities that help you check answers without losing your place, make sense of open tabs and get back to things you've seen before. Together, they help keep a task moving across tabs, searches, and time.

"The browser already has much of the context around what you're trying to do - the research in your tabs, the pages you've visited, the things you've found along the way," said Ajit Varma, Head of Firefox. "With Smart Window, we're exploring how to make more of that context useful while keeping you in control."

What's new in Smart Window

Check answers without losing your place

When you have a question in the middle of a task, getting an answer shouldn't take you out of your flow or require you to track down the sources separately.

Through our new partnership with Exa, Smart Window can now retrieve current web information and show the sources behind its response without taking you to a separate search results page. Learn more about why we chose Exa and what the partnership means for Firefox in our companion post.

Group tabs that belong together

It doesn't take long for a quick search to turn into a browser full of tabs. Once they pile up, keeping track of everything becomes even more work.

Smart Window can now suggest groups for related tabs, making it easier to organize what you have open and return to it later. It can also spot duplicate tabs and close them with a click.

Find your spot again

Sometimes you remember what was on a page better than you remember what it was called or how you got there. Smart Window can now show visual previews of pages in your browsing history, making it easier to spot the page you're looking for among similar results without opening each one to figure out which is which.

Behind the evolution

Last November, we shared an early concept called "AI Window," exploring what it could look like to give people a user-controlled space where they could chat with an AI assistant to get help while browsing. We shared it early because we wanted our community to help shape where it went next.

Over the months that followed, we watched how people used the experience, listened to feedback, and tested new ideas. A consistent theme emerged: people were increasingly using it as part of their everyday browsing - searching, navigating, and working through the things they'd come online to do. The value of the AI assistant came through in how it helped them make progress on those tasks.

We saw the same idea in feedback from beta users. One described using Smart Window to keep track of their "train of thought." Another used it to find something they'd looked at before without remembering exactly where they'd seen it.

Those learnings helped us shape Smart Window into a broader browsing experience that helps people make progress on what they came online to do.

While the product is evolving, the principles we started with remain the same: choice, privacy, and transparency. Smart Window is optional. You choose when to use it, what browsing context it can use to help with a task, and which AI model you want to use. Firefox's AI Controls gives you one place to manage Smart Window, including turning it off entirely, so you can easily choose the browsing experience you want.

What's next

We're continuing to explore ways Smart Window can help carry a task forward, especially when you leave it and come back later.

Soon, Smart Window will be able to surface recent browsing journeys and pull together related tabs and history, giving you a starting point when you return to something you were working on. We're also working on ways for Smart Window to use relevant information to help fill out online forms, so you don't have to re-enter the same details again and again. You'll stay in control of what Smart Window can access, including which tabs you choose to share with it.

Smart Window remains in beta, and we'll keep learning from our community as these experiences develop. It's currently available in English to people in the U.S. and Canada. If it's not available where you are yet, you can sign up to be notified when it is.

To try Smart Window, visit https://www.firefox.com/smart-window.

The post Smart Window: Finish what you start online appeared first on The Mozilla Blog.

18 Aug 2026 1:06pm GMT

The Mozilla Blog: Firefox and Exa: Building AI search around people, not platforms

AI has changed how we browse. Full stop. The real question is whether AI leads to one browser experience for everyone, or gives people more ways to make the browser work for them.

Firefox was always built to give users an alternative to the status quo, and our approach with AI is no different. Much of the industry is going in another direction: Company A builds the browser → and the search engine → and the AI model → and all the surrounding services. The seduction lies in how effortless every layer feels, but it also means one company has total influence over what tech you can use and what AI delivers.

We aim to deliver users a different model: one where AI makes your browser empowering and helpful, with visible citations and with a zero-data-retention commitment, all powered by an independent browser engine. To get there, we're partnering with people who align with the same open, choice-first thinking that's shaped Firefox from day one.

Today, that starts with Exa.ai, a search and retrieval company built for the AI era.

Going forward, Exa will help power Smart Window on desktop and Quick Answers on iOS, giving people a way to get current, source-backed answers without leaving the page. More on our related Smart Window announcement here.

But our Exa news isn't about one feature or product. It's about model choice and how people find things online.

An independent AI model

Mozilla has always believed the web is strongest when it encourages technology competition and variety, and we think the same principle should apply to AI. We want to create an AI ecosystem that is open, diverse, and grounded in the same values we champion for the web. So, instead of building our own closed AI stack, Firefox is investing in partnerships with companies like Exa.ai to bring deep expertise in specific areas while sharing our commitment to user choice, privacy, and transparency.

As Ajit Varma, Head of Firefox, puts it, "Firefox's philosophy is straightforward: the open internet is a critical resource and people should be able to shape it to their needs and preferences - even as new entry points like AI emerge. AI should be responsible. It should stay transparent and under your control. AI shouldn't be an-all-or nothing offering, but rather built so users can pick and choose the model or system that works for them."

The idea is simple: Mozilla builds the browser people trust, and partners like Exa.ai bring the specialized pieces that make it better. That lets us move faster without asking people to give up what made Firefox different in the first place.

Adds Will Bryk, Co-founder and CEO of Exa.ai, "Search built for the AI era doesn't work if it's locked inside one company's stack. Firefox is one of the last browsers that isn't trying to own the model, the search, and the browser all at once. That's why this partnership makes sense to us. We're building the information layer for an agentic web, where trust and transparency are paramount. We share those values with Firefox, making this partnership a very easy call."

AI should make the web more useful, not replace it

AI is only as useful as your ability to check its work.

That's the point of building Exa's retrieval into Firefox: when you get an answer, you can see the source it came from. Nothing is buried in a 'citations' menu, but sitting right there so a two-second glance tells you whether to trust it or read more. We're not forcing you 'just trust us' that it's right.

It's a small design choice, but it matters. It's the difference between an AI that tells you things and one that shows you where to look. It also means the people who actually wrote that content don't disappear from the picture, the way they often do when AI summarizes and moves on.

Looking ahead

This won't be the last partnership like it. We're picking partners for the same reason each time: people who think AI in a browser should work for you, not the other way around.

The post Firefox and Exa: Building AI search around people, not platforms appeared first on The Mozilla Blog.

18 Aug 2026 1:05pm GMT

Firefox Developer Experience: Firefox WebDriver Newsletter 154

WebDriver is a remote control interface that enables introspection and control of user agents. As such, it can help developers to verify that their websites are working and performing well with all major browsers. The protocol is standardized by the W3C and consists of two separate specifications: WebDriver classic (HTTP) and the new WebDriver BiDi (Bi-Directional).

This newsletter gives an overview of the work we've done as part of the Firefox 154 release cycle.

Contributions

Firefox is an open source project, and we are always happy to receive external code contributions to our WebDriver implementation. We want to give special thanks to everyone who filed issues, bugs, and submitted patches.

Firefox 154, one WebDriver bug was fixed by a contributor:

WebDriver code is written in JavaScript, Python, and Rust, so any web developer can contribute! Read how to set up the work environment and check the list of mentored issues for Marionette or the list of mentored JavaScript bugs for WebDriver BiDi. Join our chatroom if you need any help to get started!

All Changes

A complete list of developer-facing changes included in this Firefox release is available in the MDN Firefox 154 Release Notes.

18 Aug 2026 10:00am GMT