Normale weergave

Paint.NET 5.2 Beta (build 9762)

23 September 2026 om 22:55

Welcome to the first beta for the 5.2 update! This new version has new effects and also has a big focus on performance, quality-of-life, and infrastructure improvements which prepare for the big 6.0 version that will be coming later. The two biggest changes are the new FileType plugin system and the rewritten high-precision layer rendering engine. There are also 8 new effects and very experimental support for running on Wine (Linux/Mac), which we’ll get to later.

New FileType Plugin System

The original FileType plugin system dates back to 2005 with the v2.5 release. It has withstood the test of time in the sense that it still works and has provided a lot of value for a lot of people, but it has also noticeably aged poorly in ways that have prevented progress in other areas of the app. It was written at a time when .NET itself was just 3 years old and hitting its 2.0 release with generics and 64-bit support. The modern systems used in Paint.NET for component management and isolation were nowhere to be found back then. I had no clue that the project’s longevity would stretch so far into the future, nor that so many plugins would be developed!

The old FileType plugin system is tightly coupled with the Document, Layer, and Surface classes which Paint.NET also uses internally for UI and rendering purposes. They only support the 32-bit BGRA UI8 pixel format and a flat list of bitmap layers. The new FileType system works through interfaces such as IFileTypeDocument<TPixel> and ILayer<TPixel>, along with a rich and strongly-typed imaging framework providing support for a wide variety of pixel formats, pooled bitmap allocation, scaling/interpolation, quantization/dithering, format conversion, color management, and more.

Decoupling the FileType system from the internal classes means that these two systems can now evolve independently, and internal details can be abstracted away from plugins. The new plugin system has been designed to support versioning, meaning that functionality can be added or changed in the programming interfaces that are provided to plugins while maintaining compatibility for plugins that have already been published. New layer types and topologies (e.g. layer folders) can be added without breaking existing plugins, new blend modes can be introduced, and bitmap layers can finally be migrated to a tiled storage system.

Note to plugin authors: In general, plugins should provide pixel data in the image file’s original format without converting it to BGRA32. In other words, let Paint.NET handle the conversion, whether you’re supplying pixels as RGBA64, BGR24, or even an HDR format such as RGBA FP16. Paint.NET will figure out the best conversion for pixel format and color profile handling, and when expanded pixel format support is rolled out your plugin can automatically benefit from it. Note that plugins can query at runtime which pixel formats are supported and which are native, in case they do want to do the conversion themselves for whatever reason.

New Layer Rendering Engine

The old layer rendering engine has its roots going all the way back to the 1.0 release in 2004. Over the years it has migrated from C# to C for performance reasons, and then back to C# once the language and .NET’s JIT had finally caught up to (and surpassed!) the performance of the native C compiler’s code generation. However, it has no SIMD optimizations, it only has 8 bits per channel of precision (“UI8”), and the code was very messy and difficult to make changes to. Working with many layers can result in incorrect colors or banding artifacts as off-by-1 errors accumulate across multiple layers. 

With 5.2, this has been completely rewritten and upgraded to use 32-bits of floating-point precision per channel (“FP32”). It is fully optimized for AVX2, AVX512, and even ARM64 NEON thanks to .NET’s new platform-agnostic intrinsics support. Because FP32 uses a lot more memory bandwidth than UI8, many tricks have been employed to optimize that to the point that there is no perceptible performance reduction from previous versions (the old renderer not using any SIMD also helps this comparison). The bottleneck is compute, not memory bandwidth, and performance really shines on CPUs with AVX512 support (e.g. AMD Zen 5) even with standard dual channel memory.

A driving factor behind this change was to prepare for future versions of Paint.NET that will expand pixel format support beyond BGRA UI8. In order to do this in a sane and maintainable manner, having a canonical pixel format became important so that each rendering kernel only needs to be written once. All of the rendering kernels can now operate exclusively on FP32 data, with high-performance format conversion and color transform kernels at the beginning and end of the rendering pipeline. This will make it much easier to add application-level support for RGBA UI16, RGBA FP16, and even RGBA FP32 — the layer rendering engine already supports it, the rest of the app just has to catch up.

New Effects

This release adds 8 new effects. These fill in the Artistic submenu, add some new dithering capabilities, two new distortion effects, and finally support for high-quality halftoning.

  • Artistic -> Linocut
    • Simulates a relief printmaking technique where an artist carves an image into a sheet of linoleum, rolls ink onto the raised surface, and then stamps it onto paper or fabric.
  • Artistic -> Mosaic
    • This is sort of like an expanded Pixelate effect with optional beveling and grout separation between the “pixels.” There are numerous tiling patterns to choose from.
  • Artistic -> Pointilism
    • Simulates a painting technique where an artist applies small, distinct dots of color next to each other to form an image.
  • Artistic -> Stained Glass
    • Simulates stained glass. Similar to Distort->Crystalize, but more fleshed out.
  • Color -> Ordered Dither
    • Simple ordered dithering patterns from the Bayer, Spiral, Dual Spiral, Blue Noise, and White Noise families.
  • Distort -> Spherize
    • Similar to Distort -> Bulge, but produces an actual spherical shape.
  • Distort -> Waves
    • A very configurable effect that can produce waves, ripples, spirals, flowers, and other shapes.
  • Stylize -> Halftone
    • Simulates physical printing, such as seen in newspapers or comic books, using either CMYK or black-and-white dots. The conversions between RGB and CMYK are color space aware and operate in linear gamma space when appropriate, resulting in a very high quality result.

Examples of each new effect:

Original
image.png
Linocut
image.png
Mosaic
image.png

Pointilism
image.png
Stained Glass
image.png
Ordered Dither
image.png

Spherize
image.png
Waves
image.png
Halftone
image.png

Experimental Wine Support

NOTE: This is not for the faint of heart! It is very much experimental and targeted towards early adopters who aren’t afraid of missing functionality, performance issues, crashes, and wrestling with dependencies.

I’ve recently made major progress getting Paint.NET working on top of Wine, which means Paint.NET can now finally run on Linux and Mac. This was first made available as part of 5.2 Alpha (build 9739) and has now been moved into its own package that you can download from a separate GitHub page with its own Releases page and Issues tracker. Updates will be independent(-ish) of the main Windows packages, at least for the foreseeable future. Each new Windows release will be accompanied by a corresponding Wine release so that it doesn’t fall behind in functionality.

What’s coming in 6.0?

The next big update will introduce a new .PDN file format that will finally enable the ability to add new features to the document and layering systems. High bit-depth pixel formats, new blend modes, and layer folders are planned to be the first use of this. Later on, features such as adjustment layers, text layers, and HDR are also planned (to name just a few).

Change Log

Changes since 5.2 Alpha (build 9739) (sorry, I forgot to cross-post it to the blog):

  • New: The Eraser tool now supports selecting a Fill pattern in the toolbar.
  • Improved: When using Image->Resize and “Maintain aspect ratio”, the rounding has been improved to reduce the aspect ratio error
  • Fixed a bug in the Move tools where shift-clicking on a side handle (north/south/east/west) would sometimes cause it to move on its own by 1-2 pixels.
  • Fixed: The Colors window will no longer erase the hex field if an invalid character is typed.
  • Fixed the tooltips in the File -> Open Recent menu by removing them (WinForms is just very buggy here). The directory paths are now shown on a second line of text instead.
  • Renamed the “Move Selected Pixels” tool to “Move Pixels.”
  • Fixed an SEHException error message when changing the language.
  • Experimental Wine support is now in a separate package that is updated independently(-ish) of the main package. You can get it here: https://github.com/paintdotnet/Paint.NET-on-Wine
  • Updated the DDS FileType Plus bundled plugin. The Save Options dialog will now auto-check or auto-uncheck the checkboxes for enabling mipmaps or cube maps if the image was originally opened from a DDS file.

Download and Install

This build is available via the built-in updater as long as you have opted-in to pre-release updates. From within Settings -> Updates, enable “Also check for pre-release (beta) versions of Paint.NET” and then click on the Check Now button. You can also use the links below to download an offline installer or portable ZIP.

image.png

You can also download the installer here (for any supported CPU and OS), which is also where you can find downloads for offline installers, portable ZIPs, and deployable MSIs.

For the experimental builds for Wine, you can go here to download them.

  •  

Early Stable Update for Desktop

23 September 2026 om 21:07

 The Stable channel has been updated to 155.0.8059.12/.13 for Windows and Mac as part of our early stable release to a small percentage of users. A full list of changes in this build is available in the log.

You can find more details about early Stable releases here.

Interested in switching release channels?  Find out how here. If you find a new issue, please let us know by filing a bug. The community help forum is also a great place to reach out for help or learn about common issues.


Srinivas Sista

Google Chrome

  •  

v1.11.0 - Bulwark Lite, Single-Occurrence RSVP & Stalwart Compatibility Fixes

Door: rathlinus
23 September 2026 om 21:37

1.11.0 (2026-09-23)

1.11.0 introduces Bulwark Lite, a static build of the webmail that runs without a Node server, and fixes many places where Bulwark and Stalwart disagreed about mail, filters, calendars, contacts and files. It contains everything from the three 1.11.0 betas. The latest Docker tag moves to this release.

Thank you for your donations:

One-time

Monthly

