03 Jul 2026
Planet Mozilla
Mozilla Privacy Blog: Mozilla Mornings comes to the UK: privacy-enhancing technologies and the questions they raise
During London Tech Week, Mozilla hosted the first UK edition of Mozilla Mornings, our breakfast-discussion series on the digital questions of the moment. We brought together technologists, policymakers, industry, civil society and researchers to ask how the UK can drive forward responsible innovation in privacy-enhancing technologies (PETs) in ways that protect people, strengthen trust and keep digital markets open.
The role of PETs in building a better internet
Protecting people's privacy has always been central to Mozilla's mission to build a better internet - one where privacy and security are fundamental, people have meaningful control over their data and online lives, and independent actors can compete on a level playing field. Privacy-enhancing technologies (PETs) are an important part of that vision. They help minimise the amount of personal data that needs to be collected and processed while enabling useful functionality. In Firefox, this work includes technologies such as Oblivious HTTP, differential privacy, the Distributed Aggregation Protocol and DNS over HTTPS.
PETs encompass a broad family of technical, architectural and product-design approaches where data analysis, measurement, collaboration, access and computation happen with lower privacy risk.
Advancing both privacy and competition together is key to a healthier internet ecosystem. Advertising illustrates both the challenge and the opportunity. It keeps most of the web free and accessible, but today's dominant model leans on hidden data collection and opaque systems that work around people rather than with them. Solutions that simply hand more data, more infrastructure or more decision-making power to a handful of large companies do not fix that.
Importantly, PETs should not be viewed as a way to bypass privacy rules. Their value lies in reducing the amount of personal data that needs to be collected, shared or processed in the first place, while preserving useful functionality where appropriate. That is why we have been investing in and building around privacy-preserving advertising, recognising that PETs are not a silver bullet but an important part of a better model.
Responsible deployment of PETs depends not only on the technical design, but also on the governance, assurance, and market context around it. PETs should be grounded in open standards and interoperable architectures. Otherwise, they risk reinforcing walled gardens, limiting choice or creating new dependencies rather than supporting a more open and competitive ecosystem.
The discussion
The event opened with remarks from the Information Commissioner's Office (ICO). This included the ICO's work on PETs, online tracking, privacy-preserving attribution and the questions raised under Regulation 6 of the Privacy and Electronic Communications Regulations (PECR). Shortly before the event, the ICO had published advice to the government on possible online advertising exceptions to Regulation 6 PECR. As we set out in our submission to the ICO's call for views on online advertising, we support reform that incentivises privacy-preserving practices while keeping consent the default for high-risk practices.
Gijs Kruitbosch, Principal Engineer at Mozilla, then gave a technical demonstration of how Mozilla uses PETs and privacy-preserving design in Firefox, including on New Tab, where relevance can be improved through approaches that reduce reliance on user identifiers and server-side user profiles.
The panel, moderated by Mozilla's Kirsten Nelson-de Búrca, widened the lens well beyond advertising. Speakers from eyeo, OpenMined, the Open Data Institute and the Information Society Law Centre discussed how PETs are governed and used across sectors, and how their deployment could affect competition as well as privacy. The discussion explored public-interest examples, including federated rare-disease and genomic research that lets analysis happen without data leaving an institution or a country, and emerging routes for external researchers to study platform data.
A recurring theme was that successful deployment depends as much on governance and public trust as it does on mathematics. PETs have the potential to reduce the competitive advantages associated with large-scale personal data collection, but they could also entrench incumbents if the relevant infrastructure is closed, proprietary or expensive to audit. The discussion complicated the familiar trade-off between privacy and competition, arguing that it eases when PETs are built in the open, on shared standards, with interoperable and auditable implementations and real routes for smaller players and new entrants to take part.
What comes next
The most important questions were the ones we left without tidy answers. Who gets to set standards, and are they set in the open? How do smaller players actually participate, rather than being told they may? What forms of assurance or audit are needed before policymakers can rely on privacy claims? And how should PETs be built into the next generation of AI, where the most sensitive data and the strongest case for protection often sit together? These are the questions we want to keep working on with those who joined us and the wider community.
The post Mozilla Mornings comes to the UK: privacy-enhancing technologies and the questions they raise appeared first on Open Policy & Advocacy.
03 Jul 2026 10:36am GMT
01 Jul 2026
Planet Mozilla
This Week In Rust: This Week in Rust 658
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
Foundation
Newsletters
Project/Tooling Updates
- Slint 1.17 Released
- rustc_codegen_gcc: Progress Report #42
- Introducing Test That!
- Introducing Test That!: A rich test assertion library for Rust from the original author of GoogleTest Rust
- Inside RSSH: one Rust crate, three binaries, and the Tauri lessons along the way
- Rustty 1.38 - accessibility & keyboard nav
- GuardianDB 0.17.0: Secure namespaces, Iroh 1.0, and the arrival of the ODM
- Building a real-time voice-agent runtime in Rust: no GIL, one binary, 2,000 calls a box
- AimDB: Bring Your Own Connector
- kache 0.8.0: zero-copy restores on Windows (ReFS)
- Warbell - a castle-defense action-RPG built with Bevy 0.19
- I built a macOS FTP client entirely in Rust - no Electron, no webview
Observations/Thoughts
- Hoisting Expressions
- The Unglamorous Side of Rust Web Development
- How I Found Out 52% of My Knowledge Graph Was Duplicates (and What I Did About It)
- A Novel Approach to Rust Error Handling
- We put a Redis server inside our runtime
- High-performance Rust: Understanding and eliminating memory fragmentation
- AI and worktrees are filling our disks: kache storage, measured
- Designing a cross-platform terminal memory visualizer in Rust
- Your Rust Service Isn't Leaking - It Could Be the Allocator
Rust Walkthroughs
- Measure, Don't Guess: Building viser, a Content-Adaptive Video Encoding Optimizer in Rust
- Learn SQL and SQLx by Building a Book Library CLI in Rust
- [series] Reasoning About Async Rust with State Machines
- The C to Rust Migration Book
Crate of the Week
This week's crate is deconvolution, a image deconvolution and restoration library.
Thanks to pbkx 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.
No calls for testing were issued this week by Rust, Cargo, 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.
- AimDB - Add minimal example: hello-single-latest
- AimDB - Wire
.transform()and.transform_join()into stage profiling - edid-info - Increase test coverage with real EDID data
- edid-info - Finalize CTA-861 extension implementation
- edid-info - Support additional EDID extension block types
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
426 pull requests were merged in the last week
Compiler
- drop the full-crate AST walk in
check_unused - make
stable_crate_idsreads lock-free after crate loading - rework lint pass running
- simplify some
proc_macrothings
Library
- add
io::ErrorKind::TooManyOpenFiles - expand
OptionFlatten's iterator methods - move
std::io::Errorintocore - optimize network address parser
Cargo
Clippy
filter_map_next: clean-up, overhaul suggestionschunks_exact_to_as_chunks: Prevent syntactically invalid suggestionschunks_exact_to_as_chunks: Use correct method name in messagechunks_exact_to_as_chunks: Pick iter method depending on mut-nessnon_ascii_literal,invisible_characters: don't suggest a fix on raw strings- create a single
ConstEvalCtxtinexpr_eagerness - detect new range types in
higher::Range - do not trigger
manual_option_zipwhen map receiver is a lazy evaluated expression - enhance
needless_late_initto cover grouped assignments - fix:
borrow_as_ptris triggered on generated code
Rust-Analyzer
- add diagnostic for E0596
- add fixes add '.await' for
type_mismatch - crash on lowering consts with associated types
- crash when hovering on anonymous consts
- only run
Drop::dropwhen implemented - mark
inline_convert_while_ascii()asunsafe - switch out lsp-types for gen-lsp-types
Rust Compiler Performance Triage
Overall, the week was fairly neutral, with no meaningful shift on most benchmarks on any of our statistics.
Triage done by @simulacrum. Revision range: 8b6558a0..7dc2c162
2 Regressions, 1 Improvement, 7 Mixed; 5 of them in rollups 34 artifact comparisons made in total
Approved RFCs
Changes to Rust follow the Rust RFC (request for comments) process. These are the RFCs that were approved for implementation this week:
- No RFCs were approved 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
- Tracking Issue for LocalKey/Cell::update
- Tracking Issue for
{str, [T], Path}::trim_prefixand{str, [T]}::trim_suffix - Stabilize c-variadic function definitions
- Tracking Issue for layout information behind pointers
- Fix feature gate for
repr(simd) - reat no_mangle_generic_items as hard error instead of lint warning
- Lint against invalid POSIX symbol definitions
- Fix
overflowing_literalslint with repeated negation - stabilize
extern "custom" - Don't escape U+FF9E and U+FF9F in
escape_debug_ext
No Items entered Final Comment Period this week for Cargo, Language Team or Leadership Council.
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
Upcoming Events
Rusty Events between 2026-07-01 - 2026-07-29 🦀
Virtual
- 2026-07-01 | Virtual (Indianapolis, IN, US) | Indy Rust
- 2026-07-02 | Virtual (Berlin, DE) | Rust Berlin
- 2026-07-02 | Virtual (Charlottesville, VA, US) | Charlottesville Rust Meetup
- 2026-07-02 | Virtual (Nürnberg, DE) | Rust Nuremberg
- 2026-07-04 | Virtual (Kampala, UG) | Rust Circle Meetup
- 2026-07-05 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2026-07-07 | Virtual (London, UK) | Women in Rust
- 2026-07-14 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2026-07-15 | Hybrid (Vancouver, BC, CA) | Vancouver Rust
- 2026-07-16 | Hybrid (Seattle, WA, US) | Seattle Rust User Group
- 2026-07-16 | Virtual (Berlin, DE) | Rust Berlin
- 2026-07-19 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2026-07-21 | Virtual (London, UK) | Women in Rust
- 2026-07-21 | Virtual (Washington, DC, US) | Rust DC
- 2026-07-28 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
Asia
- 2026-07-18 | Bangalore, IN | Rust Bangalore
Europe
- 2026-07-01 | Köln, DE | Rust Cologne
- 2026-07-01 | Manchester, UK | Rust Manchester
- 2026-07-01 | Oxford, UK | Oxford ACCU/Rust Meetup.
- 2026-07-02 | Edinburgh, UK | Rust and Friends
- 2026-07-02 | Enschede, NL | Baseflow Tech Meetups
- 2026-07-08 | Dublin, IE | Rust Dublin
- 2026-07-09 | Switzerland, CH | PostTenebrasLab
- 2026-07-21 | Leipzig, DE | Rust - Modern Systems Programming in Leipzig
- 2026-07-23 | Berlin, DE | Rust Berlin
- 2026-07-23 | London, UK | London Rust Project Group
- 2026-07-23 | Paris, FR | Rust Paris
North America
- 2026-07-02 | Saint Louis, MO, US | STL Rust
- 2026-07-04 | Boston, MA, US | Boston Rust Meetup
- 2026-07-09 | Lehi, UT, US | Utah Rust
- 2026-07-11 | Boston, MA, US | Boston Rust Meetup
- 2026-07-15 | Hybrid (Vancouver, BC, CA) | Vancouver Rust
- 2026-07-16 | Hybrid (Seattle, WA, US) | Seattle Rust User Group
- 2026-07-18 | Boston, MA, US | Boston Rust Meetup
- 2026-07-21 | San Francisco, CA, US | San Francisco Rust Study Group
- 2026-07-22 | Austin, TX, US | Rust ATX
- 2026-07-22 | Los Angeles, CA, US | Rust Los Angeles
- 2026-07-25 | Brooklyn, NY, US | Flower
Oceania
- 2026-07-21 | Barton, AU | Canberra Rust User Group
- 2026-07-23 | Perth, AU | Rust Perth Meetup Group
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
I do rather hope anyone using
-Zllvm-target-featuresor any stabilized form thereof would know that they are getting a conversation with the dragon directly and they should mind their words carefully if they do not wish to be barbecued by it and served over a nice plate of iron filings.
- workingjubilee on rust zulip
Thanks to Tomáš Šedovič for the suggestion!
Please submit quotes and vote for next week!
This Week in Rust is edited by:
- nellshamrell
- llogiq
- ericseppanen
- extrawurst
- U007D
- mariannegoldin
- bdillo
- opeolluwa
- bnchi
- KannanPalani57
- tzilist
Email list hosting is sponsored by The Rust Foundation
01 Jul 2026 4:00am GMT
Firefox Tooling Announcements: Happy BMO Push Day! (20260630.1)
The following changes have been pushed to bugzilla.mozilla.org:
- Bug 1726931 - New issues should displayed on "My Dashboard" for first time users instead of assigned bugs
- Bug 1834454 - [WEBHOOKS] Webhooks for a product change don't fire if product is changed away from the target product
- Bug 1684509 - Have a single button to mark a bug as abusive/spam
Discuss these changes in the BMO Matrix Room
1 post - 1 participant
01 Jul 2026 12:55am GMT