Added keyboard-editable date entry directly in the datetime field. The field shows its formatted value at rest and swaps to editable date segments on focus, while a calendar button still opens the picker popup. (#27693 by @robluton)
Added inline editing support to the JSON repeater interface. (#26863 by @bryantgillespie)
Fixed license modals being impossible to dismiss when shown above a route drawer (e.g. field detail pages) by keeping dialog focus traps stacked in visual order, and scoped license dismissal cookies to the whole app so dismissals persist across navigation (#27714 by @dstockton)
@directus/api
Fixed revision snapshots being assigned to the wrong items during batch updates when read order differs (#27407 by @luciemdx)
The Extended Stable channel has been updated to 148.0.7778.265for 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.
The Stable channel has been updated to 149.0.7827.114/.115 for Windows andMac and 149.0.7827.114 for Linux, which will roll out over the coming days/weeks. A full list of changes in this build is available in the Log
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 28 security fixes. Below, we highlight fixes that were contributed by external researchers. Please see the Chrome Security Page for more information.
[N/A][516731749] Critical CVE-2026-12007: Use after free Core. Reported by Google on 2026-05-26
[N/A][516942828] Critical CVE-2026-12008: Use after free DigitalCredentials. Reported by Google on 2026-05-27
[N/A][517332006] Critical CVE-2026-12009: Insufficient validation of untrusted input Accessibility. Reported by Google on 2026-05-28
[N/A][517531647] Critical CVE-2026-12010: Heap buffer overflow GPU. Reported by Google on 2026-05-28
[N/A][518108291] Critical CVE-2026-12011: Use after free WebMIDI. Reported by Google on 2026-05-30
[N/A][499182801] High CVE-2026-12012: Use after free Network. Reported by Google on 2026-04-03
[TBD][514229805] High CVE-2026-12013: Use after free Media. Reported by Henock Habte, Independent Security Researcher on 2026-05-18
[N/A][514742747] High CVE-2026-12014: Use after free Cast. Reported by Google on 2026-05-19
[N/A][515463295] High CVE-2026-12015: Use after free Autofill. Reported by Google on 2026-05-21
[N/A][516482138] High CVE-2026-12016: Insufficient validation of untrusted input DevTools. Reported by Google on 2026-05-25
[N/A][516797143] High CVE-2026-12017: Insufficient validation of untrusted input Extensions. Reported by Google on 2026-05-26
[N/A][516808201] High CVE-2026-12018: Inappropriate implementation Mojo. Reported by Google on 2026-05-26
[N/A][516872067] High CVE-2026-12019: Out of bounds write Codecs. Reported by Google on 2026-05-26
[N/A][516907083] High CVE-2026-12020: Use after free Autofill. Reported by Google on 2026-05-27
[N/A][516929496] High CVE-2026-12022: Race Safe Browsing. Reported by Google on 2026-05-27
[N/A][517018374] High CVE-2026-12023: Use after free GPU. Reported by Google on 2026-05-27
[N/A][517086161] High CVE-2026-12024: Insufficient policy enforcement DevTools. Reported by Google on 2026-05-27
[N/A][517153191] High CVE-2026-12025: Insufficient validation of untrusted input Network. Reported by Google on 2026-05-27
[N/A][517347084] High CVE-2026-12026: Out of bounds read Video. Reported by Google on 2026-05-28
[N/A][517517155] High CVE-2026-12027: Insufficient policy enforcement Headless. Reported by Google on 2026-05-28
[N/A][517555461] High CVE-2026-12028: Use after free GPU. Reported by Google on 2026-05-28
[N/A][518002958] High CVE-2026-12029: Use after free Video. Reported by Google on 2026-05-29
[N/A][518007423] High CVE-2026-12030: Heap buffer overflow GPU. Reported by Google on 2026-05-29
[N/A][518045638] High CVE-2026-12031: Inappropriate implementation Views. Reported by Google on 2026-05-30
[N/A][518128953] High CVE-2026-12032: Inappropriate implementation Passwords. Reported by Google on 2026-05-30
[N/A][519248779] High CVE-2026-12033: Out of bounds read VideoCapture. Reported by Google on 2026-06-02
[N/A][519258799] High CVE-2026-12034: Insufficient validation of untrusted input Linux Toolkit Theming. Reported by Google on 2026-06-02
[N/A][520210566] High CVE-2026-12035: Use after free Views. Reported by Google on 2026-06-05
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.
Interested in switching release channels? Find out howhere. If you find a new issue, please let us know byfiling a bug. Thecommunity help forum is also a great place to reach out for help or learn about common issues.
The DistroWatch news feed is brought to you by TUXEDO COMPUTERS. Gaming Linux FR has announced the release of GLF OS Quasar, a major update of the project's NixOS-based distribution focused on gaming. This version updates the GNOME desktop to version 50 and introduces numerous enhancements: "Based on NixOS 26.05, Quasar delivers a major update to the GLF OS....
Behind every new feature in our games is a dedicated team of talented people working together to bring ideas to life. In this special edition of our Meet the Team, we'd like to introduce some of the people who have been instrumental in creating Game Radio, from the earliest concepts to its implementation in both Euro Truck Simulator 2 and American Truck Simulator.
Mrazik - Producer
"During our console development efforts, I've quickly realised that the game's soundscape is an underexplored territory within our games. There's a saying that 'sound is half of the picture', and especially when you're chilling out with a controller in hand, you appreciate a well-tailored musical experience smoothly integrated into the game. I have made it my personal challenge to tackle this effort and venture into the unknown, forming a vision and a team to deliver a result I would personally love as a player myself, and I'm extremely proud of everyone who fell in love with the idea and helped make it a reality.
We've got many plans on how to develop the radio platform in the future, and this is just the starting line. I genuinely hope you love the end result as much as I do, because every road trip is better with a soundtrack!"
Damiana - Radio Producer & Audio Designer
"Before joining SCS Software, I spent over five years shaping the sonic identity of Czech Radio podcasts as a sound designer, composer, and co-editor. When I got the opportunity to bring that experience to SCS nine months ago as Radio Producer & Audio Designer and to lead the Game Radio project, it was a no-brainer.
As someone who lives and breathes music, I know how much a single song can change an experience. It sets the mood, triggers unexpected emotions, and makes a fictional world feel real. That mindset naturally carried over to SCS, where I took full creative ownership of the in-game radio stations from the ground up. I’m responsible for defining each station’s brand and sonic identity, curating and processing music for in-game use, and coordinating closely with the whole team (who are amazing, by the way) to make every frequency feel alive.
I’m incredibly excited to hear feedback from the community and to keep building the next chapter of our game’s radio world."
Zuzka - Junior Game Designer
"Hi, truckers! My name is Zuzka, and I’ve been working at SCS Software for almost three years now. I started out as a 2D graphic designer, then moved on to leading the 2D branding team for ATS, and finally landed my current position as a UX game designer. In this role, I took on the task of creating Game Radio. In addition to designing the behaviour of the feature and solving all related issues, I also helped establish guidelines for the creation of the visual identity of each Game Radio station, so I had the opportunity to combine my skills as a UX designer with my graphic design background. All of this has been done with the support of an enthusiastic team of great colleagues who did their very best to bring you an enjoyable experience.
I hope you will love Game Radio as much as we do! Rest assured that the development of the radio is just getting started with this update, and we have plenty of exciting ideas in store for you."
Raivis - Junior Programmer
"I've been at SCS for almost two years now, though it really doesn't feel that long. During this time, I've worked as a programmer on various features, both for the game itself and for the supporting tools.
These past few months, I've been the main programmer for Game Radio, which was exciting because I got to create something new, not just tweak an existing feature, although there were plenty of things that needed to be changed for existing stuff as well.
As for the future, I'm excited for what we have planned for this feature, and I can't wait to work on it."
Petr - Console & UI/UX QA Lead
"Hi, my name is Petr, and I've been part of SCS Software for five and a half years. During the development of Game Radio, I worked closely with our Game Design team, brainstorming what we wanted the radio feature to offer and how we could improve the overall user experience. I also helped coordinate production efforts, organised internal playtesting sessions across the company, and participated in functional testing to ensure everything worked as intended.
Throughout development, I gathered a lot of valuable feedback from both our colleagues at SCS and members of the community on social media. Seeing people's reactions and suggestions has been incredibly rewarding, and I'm excited about the future of Game Radio and the opportunities we have to continue expanding the feature with new ideas and improvements."
Misha - Researcher
"My name is Misha, and I've been working at SCS Software for the past 3 years as a researcher, with my biggest project so far being the British Columbia DLC. For the radio feature, alongside research, I've mainly focused on building the identities of the radio stations - defining their philosophy, values, and overall creative direction.
What I enjoy most about this work is turning a large amount of ideas and research into something clear and meaningful. The process can feel chaotic at first, but over time, each station develops its own distinct personality, which then shapes everything from the visual identity to the content itself.
Outside of work, my two biggest passions are composing music and playing video games, so working on the radio feature has been an ideal combination of both worlds for me. I'm really excited for players to experience our in-game world while listening to the new radio stations we've been creating!"
Ales - Junior Producer
"Hi, I’m Aleš, and July marks my first completed year onboard the SCS truck. Prior to working here, I dedicated my working efforts in the gaming industry to community management, PR, and marketing. In SCS, I have the privilege to explore possibilities of being a producer, which I very much enjoy. Generally, I focus on the production of map DLCs for American Truck Simulator, but as a producer, I have the option to try to lend a helping hand to various projects, such as Game Radio.
Unlike other members of the team, my contribution was mostly indirect, focusing on operational support, coordination of tasks and meetings, and overall team progress.
I am very much looking forward to any endeavours of Game Radio, since, in my honest opinion, it has huge potential to add a nice melodic flavour to further enhance the experience of driving the roads of Euro Truck Simulator 2 and American Truck Simulator."
Karina - 2D Graphic Designer
"My journey with SCS Software started almost five years ago, back when I was still a university student. Since then, I’ve become a 2D artist and had the opportunity to work with the 2D design team on the branding for the in-game radio stations. We especially enjoyed this unique task because each station had its own atmosphere and visual style that we needed to capture. It was a refreshing change from our usual routine, and I’m really looking forward to seeing the stations become part of the game."
We hope you've enjoyed getting to know some of the talented people who helped bring Game Radio to life. Features like this are the result of collaboration across multiple departments, and we're always proud to shine a spotlight on the individuals whose passion and expertise make them possible.
Game Radio will make its debut in update 1.60 for both Euro Truck Simulator 2 and American Truck Simulator, and we can't wait for you to experience it for yourself. We'd like to thank everyone involved in the project for sharing their insights, and we hope this behind-the-scenes look has given you a deeper appreciation for the work that goes into every update. You can find out more about Game Radio here.
As always, thank you for your continued support, and be sure to let us know what you think once you hit the road with Game Radio. Don’t forget to follow us on X, Instagram, Facebook, and Bluesky, and subscribe to our newsletter. Until next time, keep on truckin'!
26.2 Release Candidate 1 (known as 26.2-rc-1 in the launcher) is the first release candidate for Java Edition 26.2, released on June 11, 2026, which fixes a bug.
Full changelog: https://minecraft.wiki/Java_Edition_26.2-rc-1
I’ve been asked a few times if it would be possible to use
virtnbdbackup as some kind of
“replication” utility, to keep cold standby virtual machines on other libvirt
hosts.
Usually i would tell to use underlying filesystem features (such as zfs
send/recv, with incremental snapshots) to keep cold, standby copies on other
hosts.
As for qcow based virtual machines, using the dirty bitmaps is not only a valid
feature to create backups, but to (incrementally) replicate virtual machines,
too.
I’ve released vmsync. A small golang utility
that implements a simple replication tool using the NBD protocol to sync
virtual machines to other hosts.
VIENNA, Austria – June 11, 2026 – Enterprise software developer Proxmox Server Solutions today announced the release of Proxmox Mail Gateway 9.1. The updated version of its enterprise email security solution introduces updated core components, comprehensive usability improvements to the spam quarantine, and data encryption options for integrated backups.
Proxmox Mail Gateway functions as a full-featured mail proxy deployed between the firewall and internal mail servers. It filters all incoming and outgoing email traffic at the gateway, protecting organizations against threats such as spam, viruses, Trojans, and phishing attacks.
Key Updates in Proxmox Mail Gateway 9.1
Updated core components
Built on Debian 13.5 “Trixie”, the platform includes updated underlying packages, utilizing a newer Linux kernel 7.0 as its stable default. Proxmox Mail Gateway 9.1 continues to align with the latest major enterprise open-source security components and incorporates stable versions of SpamAssassin 4.0.2 (with continuously updated rulesets), ClamAV 1.4.4, PostgreSQL 17, and ZFS 2.4.
Spam quarantine usability improvements
The web-based quarantine interface features several enhancements to optimize daily administrative and end-user workflows.
Shared mailboxes: Users can now mark quarantined emails within shared mailboxes as “seen”, preventing duplicate auditing efforts across teams. The status is displayed inline as a checkmark and can be toggled via an action button.
Granular spam scores: The quarantine overview now displays both the positive and negative components of the spam score simultaneously, providing immediate insight into why an email triggered filtering thresholds.
On-demand image loading: To enhance privacy and security, external images in quarantined emails can now be configured to load only on demand. Users can then choose to display images by clicking a “Load Images” button in the quarantine view. This ensures email content can be inspected safely without automatically compromising privacy or being exposed to web-based threats.
Copy Link Functionality: Administrators can now copy a recipient’s private quarantine access link directly from the admin dashboard using a new “Copy Link” option. This provides a secure and convenient way to share the link through any preferred channel or to integrate it in a custom interface.
Encrypted Proxmox Backup Server targets
Version 9.1 adds native encryption support for backups targeted at a Proxmox Backup Server instance. This option ensures that sensitive email configuration settings, user created rule system data, and historic/private statistics data are encrypted client-side before transmission and remain encrypted at rest on the backup storage target.
Availability
Proxmox Mail Gateway 9.1 is open-source software and immediately available for download. Users can obtain a complete installation image via ISO download, which contains the full feature-set of the solution and can be installed quickly on bare-metal systems using an intuitive installation wizard. The software can be installed on top of an existing Debian installation or as a lightweight Linux Container (LXC) on Proxmox VE. A seamless, fully tested upgrade path from Proxmox Mail Gateway 8.2 or 9.0 is available via the APT package management system.
For production environments, Proxmox offers comprehensive enterprise support plans that provide stable and secure updates and direct access to expert support services. These support contracts offer a cost-effective way to secure enterprise-grade stability. Pricing start at EUR 190 per host per year, including unlimited users and domains.
About Proxmox Mail Gateway Proxmox Mail Gateway is the leading open-source email security solution, protecting your mail server against all email threats from the moment they emerge. Organizations of any size can easily deploy and implement the comprehensive anti-spam and antivirus platform in just a few minutes. Deploying the full-featured mail proxy between the firewall and an internal mail server allows you to control all incoming and outgoing email traffic from the central, web-based interface. Proxmox filters all email traffic at the gateway before it reaches the mail server, protecting businesses against email attacks and other malicious threats.
About Proxmox Server Solutions Proxmox Server Solutions provides powerful, intuitive open-source server software that guarantees vendor independence and minimizes total cost of ownership. Enterprises of all sizes rely on the company’s reliable vendor support, certified training services, and a global network of 3,000 integration partners to ensure business continuity. Established in 2005 and headquartered in Vienna, Austria, tens of thousands of corporate customers worldwide trust Proxmox solutions to secure their mission-critical IT environments.
Contact: Daniela Häsler, Proxmox Server Solutions GmbH,press@proxmox.com
support using regexp groups in every part of a source URL (#5766) (#5779)
improve anti-brute force mechanism (#5835) delay authentication failure responses by a random amount of time, use the same anti-brute force mechanism with all users.
limit size of HTTP requests shown in debug logs (#5858)
print body of selected HTTP responses when log level is debug (#5859)
Media-over-QUIC
fix race condition when closing server (#5836) some sessions were hanging if they were concurrently being closed by the remote peer.
rename moqHTTPS2Address into moqHTTP2Address, moqHTTPS3Address into moqHTTP3Address (#5841)
RTSP
support PROXY protocol (#5754) Support PROXY protocol v1/v2 on RTMP, RTMPS, RTSP, and RTSPS TCP listeners so real client IPs are visible when running behind L4 proxies (nginx stream, HAProxy, AWS NLB).
restore support for H264 packetization-mode 0 (#5846) (#5857) H264 streams with packetization-mode=0 cannot be routed with UDP since packets are too big. Inbound streams with packetization-mode=0 are blocked by the server since v1.19.0 but this caused compatibility issues with some cameras. The server is now able to receive such streams with TCP, and automatically remuxes them in streams with packetization-mode=1, which can be routed freely.
RTMP
support PROXY protocol (#5754) Support PROXY protocol v1/v2 on RTMP, RTMPS, RTSP, and RTSPS TCP listeners so real client IPs are visible when running behind L4 proxies (nginx stream, HAProxy, AWS NLB).
Dependencies
code.cloudfoundry.org/bytefmt updated from v0.74.0 to v0.76.0
github.com/bluenviron/gortsplib/v5 updated from v5.5.4 to v5.6.0
github.com/pion/ice/v4 updated from v4.2.7 to v4.2.8-0.20260604162030-72f5001c4596
github.com/pion/webrtc/v4 updated from v4.2.14 to v4.2.15
github.com/quic-go/quic-go updated from v0.59.0 to v0.60.0
golang.org/x/crypto updated from v0.52.0 to v0.53.0
golang.org/x/net updated from v0.55.0 to v0.56.0
golang.org/x/sync updated from v0.20.0 to v0.21.0
golang.org/x/sys updated from v0.45.0 to v0.46.0
golang.org/x/term updated from v0.43.0 to v0.44.0
github.com/pion/dtls/v3 updated from v3.1.3 to v3.1.4
github.com/pion/stun/v3 updated from v3.1.4 to v3.1.5
github.com/pion/turn/v5 updated from v5.0.7 to v5.0.9
golang.org/x/text updated from v0.37.0 to v0.38.0
github.com/pires/go-proxyproto v0.12.0 added
Security
Binaries are compiled from source code by the Release workflow, which is a fully-visible process that prevents any change or external interference in produced artifacts.
Checksums of binaries are also published in a public blockchain by using GitHub Attestations, and they can be verified by running:
ls mediamtx_* | xargs -L1 gh attestation verify --repo bluenviron/mediamtx
You can verify checksums of binaries by downloading checksums.sha256 and running:
[p]Added display of lowest and highest sticker price in the last 7 days in the Cologne 2026 Major Shop.[/p][/*]
[p]Added stickers showcase to the Cologne 2026 Major Hub tile on the main menu.[/p][/*]
[p]\[ MISC ][/p]
[p]Added multi-select functionality in Storage Units deposit/retrieve UI.[/p][/*]
[p]Added appropriate error message when user's inventory is full and they try to redeem Weekly Care Package rewards, Armory items, or items in the Major Shop cart.[/p][/*]
[p]Fixed number wrapping rules in some languages.[/p][/*]
Some of you might have noticed that the recent (or rather: previous) version of libayatana-appindicator (v0.5.94) notified users and developers of the library being deprecated.
This short post is to notify you, that with today's libayatana-appindicator v0.6.0 release [1] this deprecation warning has now been removed again. Another new feature (added to AppIndicator without ABI breakage) is tooltip support. The new package version has just been uploaded to Debian experimental. Please test if your application (if it gets linked against libayatana-appindicator) continues to work flawlessly. Thanks!
libayatana-appindicator will receive continued support until GTK-3 becomes end-of-life (because libayatana-appindicator has a baked-in GTK-3 dependency which should not be ported to GTK-4 imho). That said, in the future, GTK-3 applications can continue using libayatana-appindicator for sending AppIndicator-like icons and menus over DBus to KStatusNotifierItem-based system tray renderers.
If you are looking for an AppIndicator implementation for GTK-4 applications (or other), I'd like to encourage you to help making libayatana-appindicator-glib [2] a new standard (can be used in GTK and Qt applications alike, implementation is using pure Glib-2.0). Currently, there is only one renderer (ayatana-indicator-application), so more work needs to be done on the renderers' side. (One of the next work items here is to get AppIndicator-Glib support working in Lomiri's desktop/windowed mode).
Directus 12 introduces active license enforcement. Self-hosted instances run on the Core tier by default. Higher limits and additional features require a valid license. See Licensing for a complete overview.
This change affects instances previously using features that now require a license, including:
SSO — SSO login will no longer work. Users who authenticate through SSO will be unable to log in and must be converted to email and password users to regain access.
Custom permission rules — custom rules on access policies will be ignored.
Custom or self-hosted LLMs — connections to custom LLMs will no longer work.
AI Translations — AI-powered translations are not available.
Enforcement is immediate on new instances. Instances upgrading to Directus 12 get a 30-day grace period from the time of upgrade, after which these are enforced unless a license that enables them is configured.
If your instance uses any of these features, add a license that includes them to continue to do so. If your instance uses only Core tier features, no action is required.
Breaking Change: Relicensed from BUSL-1.1 to MSCL-1.0-GPL (Monospace Sustainable Core License, Version 1.0).
Changed the default of IP_TRUST_PROXY from true to false to harden the default deployment against IP spoofing. (#27607)
The IP_TRUST_PROXY default was changed from true to false. If you run Directus behind a reverse proxy and rely on X-Forwarded-For (or similar) headers for client IP resolution, you must now explicitly set IP_TRUST_PROXY to true or a more specific trust configuration.
Fixed health check results not being shared in multi-instance settings. Restricted /server/health to authenticated users (#27160)
Health checks are cached by default and shared across multi-instance deployments
/server/health will return 404 for unauthenticated requests, use /server/ping for liveness checks
cache, rateLimiter and rateLimiterGlobal health checks have been replaced by a generic redis check using the redis: prefix
Introduced VERSION_KEY_ constants and renamed main to published @alvarosabu (#27397)*
Backward Compatibility: You can now use ?version=published to resolve versions of the main item(s) via the version query parameter. For backward compatibility, ?version=main will continue to work.
Replaced status field with archived boolean in collection settings @alvarosabu (#27397)
Backward Compatibility: Existing collections with string-based status fields continue to work unchanged; newly created collections now default to a boolean "Archived" field instead of the string "Status" field
Deprecation for extensions: The globally registered VResizeable component has been deprecated. Extension authors using <v-resizeable> should migrate to @directus/vue-split-panel or their own implementation.
Updated type system, borders, and theme variables @formfcw (#27437)
Potential breaking change for theme extensions: headerShadow and sidebarShadow removed from LayoutConfig interface
Potential breaking change for theme extensions: boxShadow removed from header theme rules schema
Potential breaking change for theme extensions: sidebarShadow no longer exposed in layout wrapper state
Updated module navigation bar spacing and styling @HZooly (#27437)
Potential breaking change in theme extensions: Removed navigation.project.borderColor / navigation.project.borderWidth / navigation.project.background from theming. No action is required — these props will simply no longer have any effect.
Locked published items in versioned collections from editing and added a header action button to edit in the draft version @alvarosabu (#27397)
Breaking change — new behavior for versioned collections Published items in versioned collections are now locked. Edits must be made through the draft version.
Removed rounded buttons and adopted shared header action button across all views @formfcw (#27437)
Potential breaking change for extensions: The rounded prop has been removed from v-button. Extensions using rounded will still render correctly but buttons will appear as rounded rectangles instead of circles. No functional impact.
Updated header and navigation bar base design and merged their theme properties into a new shell scope @formfcw (#27437)
Potential breaking change for theme extensions: The theme properties navigation.background, navigation.backgroundAccent, navigation.borderWidth, navigation.borderColor, header.background, header.borderWidth, and header.borderColor have been removed and replaced by shell.background, shell.backgroundAccent, shell.borderWidth, and shell.borderColor.
Potential breaking change for theme extensions: Custom themes overriding any of these removed properties must migrate to the new shell scope. The corresponding CSS variables change from --theme--navigation--background, --theme--navigation--background-accent, --theme--navigation--border-*, --theme--header--background, and --theme--header--border-* to --theme--shell--background, --theme--shell--background-accent, and --theme--shell--border-*.
Removed the extra confirmation step from the publish flow @alvarosabu (#27487)
Breaking change — new publish flow: Publishing a version no longer shows an additional confirmation dialog after confirming changes in the comparison modal. The item is published directly once the changes are confirmed.
Potential breaking change for theme extensions: Removed section.toggle.borderWidth / section.toggle.borderColor in favor of section-level border tokens. No action is required — these props will simply no longer have any effect.
Potential breaking change for theme extensions: Removed sidebarShadow and headerShadow from defineLayout(). No action is required — these props will simply no longer have any effect.
Refactored focus ring from border/box-shadow to outline @formfcw (#27437)
Potential breaking change for theme extensions: borderColorFocus, boxShadowHover, and boxShadowFocus are removed from the theme schema — custom themes referencing these will lose their focus overrides silently
Potential breaking change for interface extensions that relied on --theme--form--field--input--border-color-focus or --theme--form--field--input--box-shadow-focus CSS variables will need to migrate to --theme--form--field--input--focus-ring-color
Updated header bar elements and deprecated the headline slot @formfcw (#27437)
Deprecation for extensions: The headline slot on the private view header bar has been deprecated. Existing content keeps rendering, but consumers using <template #headline> will now see a deprecation hint from Volar.
@directus/app
Locked published items in versioned collections from editing and added a header action button to edit in the draft version @alvarosabu (#27397 by @formfcw)
Removed rounded buttons and adopted shared header action button across all views @formfcw (#27437 by @formfcw)
Fixed health check results not being shared in multi-instance settings. Restricted /server/health to authenticated users (#27160 by @ComfortablyCoding)
Refactored drawer header layout and simplified v-drawer API @formfcw (#27437 by @formfcw)
:::notice
Deprecation for extensions: The globally registered v-breadcrumb component has been deprecated. Extensions using <v-breadcrumb> keep rendering but will see a deprecation hint from Volar.
Deprecation for extensions: On v-drawer, the subtitle prop (use the title prop instead), the subtitle slot, the header:append slot, and the actions:append slot have been deprecated. Existing usage keeps rendering — actions:append content lands in the secondary-actions zone, and for primary CTAs in the drawer header use the new actions:primary slot. Consumers will see deprecation hints from Volar.
Potential Breaking change for theme extensions: The theme properties header.headline.foreground and header.headline.fontFamily have been removed. Custom themes overriding these properties should remove them. The corresponding CSS variables --theme--header--headline--foreground and --theme--header--headline--font-family no longer exist.
Refactored drawer header layout and simplified v-drawer API @formfcw (#27437 by @formfcw)
:::notice
Deprecation for extensions: The globally registered v-breadcrumb component has been deprecated. Extensions using <v-breadcrumb> keep rendering but will see a deprecation hint from Volar.
Deprecation for extensions: On v-drawer, the subtitle prop (use the title prop instead), the subtitle slot, the header:append slot, and the actions:append slot have been deprecated. Existing usage keeps rendering — actions:append content lands in the secondary-actions zone, and for primary CTAs in the drawer header use the new actions:primary slot. Consumers will see deprecation hints from Volar.
Potential Breaking change for theme extensions: The theme properties header.headline.foreground and header.headline.fontFamily have been removed. Custom themes overriding these properties should remove them. The corresponding CSS variables --theme--header--headline--foreground and --theme--header--headline--font-family no longer exist.
Added split-menu slot to v-button and migrate primary header actions @formfcw (#27437 by @formfcw)
Added AI-powered translations to the translations interface, including glossary, style guide, and configurable default model settings derived from the enabled providers and allowed models. (#26940 by @bryantgillespie)
Added version support to getItemRoute and update all callers to preserve version context when navigating to items from layouts and interfaces @alvarosabu (#27397 by @formfcw)
Added behavior to auto-switch to the draft version on the first edit of published item @alvarosabu (#27507 by @alvarosabu)
Updated VChip component to appear as a pill in form field label, group accordion, group tabs, kanban, deployment status, extension item, marketplace extension list item, marketplace extension banner, and user popover @formfcw (#27462 by @formfcw)
Added MCP OAuth 2.1 authorization server. MCP clients (like Claude, Codex) can now authenticate via standard OAuth flow with PKCE instead of requiring a manually provisioned static token. Enable with MCP_OAUTH_ENABLED=true. Dynamic and client ID metadata registration were kept separately opt-in with MCP_OAUTH_DCR_ENABLED=true and MCP_OAUTH_CIMD_ENABLED=true. (#27069 by @hanneskuettner)
Deprecation for extensions: The actions:append slot in the header bar has been deprecated in favor of the new actions:primary slot for primary CTAs. Existing actions:append usage keeps rendering in the secondary-actions zone, but consumers will now see a deprecation hint from Volar.
Renamed "Promote" to "Publish" in version menu and disabled create version and published selection for item-less versions @alvarosabu (#27397 by @formfcw)
Refactored drawer header layout and simplified v-drawer API @formfcw (#27437 by @formfcw)
:::notice
Deprecation for extensions: The globally registered v-breadcrumb component has been deprecated. Extensions using <v-breadcrumb> keep rendering but will see a deprecation hint from Volar.
Deprecation for extensions: On v-drawer, the subtitle prop (use the title prop instead), the subtitle slot, the header:append slot, and the actions:append slot have been deprecated. Existing usage keeps rendering — actions:append content lands in the secondary-actions zone, and for primary CTAs in the drawer header use the new actions:primary slot. Consumers will see deprecation hints from Volar.
Potential Breaking change for theme extensions: The theme properties header.headline.foreground and header.headline.fontFamily have been removed. Custom themes overriding these properties should remove them. The corresponding CSS variables --theme--header--headline--foreground and --theme--header--headline--font-family no longer exist.
:::
Updated header bar elements and deprecated the headline slot @formfcw (#27437 by @formfcw)
Ensured to switch to the draft version when visually editing an item of a versioned collection @formfcw (#27595 by @formfcw)
Added AI-powered translations to the translations interface, including glossary, style guide, and configurable default model settings derived from the enabled providers and allowed models. (#26940 by @bryantgillespie)
Added MCP OAuth 2.1 authorization server. MCP clients (like Claude, Codex) can now authenticate via standard OAuth flow with PKCE instead of requiring a manually provisioned static token. Enable with MCP_OAUTH_ENABLED=true. Dynamic and client ID metadata registration were kept separately opt-in with MCP_OAUTH_DCR_ENABLED=true and MCP_OAUTH_CIMD_ENABLED=true. (#27069 by @hanneskuettner)
Added JSON filtering, alias and sorting support (#26981 by @br41nslug)
Added support for the version query parameter in collections @Nitwel (#27397 by @formfcw)
Allow disabling the health check endpoint via HEALTHCHECK_ENABLED or selectively disabled checked services via HEALTHCHECK_SERVICES (#27160 by @ComfortablyCoding)
Improved AI assistant prompt caching support across providers. (#27545 by @bryantgillespie)
Added MCP OAuth 2.1 authorization server. MCP clients (like Claude, Codex) can now authenticate via standard OAuth flow with PKCE instead of requiring a manually provisioned static token. Enable with MCP_OAUTH_ENABLED=true. Dynamic and client ID metadata registration were kept separately opt-in with MCP_OAUTH_DCR_ENABLED=true and MCP_OAUTH_CIMD_ENABLED=true. (#27069 by @hanneskuettner)
Allow disabling the health check endpoint via HEALTHCHECK_ENABLED or selectively disabled checked services via HEALTHCHECK_SERVICES (#27160 by @ComfortablyCoding)
Added MCP OAuth 2.1 authorization server. MCP clients (like Claude, Codex) can now authenticate via standard OAuth flow with PKCE instead of requiring a manually provisioned static token. Enable with MCP_OAUTH_ENABLED=true. Dynamic and client ID metadata registration were kept separately opt-in with MCP_OAUTH_DCR_ENABLED=true and MCP_OAUTH_CIMD_ENABLED=true. (#27069 by @hanneskuettner)
Updated directus_oauth_* system collection visibility to match other system collections (#27682 by @hanneskuettner)
Added MCP OAuth 2.1 authorization server. MCP clients (like Claude, Codex) can now authenticate via standard OAuth flow with PKCE instead of requiring a manually provisioned static token. Enable with MCP_OAUTH_ENABLED=true. Dynamic and client ID metadata registration were kept separately opt-in with MCP_OAUTH_DCR_ENABLED=true and MCP_OAUTH_CIMD_ENABLED=true. (#27069 by @hanneskuettner)
Added support for the version query parameter in collections @Nitwel (#27397 by @formfcw)
Fixed health check results not being shared in multi-instance settings. Restricted /server/health to authenticated users (#27160 by @ComfortablyCoding)
Updated header bar elements and deprecated the headline slot @formfcw (#27437 by @formfcw)
@directus/utils
Added MCP OAuth 2.1 authorization server. MCP clients (like Claude, Codex) can now authenticate via standard OAuth flow with PKCE instead of requiring a manually provisioned static token. Enable with MCP_OAUTH_ENABLED=true. Dynamic and client ID metadata registration were kept separately opt-in with MCP_OAUTH_DCR_ENABLED=true and MCP_OAUTH_CIMD_ENABLED=true. (#27069 by @hanneskuettner)
@directus/sdk
Added JSON filtering, alias and sorting support (#26981 by @br41nslug)
Added missing collection note translations for the directus_oauth_* system collections (#27682 by @hanneskuettner)
Changed back button behavior, always navigates one level up @HZooly (#27437 by @formfcw)
Fixed default favicon path to resolve against the instance root path instead of the site origin. (#27095 by @singhvishalkr)
Fixed repeater interface ignoring per-field translations and $t: keys on sub-field labels, and added a "Field Name Translations" section to the sub-field configuration UI (#27374 by @khanahmad4527)
Fixed search input not trimming whitespace, causing queries with leading or trailing spaces to return no results (#27359 by @khanahmad4527)
Added minor copy change to license onboarding and license key interface (#27651 by @robluton)
Fixed the error handling (try-catch) when saving a field in Directus Studio. (#27486 by @baguse)
Fixed items not being selectable in the collection drawer when the Kanban layout is used while the parent item is opened in a version context @alvarosabu (#27427 by @alvarosabu)
Fixed AI assistant "Clear conversation" not canceling in-flight requests, causing them to continue running in the background (#27646 by @levgiorg)
Added support for translatable flow names via the existing $t: prefix and translation strings, matching the field/collection label pattern. The flow name input in the flow editor now exposes the translation picker. (#27472 by @khanahmad4527)
Removed unsupported json filter function from the studio (#27669 by @sourav-18)
Added DIRECTUS_DOMAIN constant and replaced hardcoded directus.io to directus.com using the new constant (#27417 by @ComfortablyCoding)
Consolidated URLs and emails into shared constants (#27641 by @HZooly)
@directus/system-data
Added AI-powered translations to the translations interface, including glossary, style guide, and configurable default model settings derived from the enabled providers and allowed models. (#26940 by @bryantgillespie)
Updated the built-in OpenAI and Anthropic AI model lists to use the latest available API models. (#27602 by @hanneskuettner)
@directus/types
Added AI-powered translations to the translations interface, including glossary, style guide, and configurable default model settings derived from the enabled providers and allowed models. (#26940 by @bryantgillespie)
Added JSON filtering, alias and sorting support (#26981 by @br41nslug)
@directus/utils
Added JSON filtering, alias and sorting support (#26981 by @br41nslug)
@directus/sdk
Fixed health check results not being shared in multi-instance settings. Restricted /server/health to authenticated users (#27160 by @ComfortablyCoding)
Fixed SingletonCollections incorrectly including core schema collections (#27196 by @kheiner)
@directus/ai
Updated the built-in OpenAI and Anthropic AI model lists to use the latest available API models. (#27602 by @hanneskuettner)
@directus/release-notes-generator
Ignored private workspace packages when generating release notes (#27637 by @licitdev)
I backported various security fixes from 10.3 to trixie, bookworm, bullseye, buster, and stretch. For trixie, I also backported several IPQoS fixes to line up with upstream’s traffic management settings and drop a rather hacky Debian-specific patch; this needed a quick follow-up fix.
Excited to get delivering in South Dakota? Then this blog is for you! Today, we're happy to share more of the custom depots you'll deliver to and from in our upcoming South Dakota DLC for American Truck Simulator. From busy agricultural industries to a large scrapyard, let's take a closer look at what our teams have been busy creating!
Unlike standard prefabs, these depots have been carefully assembled by our map designers using a variety of assets, giving each one a distinct look and feel. Many of them are based on real-world locations, which perhaps some of you might recognise if you live locally or visit South Dakota often.
Agriculture plays a major role in South Dakota’s economy, and players will find plenty of job contract opportunities from a range of farming industries across the state. One such location can be found near the city of Aberdeen, where you'll discover a large farm facility featuring numerous silos used for storing crops and seeds before they are shipped further afield. Set amongst the vast prairies and open spaces that define much of South Dakota's landscape, drivers will be treated to panoramic views and seemingly endless horizons as they travel between jobs. This is just one of the many farms that make up South Dakota’s number one industry.
The agriculture industry covers much more than just seeds and crops, however, and nearby the city of Mitchell, players will discover a custom farm livestock depot inspired by a real-life facility. You'll be sure to spot plenty of livestock roaming the nearby fields, as South Dakota famously has the highest cattle to people ratio in the U.S., with approximately 4 times as many cattle as people living in the state!
For those who enjoy heavy industry and rugged terrain, the Spearfish area will feature a large quarry-inspired depot nestled within the scenic Black Hills region. Hauling materials in and out of this site will require careful driving through winding roads and rough terrain, all while surrounded by impressive rocky landscapes and industrial machinery.
In the city of Lead, you’ll find the largest open pit in South Dakota. It is a closed gold mine and a clear visual dominant of the city. In the mine's underground, 4,850 feet deep, we can find a unique research laboratory. It is the deepest underground laboratory in the United States and it houses experiments connected to dark matter and neutrinos, which need to be conducted far below the Earth’s surface, shielded from cosmic radiation. This research facility also serves as an inspiration for one of our locations in the South Dakota DLC. Our players will be able to explore a part of the facility and experience the atmosphere of a place like this for themselves
Nearby Aberdeen, players will also come across a large scrapyard depot inspired by a real-life agricultural salvage facility. Spanning a huge area filled with rows of machinery, stacked equipment, scrap piles, containers, and industrial vehicles, this custom depot is based on a well known scrapyard business where people travel from across the region in search of spare parts, equipment, and older vehicles.
Grain transportation remains a key part of South Dakota’s economy, and nearby Mitchell, players can deliver to and from a large grain elevator situated amidst the surrounding countryside. Surrounded by open fields, this agricultural landmark captures the scenic character of South Dakota’s farming regions. Standing tall above the prairie, grain elevators like this serve as important hubs for storing and transporting crops throughout the Midwest, and are a familiar sight for truckers travelling America's backroads and highways alike.
We look forward to sharing even more from this upcoming DLC for American Truck Simulator in the future, right here on our blog. If you're excited to be haulin' in the Mount Rushmore State, be sure to add South Dakota to your Steam Wishlist, your support means a lot to us. Until next time, happy haulin’!
26.2 Pre-Release 6 (known as 26.2-pre-6 in the launcher) is the sixth and final pre-release for Java Edition 26.2, released on June 10, 2026.
Full changelog: https://minecraft.wiki/Java_Edition_26.2-pre-6
Volgens een artikel in de Financial Times is het WK voetbal altijd al een politiek instrument geweest: oprichter Jules Rimet wilde er na de loopgraven van de Eerste Wereldoorlog de wereldvrede mee bewerkstelligen, maar door een weeffout in de bekostiging zijn het inmiddels vooral despoten die het toernooi binnenhalen, met Trumps MAGA Cup als nieuwste hoofdstuk.
Tegelijk blijkt een stadion juist een van de weinige plekken waar dissent niet te onderdrukken valt, of het nu Catalanen onder Franco zijn, Italiaanse ballingen die Mussolini's elftal uitfloten of een Megatron in Madison Square Garden die Trump wegjoelt. De NOS draait dat soort boegeroep liever weg en neemt klakkeloos de gemanipuleerde FIFA-feed over, en dat is precies wat een publieke omroep in tijden van wantrouwen niet zou moeten doen.
Het boek How to Rule the World ontmaskert ondertussen het Stanford binnen Stanford, waar VC's al in eerstejaars investeren, feestjes alleen nog met sober monitors en een "I am on stolen land"-eed mogen, en de campuspresident sneuvelt op gefotoshopte onderzoeksresultaten.
Tussendoor een ode aan de sonische identiteiten van de FIFA, met San Francisco als onbetwiste favoriet.
Meer te weten te komen over Carbon Equity? Lees dan verder op carbonequity.com
Interesse gewekt voor Seth Godin? Begrijpelijk! Tickets voor het Amsterdam Business Forum op 18 september vind je op DenkProducties.nl.
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
The DistroWatch news feed is brought to you by TUXEDO COMPUTERS. The Alpine Linux development team has announced the release of Alpine Linux 3.24.0, a significant update of the project's independently-developed, general purpose Linux distribution designed primarily for power users: "We are pleased to announce the release of Alpine Linux 3.24.0, the first release in the 3.24 stable series.....
AI slop is invading the web. A recent story about disallowing LLM-generated
submissions on Lobsters triggered a lot of debate. My personal worst
offenders are LinkedIn articles with AI-generated images and uninspired
articles filled with emojis from people trying to masquerade as experts on a
subject they don’t care enough to write themselves. While I am unhappy about
this situation, I rely on LLMs for grammar, copyediting, and
translation. I don’t see this as a contradiction.
I am a native French speaker, but I blog in both English and French. When I
started writing this blog in 2011, I was composing in French and translating
to English, but I found it was better to work in the reverse order to
avoid unnatural and non-idiomatic constructions. One of my goals is to write
“good” English but I never felt it was my strong point.1 For example, verb
tenses are often an issue, even if I mostly stick with the present tense. I
learn the rules and forget them right away. I also don’t feel like hiring an
editor for something I see as a hobby.
I know that LLMs may alter the author’s voice when editing, but the
corrections in the second step are minor. The prompt asks to “apply light
stylistic edits,” with some guidance around avoiding passive voice, long
sentences, bland verbs, and filler words. It also defines the target audience:
technical with a B2 level in English.
In the following excerpt, I used “long time” instead of “long-standing.” The
former is missing a hyphen and applies to people—a long-time friend, while
the later relates to a situation—a long-standing agreement. I had a hard
time understanding the reason of the second change: the LLM prefers a
defining relative clause to provide the definition of “RIB sharding.”
As the Internet routing table contains more than 1 million routes, Akvorado
needs to scale to tens of millions of routes. This has been a long
time long-standing challenge, but I expect this issue is now
fixed by using RIB sharding, a method to split that
splits the routing database into several parts to enable concurrent
updates.
In the next modification, the LLM puts “device” instead of “equipment.” This is
correct as “equipment” is an uncountable noun. I know that, but I still fall
into this trap.
When Akvorado does not find a route from a specific device, it falls back to a
route sent by another equipment device.
I ask the LLM to use “descriptive verbs” and it complies by replacing a
multi-word predicate with a lexically rich verb:
The benchmarks demonstrate it has better performance than
outperforms other packages, both packages for
lookups, insertions, and memory usage.
It also fixes grammar errors. In the next excerpt, a “list of routes” is a
singular expression. Moreover, “stored” is a state and I should not use “into”
as it expresses a change.
The list of routes for each prefix are is not stored
directly into in the prefix tree.
As a last example, consider the following snippet. The “require” verb
accepts a noun or an object followed by a to-infinitive. I can’t use it with
just a to-infinitive.
An alternative would be to have one prefix tree for each peer but it would
require to configure configuring all routers to export
their routes.
As someone who didn’t grow up speaking English, I struggle with these grammar
rules despite reading a lot of English material.3 French is more
complex to get started but more systematic. English is full of irregularities.
On each page, I disclose in the footer whether an AI modified the content. There
are three levels:
🧠: no AI or almost no AI (e.g., grammar corrections)
✨: enhanced (e.g., copyediting)
🤖: generated (e.g., translated from another language, even if human-edited)
Hover or tap the icon to reveal the AI’s name and its role in the document.
Example of AI usage disclosure: Claude Sonnet 4.5 edited this article.
The graph below shows which tool altered each post, year by year. Recently, I
applied the grammar skill to past articles. Since 2018,
French articles have been translated with the help of DeepL first, then of
an LLM. Since 2024, English articles are copyedited.
🖼 Graph showing the AI usage over the years. Each level get its own
color.
AI usage over the years. Hover or tap a band for the details.
If you are strongly against any usage of LLMs specifically for writing, I hope
you accept my more nuanced position on the usage of these tools as a trade-off
to provide clearer and more engaging articles. Years of literature on improving
English told us it is important to choose the right word to keep the reader
engaged.
[…] Good writing consists of mastering the fundamentals (vocabulary,
grammar, the elements of style) and then filling the third level of your
toolbox with the right instruments.
― Stephen King, On Writing
Note
Unlike other recent articles, I did not use an LLM to edit this post:
an unnamed person kindly accepted to proofread it. I translated it to French
without using an LLM either.
I am quite happy with the writing tools provided by Kagi. Both the
translate tool and the dictionary are a valuable help to find
different wordings. I also lean on Kagi’s research assistant when
researching a topic. ↩
When I was ten, I played Monkey Island 2 in English without having
taken any classes. I used a dictionary to translate word by word and I found
the irregular verbs confusing—and not in the dictionary. ↩
The DistroWatch news feed is brought to you by TUXEDO COMPUTERS. Franco Conidi has announced the release of SysLinuxOS 13.2, an updated build of the project's Debian-based distribution made primarily for system integrators and network administrators. The new version uses the Btrfs filesystem on new installation and integrates the Snapper utility for managing snapshots of Btrfs subvolumes. "SysLinuxOS 13.2....
(packaging) Create .rpm package through Makefile, plus let GH action run that step in release mode - (fc728cf)
Create checkbox in advanced session setting for new ForceUnicode setting - (75a0f7f)
Create opt-out setting "ForceUnicode", for sessions which shall not force Unicode communication - (ed9a94f)
Enable connection port visible in a column of the session tree - (7cfdb97)
Display auth plugin in a new column of the user listing tree - (3e4f562)
Support authentication plugin selection in user manager - (07112a0)
Grid export option for exporting the focused grid column only - (d896680)
Bypass automatic foreign key lookup in data grid editing through new menu item - (a5ae04b)
Add a separate menu item "copy formatted text", using the old code for copying SynEdit-highlighted text as HTML - (84c63c6)
Filter edit box for shortcuts in preferences - (fb243fc)
Create CLI app for adding PE security flags to heidisql.exe - (3e797e2)
Rename snippet per right-click on query helpers tree - (7171e48)
Name columns in SELECT when exporting table with invisible columns - (1799b0d)
Support invisible indexes on MySQL 8.0+ and ignored indexes on MariaDB 10.6+ - (b3fa484)
Support assigning a default role to a user - (96d2aef)
Support assigning roles to a user or role - (96717cd)
Do not require MySQL's RELOAD privilege just for opening the user manager - (f79d9a5)
When nodes are filtered, change "Check all" action to "Change all visible" - (ebd60b3)
Disable role rename, add menu item for creating a role, support role deletion - (83472c5)
Prevent editing contents of generated columns in data grid - (9ecdff0)
Basic support for MariaDB user roles, loaded without SQL error and shown with a different icon - (3249401)
Add context menu item for deleting a single query from the history - (0035d5e)
Reset a table's current auto_increment value in "delete + insert data" mode - (0422bb3)
Support cancelling server login dialog - (e5b9574)
Keep EXPLAIN output format traditional, on newer MySQL servers - (90f9937)
Make HTML export dark/light mode aware - (dc046e9)
Allow setting database to in PostgreSQL connections, and show and in the pulldown selector - (950e2ca)
🚀 Enhancements
Disable plugin selector as long as no user was selected - (54dd7d8)
Do not copy default type and value from previous column when adding columns to a table - (42a061d)
Suppress dialog for saving modified SQL on app close, when tabs get auto-restored - (4ca01d9)
Remove FLUSH PRIVILEGES from the user managers FormShow handler. If a click on a non-flushed user in the tree produces an exception, that is caught and shown as a normal error message. - (fe7a5ef)
50% black grid lines, should fit on both light and dark theme - (1872916)
Increase supported table size and row limit for quick filter menu showing distinct values - (48eca57)
🐛 Bug Fixes
(ui) Filter away vertical writing fonts with an @ prefix - (1814ee9)
(ui) Size and margin of buttons on SQL help dialog - (61bc258)
(ui) Apply the same larger tree node height on Linux - (c770406)
(ui) Remove default "add user" event from add button, turn it into a pure dropdown button - (d7910c1)
Copy table dialog crashes when none of dbtree and listtables has Focused=True - (9216061)
Prefer SHOW KEYS over SHOW INDEXES, which are synonyms, while very old servers only accept the one with KEYS - (b97122c)
Prevent grid queries from doing "WHERE intcol::text = 1", due to "1" being incompatible to the text value on the left - (bcea889)