Features

  • Lite: Bulwark Lite, a static build that talks to the JMAP server straight from the browser. npm run build:lite builds it, and every release ships bulwark-lite-<version>.zip for any static web host
  • Lite: bulwark-lite-stalwart.zip, a Stalwart Application bundle that picks up its mount prefix at runtime, with OpenID Connect login
  • Lite: Container image ghcr.io/bulwarkmail/webmail-lite (#1081)
  • Themes: "Flat fields" theme
  • Calendar: Attendees can answer a single occurrence of a recurring event (#1086)
  • Mail: Office attachments open read-only in the document editor, straight from the message, when a WOPI editor is configured (#1047)
  • Push: Optional inbox-only push notifications (#983, thanks @guisea)
  • Mail: Toasts for mail actions that gave no feedback, and an "email sent" toast after immediate sends
  • Filters: "Keep a copy" option for forward actions
  • Filters: Per-rule "Also move messages marked as spam" option
  • Admin: Login page toggles in admin settings for the version, the 2FA code option, the heading and the subtitle (#1068)
  • Navigation: Deep links resolve to the local instance

Changes

  • Auth: Signing out of an SSO account also signs out of the identity provider when it advertises an end_session_endpoint (#905). Set OAUTH_END_SESSION=false to keep the provider session, for example when other apps share it, and OAUTH_POST_LOGOUT_REDIRECT_URI to send users back to the webmail afterwards
  • Filters: Move and copy rules leave mail that Stalwart marked as spam in Junk. Before, a rule such as "subject contains invoice" also collected phishing. "Keep" rules stay unguarded as the allow-list
  • Mail: Search sends terms exactly as typed, without adding a prefix wildcard, in tag views too
  • Mail: The message list loads attachment chips lazily, so large folders open faster (#1089)
  • Send: Scheduled send is limited to 7 days, the most Stalwart accepts
  • UI: Icon set migrated from Lucide to Tabler Icons
  • Docker: Pre-releases no longer move the latest tags
  • Docs: Most README details moved to the website docs, with new screenshots

Fixes

  • Mail: "All folders" search includes shared accounts (#1082)
  • Mail: A search inside a tag view narrows the tag instead of replacing it (#1084, thanks @rotterp)
  • Mail: Leaving an account drops a search folder scope that belongs to it (#1084, thanks @rotterp)
  • Mail: A failed search shows an error instead of "No results found"
  • Mail: In unified views, threads belong to the account that owns them (#1012, thanks @lucamzanon)
  • Mail: A failed move between accounts no longer deletes the original
  • Mail: "Mark all as read" marks every unread message instead of skipping pages past the first 500
  • Mail: Mark as spam and not spam report moves the server refuses
  • Mail: Unread-first order keeps bringing up unread mail past the first page
  • Mail: The tag button in a row's hover actions opens the tag picker instead of clearing the message's tags (#1032, thanks @douwezijlstra-frl)
  • Mail: Tag and tab counters no longer download every matching id
  • Mail: Text in fixed-width tables wraps to the screen on iOS (#1020)
  • Mail: Mail action toasts show again
  • Send: A send the server refuses is reported as failed instead of sent. When only filing the sent copy fails, a warning says so, so the mail is not sent twice
  • Send: A From override is also used as the envelope sender where the server accepts it. Where it doesn't, as on Stalwart, the composer says that the identity's address shows in the Return-Path (#1009)
  • Send: Sending with an identity adds its Bcc addresses
  • Composer: Attachments over the server's size limits are refused before upload
  • Composer: A staged attachment is kept until its upload finishes
  • Filters: Filters keep running while the auto-reply is on, and saving a filter no longer turns the auto-reply off
  • Filters: "Mark read", "star" and "add label" reach mail that the same rule moves, and rules keep their target folder after it is renamed
  • Filters: Forward actions respect the server's redirect limit (one on Stalwart) instead of being dropped without notice
  • Auto-reply: A warning appears before saving an auto-reply that Stalwart would refuse as too long
  • Calendar: Edits to a single occurrence stay on that occurrence and keep its details
  • Calendar: Date ranges are queried in the right time zone, and long recurring series or more than 1000 events no longer leave the calendar incomplete
  • Calendar: When the server refuses an event's invitations, you can save the event without sending them
  • Calendar: Subscriptions that fail with "Not authenticated" name the cause, such as a mail server certificate the webmail server does not trust (#1073)
  • Calendar: The subscription dialog no longer promises CalDAV URLs
  • Calendar: The import dropdown opens above the day and week views (#1049)
  • Contacts: Contacts with calendar, scheduling or free/busy links save, and cleared fields are cleared on the server
  • Contacts: vCard import no longer sends fields Stalwart rejects and writes addresses in the RFC 9553 form
  • Contacts: Deleting an address book that still holds contacts works
  • Files: Every file is listed, even when the account has more than maxObjectsInGet (#1069)
  • Files: Copying a folder copies its contents, and changes inside a shared drive go to the drive's account
  • Files: An upload or new folder whose name is taken becomes "name (2)" instead of failing
  • Files: Sharing works on Stalwart versions before 0.16.6
  • Files: Names Stalwart refuses are caught before sending, uploads store an accepted variant, and Office files keep their MIME type on Stalwart 0.16.6 and later
  • Account: You stay signed in after changing your password in settings
  • Account: Users who are not admins see their name, and changing the password or turning TOTP off asks for the current code
  • Auth: OAuth endpoints on the configured issuer's own host are accepted when they resolve to a private address, so split-DNS setups no longer need OAUTH_ALLOW_PRIVATE_ENDPOINTS (#1028)
  • Auth: Linking the mobile app re-authenticates against the account's own identity provider when OAuth is configured per server
  • Push: Push subscriptions are renewed before Stalwart's 7-day expiry, so a tab or app left open for over a week keeps getting notifications
  • Sharing: Principals are listed in directories with more than 500 users
  • Lite: The login page hides the server field once config.json sets jmapServerUrl (#1087)
  • Plugins: The plugin sandbox follows the app's "Automatic" language (#976, thanks @bartfaizoli76)
  • UI: The global error page loads the app's styles

  •  

Release 2026.09.23

23 September 2026 om 20:20

Docker Images

Docker images have been built and pushed:

Docker Hub:

  • alexta69/metube:latest
  • alexta69/metube:2026.09.23

GitHub Container Registry:

  • ghcr.io/alexta69/metube:latest
  • ghcr.io/alexta69/metube:2026.09.23

Changes

  • fix: stop folder errors from reading as a successful add (closes #1082) (292fe2d)

  •  

v12.4.1

23 September 2026 om 19:00

🐛 Bug Fixes & Optimizations

  • @directus/api
    • Fixed reading from folders endpoint as non admin (#28286 by @Nitwel)

📦 Published Versions

  • @directus/app@18.0.1
  • @directus/api@39.2.1

  •  

v1.11.0-beta.3 (Pre-release)

Door: rathlinus
23 September 2026 om 18:19

Pre-release. General test build for 1.11.0. Not recommended for production. The latest Docker tag stays on 1.10.0. To try it, use ghcr.io/bulwarkmail/webmail:1.11.0-beta.3.

Bulwark Lite zips (bulwark-lite-1.11.0-beta.3.zip for static hosts, bulwark-lite-stalwart.zip for Stalwart Applications) are attached once the Build Static Lite workflow finishes.

Added

  • Attendees can answer a single occurrence of a recurring event (#1086).
  • Optional inbox-only push notifications (#983, thanks @guisea).
  • OpenID Connect login in the Bulwark Lite bundle for Stalwart.
  • Bulwark Lite as a container image (#1081).

Changed

  • The message list loads attachment chips lazily, so large folders open faster (#1089).
  • Mail search sends search terms exactly as typed, without adding a prefix wildcard. This also applies in tag views.
  • Scheduled send is limited to 7 days, the most Stalwart accepts.

Fixed

  • "All folders" search includes shared accounts (#1082).
  • A search inside a tag view narrows the tag instead of replacing it.
  • Leaving an account drops a search folder scope that belongs to it (#1084, thanks @rotterp).
  • In unified views, threads belong to the account that owns them (#1012, thanks @lucamzanon).
  • A failed move between accounts no longer loses the message.
  • "Mark all as read" marks every unread message and reports spam moves the server refuses.
  • Send and search report failed JMAP calls instead of claiming success.
  • Attachments over the server's size limits are refused before upload.
  • Sending with an identity adds its Bcc addresses.
  • Tag and tab counters no longer download every matching id.
  • Mail filters keep running while the auto-reply is on, keep flags and folder targets when mail is moved, and no longer pull spam out of Junk.
  • A warning appears before you save an auto-reply that Stalwart would refuse as too long.
  • Edits to a single occurrence stay on that occurrence and keep its details.
  • Calendar ranges are queried in the right time zone and past the server limits.
  • If the server refuses an event's invitations, you are offered to save the event anyway.
  • The calendar subscription dialog no longer promises CalDAV URLs.
  • Contacts with calendar links or cleared fields save correctly.
  • Files lists every file, even when the account has more than maxObjectsInGet (#1069).
  • Files can copy whole folders and write to shared drives, shares files on Stalwart versions before 0.16.6, and handles file names and types Stalwart refuses.
  • You stay signed in after changing your password in settings.
  • Users who are not admins see their name and can change a TOTP password.
  • Push subscriptions are renewed before Stalwart's 7-day expiry.
  • Sharing lists principals in directories with more than 500 users.
  • The plugin sandbox follows the app's "Automatic" language (#976, thanks @bartfaizoli76).
  • The global error page loads the app's styles.

Please report problems in the issue tracker.

  •  

Soul of Anatolia: Building Intersections with Pavel

Door: David
23 September 2026 om 17:00

Today, we’re taking a look behind the scenes of the Soul of Anatolia DLC for Euro Truck Simulator 2, this time focusing on the complex work that goes into creating the roads and intersections that connect its cities and landscapes. We spoke with Pavel, one of our Map Designers, who shared more about his work on the project and the process of building a road network.

Hi! My name is Pavel, and I’ve been working at SCS Software as a Map Designer for more than 7 years.

For the past two years, I’ve mainly specialised in everything related to roads and highways.

For Soul of Anatolia, I design large highway interchanges and create specifications for other departments for prefabs, tunnels, and traffic lights. I also work with my colleagues to place these elements throughout the map and strive to create a consistent driving experience for players.

What similar projects have you worked on in the past, and how is working on Soul of Anatolia DLC different?

The project that comes closest to my work on Soul of Anatolia is the Greece DLC, where I had some experience with the geometric design of interchanges and maintaining consistency in road elements such as toll gates.

Working on Soul of Anatolia is different mainly because of the scale of what I’m responsible for. I’ve been given much more room to influence the road layout.

How large is this DLC, and what challenges does it bring for you?

From my perspective, with my focus mainly on roads, this DLC is truly huge. For example, we have more than a hundred large highway interchanges on the map.

The challenge for me is to make sure these interchanges meet our requirements while also making sure everything fits within the map.

How does the creation and implementation of highway interchanges work?

Since the project is usually already underway in some form by the time I start working on it, I create pre-assembled interchanges separately from the project in a dedicated test map, where I also test newly created prefabs.

In this map, I always start with a rough prototype built by hand, where the main focus is choosing the right number of road lanes and the type of road intersection. I then iterate on this prototype, adjusting curve radii and fine-tuning road lengths to meet the rules we have established, such as clearance heights under bridges, road banking, and maximum gradients.

I try to calculate and build everything so that the interchange matches its real-world counterpart as closely as possible, is as compact as possible, and is also comfortable to drive through.

Once I’m happy with the prototype, it is copied into the project and placed in its designated location, where it may still undergo some minor adjustments. At that point, my work on the interchange is finished.

You spoke about prefabs; how does the creation of new prefabs work?

First, I consider whether a prefab really needs to be created for a particular situation, or whether the situation could be solved with a prefab we already have, perhaps with a small compromise.

If I conclude that a new prefab is necessary, I start designing it. I begin by putting together a rough prototype using roads. For the design, I use simple geometry, such as calculating the radius and sector of a circle.

It’s important not to make the prefab unnecessarily large while also finding the right compromise that allows both our AI traffic and players to drive through it without problems.

Once I’m happy with the shape, I create a simple blueprint of the prefab. In addition to its shape, it also shows the road markings and the routes that AI traffic will take.

Once that is ready, I create a specification for our road department. Along with the coordinates of the pre-assembled prototype, I include the blueprints and a basic description.

After that, I simply wait for the prefab to be created. Once it comes back to me, I either provide feedback on it or approve it for use on the map.

What are you most looking forward to seeing completed on the map as part of Soul of Anatolia DLC?

A little selfishly, I’m looking forward to finally having all the highway interchanges and prefabs completed. Toward the end of the project, I’ll also add the necessary accessories to them, such as traffic lights.

After that, most of my work will be focused on details and small touches that will allow me to give the project some extra care and bring the level of detail closer to the real-world references.

What have you enjoyed the most about Soul of Anatolia DLC so far, and what are you looking forward to the most?

I’m really enjoying one new type of interchange, and one modified existing type of prefab that I’ve wanted to have ever since I joined the company. I’ve now managed to get them created, and they’re already waiting for you in the map for you to drive through.

What do you think players will like the most about Soul of Anatolia DLC, and what shouldn’t they miss?

Of course, waiting at traffic-light intersections!

No, just kidding. It will definitely be the landscapes and landmarks. Even now, at a really early stage of the map’s development, some places can really surprise me with how detailed and beautiful they already look.

We hope you enjoyed this behind-the-scenes look at the work that goes into building the roads and intersections of Soul of Anatolia. A huge thank you to Pavel for sharing more about his role and giving us a glimpse into the process behind creating the region's road network.

If you are excited to be cruising in this map expansion, don't forget to support us by adding the Soul of Anatolia DLC to your Steam wishlist.

Also, remember to give our X/Twitter, Instagram, Facebook, Bluesky, and TikTok a follow, as you'll receive updates from our games straight to your feed. Or subscribe to our newsletter to stay informed. Until next time, safe travels!

  •  

v1.21.0

23 September 2026 om 17:42

This week's release includes faster rendering in syntax-highlighted files and Markdown code blocks, a language server command picker, a setting that keeps your system awake during long-running agent turns, and BYOK support for Claude Opus 5.5 (Anthropic) and GPT-6 Astra, Sol, and Luna (OpenAI).

Features

AI

  • Added SuperGrok sign-in so SuperGrok subscribers can use Grok models in the Agent Panel. (#63248; thanks thibaudgg)
  • Added the agent.prevent_idle_sleep setting, enabled by default, to prevent idle system sleep while agent threads are running. (#53130; thanks cppcoffee)
  • Added support for DeepSeek Flash 4.1. (#64014; thanks cppcoffee)
  • Added the agent.threads_sidebar_default_width setting to configure the width of the Threads Sidebar. (#62883; thanks porada)
  • Added the agent: rename selected thread action for renaming the active Terminal Thread from the Agent Panel. (#63660; thanks mauriciord)
  • Added BYOK support for Claude Opus 5.5 with an Anthropic API key. (#64627)
  • Added BYOK support for GPT-6 Sol and GPT-6 Luna with an OpenAI API key. (#64628)
  • Added BYOK support for GPT-6 Astra with an OpenAI API key. (#64420)
  • Added Z.ai GLM to the Mistral provider. (#63535; thanks ummon-v)
  • Improved ACP compatibility and async task wakeup handling. (#64077)

Git

  • Added Cut, Copy, and Paste context menu actions to the commit message editor. (#64142; thanks hooch)

Languages

  • Added a language server command picker and support for language servers to open files and URLs with showDocument requests. (#63607)
  • Added a prompt to install the Emmet extension when opening files in Emmet-supported languages. (#63750)
  • Added support for running language-server actions directly from actionable inlay hints. (#63605)
  • Improved rendering performance for Markdown code blocks in the Agent Panel, hover popovers, and Markdown preview. (#63138)
  • Improved development extension compilation by automatically replacing outdated WASI SDK installations. (#63816; thanks jkbz64)

Other

  • Added a comment_empty_lines parameter to the editor::ToggleComments keybinding action for multiline selections. Set it to true to comment blank lines or false to skip them; Zed's default keymap now uses true, while the VS Code keymap uses false. (#63961; thanks UdeshyaDhungana)
  • Added editor.code_lens.foreground for customizing CodeLens text independently. (#64084; thanks giorgiopogliani)
  • Added support for "..." in read_only_files so project settings can extend inherited read-only patterns. (#64222; thanks porada)
  • Added menu (Linux and Windows) and shift-f10 (all platforms) shortcuts to open the context menu for the selected Project Panel entry. (#46744; thanks CCXLV)
  • Improved editor rendering performance in syntax-highlighted files, especially with the minimap enabled. (#63145)

Bug Fixes

  • Fixed a bug where folders remained highlighted after they stopped being dragged. (#64038; thanks tidely)
  • Fixed the macOS traffic light animation when exiting fullscreen. (#64339; thanks tidely)
  • Fixed a bug where restored macOS windows reopened on the currently active Space instead of their original Space. (#58886; thanks tnayuki)
  • Fixed auto-compaction thresholds for GitHub Copilot models with a prompt limit below their context window. (#64195)
  • Fixed the Inline Assistant failing to select an available fallback model when no default model was configured. (#63963; thanks hferreiro)
  • Fixed a bug on macOS where moving the pointer over another app could trigger hover effects in a Zed window underneath it. (#64234)
  • Fixed a bug where deleted files appeared outside the file tree in the Outline Panel when viewing a diff. (#63570; thanks FrantisekGazo)
  • Fixed a crash during Python interpreter discovery when an executable emitted non-UTF-8 output. (#64040)
  • Fixed a crash when pasting in an expanded deleted diff hunk in Helix mode. (#64245)
  • Fixed a Linux startup crash when local XKB keyboard-definition files were unavailable. (#64113)
  • Fixed Anthropic credit exhaustion being classified as a malformed request instead of a payment issue. (#63988)
  • Fixed canceled external file drags on Linux Wayland sometimes remaining active and causing later clicks to copy the dragged file. (#64122; thanks itsfuad)
  • Fixed compilation of development extensions on Windows ARM64. (#63816; thanks jkbz64)
  • Fixed compilation of development extensions with large Tree-sitter grammars. (#63816; thanks jkbz64)
  • Fixed data-retention consent checks for hosted counting and compaction requests. (#64194)
  • Fixed diff statistics to use the theme's version-control colors for added and deleted line counts. (#64083; thanks kvechkanov)
  • Fixed font suggestions listing unavailable fallback fonts and internal font aliases. (#64095)
  • Fixed intermittent "database is locked" errors when sharing a database across Zed instances. (#63923; thanks whitecat1331)
  • Fixed Ollama being unable to access images returned by tool calls. (#64121; thanks marius851000)
  • Fixed Python decorator syntax highlighting conflicting with the matrix multiplication operator. (#58077; thanks allachance)
  • Fixed remote server removal prompts not capturing keyboard focus. (#60965; thanks cfiq)
  • Fixed terminal tool output in the Agent Panel to consistently use the theme's terminal.background color. (#64163; thanks chrisdrackett)
  • Fixed the gutter tooltip's modifier-click hint after holding Command. (#64124; thanks GautamBytes)
  • Fixed the Project Panel failing to scroll to collapsed parent folders. (#64207)
  • Fixed a crash when typing into an empty side of a merge conflict. (#64604)
  • Fixed newly available ChatGPT subscription models not appearing in the model picker. (#64625)
  • Fixed the Git Panel unexpectedly switching repositories when viewing changes in multi-repository projects. (#58795; thanks mengh04)
  • Fixed deleted Git gutter markers disappearing at narrow custom widths. (#64469; thanks rajin-khan)
  • Fixed a bug where a project root folder could not be renamed to match a child folder. (#64268; thanks D4r3NPo)
  • Fixed the thinking toggle for Mistral Small and Medium. (#63535; thanks ummon-v)

  •  

v1.22.0-pre

23 September 2026 om 18:21

This week's release includes BYOK support for Claude Opus 5.5 (Anthropic) and GPT-6 Astra, Sol, and Luna (OpenAI), per-call model overrides in spawn_agent, automatic subagent compaction, and dynamically fetched OpenCode models.

Features

AI

  • Added BYOK support for GPT-6 Astra with an OpenAI API key. (#64420)
  • Added BYOK support for GPT-6 Sol and GPT-6 Luna with an OpenAI API key. (#64628)
  • Added BYOK support for Claude Opus 5.5 with an Anthropic API key. (#64627)
  • Added an optional model parameter to spawn_agent to choose a model for that spawn instead of using the configured subagent model or inheriting the parent model, with the active model shown in its card. (#64498; thanks itsfuad)
  • Added Grok 4.7 to the SuperGrok and xAI providers and made it their recommended default. (#64567; thanks raphaelluethy)
  • Added Z.ai GLM to the Mistral provider. (#63535; thanks ummon-v)
  • Added the agent.threads_sidebar.auto_open setting to control whether opening a folder in an existing window also opens the Threads Sidebar. (#64259, #64395; thanks jackhwalters and joshkent94)
  • Added support for "..." in edit_predictions.disabled_globs and edit_predictions_disabled_in so settings can extend inherited edit prediction exclusions and scopes. (#64540, #64546; thanks porada)
  • Enabled compaction for subagents. (#64135)
  • Improved OpenCode model availability by fetching the Zen and Go model list dynamically instead of relying on one bundled with Zed. (#64585)
  • Improved Threads Sidebar sizing so changes to agent.threads_sidebar.default_width take effect even after manually resizing the sidebar. (#64395; thanks joshkent94)

Git

  • Added a unified/split toggle to the diff view opened with zed --diff <old> <new>. (#64529; thanks rn23thakur)
  • Improved how quickly branch diffs show their first changes when a branch has drifted far from its base. (#62536; thanks azeemshaik025)

Terminal

  • Added support for "..." in terminal.path_hyperlink_regexes to extend inherited regexes without repeating them. (#64552; thanks porada)

macOS

  • Added macOS three-finger Look Up and translation gestures for text in focused Markdown previews. (#59297; thanks cppcoffee)

Windows

  • Added MicaBackdrop and MicaAltBackdrop options for the background.appearance theme setting. (#48340; thanks Marocco2)

Other

  • Added support for "..." in file_scan_inclusions and hidden_files so project settings can extend inherited inclusion and hidden-file patterns. (#64440, #64484; thanks porada)
  • Added confirmation in the title bar when a manual update check found Zed was already up to date. (#64106; thanks tahayvr)
  • Improved the pending keystrokes indicator with grouped bindings, a scrollable list, and support for chords without a timeout, such as shortcuts starting with cmd-k. (#64362, #64522)

Bug Fixes

  • Fixed invalid file patterns discarding valid exclusion, hidden-file, read-only, and private-file rules or causing inclusion and file-type settings to panic. (#64525; thanks porada)
  • Fixed cmd-w (macOS) and ctrl-w (Linux/Windows) closing the active dock instead of the active pane item. (#64515)
  • Fixed newly available ChatGPT subscription models not appearing in the model picker. (#64625)
  • Fixed a crash when typing into an empty side of a merge conflict. (#64604)
  • Fixed ligatures being disabled on Windows unless buffer_font_features was set. (#62338; thanks interkelstar)
  • Fixed LSP completions without edit ranges ignoring the configured completions.lsp_insert_mode. (#64139)
  • Fixed the Settings window opening with its header off-screen at high DPI scaling on Windows. (#62073; thanks habisahmad)
  • Fixed the Git Panel unexpectedly switching repositories when viewing changes in multi-repository projects. (#58795; thanks mengh04)
  • Fixed importing VS Code files.exclude into file_scan_exclusions. (#64492; thanks porada)
  • Fixed “Add to .git/info/exclude” failing in secondary Git worktrees. (#63967; thanks mateioprea)
  • Fixed terminals retaining about 2 MB of memory per command after the command finished. (#64405; thanks EcutAtom336)
  • Fixed external-agent terminals completing prematurely or reporting the wrong exit status. (#64544)
  • Fixed a memory leak when closing macOS windows with experimental accessibility enabled. (#64143; thanks feigeCode)
  • Fixed the terminal grid losing its top alignment when growing on Windows. (#63699; thanks 39ali)
  • Fixed a crash on Linux (X11) when a window was redrawn immediately after GPU device recovery. (#64570)
  • Fixed language servers not starting for files opened via UNC paths on Windows. (#56553; thanks Joblen)
  • Fixed PowerShell installed by Scoop not being detected when Scoop uses a custom installation directory. (#62473; thanks jliu666)
  • Fixed task worktree variables resolving to the wrong project when the global tasks.json file was focused, and paths containing spaces breaking Windows tasks. (#55727; thanks di404)
  • Fixed adding the current line to an Agent thread when no text was selected using cmd-> (macOS), ctrl-> (Linux), or ctrl-shift-. (Windows). (#64589)
  • Fixed a bug where a project root folder could not be renamed to match a child folder. (#64268; thanks D4r3NPo)
  • Fixed a bug where the block cursor hid the character underneath until its animation completed. (#64521; thanks linyisu)
  • Fixed columnar selections landing in the wrong column around non-ASCII text, tabs, soft wraps, and collapsed content. (#63723; thanks itsfuad)
  • Fixed the cursor drifting from the center of the editor when using a high vertical_scroll_margin for typewriter-style scrolling. (#63944; thanks rn23thakur)
  • Fixed cursor animations when moving between characters of different widths and during keyboard-triggered autoscrolling. (#64184; thanks tiny-paris)
  • Fixed deleted Git gutter markers disappearing at narrow custom widths. (#64469; thanks rajin-khan)
  • Fixed excerpt expansion when the selection was on deleted text in unified diffs. (#63946; thanks IbrahimKhan12)
  • Fixed a bug where “Configure Excluded Files” selected the wrong list when a commented-out disabled_globs setting appeared before it. (#64540; thanks porada)
  • Fixed diagnostic navigation not linking nearby related diagnostics back to the primary diagnostic. (#64134; thanks GautamBytes)
  • Fixed missing editor underlines for language server diagnostics at positions without underlying text. (#63933; thanks itsfuad)
  • Fixed a bug where the Agent Panel created two terminals when starting a new terminal thread in a project with no existing terminals. (#62151; thanks restlessronin)
  • Fixed keyboard navigation and submission in ACP elicitation forms. (#64193)
  • Fixed errors when ACP agents returned null for empty response payloads. (#64457)
  • Fixed the thinking toggle for Mistral Small and Medium. (#63535; thanks ummon-v)
  • Fixed Markdown preview tabs not showing the source file path on hover. (#64318; thanks GautamBytes)
  • Fixed missing visual feedback when copying REPL output. (#64276; thanks Yao0454)
  • Fixed recording and searching for standalone modifier-key bindings in the Keymap Editor. (#64537)
  • Fixed remote external-agent exit errors appearing before the agent's final response updates were applied. (#64603)
  • Fixed the selection highlight flickering in the Threads Sidebar when clicking terminal threads. (#64387)
  • Fixed snippets from different extensions canceling each other out for the same language. (#58659; thanks LBF38)
  • Fixed Command-clicking a symbol opening a definitions multibuffer instead of the picker when lsp_results_location was set to "picker". (#64039; thanks v-shevtsov)
  • Fixed the macOS traffic light animation when exiting fullscreen. (#64339; thanks tidely)

Breaking Changes and Notices

  • Removed Stop controls from external-agent-managed terminals, which are controlled by the agent rather than a local process. (#64544)
  • Changed Threads Sidebar settings to agent.threads_sidebar.position, agent.threads_sidebar.default_width, and agent.threads_sidebar.auto_open, grouped together in the Settings Editor. Existing settings are migrated automatically. (#64395; thanks joshkent94)
  • Changed the shortcut for closing the active dock from cmd-w (macOS) or ctrl-w (Linux/Windows) to ctrl-alt-w on all platforms. (#64515)
  • Changed terminal.path_hyperlink_regexes so a top-level "..." entry now inserts inherited regexes. To retain the previous three-character regex, replace that entry with ["..."]. (#64552; thanks porada)
  • Stopped importing VS Code’s files.watcherInclude as file_scan_inclusions; watch roots are not Git-ignore overrides. (#64440; thanks porada)

  •  

v5.55.0

23 September 2026 om 14:40

5.55.0 (2026-09-23)

🚀 New feature

  • admin: record token management in audit logs (#27605)
  • admin: content type folders (#27419)

🔥 Bug fix

  • ai endpoints requested when the ai feature is unavailable (#27525)
  • admin: suppress MISSING_TRANSLATION errors to fix sluggish editing (#26108)
  • admin: sso default role placeholder shows "choose here" twice (#27685)
  • content-manager: create on the fly prefills inverse from component paths (#27636)
  • content-manager: saved list sort resets on base-route navigation (#27663)
  • core/core: koa response helper types missing in consumer projects (#27380)
  • database: updateMany with relation filter subquery (#26909)
  • database: document-id migration can take hours on large localized tables (#27404)
  • database: updateMany ignores _q and filters (#27769)
  • documentation: restore properties for repeated relation targets (#27592)
  • graphql: exclude custom resolvers from built-in query field detection (#27462)
  • upload: store unsigned urls in richtext and blocks fields (#27593)
  • upload: media library degrades for roles without settings.read (#27687)
  • upload: show more media grid columns on wider screens (#27711)
  • utils: normalize string chunks before buffering streams (#27700)

⚙️ Chore

  • deps: remove unused dependencies from @strapi/strapi (#27540)
  • docker: postgres dev container fails to start on postgres 18 (#27668)
  • upload: promote the new media library out of future/ (#27666)

❤️ Thank You

  •  

Let op: geld sparen kost geld | POM S12E05

23 September 2026 om 13:12

Milou Brand komt langs met haar boek en met een sticker erop die vloekt met alles wat we van kinds af aan hebben geleerd: let op, sparen kost geld. Waar je in 2000 een gezin een week lang voor 50 euro te eten gaf, kost datzelfde mandje nu 90. Je spaarrekening ziet er nog hetzelfde uit, maar je bent de helft kwijt. Ondertussen hebben we met z’n allen 600 miljard braaf apart gezet en kregen we vroeger een Pennymaat om vooral zo door te gaan.

Beleggen daarentegen is volgens het beeld dat wij ervan hebben iets voor mannen in pakken op RTL Z, of erger, voor Marco van Basten die na 9/11 in één dag tien miljoen kwijtraakte en toen ook nog alles verkocht. Milou legt uit waarom het over dertig jaar nog nooit is misgegaan, hoe je je inleg spreidt als je net zo emotioneel bent als Alexander en waarom een redacteur haar vroeg om vooral geen reclame te maken voor beleggen. Alsof dat ooit tegen iemand gezegd wordt over sparen.

En toen kwam het beste idee van Trump tot nu toe ter sprake. Ernst beleeft er zichtbaar plezier aan dat hij dat hardop mag zeggen.

Zwemmen in het geld is vanaf vandaag te koop via pom.press of bij je lokale boekhandel.



This is a public episode. If you would like to discuss this with other subscribers or get access to bonus episodes, visit www.pom.show

💾

  •  

Counter-Strike 2 Update

23 September 2026 om 01:37
[p]\[ PREMIER ][/p]
  • [p]Updated the map selection process to give players more opportunities to play maps they've been learning.[/p][/*]
  • [p]Map selection process:[/p]
    • [p]Team 1 picks one map[/p][/*]
    • [p]Team 2 picks two maps[/p][/*]
    • [p]Team 1 picks a final map. [/p][/*]
    • [p]One of the four maps will be randomly selected and the match will begin.[/p][/*]
    [/*][p][/p][p]\[ RUSH ][/p]
    • [p]Rush is a fast-paced queued 3v3 game mode. [/p][/*]
    • [p]Players battle through a series of battle arenas to reach the opponent's castle and win the match.[/p][/*]
    • [p]Battle arenas are randomly selected for each match, so no two matches are the same.[/p][/*]
    • [p]Control the tower when you eliminate the enemy team (or time expires) to win the round.[/p][/*]
    [p][/p][p]\[ GAMEPLAY ][/p]
    • [p]Players can now reload silently (but slowly) by pressing and holding the reload key.[/p][/*]
    • [p]Un-scoping a sniper weapon no longer produces a sound.[/p][/*]
    • [p]Globally increased visual clarity and improved fidelity of bullet impact decals.[/p][/*]
    • [p]ammo_grenade_limit_total setting now also enforces the total number of grenades a player is allowed to purchase in a round.[/p][/*]
    • [p]Chickens now take damage from the Zeus x27.
      [/p][/*]
    [p]\[ SETTINGS ][/p]
    • [p]Crosshairs have been updated to be resolution independent.[/p]
      • [p]A new "Crosshair/Scopes" tab is available in the Settings menu, and includes updated crosshair settings.[/p][/*]
      • [p]Added new crosshair styles[/p][/*]
      • [p]Updated the default crosshair to "Dynamic Quad," which better represents weapon accuracy.[/p][/*]
      [/*][p][/p][p]\[ ENGINE ][/p]
      • [p]Updated engine code to the latest version of Source 2.[/p][/*]
      [p][/p][p]\[ MAPS ][/p][p]Ancient[/p]
      • [p]Fixed holes in world in Long A Main Hall.[/p][/*]
      • [p]Adjusted door geometry and grenade clipping inside Jaguar.[/p][/*]
      [p]Cache[/p]
      • [p]Some gap fixes and clipping adjustments around the blue doors in Mid.[/p][/*]
      [p]Mirage[/p]
      • [p]Reinforced scaffolding by balcony in A site.[/p][/*]
      [p]Train[/p]
      • [p]Blocked pixel gap in crates on bombsite A.[/p][/*]
      [p][/p][p]\[ MISC ][/p]
      • [p]Added ability to set a "Clan Tag" for players who are members of Steam Community Groups. You can adjust your Clan Tag from your Player Profile.[/p][/*]
      • [p]Added support for applying stickers to C4.[/p][/*]
      • [p]The Starjunk 95, Industrial Sunset Memories Music Kit is now available for purchase in standard and StatTrak versions through the STORE tab.[/p][/*]
      • [p]Halftime scoreboard stats should now fully reflect the results of the previous round.[/p][/*]
      • [p]Fixed a case where players could avoid a kick ban.[/p][/*]
      • [p]Players can now adjust music volume per game-mode.[/p][/*]
      [p][/p][p]\[ WORKSHOP ] [/p]
      • [p]Added "minimap_volume" entity which enables a custom minimap image when a player is within the volume.[/p][/*]
      • [p]Added "sky_camera_volume" and "sky_camera_volume_target", which enable custom location-specific skybox rendering.[/p][/*]
      • [p]Added "point_deathcam_bounds" entity that constrains the player death camera.[/p][/*]
      • [p]Added "env_shake_volume" entity that allows camera shake only within a specified volume.[/p][/*]
      [p][/p][p]\[ SCRIPTING ][/p]
      • [p]Added CSRadarPoint entity.[/p][/*]
      • [p]Added CSObservablePoint entity.[/p][/*]
      • [p]Added AddTeamMoney API method.[/p][/*]
      • [p]Added OnPlayerTeamChanged callback.[/p][/*]
      • [p]SetDialogVariableString now accepts a localization string.[/p][/*]
      •  

      Extended Stable Update for Desktop

      22 September 2026 om 20:19

      The Extended Stable channel has been updated to 152.0.7977.140 for Windows and Mac which will roll out over the coming days/weeks.

      A full list of changes in this build is available in the log. Interested in switching release channels? Find out how here. If you find a new issue, please let us know by filing a bug. The community help forum is also a great place to reach out for help or learn about common issues.

      Srinivas Sista
      Google Chrome
      •  

      Stable Channel Update for Desktop

      22 September 2026 om 23:30

      The Chrome team is delighted to announce the promotion of Chrome 154 to the stable channel for Windows, Mac and Linux. This will roll out over the coming days/weeks.

      Chrome 154.0.8037.57 (Linux) 154.0.8037.57/.58 Windows/Mac contains a number of fixes and improvements -- a list of changes is available in the log. Watch out for upcoming Chrome and Chromium blog posts about new features and big efforts delivered in 154.

      Security Fixes and Rewards

      Note: Access to bug details and links may be kept restricted until a majority of users are updated with a fix. We will also retain restrictions if the bug exists in a third party library that other projects similarly depend on, but haven’t yet fixed.

      This update includes 108 security fixes. Please see the Chrome Security Page for more information.

      [$5,000][551573368] Critical CVE-2026-95350: Buffer overflow in ANGLE. Reported by Billy Jheng Bing Jhong, Muhammad Alifa Ramdhan, Pan Zhenpeng of STAR Labs SG Pte. LTd. on 2026-08-24

      [$2,500][530045332] Critical CVE-2026-95357: Out of bounds write in GPU. Reported by Anymous on 2026-07-01

      [TBD][548585299] Critical CVE-2026-95339: Use after free in ServiceWorker. Reported by Andrew Boni on 2026-08-18

      [TBD][551708184] Critical CVE-2026-95281: Buffer overflow in ANGLE. Reported by Muhammad Alifa Ramdhan of STAR Labs SG Pte. Ltd. on 2026-08-24

      [TBD][552665794] Critical CVE-2026-95313: Use after free in Fullscreen. Reported by WinD39 - Huynh Dinh Vu on 2026-08-26

      [N/A][553172761] Critical CVE-2026-95349: Buffer overflow in WebGL. Reported by Google on 2026-08-27

      [TBD][556435507] Critical CVE-2026-95284: Buffer overflow in ANGLE. Reported by Muhammad Alifa Ramdhan (STARLABS SG) on 2026-09-03

      [TBD][556576992] Critical CVE-2026-95322: Out of bounds write in GPU. Reported by David Sievers (@loknop) on 2026-09-03

      [N/A][559320837] Critical CVE-2026-95329: Out of bounds write in WebGL. Reported by Google on 2026-09-09

      [TBD][560439699] Critical CVE-2026-95356: Use after free in WindowDialog. Reported by Xinyang Ge on 2026-09-12

      [TBD][562151598] Critical CVE-2026-95310: Use after free in AdFilter. Reported by Xinyang Ge on 2026-09-16

      [$5,000][540265100] High CVE-2026-95301: Missing authorization in Extensions. Reported by OGINOME Tomohito on 2026-07-29

      [$5,000][543471693] High CVE-2026-95291: UI misrepresentation in SecurityIndicators. Reported by NH DEV on 2026-08-07

      [N/A][508462481] High CVE-2026-95355: Incorrect authorization in Navigation. Reported by Google on 2026-05-01

      [N/A][517661385] High CVE-2026-95315: Use after free in Aura. Reported by Google on 2026-05-29

      [N/A][520516206] High CVE-2026-95298: Use after free in Browser. Reported by Google on 2026-06-05

      [N/A][534997484] High CVE-2026-95372: Use after free in Chromecast. Reported by Google on 2026-07-15

      [N/A][537857253] High CVE-2026-95324: Uninitialized resource in GPU. Reported by Google on 2026-07-22

      [N/A][543141419] High CVE-2026-95283: Buffer overflow in Tint. Reported by Google on 2026-08-06

      [TBD][550953039] High CVE-2026-95293: Uninitialized resource in GPU. Reported by TienPA - NGS Holdings on 2026-08-22

      [N/A][553116160] High CVE-2026-95274: Improper output encoding in DevTools. Reported by Google on 2026-08-26

      [N/A][553129513] High CVE-2026-95282: Use after free in Platform. Reported by Google on 2026-08-26

      [N/A][553130481] High CVE-2026-95373: Use after free in DevTools. Reported by Google on 2026-08-26

      [N/A][553136141] High CVE-2026-95277: Use after free in Views. Reported by Google on 2026-08-26

      [N/A][554558320] High CVE-2026-95348: Use after free in Bluetooth. Reported by Google on 2026-08-29

      [TBD][555299641] High CVE-2026-95335: Use after free in HID. Reported by WinD39 - Huynh Dinh Vu on 2026-09-01

      [TBD][556535630] High CVE-2026-95338: Use after free in PDFium. Reported by SeungMyung Lee (@sm1ee), Siung kim (@ksw9722) on 2026-09-03

      [TBD][556576976] High CVE-2026-95318: Buffer overflow in Video. Reported by alex.laboirie on 2026-09-03

      [TBD][557523002] High CVE-2026-95286: Type confusion in Bindings. Reported by @bean5oup on 2026-09-05

      [TBD][558764482] High CVE-2026-95365: Type confusion in IndexedDB. Reported by HoneyBee on 2026-09-08

      [TBD][559815527] High CVE-2026-95343: Use after free in WebAudio. Reported by HoneyBee on 2026-09-11

      [N/A][560406548] High CVE-2026-95280: Race condition in V8. Reported by Google on 2026-09-12

      [TBD][560536731] High CVE-2026-95304: Out of bounds write in V8. Reported by OpenAI Codex Security (amyb) on 2026-09-12

      [TBD][560536735] High CVE-2026-95306: Type confusion in V8. Reported by OpenAI Codex Security (amyb) on 2026-09-12

      [N/A][561997427] High CVE-2026-95299: Use after free in GPU. Reported by Google on 2026-09-15

      [TBD][562242429] High CVE-2026-95351: Use after free in Views. Reported by Xinyang Ge on 2026-09-16

      [N/A][495529018] Medium CVE-2026-95287: Missing authorization in Navigation. Reported by Google on 2026-03-23

      [N/A][497204165] Medium CVE-2026-95366: Use of released resource in Core. Reported by Google on 2026-03-28

      [N/A][497212105] Medium CVE-2026-95382: Improper input validation in Auth. Reported by Google on 2026-03-28

      [N/A][497603247] Medium CVE-2026-95381: Improper input validation in Printing. Reported by Google on 2026-03-30

      [N/A][500127519] Medium CVE-2026-95331: Out of bounds write in ANGLE. Reported by Google on 2026-04-06

      [N/A][501648493] Medium CVE-2026-95297: Missing authorization in Contextual Tasks. Reported by Google on 2026-04-11

      [N/A][502179319] Medium CVE-2026-95375: Incorrect authorization in BrowserTag. Reported by Google on 2026-04-13

      [N/A][502242455] Medium CVE-2026-95302: Incorrect authorization in WebAPKs. Reported by Google on 2026-04-13

      [N/A][511791538] Medium CVE-2026-95362: Cross-site request forgery in DevTools. Reported by Google on 2026-05-10

      [N/A][513049042] Medium CVE-2026-95369: Inappropriate implementation in XML. Reported by Google on 2026-05-14

      [N/A][513134076] Medium CVE-2026-95376: Externally controlled reference in DevTools. Reported by Google on 2026-05-14

      [N/A][513162143] Medium CVE-2026-95359: Uninitialized resource in GPU. Reported by Google on 2026-05-14

      [N/A][513992281] Medium CVE-2026-95294: UI misrepresentation in Browser. Reported by Google on 2026-05-17

      [N/A][514019137] Medium CVE-2026-95337: UI misrepresentation in Messages. Reported by Google on 2026-05-17

      [N/A][514059630] Medium CVE-2026-95346: UI misrepresentation in Chromoting. Reported by Google on 2026-05-17

      [N/A][514072284] Medium CVE-2026-95320: Missing authorization in Navigation. Reported by Google on 2026-05-17

      [N/A][514487499] Medium CVE-2026-95317: Incorrect authorization in MediaCapture. Reported by Google on 2026-05-19

      [N/A][516404074] Medium CVE-2026-95345: Use after free in Actor. Reported by Google on 2026-05-25

      [N/A][517163294] Medium CVE-2026-95330: Improper state validation in Downloads. Reported by Google on 2026-05-27

      [N/A][517417437] Medium CVE-2026-95370: Inappropriate implementation in NFC. Reported by Google on 2026-05-28

      [N/A][517442714] Medium CVE-2026-95303: Incomplete cleanup in SmartCard. Reported by Google on 2026-05-28

      [N/A][517584808] Medium CVE-2026-95360: Race condition in Editing. Reported by Google on 2026-05-28

      [N/A][517596255] Medium CVE-2026-95295: Information leak in Mobile. Reported by Google on 2026-05-28

      [N/A][517730821] Medium CVE-2026-95276: Improper input validation in Themes. Reported by Google on 2026-05-29

      [N/A][517802696] Medium CVE-2026-95314: Incorrect authorization in HID. Reported by Google on 2026-05-29

      [N/A][520504291] Medium CVE-2026-95371: Missing authorization in Views. Reported by Google on 2026-06-05

      [N/A][522061704] Medium CVE-2026-95353: Use after free in Bindings. Reported by Google on 2026-06-10

      [N/A][522344883] Medium CVE-2026-95363: UI misrepresentation in FileSystem. Reported by Google on 2026-06-10

      [N/A][523719002] Medium CVE-2026-95341: Improper input validation in Desktop. Reported by Google on 2026-06-14

      [N/A][524582798] Medium CVE-2026-95354: Use after free in Verifier. Reported by Google on 2026-06-16

      [N/A][526550688] Medium CVE-2026-95384: Race condition in Transactions Platform. Reported by Google on 2026-06-22

      [N/A][532962621] Medium CVE-2026-95336: Information leak in Transactions Platform. Reported by Google on 2026-07-09

      [N/A][536161355] Medium CVE-2026-95290: Missing authorization in NFC. Reported by Google on 2026-07-18

      [N/A][536648933] Medium CVE-2026-95325: Use after free in ANGLE. Reported by Google on 2026-07-19

      [TBD][542926849] Medium CVE-2026-95275: Incorrect reference resolution in MediaStream. Reported by Zabith Mohammed (@nmzabith) on 2026-08-05

      [TBD][543464436] Medium CVE-2026-95374: Incorrect authorization in Network. Reported by NH DEV on 2026-08-07

      [N/A][545449081] Medium CVE-2026-95300: Missing authorization in DevTools. Reported by Google on 2026-08-12

      [TBD][545879261] Medium CVE-2026-95321: UI misrepresentation in Payments. Reported by jodyritonga on 2026-08-13

      [TBD][546438368] Medium CVE-2026-95323: UI misrepresentation in Chromium. Reported by Wihdatu Nuuro Ahmadi on 2026-08-14

      [N/A][546639650] Medium CVE-2026-95332: Use of uninitialized variable in Tint. Reported by Google on 2026-08-14

      [N/A][547832510] Medium CVE-2026-95312: Information leak in Passwords. Reported by Google on 2026-08-17

      [TBD][548611433] Medium CVE-2026-95344: Race condition in DevTools. Reported by @bean5oup on 2026-08-18

      [TBD][549911100] Medium CVE-2026-95289: Incorrect authorization in Scroll. Reported by Vu Van Tien (@n0_Be3r) on 2026-08-21

      [TBD][550181232] Medium CVE-2026-95347: Use after free in Updater. Reported by a45hif on 2026-08-21

      [N/A][553123003] Medium CVE-2026-95311: Free of non-heap memory in Fonts. Reported by Google on 2026-08-26

      [N/A][553141660] Medium CVE-2026-95358: Incorrect authorization in Mobile. Reported by Google on 2026-08-26

      [TBD][559682346] Medium CVE-2026-95333: Use after free in Metrics. Reported by sean geofrey on 2026-09-10

      [$500][423956129] Low CVE-2026-95307: UI misrepresentation in ExtensionsMenu. Reported by Hafiizh on 2025-06-11

      [N/A][497094708] Low CVE-2026-95285: Missing authorization in WebView. Reported by Google on 2026-03-28

      [N/A][497344014] Low CVE-2026-95278: Missing authorization in WakeLock. Reported by Google on 2026-03-29

      [N/A][502077689] Low CVE-2026-95327: Information leak in Networking. Reported by Google on 2026-04-13

      [N/A][513403696] Low CVE-2026-95334: Incorrect reference resolution in WebProtect. Reported by Google on 2026-05-15

      [N/A][513714849] Low CVE-2026-95308: Integer overflow in Metrics. Reported by Google on 2026-05-16

      [N/A][513781838] Low CVE-2026-95292: Incorrect authorization in Safebrowsing. Reported by Google on 2026-05-16

      [N/A][513791872] Low CVE-2026-95352: Incorrect authorization in DevTools. Reported by Google on 2026-05-16

      [N/A][514012689] Low CVE-2026-95279: UI misrepresentation in Omnibox. Reported by Google on 2026-05-17

      [N/A][514524620] Low CVE-2026-95367: Information leak in DataTransfer. Reported by Google on 2026-05-19

      [N/A][517192965] Low CVE-2026-95385: Inappropriate implementation in PlatformIntegration. Reported by Google on 2026-05-27

      [N/A][522413520] Low CVE-2026-95368: Incorrect authorization in DevTools. Reported by Google on 2026-06-10

      [N/A][523765972] Low CVE-2026-95319: Use after free in Printing. Reported by Google on 2026-06-14

      [N/A][533041383] Low CVE-2026-95326: Incomplete cleanup in Bluetooth. Reported by Google on 2026-07-09

      [N/A][533074595] Low CVE-2026-95309: UI misrepresentation in Mobile. Reported by Google on 2026-07-09

      [N/A][533095855] Low CVE-2026-95361: Confused deputy in DevTools. Reported by Google on 2026-07-09

      [N/A][533102653] Low CVE-2026-95288: UI misrepresentation in Mobile. Reported by Google on 2026-07-09

      [N/A][534579660] Low CVE-2026-95380: Type confusion in V8. Reported by Google on 2026-07-14

      [TBD][547027738] Low CVE-2026-95342: Missing authorization in V8. Reported by Hongwei Li, Zhun Wang, Ziyue Pan, Junmin Zhu, Saastha Vasan, and Wenbo Guo on 2026-08-16

      [TBD][551296612] Low CVE-2026-95296: Missing authorization in Core. Reported by Quyền Sơn (@zer0qs1337) on 2026-08-23

      [N/A][552023752] Low CVE-2026-95316: Unchecked return value in Performance. Reported by Google on 2026-08-24

      [N/A][553148673] Low CVE-2026-95328: Confused deputy in Mobile. Reported by Google on 2026-08-26

      [N/A][553268567] Low CVE-2026-95340: Incorrect authorization in PictureInPicture. Reported by Google on 2026-08-27

      [N/A][553271219] Low CVE-2026-95364: Improper input validation in Passwords. Reported by Google on 2026-08-27

      [N/A][553921181] Low CVE-2026-95305: UI misrepresentation in Chromoting. Reported by Google on 2026-08-28

      We would also like to thank all security researchers that worked with us during the development cycle to prevent security bugs from ever reaching the stable channel.

      Many of our security bugs are detected using AddressSanitizer, MemorySanitizer, UndefinedBehaviorSanitizer, Control Flow Integrity, libFuzzer, or AFL.

      Interested in switching release channels? Find out how here. If you find a new issue, please let us know by filing a bug. The community help forum is also a great place to reach out for help or learn about common issues.


      Srinivas Sista

      Google Chrome

      Share on Twitter 
      •  

      v12.4.0

      22 September 2026 om 20:54

      ⚠️ Potential Breaking Changes

      Updated MapLibre GL JS from 1.15.3 to 6.9.0 (#28216)
      The map layout and the geometry interface now require WebGL2, which MapLibre has mandated since v3. Browsers that only support WebGL1, chiefly Safari 14 and earlier and older Android devices, will no longer render maps.

      Dragging with a pointer or a mouse wheel keeps the hovered item popup pinned to the cursor as before. Touch drags no longer reposition it, since the underlying touch event carries no cursor coordinates.

      Updated Unhead from 1.11.20 to 3.4.1 (#28248)
      @directus/themes now requires @unhead/vue 3.x as a peer dependency. Projects that pair it with their own Unhead instance need to upgrade and follow the v2 and v3 migration guides.

      Updated outdated type definitions for directus_comments, directus_flows, directus_operations, directus_presets, directus_roles, and directus_versions (#27956)
      The following fields are now correctly marked as nullable:

      • @directus/types: Comment.user_created, Comment.user_updated, FlowRaw.user_created, OperationRaw.options, OperationRaw.user_created, Preset.collection, Role.description, and ContentVersion.hash
      • @directus/sdk: DirectusRole.parent and DirectusVersion.hash

      Updated outdated type definitions for directus_relations, directus_policies, directus_shares, directus_access, directus_comments, and directus_versions (#27970)
      Breaking changes in @directus/sdk:

      • DirectusRelation.meta and DirectusRelation.schema are now nullable
      • DirectusPolicy.ip_access and DirectusRelation.meta.one_allowed_collections are now correctly typed as string[]

      Breaking changes in @directus/types:

      • Policy.enforce_tfa is no longer nullable
      • Share.name, role, password, user_created, date_created and times_used are now nullable

      Fixed read permissions not enforced when resolving item keys for updateByQuery and deleteByQuery (#28143)
      Update/delete by query now resolves the affected items with the read permissions enforced:

      • Read access to the collection's primary key field is now required.
      • The affected items are scoped to what the role can read, irrespective of update rights.
      • Nested o2m saves require read access on the child collection.

      Added native mailtrap email transport support via EMAIL_TRANSPORT=mailtrap (#27873)
      The transport is configured through the following environment variables:

      • EMAIL_MAILTRAP_TOKEN — an API token from https://mailtrap.io/api-tokens. Required.

      • EMAIL_MAILTRAP_SANDBOX — send to the testing inbox instead of real recipients.

      • EMAIL_MAILTRAP_TEST_INBOX_ID — which testing inbox to send to. Required in sandbox mode.

      • EMAIL_MAILTRAP_BULK — send via the bulk stream. Cannot be combined with sandbox mode.

      • @directus/app

      • @directus/themes

      • @directus/types

        • Updated outdated type definitions for directus_relations, directus_policies, directus_shares, directus_access, directus_comments, and directus_versions (#27970 by @kheiner)
      • @directus/sdk

        • Updated outdated type definitions for directus_relations, directus_policies, directus_shares, directus_access, directus_comments, and directus_versions (#27970 by @kheiner)
        • Removed the unused helper types ToTuple and TupleToUnion (#27956 by @kheiner)

      ✨ New Features & Improvements

      • @directus/app
        • Disabled inactive collections in the Studio, preventing them from being selected or used while being viewable (#27792 by @br41nslug)
        • Moved Flows into its own module and improved how they're organized and managed, including folders, search and filtering, import and export, and duplication (#28206 by @robluton)
        • Added support for hiding a manual Flow's own button, so it runs only from a Manual Flow field (#28206 by @robluton)
        • Added support for setting the From Name in the Send Email operation (#28206 by @robluton)
      • @directus/api
        • Moved Flows into its own module and improved how they're organized and managed, including folders, search and filtering, import and export, and duplication (#28206 by @robluton)
        • Added support for hiding a manual Flow's own button, so it runs only from a Manual Flow field (#28206 by @robluton)
        • Added support for setting the From Name in the Send Email operation (#28206 by @robluton)
        • Added native mailtrap email transport support via EMAIL_TRANSPORT=mailtrap (#27873 by @tsokolovs)
      • @directus/system-data
        • Moved Flows into its own module and improved how they're organized and managed, including folders, search and filtering, import and export, and duplication (#28206 by @robluton)
      • @directus/specs
        • Moved Flows into its own module and improved how they're organized and managed, including folders, search and filtering, import and export, and duplication (#28206 by @robluton)
      • @directus/types
        • Moved Flows into its own module and improved how they're organized and managed, including folders, search and filtering, import and export, and duplication (#28206 by @robluton)
      • @directus/cli
        • Moved Flows into its own module and improved how they're organized and managed, including folders, search and filtering, import and export, and duplication (#28206 by @robluton)
      • @directus/sdk
        • Moved Flows into its own module and improved how they're organized and managed, including folders, search and filtering, import and export, and duplication (#28206 by @robluton)
      • @directus/env
        • Added native mailtrap email transport support via EMAIL_TRANSPORT=mailtrap (#27873 by @tsokolovs)

      🐛 Bug Fixes & Optimizations

      • @directus/app
        • Fixed the image editor's error notice rendering as an unstyled info message instead of an error (#28245 by @Nitwel)
        • Updated Unhead from 1.11.20 to 3.4.1 (#28248 by @br41nslug)
        • Fixed relational edits made in quick succession saving duplicate create or update entries for the same row, which made the stale entry win and dropped block editor changes inside translations (#28247 by @alvarosabu)
        • Fixed the filter delete (x) button in the search bar's filter popover becoming unclickable on hover. (#28114 by @aniruddhav25)
        • Fixed table row context menus staying open when opening the menu on another row (#28191 by @robluton)
        • Updated outdated type definitions for directus_comments, directus_flows, directus_operations, directus_presets, directus_roles, and directus_versions (#27956 by @kheiner)
        • Updated outdated type definitions for directus_relations, directus_policies, directus_shares, directus_access, directus_comments, and directus_versions (#27970 by @kheiner)
        • Blocked crud usage for inactive collections and added a COLLECTION_INACTIVE error (#27792 by @br41nslug)
        • Updated dompurify, joi, express, qs, uuid, diff, pm2, OpenTelemetry and AI SDK dependencies to address CVEs (#28242 by @br41nslug)
        • Fixed the date picker calendar showing English weekday names and starting the week on Sunday regardless of the user language (#28147 by @lazerg)
        • Replaced lodash with lodash-es in the Studio (#28245 by @Nitwel)
        • Added new DEV_APP_PORT env var for setting the app port while in development mode (#28112 by @robluton)
      • @directus/api
        • Updated outdated type definitions for directus_comments, directus_flows, directus_operations, directus_presets, directus_roles, and directus_versions (#27956 by @kheiner)
        • Updated outdated type definitions for directus_relations, directus_policies, directus_shares, directus_access, directus_comments, and directus_versions (#27970 by @kheiner)
        • Blocked crud usage for inactive collections and added a COLLECTION_INACTIVE error (#27792 by @br41nslug)
        • Updated dompurify, joi, express, qs, uuid, diff, pm2, OpenTelemetry and AI SDK dependencies to address CVEs (#28242 by @br41nslug)
        • Updated stream-json from 1.9.1 to 3.6.0 (#28251 by @br41nslug)
        • Fixed read permissions not enforced when resolving item keys for updateByQuery and deleteByQuery (#28143 by @br41nslug)
        • Fixed relational fields ordering to align with the order of fields in query parameters. (#28197 by @wakqasahmed)
        • Fixed Oracle JSON filtering and json() function returning quoted strings for scalar string values (#28264 by @wofiporia)
        • Fixed schema cache synchronization timeouts leaving stale bus subscriptions and pending timers behind (#28178 by @lazerg)
        • Fixed the global access cache ignoring the client IP (#28190 by @br41nslug)
        • Updated sharp, nodemailer, tiptap, js-yaml and mysql2 dependencies (#28219 by @br41nslug)
        • Fixed the block editor flickering and losing its controls while editing a version (#28105 by @alvarosabu)
        • Fixed schema diff generation for nested metadata additions and removals (#27880 by @thribhuvan003)
        • Fixed FilesService.uploadOne to prevent client payloads from overwriting system fields (e.g., uploaded_by, created_on etc) (#28208 by @br41nslug)
        • Fixed year() function on Oracle returning the ISO week-numbering year instead of the calendar year, and made the Oracle date part functions (year, month, week, day, weekday, hour, minute, second) return numbers instead of zero padded strings (#28257 by @galshir)
        • Fixed uploaded_on not being set for TUS uploads (#28043 by @kheiner)
        • Fixed comment updates and deletes enforcement (#28162 by @kheiner)
        • Fixed foreign key constraints being dropped when updating a relation with a partial payload (#28137 by @lazerg)
        • Updated Flows and Operations tools to automatically fix incorrect X/Y positions for flow operations when used through (#28159 by @bryantgillespie)
          MCP and AI Assistant
      • @directus/types
        • Updated outdated type definitions for directus_comments, directus_flows, directus_operations, directus_presets, directus_roles, and directus_versions (#27956 by @kheiner)
        • Blocked crud usage for inactive collections and added a COLLECTION_INACTIVE error (#27792 by @br41nslug)
      • @directus/sdk
        • Updated outdated type definitions for directus_comments, directus_flows, directus_operations, directus_presets, directus_roles, and directus_versions (#27956 by @kheiner)
        • Added missing empty-parameter validation to readRelationByCollection, createField, deleteCollection, utilsExport, utilsImport, utilitySort, triggerFlow, and readShareInfo (#27970 by @kheiner)
        • Updated known-but-not-enforced string fields on directus_users, directus_settings, directus_deployment_runs (#28129 by @kheiner)
      • @directus/errors
        • Blocked crud usage for inactive collections and added a COLLECTION_INACTIVE error (#27792 by @br41nslug)
      • @directus/schema-builder
        • Blocked crud usage for inactive collections and added a COLLECTION_INACTIVE error (#27792 by @br41nslug)
      • @directus/utils
        • Blocked crud usage for inactive collections and added a COLLECTION_INACTIVE error (#27792 by @br41nslug)
      • @directus/memory
        • Fixed the local key-value store treating equal setMax values as updates (#28172 by @jashkarangiya)
        • Fixed concurrent local KV updates losing increments or overwriting larger values in setMax. (#28194 by @jashkarangiya)
      • @directus/release-notes-generator

      📦 Published Versions

      • @directus/app@18.0.0
      • @directus/api@39.2.0
      • @directus/cli@12.3.0
      • @directus/composables@11.6.3
      • create-directus-extension@12.1.5
      • @directus/env@6.3.0
      • @directus/errors@2.5.2
      • @directus/extensions@4.0.5
      • @directus/extensions-registry@4.0.4
      • @directus/extensions-sdk@18.0.5
      • @directus/memory@4.0.5
      • @directus/pressure@4.0.5
      • @directus/release-notes-generator@3.0.2
      • @directus/schema-builder@1.0.3
      • @directus/specs@15.2.0
      • @directus/storage-driver-azure@13.0.5
      • @directus/storage-driver-cloudinary@14.0.2
      • @directus/storage-driver-gcs@13.0.5
      • @directus/storage-driver-s3@14.0.2
      • @directus/storage-driver-supabase@5.0.2
      • @directus/system-data@4.7.0
      • @directus/themes@3.0.0
      • @directus/types@17.0.0
      • @directus/utils@13.5.5
      • @directus/validation@3.0.5
      • @directus/sdk@26.0.0

      •  

      Minecraft 26.4-snapshot-1 (snapshot) Released

      22 September 2026 om 15:38
      26.4 Snapshot 1 (known as 26.4-snapshot-1 in the launcher) is the first snapshot for Java Edition 26.4, released on September 22, 2026, which makes minor changes and fixes bugs. Full changelog: https://minecraft.wiki/Java_Edition_26.4-snapshot-1
      •  

      BSD Release: NetBSD 10.2

      22 September 2026 om 17:29
      The DistroWatch news feed is brought to you by TUXEDO COMPUTERS. The NetBSD project has announced the release of NetBSD 10.2, which introduces several fixes and small improvements to the highly portable operating system. "Changes since NetBSD 10.1 - Userspace: calendars: updated dates of moving holidays for 2026. build.sh: fixed various compilation issues with newer GCC versions. build.sh: add....
      •  

      Distribution Release: Univention Corporate Server 5.2-7

      22 September 2026 om 16:18
      The DistroWatch news feed is brought to you by TUXEDO COMPUTERS. The Univention project has published an update for Univention Corporate Server which introduces new security options, selecting password hashes, performing Keycloak monitoring and simplifies managing Microsoft 365 Classroom tools. "The latest patch-level release of Univention Corporate Server bundles all new features and improvements from the past months onto....
      •  

      NVIDIA Driver 617.14

      22 September 2026 om 00:00
      Release Highlights:
      Although GeForce Game Ready Drivers and NVIDIA Studio Drivers can be installed on supported notebook GPUs, the original equipment manufacturer (OEM) provides certified drivers for your specific notebook on their website. NVIDIA recommends that you check with your notebook OEM for recommended software updates for your notebook.

      Game Ready for CONTROL Resonant, Gears of War: E-Day, The Witcher 3: Wild Hunt – Remastered & AION 2
      This new Game Ready Driver provides the best gaming experience for the latest new games supporting DLSS and RTX technologies including CONTROL Resonant, Gears of War: E-Day, The Witcher 3: Wild Hunt – Remastered and AION 2.

      Fixed Gaming Bugs
      • Judgement/Lost Judgement/ Virtua Fighter 5 R.E.V.O. may fail to launch after updating to driver 616.56 [6681537]

      Fixed General Bugs
      • No picture on Samsung Odyssey G95NC monitor when connected via HDMI after updating to R615 drivers [6771206]
      • Certain monitors may not wake from sleep when connected via DisplayPort after updating to R615 drivers [6757568]

      Learn more in our Game Ready Driver article here.

      Game Ready Driver

      •  

      Firefox 156.0.1

      22 September 2026 om 14:50

      Fixed

      • Fixed the NVDA screen reader not announcing address bar buttons when the mouse pointer moves over them. (Bug 2069276)

      • Fixed elements inside a link not showing their CSS :active styles while being clicked. (Bug 2067272)

      • Fixed Firefox becoming unresponsive on some pages that use CSS anchor positioning. (Bug 2070171)

      • Fixed Firefox windows on macOS 27 immediately returning to maximized after being restored by double-clicking the title bar. (Bug 2066632)

      • Fixed Firefox leaking system handles on Windows as content processes were started and stopped. (Bug 2069644)

      •  

      v1.18.32

      22 September 2026 om 00:51

      Core

      Bugfixes

      • Fixed Bedrock image attachments so they are only hoisted for Claude, Nova, and Llama 4 models.
      • Fixed Together AI streaming usage reporting.

      Thank you to 1 community contributor:

      • @dc85:
        • docs: add DeepSeek V4.1 Flash to Zen (#49897)
        • feat: add Grok 4.7 to Zen and Go (#50288)

      •  

      v1.11.0-beta.2 - Bulwark Lite (Pre-release)

      Door: rathlinus
      21 September 2026 om 20:56

      Pre-release. This is a test build for Bulwark Lite. Not recommended for production. The latest Docker tag stays on 1.10.0. To try the server build, use ghcr.io/bulwarkmail/webmail:1.11.0-beta.2.

      Bulwark Lite

      • bulwark-lite-1.11.0-beta.2.zip: unpack it on any static web host and set your JMAP server in config.json. The JMAP server must allow CORS from the webmail origin.
      • bulwark-lite-stalwart.zip: a Stalwart Application bundle that serves itself under the configured prefix (e.g. /webmail).

      The Lite zips are attached once the Build Static Lite workflow finishes (a few minutes after publishing).

      Changes since beta.1

      • Toasts for mail actions that had no feedback, plus an "email sent" toast after immediate sends
      • Toasts show again
      • Deep links resolve to the local instance
      • A staged attachment is kept until its upload finishes

      Please report problems in the issue tracker.

      •  
      ❌