Normale weergave
v1.17.2 - Draft Security Fix, Safari Push & Plugin Tag Updates
1.17.2 (2026-10-24)
1.17.2 fixes a cross-site scripting hole in re-opened drafts and keeps Safari from dropping push subscriptions after pushes that had nothing new to show. Drafts written as a group identity now stay in the group's Drafts, and bulk delete, trash and move with several accounts on different servers act on the right server. Plugins can update and remove their own tags, format dates in the user's regional settings and put buttons beside a sidebar section's title. User-facing texts use the configured app name instead of "Bulwark".
Thank you for your donations:
- You? Become a sponsor!
One-time
- @bultester
- Anonymous
- Anonymous
- Anonymous
Monthly
- Anonymous
- @superspacehosting
- @naokton
- @yerTools
- @jsaathof
- @berkersal
- @NABarnes
- @felixzieger
- @pr0ton11
- @fpauser
- @proxforge
- @spss20
- @elgringoYan
- @pauladams8
- @djpriest
- @umakers
- @zplizzi
- @jeremiah
- @Theoretisch1337
- @svandive
- @HiltMundell
Security
- Composer: The quoted original and the signature in a re-opened draft are sanitized before they render. A draft written by another client, or by another member of a shared mailbox, could carry markup that ran script in the webmail when you opened it (GHSA-g35q-3gpc-x2rr, thanks @muhammad-zeeshan1337)
Features
- Plugins: Plugins can change the label, colour and visibility of the tags they added and remove them again with
keywords.updateandkeywords.remove. Both needsettings:writeand never touch the user's own tags or another plugin's (#1333, thanks @HOLOEYE-JZ) - Plugins: Plugin frames get the user's date locale, 12/24-hour setting, time zone and first day of the week, and can format with
api.i18n.formatDateandapi.i18n.formatTime, without asking forsettings:read(#1335, thanks @tobiasge) - Plugins: A new
sidebar-section-actionsslot puts a plugin's buttons beside its sidebar section's title instead of in a row below it (#1317, thanks @LeonardNJU) - Admin: A policy switch lists the Tags above the shared mailboxes in the sidebar, so they stay in sight when many shared mailboxes are expanded. It is off by default (#1334, thanks @HOLOEYE-JZ)
- Branding: Default apps in Settings, the "Open Bulwark" notification, the rate-limit banner, the plugin connect dialog and the connector page use the configured
APP_NAME, and the settings search finds them by it (#1314, thanks @ghozty)
Fixes
- Push: Every push ends with a notification, also one that brings nothing new (a redelivery, mail already read or already announced), and a slow preview gives way to the generic notification after 10 seconds. Safari treats a push without a notification as silent and drops the subscription after three (#1322, thanks @oguzyilmaznet)
- Mail: A draft written as a group identity is saved in the group account's Drafts, where its Sent copy also goes, instead of in your own (#1090, thanks @hildebrandttk)
- Mail: A sub-address of your own address (you+tag@) sends from your account, even when a shared catch-all account has a wildcard identity for the domain
- Mail: Bulk delete, trash and move send each message through the login that owns it. With accounts on two servers that use the same account id, they went through the first login and could hit an unselected message on the other server (#1307, #1326, thanks @VasilisNtovolos)
- Mail: Dragging several messages out as a ZIP fails with a message when one of them can't be fetched, instead of leaving it out, and the same selection can be tried again (#1306, thanks @VasilisNtovolos)
- Tasks: A task alert relative to the start fires from the task's start instead of its due date. A task without a start still counts from its due date (#1328, thanks @ClapsAndJiggles)
- Plugins: Plugins installed by the admin are listed in browsers that can't cache their code, such as some private windows (#1327, thanks @ovizii)
- i18n: The Ukrainian "Forward" and "Move to" are translated as the actions, not as "ahead" and "go to" (#1311, thanks @vladonv)
github-v1.2.28: chore(github): pin actions/cache to commit SHA in GitHub Action (#58769)
Co-authored-by: rekram1-node rekram1-node@users.noreply.github.com
Paint.NET 5.2 Beta (build 9793)
This should be the last beta release of Paint.NET 5.2 before the final, stable release which I’m planning for the day of-or-after the release of .NET 11. That should be the second week of November.
This build fixes a few bugs, adds a new Uzbek (uz) translation, introduces an official plugin SDK Nuget package, adds a “Nearest Neighbor (Antialiased)” mode to the Move Pixels tool, and includes further improvements to the experimental Wine packages.
Nearest Neighbor (Antialiased) is similar to what the emulator community calls “sharp bilinear”. It first uses Nearest Neighbor to upscale to the ceiling of the requested scaling factor (e.g. from 100% to 700% instead of from 100% to 632%), and then uses bilinear to downscale to the target scaling factor (700% -> 632%). This retains the blocky/pixelated look of Nearest Neighbor, but with the added effect of antialiased edges. This works for both scaling and rotation.
Changes since 5.2 Beta (build 9772):
- New: Added a “Nearest Neighbor (Antialiased)” resampling mode to the Move Pixels tool
- New: Paint.NET.Plugin.SDK nuget package. You no longer have to manually add references with paths hardcoded for your local system.
- New translation: Uzbek (uz)
- Fixed tooltips for effect plugin menu items not going away when using the keyboard
- Wine: PNG and JPEG images should work a lot better now, with proper metadata support
- Wine: GPU effect plugins that use ComputeSharp.D2D1 are now working
- Wine: Stability and memory usage should be improved by using a better method for selecting a device for software rendering paths
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.
![]()
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 Linux, the experimental builds for Wine can be downloaded here. It can also work on Mac but that is not the primary focus at this time.

Iceland Release Date & Video Trailer Reveal
The wait is almost over, truckers! Get ready to embark on an unforgettable journey through a land shaped by fire, ice, and the forces of nature. We’re excited to officially reveal the release date of the Iceland DLC for Euro Truck Simulator 2, bringing the extraordinary landscapes of this island nation to your virtual trucking adventures!
Iceland DLC for Euro Truck Simulator 2
will be released on November 10th, 2026
To celebrate this milestone, we’re also happy to share the official Iceland DLC video trailer on our YouTube channel. Take a closer look at the breathtaking scenery, winding roads, and unique destinations that await you in this upcoming map expansion.
Iceland stands apart as one of Earth's most extraordinary places, offering a remarkable variety of landscapes shaped by volcanic activity and ancient glaciers. From towering volcanoes and vast ice fields to dramatic coastlines, black sand beaches, and powerful waterfalls, there is something incredible waiting around every corner. Now, you’ll have the opportunity to experience these natural wonders from behind the wheel of your truck!
With 14 cities and settlements to explore, including Reykjavík and Akureyri, there will be plenty of new destinations to discover along your journey. You’ll travel along the iconic Ring Road, connecting lively urban areas, quiet settlements, rugged coastlines, and remote corners of the island, with every route offering a different glimpse into Iceland’s unique character.
Along the way, you’ll encounter some of Iceland’s most recognisable natural landmarks, including Jökulsárlón, Goðafoss, Gullfoss, Seljalandsfoss, Víkurfjara, Geysir, and Þingvellir, among many others. You’ll also come across narrow bridges with single-lane traffic, where drivers must give way to oncoming vehicles, adding a new layer of realism and care to your journeys. Whether you’re driving past majestic mountains, crossing vast plains and volcanic fields, or navigating roads surrounded by towering cliffs, you’ll have plenty of opportunities to take in the island’s spectacular scenery.
But there’s more to Iceland than its natural beauty! The DLC will also introduce a variety of industries and delivery opportunities, from custom-made farms and quarries to a distinctive silica factory in Húsavík. These locations will bring their own character to the experience, giving you plenty of reasons to keep your wheels turning across the island.
And when night falls, be sure to keep an eye on the sky. Under the right conditions, the Northern Lights may illuminate the landscape, creating a truly memorable backdrop for your deliveries. To make your journeys even more immersive, daylight hours will accurately reflect Iceland’s real-world timing, bringing another layer of authenticity to your travels.
The Iceland DLC invites you to experience a destination unlike any other in Euro Truck Simulator 2. We can’t wait for you to discover its winding roads, unique industries, and breathtaking natural wonders for yourselves!
We’re thrilled to finally share this milestone with our #BestCommunityEver, and we look forward to seeing you hit the roads of Iceland soon. Thank you for your continued support and enthusiasm throughout development!
If you haven’t already, be sure to add the Iceland DLC to your Steam wishlist. It’s a great way to show your support for the project and make sure you’re notified when the expansion becomes available. Make sure to also follow us on X/Twitter, Instagram, Facebook, Bluesky, YouTube, and TikTok or subscribe to our newsletter to receive all the recent updates. You can also subscribe to our newsletter to stay informed. Until next time, safe travels!
OBS Studio 33.0.0
33.0 New Features
- Updated CEF from 127/6533 to 150/7871 [WizardCM] (#13900)
- This is a massive update to the underlying framework used for browser sources and docks from the July 2024 release to September 2026
- All of this work is on the backend and should be invisible to users. Please be sure to report any new weirdness or problems you run into with browser sources!
- Complete overhaul to plugin loading [FiniteSingularity/PatTheMav] (#13594)
- First-party plugins are now in a new folder named core
- Third-party plugins have an updated installation location and folder structure
- Existing third-party plugins will continue to load from the legacy locations until OBS Studio 34.0
- More information is available in our knowledge base article
- Improved how source snapping works in the preview [Warchamp7] (#12298)
- New visual indicator added
- Sources now snap along the entire axis instead of only when directly touching
- Sources no longer snap to hidden sources
- Improved behavior of spinboxes for number values [Warchamp7] (#12337)
- Typing is no longer mysteriously blocked in some situations
- Numbers are no longer cut off in some situations
- Values now update only after pressing Enter and Enter does not close the window
- Holding Shift + Up/Down now advances multiple steps at a time
- Dragging the cursor inside the input but outside the text itself now works properly
- Enabled NVENC on Arm64 [RytoEX] (#13827)
33.0 Changes
- Added a check for encoders being missing when loading a profile [derrod] (#11340)
- Added support for newest NVIDIA Broadcast SDKs for NVIDIA Audio Effects and Video Effects [pkviet] (#13838)
- Added hotkeys for controlling audio monitoring of a source [Warchamp7] (#13599)
- Changed Safe Mode to not start WebSocket Server [FiniteSingularity/RytoEX] (#13984)
- Fixed issues with groups in Studio Mode [Warchamp7] (#11092)
- Fixed moving sources inside a group causing them to glitch out in Program
- Fixed moving sources inside a group showing up live in Program
- Adjusted naming of Window Capture methods on Windows [Penwy] (#12047)
- Improved detection of fullscreen games for Game Capture [Kira-NT] (#10880)
- Improved transparency handling for macOS Screen Capture [jcm93] (#13030)
- Scaled simple output recording audio bitrate by channel count [nickvonkaenel] (#13311)
- Removed support for Ubuntu 24.04
33.0 Bug Fixes
- Added a startup error if obs-transitions failed to load [notr1ch] (#13321)
- Improved file splitting for Hybrid MP4/MOV [derrod] (#13386)
- Fixed outputs getting stuck running when a bad rescale output resolution is set [suogesi] (#13375)
- Fixed monitoring icon state getting desynced when using third-party tools or websockets [prgmitchell] (#13822)
- Fixed a crash on macOS 27.2 when starting OBS Studio [RytoEX] (#14070)
- Fixed potential crash when shader cache file is invalid [notr1ch] (#13538)
- Fixed a potential crash on Linux when USB mic is removed [R0te/RytoEX] (#13922)
- Fixed a potential crash when renaming a source with the Add Source window open [Warchamp7] (#13800)
- Fixed a potential deadlock during video/audio tasks [exeldro] (#13579)
- Fixed an issue with B-frame offset calculation in AMF that could cause streams to disconnect [lexano-ivs] (#13762)
- Fixed PipeWire screencast sources being duplicated in studio mode [tytan652] (#13673)
- Fixed a potential crash when switching off a newly created profile [Warchamp7] (#13182)
- Fixed a source toolbar crash when source type is missing [Penwy] (#13539)
- Fixed profile import failing on paths with a trailing slash [Ushkalovk] (#13863)
33.0 Developer Information
- Added frontend event and output signal for replay buffer saving [Penwy] (#8955)
- Added guidance regarding the theme system to the top of all theme files [Warchamp7] (#13733)
- Added ability to set a file extension filter for OBS_PATH_FILE_SAVE path types [FiniteSingularity] (#10190)
- Added obs_frontend_is_safe_mode for first-party plugins
- Third-party plugins are not loaded at all in Safe Mode
- Added versions to Flatpak plugin extension point [tytan652] (#13735)
- Added obs_canvas_video_active() to check if the video of a canvas is active [exeldro] (#13110)
- The minimum supported versions of Visual Studio, Windows SDK, and clang-format have been increased. Previous versions may continue to work, but will no longer be tested/supported. It is recommended that build environments are kept up-to-date with the project's toolchain.
- Changed obs_canvas_reset_video() to allow resetting a canvas's video when any other canvas's video is active, but not its own video [exeldro] (#13110)
- Updated libnsgif to 1.0.0 [RytoEX] (#11178)
- This is a breaking change for any plugins using libobs/graphics gs_image_file
- Clarified documentation for obs_module_unload [notr1ch] (#13327)
- Required MbedTLS 3 and exclude 4 or later [tytan652] (#13799)
- Removed support for FFmpeg 6.x and 7.x [RytoEX] (#13964)
- Removed support for Qt 6.4-6.9 [RytoEX] (#13969)
- Fixed repeated preview enable/disables not working [WarmUpTill] (#12580)
- Only emit core signal handlers for public canvases [tt2468] (#13574)
- Deprecated unused hidden API for sources [derrod] (#13122)
- Deprecated APIs for audio source monitoring_type [Warchamp7] (#13599)
- This is replaced by a new monitoring_enabled boolean
Checksums
OBS-Studio-33.0.0-Sources.tar.gz: c1ae3c98c1bb70ebdced33e894a526fcbbbda9bfd95806970a3fc31f74b08f6c
OBS-Studio-33.0.0-Ubuntu-26.04-x86_64-dbsym.ddeb: 12045838dfd0202ba26b77fb2e8572f4db27c709b3aabe425ac979ee0532a61c
OBS-Studio-33.0.0-Ubuntu-26.04-x86_64.deb: f5844914eadd560314f3a9db020afa7a8afbefb67a26c488f2956dc339704918
OBS-Studio-33.0.0-Windows-arm64-PDBs.zip: e43139f467ccedb4fbb583f09ce64341a7c96b44030181ef57abd1528142b947
OBS-Studio-33.0.0-Windows-arm64.zip: 02c53d7bff3f9c159401da79fc375d7b75b00c9ca62d2b4ec5fc05a575d2fa1f
OBS-Studio-33.0.0-Windows-x64-Installer.exe: 3bf55dae6d9db651505828090de74540296c742ed2a94a28cf055cb6ddc6bed3
OBS-Studio-33.0.0-Windows-x64-PDBs.zip: dbda0e1e9967262380e619e071de068809ccae2ccb3f68f52034db9a8276475d
OBS-Studio-33.0.0-Windows-x64.zip: 3369a3ecd67b5669a8a08d77357f87cc786d1fba42fbbd1054d841a69f6271a7
OBS-Studio-33.0.0-macOS-Apple-dSYMs.tar.xz: 6b162ccbafc2eaaee3ced192a851eb5d3d616ad8d54125ce5cd701d26e6939bf
OBS-Studio-33.0.0-macOS-Apple.dmg: b36f4e9da5f2f17c733ba711c8fe0656d6b0cd573cfe96eeb3e68325cffef739
OBS-Studio-33.0.0-macOS-Intel-dSYMs.tar.xz: 997ba41207e9fd7b045b955561cdd5c32b29f12d98ea3ea5a43de7c9edd8f1c7
OBS-Studio-33.0.0-macOS-Intel.dmg: 8524ff428f038573f8905a206841081d3da9ec607063906f7bbfe38d55810c1c
UniFi Network Application 11.0.97
Overview
UniFi Network Application 11.0.97 requires UniFi OS 6.0 or newer.
Improvements
Improved application stability.
Revoked compromised eMudhra CA certificates.
Bugfixes
Fixed an issue where the Site filter in the Site Manager System Logs was not working.
Fixed an issue where more than three latency monitors could appear on the Dashboard.
Additional information
Self-Hosted UniFi Deployments
For self-hosted deployments, we recommend transitioning to UniFi OS Server, which provides the full UniFi OS Platform experience, including the latest features, improvements, and integrations.
UniFi Cloud Gateways remain our recommended solution for deployments that do not require self-hosting.
UniFi Network Application 10.6.109
Improvements
Revoked compromised eMudhra CA certificates.
Additional information
UniFi OS Server
Going forward, we recommend users upgrade to UniFi OS Server for all self-hosted deployments. It provides the full UniFi OS Platform experience, ensuring you receive the latest features, improvements, and integrations.
UniFi Network Native Application for UniFi OS
Compatible with UDM, UDR, UDR7, UDR 5G Max, Express, Express 7, and UCG models (Ultra, Max, Fiber, and Industrial) on UniFi OS 3.1.6 or later. UDM-Pro, UDM-SE, and UDW have been using it since UniFi OS 5.1.5.
The UniFi OS update utilizes the application version compatible with your console.
The manual update process via SSH requires a compatible package. Incompatible packages will be rejected on installation.
Older UniFi OS versions (prior to UniFi OS 3.1.6) on the UDM and UDR continue to utilize the standard UniFi Network Application for UniFi OS.
Checksums
d8447d3f6de51e186601831e0f21cb42 | UniFi-installer.exe
411635b6517302e0291ebcec7d7dd7c5 | UniFi-Network-Server.dmg
98097d4d6722c387885973f880f4b99f | UniFi.unix.zip
bd5e7087a15841d8dce2d3d1bd8a4b70 | unifi_sysvinit_all.deb
1c46802ddbab4f3155b82acaa2ac6b75 | unifi-uos_sysvinit.deb
40d6708dc719627daedc6099f9928042 | unifi-native_sysvinit.deb
601df32736f41e40a80a3e472450a3e1 | unifi_sh_api
------------------------------------------------------------------------------------------------------------------------
7c2074c62f8f8a4459c7011d9795343967a3fc9d33245c634d9a64034684fc76 | UniFi-installer.exe
db4ff15d644daa72ac87f694c80392536953097bc6fb14e9e1198ef076f9e2f0 | UniFi-Network-Server.dmg
6771ed353bea92586aaa8bf1545d8aa4309ef3d31ebafd9869fe39dfd5098109 | UniFi.unix.zip
bbbd514b786c27bfc13c2e075e0ecd3b279dab12aa80077b4b351c3501662bf2 | unifi_sysvinit_all.deb
73b3c4ed0a4f9974a992b94eb022b7351bc5c7501ac2a9ff783af09f2aa7323c | unifi-uos_sysvinit.deb
393fe68dc2fa25c67770ee0f18b6b3d8f2a11f9d5c634bba95a1052e4f550d2c | unifi-native_sysvinit.deb
1791685039ea795970bcc7a61eec854058e3e6fc13c52770e31e20f3beb622eb | unifi_sh_apiv12.5.1
🐛 Bug Fixes & Optimizations
- @directus/app
- Bumped dependencies for nodejs, dompurify, follow-redirects, ip-address and hono (
e4e3a51by @br41nslug)
- Bumped dependencies for nodejs, dompurify, follow-redirects, ip-address and hono (
- @directus/api
- Bumped dependencies for nodejs, dompurify, follow-redirects, ip-address and hono (
e4e3a51by @br41nslug)
- Bumped dependencies for nodejs, dompurify, follow-redirects, ip-address and hono (
📦 Published Versions
@directus/app@18.1.1@directus/api@40.0.1
iPhone Duo arrives at Apple Store locations worldwide

Release 2026.10.23
Docker Images
Docker images have been built and pushed:
Docker Hub:
alexta69/metube:latestalexta69/metube:2026.10.23
GitHub Container Registry:
ghcr.io/alexta69/metube:latestghcr.io/alexta69/metube:2026.10.23
Changes
- fix: don't mark private playlist videos seen in subscription scans (closes #1105) (0f3fc1d)
- fix: give subscription downloads the playlist/channel output template (closes #1106) (1756269)
v1.26.2-pre
v4.5.0
Features
- Added Gitea App sources to deploy private Gitea repositories (#12234)
- Added server patching (beta) with automatic security updates per server, reboot and risky package warnings, and patch status in the server list
- Added a fleet Metrics page with server and container tables, trend charts, and one-click enable (#11867, #12162)
- Added disk, network, and load charts to the server metrics page (#11867)
- Added a Canvas view on the dashboard with interactive resource views, active deployments, and team avatars (#12160)
- Added a file browser for applications, services, and databases (#11518, fixes #6519)
- Added passkey sign-in (#12154)
- Added custom proxy error pages and maintenance mode for applications and services (#12112)
- Added hashing options for HTTP basic authentication on the proxy (#12086)
- Added optional permanent redirects for applications and services (#12233, closes #6032)
- Added a configurable Traefik certificate resolver per server, with an override per resource
- Added server creation on Hostinger VPS (#11176)
- Added Cloudflare tunnel setup with stored API tokens (#12157)
- Added an automatic backup of the Coolify database before an update (#12093)
- Server transfers to another Coolify instance now run in the background (#12180)
- Added deployments from GitLab system hooks, so each project no longer needs its own webhook (#12185)
- Added MCP tools to manage resources (#12163, closes #11281, #11881)
- Added Smart scan to detect the build pack, Dockerfiles, and environment variables for new Git projects (#8502)
- Added a cache flush for Redis, KeyDB, and Dragonfly databases (#11513)
- Added city-level traffic analytics with sortable tables (#12158)
- Added rollback to Docker registry images of recent deployments
- Added an interactive console mode (
docker attach) to container terminals (#11538) - Added an AWS CloudWatch (
awslogs) log drain (#11972) - Added opt-in commit details to deployment emails (#12030)
- Added a per-resource option to restore the Coolify default environment variables
- Added a configurable request timeout for Infisical and Vault secret managers (#12270)
- Added the
app-key:reencryptcommand to re-encrypt stored secrets after an APP_KEY rotation - Added server GPU detection in the GPU settings
- Added a Detect button for the instance public IPs
- Added connecting resources to a tag from the tag page
- Added a text view for logs and grouped the log toolbar into menus
- Added a compact deployment history beside the deployment logs, with switching between deployments without a page load
- Added log exports with secrets hidden, and redacted application secrets in the full log download
- Added Deployment and Service selectors for runtime logs, with replica containers merged into one stream (discussion #12176)
- Added YAML syntax highlighting for dynamic proxy configurations and file mounts
- Added pagination with an adjustable page size for Docker images on a server
- Added a copy button to password inputs
Fixes
Security
- Plaintext secrets are now encrypted at rest
- PHP-based service templates were disabled for CVE-2026-109618 and CVE-2026-109619, then enabled again with patched images (#12268)
- System-wide Git sources are now restricted to instance admins (#12164)
- Deployment queries are now scoped to the applications of the team (#12195)
- The MCP endpoint now enforces the allowed IPs
- Server transfer bundle exports now require update access
- Read-only credentials are no longer saved from client input
- S3-compatible avatars and icons no longer use unauthenticated public URLs (#11865, fixes #11806)
- Custom log drain configurations are now validated (#12197)
- URL redaction no longer spans multiple log lines (#12238, fixes #11066)
Deployments and builds
- Railpack builds no longer leave an idle BuildKit builder running (#12097, fixes #11770, #12077)
- Environment variable values are now passed to containers exactly as entered, and existing variables keep the old escaping (#12024, fixes #7635)
- Build pack variables set at start time are kept in the runtime environment (#12025, fixes #11628)
- Transient GitHub token and clone failures are now retried
- Same-repository PR previews deploy regardless of the author association
- GitHub watch paths now use the net change of a push and paginate PR files
- GitHub webhooks are routed to the source of their app installation
- Closed Bitbucket, GitLab, and Gitea pull requests are cleaned up after a target branch change (#12008, #12012, #12013, fixes #12007, #12010, #12011)
- Compose preview storage records are deleted on cleanup (#12006, fixes #12005)
- Preview URL templates no longer have a doubled scheme
- Locally built Compose images are no longer pulled before a stop
- A deployment timeout now logs the configured timeout
- Deploy key setup works with a custom SSH username, and
ssh://repository URLs accept custom ports - GPU settings now work in Docker Compose deployments
Docker Compose and storage
- Compose environment variable semantics are preserved (#11794, fixes #12057)
- Long bind options and non-creating bind sources are preserved (#12135, fixes #11882, #12036, #12079)
${VAR:-default}bind sources are resolved, and long-form bind sources with variable or vault references are kept (#12227, fixes #8854)../bind sources are resolved in raw Compose mode- A UTF-8 BOM is removed before Compose YAML is parsed (#12223, fixes #6777)
- Compose commands use explicit file paths and remove volumes by name (#12199)
- Quoted and hyphenated custom Docker option values are parsed correctly (#12208, fixes #8173)
SERVICE_URL_*stays on the named service domain, and aSERVICE_FQDN_twin is treated as a copy- Service URLs set through the API persist across Compose re-parses
Proxy and domains
- Running proxy status from Sentinel push updates is saved (#12237, fixes #11539)
- Server-Sent Events streams are excluded from Traefik compression (#12229, fixes #5586)
- The proxy check requires the
coolify-proxycontainer name outside Swarm (#12225, fixes #7083) - sslip.io domains resolve the server hostname to an IP
noindexis applied to domains that include a port- Absent Let's Encrypt resolvers are cleared during migration
Backups and scheduled tasks
- PostgreSQL healthchecks and backups set
PGPASSWORD(#12224, fixes #6353) - Backups use the configured databases when the container environment is missing (#12212, fixes #9417)
- S3-only volume backups send Content-MD5 for Object Lock buckets (#12215, fixes #12211) and no longer panic in the
mcpipe - Volume backups accept tar exit code 1 and skip containers removed during the scan
- Scheduled tasks run only in running application containers (#12226, fixes #7377) and skip a run while the previous run is still active
- Deleting a scheduled task no longer shows a 404
- Backup tables show exact execution times and sort again
API
- The
fqdnfield rejection now points todomainson application writes (#12217, fixes #9502) force_domain_overrideis honored fordocker_compose_domainson create (#12032, fixes #12031)- Application updates accept
dockerfileandgithub_app_uuid - Database updates apply
redis_passwordandinstant_deploy - Service creation accepts
connect_to_docker_network - API token creation for MCP works when the REST API is disabled
Servers, Sentinel, and upgrades
- Upgrades keep Coolify running when Docker reports IPv6 gateways with a prefix
- Rate-limited image pulls are retried and automatic updates are spread over time
- The installer no longer restarts Docker with running containers, handles a stopped Docker daemon, and changes data directories only after checks and downloads (#12050)
- Sentinel starts on servers with a
userns-remapDocker daemon - OS derivatives are accepted through
ID_LIKEin server validation - SSH multiplexing orphans are reaped by socket ownership
- Docker cleanup removes old Coolify images on Docker 29 and fails executions orphaned by a killed worker
- Unreachable servers no longer block dashboard metrics charts
- Manually set instance public IPs are kept on restart
- Failed server validations are rate limited on Coolify Cloud
Services
- Fixed or updated the Appwrite, Forgejo, Hatchet, Hermes, Homepage (#12221, fixes #11758), Huly (#12209, fixes #11004), Langfuse (#12207, fixes #8797), Mixpost, Odoo (#12231, fixes #3441), RabbitMQ, Seafile, SigNoz, Supabase (#12001, #12002, fixes #11998, #11999), Sure (#12228, fixes #11756), Trigger (#12214, fixes #8638), Twenty (#12222, fixes #8381), and Weblate (#12220, fixes #4513) templates
- Templates that used removed MinIO images now use
pgsty/silo - Containers connect to the predefined network before they start
- The container terminal works for degraded services
- The Website button links to the project page
Other
- Interactive terminal programs no longer leak CPU after close (#12230, fixes #6125)
- Telegram test notifications show API errors (#12219, fixes #9978)
- Notification and log drain fields are required only when enabled (#12232, fixes #5631, #6123)
- Notification channels are disabled after repeated configuration failures
- Server names with whitespace work in log drains (#12239, fixes #6406)
- The manual Git webhook form is hidden for non-Git resources (#12218, fixes #7514), and GitLab App sources show the webhook setup
- Switched teams persist when concurrent requests save the session
- Database custom configurations apply on servers with a strict umask
- Firefox tab restore no longer switches the theme to custom
- Log deployment and service menus stay open on live updates
- Fullscreen logs now show above the sidebar and top bar
Improvements
- Refreshed the dark mode with the coolLabs purple brand (#12277)
- Strengthened secret redaction in logs, with admin controls (#12151)
- Reorganized resource settings and domain port editing
- Showed the full file path inline and warned about a repeated base directory (#12081)
- Backup views now refresh live
- Marked Nixpacks as deprecated and recommended Railpack
- Added a Projects page to the sidebar and refreshed cards, sidebar, and canvas layouts
- Linked to the related settings where a disabled API or a missing GitHub App blocks a feature
- Updated Traefik to 3.7.16 and 2.11.60
- Removed the Sentry integration
Breaking Changes
- API tokens now need the
deployability to run scheduled tasks, change the proxy or custom log drains, and trigger server side effects such as resource deletion, storage access, provider operations, and database imports (#12194, #12198) - API backup execution messages are hidden unless the token has the
read:sensitiveorrootability (#12151) - Removed the
POST /api/v1/enableAPI endpoint (#12163) - Docker Compose files with
scaleorreplicasgreater than one are now rejected (#12213, fixes #5480)
New Contributors
- @johandenhollander made their first contribution in #12013
- @anakafeel made their first contribution in #11865
- @praetoros made their first contribution in #12032
Full Changelog: v4.4.7...v4.5.0
UniFi Network Application 9.0.122
Overview
UniFi Network Application 9.0.122 includes the improvement below.
Improvements
Revoked compromised eMudhra CA certificates.
Additional information
- This release is only available for the UniFi Express (UX).
Anouk de Valk leest voor uit haar Substack

In deze aflevering praten we over zelfdoding. Denk je aan zelfdoding, of maak je je zorgen om iemand anders? Je kunt 24/7 gratis en anoniem contact opnemen met 113 Zelfmoordpreventie via 113, of chat via 113.nl.
🎧 De aflevering van Schuilen in Schoonheid met Anouk de Valk is nu overal te beluisteren. De directe link vind je in onze bio.
#SchuilenInSchoonheid #AnoukdeValk #ReikydeValk #MatthijsVanNieuwkerk #PodcastNL
Met Nerds om de tafel van Scientias – Scientias Podcast 93
In deze aflevering hebben Diederik en Krijn twee gasten van de podcast Met Nerds om Tafel, ook bekend als MNOT. Het gesprek is met Randal Peelen en Jurian Ubachs en we hebben het over zowel echte Scientias-onderwerpen als onderwerpen voor echte nerds. Een mooie cocktail met voor ieder wat wils.
Meer wetenschap? Lees de nieuwste artikelen op Scientias.nl .
12.3
🚀 Jellyfin Web 12.3
We are pleased to announce the latest stable release of Jellyfin, version 12.3! This minor release brings several bugfixes to improve your Jellyfin experience. As always, please ensure you take a full backup before upgrading!
Discuss this release further on our forums.
Changelog (8)
🏗️ Enhancements
- Show an error when library options cannot be saved [PR #8644], by @polydeuxes
📈 General Changes
- Remove broken header links in suggestions view [PR #8684], by @thornbill
- Update @jellyfin/sdk to 1.0.1 [PR #8689], by @thornbill
- Refresh library lists after played state changes [PR #8558], by @moontwister
- Fix Delete All device deletion [PR #8347], by @bymoxb
- Remove extra MediaSegmentManager [PR #8649], by @dmitrylyzo
- Fix hidden Audio Normalization on non-iOS [PR #8650], by @dmitrylyzo
- Show the library name as page title [PR #8537], by @alex-dicko
12.3
🚀 Jellyfin Server 12.3
We are pleased to announce the latest stable release of Jellyfin, version 12.3! This minor release brings several bugfixes to improve your Jellyfin experience. As always, please ensure you take a full backup before upgrading!
Discuss this release further on our forums.
Changelog (7)
🏗️ Enhancements
- Suppresses useless warnings [PR #18337], by @thedreaddpirate
📈 General Changes
- Do not store ratings or gains that are not finite numbers [PR #18267], by @martimarkov
- Fix unbalanced parenthesis in the HalfTopAndBottom image extraction filter [PR #18325], by @cinadr
- Update Microsoft [PR #18418], by @Bond-009
- Treat a year off by one as a tie in TMDb result ranking [PR #18343], by @HaraldNordgren
- Fix crash when a subtitle charset has no .NET encoding [PR #18309], by @p27ZuH6CNAdzr
- Fix crash probing streams without frame size [PR #18243], by @myristate
Counter-Strike 2 Update
- [p]Added Instance.Precache[/p]
- [p]Returns a CSPrecache object[/p][/*]
- [p]Added CSPrecache.IsServerLoading[/p][/*]
- [p]Added CSPrecache.IsServerLoaded[/p][/*]
- [p]Added CSPrecache.IsClientLoading[/p][/*]
- [p]Added CSPrecache.IsClientLoaded[/p][/*]
- [p]Added CSPrecache.IsLoadedForAll[/p][/*]
- [p]Added CSPrecache.Release[/p][/*]
Early Stable Update for Desktop
The Stable channel has been updated to 157.0.8103.15/.16 for Windows , Mac will be coming shortly 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.17.1 - Security Updates, Push Onboarding & Mobile Sign-In Fixes
1.17.1 (2026-10-22)
Security
- Dependencies: Next.js 16.4.2 and DOMPurify 3.4.17 fix six published advisories, three of them critical. None of them reached Bulwark: the webmail has no
use cachefunctions and no Server Actions, its image optimizer refuses SVG and runs on sharp 0.35.5, which already carries the fix, and the mail sanitizer uses none of the DOMPurify modes the bypasses need (SAFE_FOR_TEMPLATES, IN_PLACE, XHTML parsing). Updating is still recommended
1.17.1 stops the background-notifications prompt from asking you to turn push on while the app is still restoring a subscription the browser dropped, and an open tab now repairs a dropped subscription on its own. The message list stays within the screen on phones, and a browser that was already signed in hands a mobile sign-in to the app again.
Thank you for your donations:
- You? Become a sponsor!
One-time
- @bultester
- Anonymous
- Anonymous
- Anonymous
Monthly
- @superspacehosting
- @naokton
- @yerTools
- @jsaathof
- @berkersal
- @NABarnes
- @felixzieger
- @pr0ton11
- @fpauser
- @proxforge
- @spss20
- @elgringoYan
- @pauladams8
- @djpriest
- @umakers
- @zplizzi
- @jeremiah
- @Theoretisch1337
- @svandive
- @HiltMundell
Changes
- Dependencies: vitest 4.1.12 and vite 8.3.5 (npm audit)
Fixes
- Push: The background-notifications prompt waits for the background re-sync and only asks if push is still off afterwards, instead of appearing while the app is restoring a subscription Safari dropped (#1321, thanks @oguzyilmaznet)
- Push: A tab that stays open notices when the browser drops or replaces its push subscription and registers the new one at once, and coming back to the tab recreates a lost subscription instead of waiting for the next reload (#1321)
- Mobile: On phones, the message list is never wider than the screen, so the header's buttons, each row's date and the subject's ellipsis stay on screen and the selection toolbar compacts its buttons
- Login: A mobile sign-in opened in a browser that was already signed in keeps the sign-in form and hands the sign-in to the app, instead of opening the mailbox and leaving the app stuck in its sign-in sheet
v0.8.17
What's Changed
- refactor(core): move the update feed layout into openlogi-core by @AprilNEA in #1976
- feat(xtask): read the release channel and build version from the tag by @AprilNEA in #1978
- chore(infra): move the flake, CLAUDE.md and clippy.toml out of the repo root by @AprilNEA in #1984
- fix(linux): stop counting our own pass-through mouse in the input access probe by @4ni1ak in #1971
- fix(hid): read whole Bolt slot names, from 0x0005 or both codename chunks by @4ni1ak in #1962
- fix(macos): carry integer wheel ticks on synthetic line scroll events by @4ni1ak in #1969
- ci(release): keep a beta release off the stable side effects by @AprilNEA in #1981
- feat(desktop): let users follow the beta update channel by @AprilNEA in #1980
- fix(macos): switch Spaces through the user's shortcut so the Dock animates by @Rothschildiuk in #1847
- fix(release): load only the Codex fields 1Password holds and surface why notes fall back by @AprilNEA in #1987
- fix(hook): log both windows when the pointer gate rejects a keyboard action by @4ni1ak in #1966
- fix(device): stop a cached probe from hiding a dead direct channel by @c1m-Chenym in #1979
- fix(hid): keep long-only HID++ collections long-only on Windows by @4ni1ak in #1983
- feat(device): recognize the Logitech G600 as a standalone mouse by @4ni1ak in #1961
- fix(gui): preserve long-press actions when editing a button action by @marktsai333 in #1876
- docs: record the virtual HID keyboard in the changelog, crate map and signing guide by @AprilNEA in #1988
- feat(agent): report whether the virtual HID keyboard carries keys by @AprilNEA in #1991
- chore: release v0.8.17 by @AprilNEA[bot] in #1977
New Contributors
- @marktsai333 made their first contribution in #1876
Full Changelog: v0.8.16...v0.8.17
v1.10.0
Notice
VersityGW Security Update: Go crypto/x509 Certificate Distrust
This release updates VersityGW’s Go toolchain to include Go’s fix for CVE-2026-111943 (Go issue 82345). The fix blocks certificate chains containing compromised eMudhra intermediate certificates.
VersityGW uses Go’s certificate verification when connecting to TLS-protected services, including S3-compatible storage, IAM/OIDC providers, Vault, LDAP, and webhooks. Before the fix, a network attacker able to intercept or redirect one of these connections could potentially use a certificate issued through an affected intermediate to impersonate the service. After the update, Go rejects those chains, and connections to endpoints still presenting them may fail until their certificates are replaced.
This fix applies to binaries rebuilt with a patched Go toolchain. Go 1.26.10 and Go 1.27.3 contain the fix; use a later patched release if available. Existing VersityGW binaries must be rebuilt and redeployed. Connections configured to skip certificate verification do not receive this protection. These release artifacts are built with Go 1.27.3.
Action: Upgrade to this VersityGW release and redeploy. If you operate a TLS endpoint that VersityGW connects to, confirm its certificate chain does not use a distrusted intermediate.
Changelog
- 5fd3386 chore(deps): bump github/codeql-action from 4.38.2 to 4.38.3
- 53fdd1b chore(deps): bump github/codeql-action from 4.38.3 to 4.39.0
- 2bece2f chore(deps): bump the dev-dependencies group with 38 updates
- 626ec9a chore(deps): bump the dev-dependencies group with 8 updates
- 9503489 docs(helm): note tpl caveats for extraObjects
- 1f7e6dd feat(helm): add extraObjects for additional manifests
- a987fb2 feat: run functional tests on FreeBSD in CI
- 1207dd1 fix(posix): make the listing skip-directory list configurable
- c07ffdc fix(webui): send the LocationConstraint when creating a bucket outside us-east-1
- 7662573 fix: accept HTTP dates for LastModifiedTime in DeleteObjects
- 9debca3 fix: echo the client ETag in InvalidPart errors and stop duplicating request ID headers
- a7b91dd fix: honor encoding-type=url in ListObjects and ListObjectsV2
- 416acd3 fix: keep object keys literal under fiber v3.6 path normalization
- 5d5ece2 fix: keep the version id and delete marker in s3 backend GetObjectAttributes
- e63998f fix: log the client IP from a trusted proxy header
- e92ad0b fix: map quota and no-space errors when creating the multipart upload directory
- 7edbd62 fix: only look up the parts count when ObjectParts is requested
- 4a9748b fix: prevent OOM kills of FreeBSD functional tests in CI
- a664004 fix: race between object uploads and deletes on shared parent directories
- 5616f38 fix: reject posix object keys that resolve into the
.sgwtmpstaging directory - 3715b38 fix: return NoSuchUpload for malformed upload IDs ahead of access and request checks
- f88fe63 fix: return the parts count in GetObjectAttributes for multipart objects
- 112e50c fix: serialize concurrent CompleteMultipartUpload claims under the publish lock
- b4f02dc fix: set the gateway region on the standalone admin server
- f513678 fix: skip excluded directories and reserve their keys
- 81e287f fix: update staticcheck CI with Go 1.27.2 support
Three Cheers for Volunteers! – These Weeks in Firefox: Issue 211
Highlights
- Here are some big-ticket volunteer contributions this week:
- Thank you to volunteer contributor Cornelius, who made console evaluation able to re-declare let and const variables in our DevTools!
- Thank you to F3tch, who landed several patches to allow setting of camera and microphone permissions, reject zero-sized screenshots, and add a vendor-specific WebDriver BiDi command for listing installed extensions, as well as update cookie test expirations.
- Thank you to SMRehan, who landed a (disabled by default) mode that lets Picture-in-Picture open when the browsing window is occluded (as opposed to when changing tabs).
- This can be tested by setting media.videocontrols.picture-in-picture.enable-when-occluded.enabled to true
- In Nightly 160, we have enabled the playback speed feature for Picture-in-Picture by default:
Thank you to volunteer contributor Simon Rosen for the bulk of the initial work on this!
- The custom wallpaper library for newtab is now available, starting in Firefox 158, so you can now store multiple custom wallpapers:
![]()
Friends of the Firefox team
Resolved bugs (excluding employees)
Script to find new contributors from bug list
Volunteers that fixed more than one bug
- :Vincent
- Amadi
- any1here
- Duncan McIntosh [:dmcintosh]
- f3tch [:f3tchcodes]
- ianlewisuk1
- Ivan Smagin
- Khalid AlHaddad
- Logan Rosen [:Logan]
- Mayank Bansal
- Vir Patel
New contributors (🌟 = first patch)
- Ahmed ElGendy: Add a `(inline-)grid-lanes` badge in the markup view for element with display: (inline-)grid-lanes
- Mubashshir: Extension icon missing in old sidebar switcher
- Anton Bershanskyi: Introduce browser.runtime.PlatformArch.ARM64
- Amadi:
- Caleb Pickard: New sidebar revision does not have “By Most Visited” as a sort option for History
- Daniel mungai chege: Add autocomplete for CSS random()
- dchen705: syntax and handling of async runtime.onMessage listeners is confusing
- Diego: Pressing ctrl+shift+numpad1 causes tab to be moved to end of tab list regardless of NumLock
- f3tch [:f3tchcodes]:
- “WebDriver:TakeScreenshot” doens’t throw “unable to capture screen” error if height or width of captured image is 0
- Increase expiry date range for network cookie tests
- [wdspec] ValueError: “list.remove(x): x not in list” for “self.event_listeners[name].remove(fn)”
- [firefox-devtools-mcp] Support webextensions.moz:listExtensions command in WebDriver BiDi
- Allow “permissions.setPermission” and “WebDriver:SetPermission” to set camera and microphone permissions
- Ole Baumann [:darkintaqt]:
- ianlewisuk1:
- Jakub Stasiak [:jstasiak]: Early WebSocket messages can be missing in the Network tab
- Jaron: Show the remote control stripe on the address bar only
- 🌟 Lavindeep: Subprocess fcntl binding is not variadic, causing incorrect pipe flags and possible native-host launch failures on Apple silicon
- 🌟 Sho Sakuma: Fix WP_WIN and WP_MACOSX typos in LaunchChild’s #endif comments
- Raúl: Remove dead PanelUI-fxa-menu-setup-sync-container from the account menu
- 🌟 Jason Salerno: Remove the unused tooltip attribute from the urlbar view markup
- Ivan Smagin:
- Nazeer Ahmed Shaikh: Instrumentation tests on artifact builds do not check `object` metric schema
- Vir Patel:
- Valerie Racine (:v-racine): The corrupt_file telemetry metric counts unrecognised session file read errors as healthy files
- 🌟 Yeet: Saved tab groups not actually saved if browser crashes
Project Updates
Add-ons / Web Extensions
Addon Manager & about:addons
- Removed the colorway migration code and the about:addons UI informing users about colorways on AMO – Bug 1990883
- Thanks to Jason Birchall (from AMO engineering) for collaborating with us on this.
- As part of about:addons Nova restyling followups
- Parameterized the built-in theme preview images, and fixed the default theme previews rendering with the wrong colors when about:addons uses the opposite color scheme (regression introduced and fixed within Firefox 158) – Bug 2070289 / Bug 2074428
- Thanks to Emilio Cobos Álvarez for driving the theme preview parameterization.
- Fixed the Nova theme preview gradients being mirrored in RTL locales – Bug 2073245
- Hid the (non-localized) theme card descriptions in the about:addons themes list view, fixed in Firefox 158 and uplifted to Firefox 157 – Bug 2071337
- Fixed the per-add-on-card message bar styling in about:addons to better match the Nova designs – Bug 2079672
- Parameterized the built-in theme preview images, and fixed the default theme previews rendering with the wrong colors when about:addons uses the opposite color scheme (regression introduced and fixed within Firefox 158) – Bug 2070289 / Bug 2074428
- Avoided redundant AMO metadata update checks when the app locale is unchanged – Bug 2052032
- Added options to AddonManager.getInstallForURL to validate the add-on type, id and/or version before installing – Bug 1973071
- Dictionary add-ons are now required to be signed, starting in Firefox 160 – Bug 1753276
WebExtensions Framework
- As part of work to refactor about:newtab built-in widgets in their own privileged extensions, allowed about:newtab pages to load extension pages as subframes without listing them in web_accessible_resources – Bug 2070235
- Improved pref handling in the test_ext_contentscript_module_import.js xpcshell test by using pref_set – Bug 1986064
- Thanks to Ivan Smagin for the cleanup in the content script module import test.
WebExtension APIs
- Fixed publicSuffix.isKnownSuffix to throw for invalid host names, in line with the API proposal, MDN and Chromium – Bug 2066620
- Added runtime.getVersion() – Bug 1992418
- Thanks to Carlos for implementing the new runtime API method.
- Introduced runtime.PlatformArch.ARM64 (replacing AARCH64) to match Chromium, landing in Firefox 160 – Bug 2080310
- Thanks to Anton Bershanskyi for the runtime.PlatformArch rename.
- Stopped exposing non-browser windows in windows.onFocusChanged, fixing a “gBrowserInit is undefined” error hit through tabs.query – Bug 1634240
- Fixed sessions.forgetClosedTab() forgetting the wrong tab when the window has a closed tab group – Bug 2076684
- Thanks to Dão Gottwald for investigating and fixing this bug hit by the sessions API.
- Fixed extension menu items being unreachable by accesskey, including items with Chinese, Japanese or Korean labels – Bug 2074182 / Bug 2075142
- Thanks to Dão Gottwald for driving these menus accesskey fixes.
- Added a warning when sendResponse is called by an async runtime.onMessage listener, landing in Firefox 160 – Bug 1877223
- Thanks to dchen705 for the runtime.onMessage warning.
DevTools
External contributions
- Jakub Stasiak fixed an issue in the Netmonitor where we could miss early WebSocket messages (#1719394)
- Amadi localized string in Debugger search panel (#2035151)
- Daniel mungai chege added autocomplete in the Rules view for the random() function (#2072513)
- Ahmed ElGendy added (inline-)grid-lanes badges in the markup view for element with display: (inline-)grid-lanes (#2076779)
- Khalid AlHaddad removed an unused argument in the KeyShortcuts constructor (#1979386)
Team/Project Update
- Florian Quèze [:florian] made DevTools splitters keyboard accessible (#1860733) and fixed numerous other accessibility issues across the toolbox (#2071228, #2071230, #2071232, #2071233, #2071236, #2075809, #2075820)
- Leo McArdle [:leo] started modernizing the DevTools Settings panel (#2072146, #2072216, #2074393, #2074399)
- Nicolas Chevobbe [:nchevobbe] Handle percentage in CSS explainers tooltip (#2041621) and show the tooltip for single non-pixels values (#2074405, #2064400)
![]()
-
- (pref: devtools.inspector.css-explainers)
- Hubert Boma Manilla (:bomsy) is working on adding support for speculation rules in DevTools. Prefetched requests can now be identified in the Netmonitor (#2077519) and he plans to add more information about speculations rules in a dedicated tab in the Application panel (#2077995, #2078853)
![]()
WebDriver
- Beatriz Rizental improved the Marionette harness to accept multiple –tag arguments similar to other in-tree harnesses.
- Khalid AlHaddad improved the PollPromise to throw an error by default and not only log a warning when it times out.
- Alexandra Borovova added support for the imageSize argument to the browsingContext.captureScreenshot command, which allows clients to specify the maximum size of the resulting screenshot image.
- Alexandra Borovova added support for the destinationFolder argument to the browsingContext.startScreencast command, which allows clients to choose the folder where the recorded video file is saved.
- Alexandra Borovova implemented the support for the prefers-color-scheme parameter in the emulation.setMediaFeaturesOverride command, which lets clients emulate dark or light mode on a website.
- Henrik Skupin improved the handling of recommended preferences for automation to use the default branch, preventing them from leaking into subsequent Firefox sessions.
- Henrik Skupin fixed a bug where accepted server sockets still had Nagle’s algorithm enabled, causing up to 40ms delays for back-to-back writes on Linux.
- Henrik Skupin improved geckodriver’s shutdown handling by waiting for Firefox’s hang monitor to terminate hung processes before force-killing them.
- Henrik Skupin added a temporary workaround to prevent Glean from causing shutdown hangs for short-lived Firefox processes.
- Holger Benl added machine-readable CDDL for all Firefox WebDriver BiDi vendor extensions (“moz:” commands, events, parameters, capabilities…).
- Privileged context support was added to browsingContext.locateNodes and input.performActions by Holger Benl, and to browsingContext.captureScreenshot by Julian Descottes.
- Julian Descottes fixed the network.getData command to handle 304 – Not Modified responses with no timeouts.
Fluent
- Shout out to flod who’s started to chip away again at migrating .properties files to Fluent!
- For the first time since we started tracking, there are fewer than 4000 .properties strings in the Firefox source code!
Migration Improvements
- spohl is working on a stack of patches that’ll update the migration workflow for macOS 27 to reduce the number of data access permission warnings that users see
New Tab Page
- We’re testing a few different layout variations in the wild – one of them is a few different takes on “spaces”:
![]()
- The MCAB search input is currently being deployed to a small population in the wild to see how it works / is received
![]()
- A train-hop is scheduled to be deployed this week which should make widgets available for all users (though for most users, these will be disabled by default – they’ll be available to enable in the customize panel).
![]()
- Reem Hamoui removed the Enzyme/Karma test infrastructure from the New Tab Page, which is a CI/dev tooling change with no direct runtime user impact but should reduce test maintenance and flakiness for future user-facing fixes.
- Jack Brown switched New Tab message visibility checks to an IntersectionObserver so messages below the fold are no longer marked as activeNotifications, preventing offscreen messages from being targeted and avoiding unnecessary JS evaluation when not visible.
- Jack Brown cleared activeNotification targeting when navigating away from about:newtab so message targeting no longer persists after leaving the page, preventing carry‑over interactions and incorrect metrics attribution.
- akulyk [a11y] fixed dialog focus containment on the New Tab Page by enforcing a focus trap and proper Tab/Shift-Tab handling, restoring expected keyboard and screenreader workflows for modal dialogs.
- Scott fixed pocket.click and topsite.click to trigger context menus correctly, restoring right-click/long-press context menus on Pocket tiles and Top Sites so users can access actions like open-in-new-window and remove.
- Maxx Crawford updated per-widget Jest fixtures for Stocks, Privacy and Picture of the Day to omit the widgets.enabled flag in test setups Per-widget Jest fixtures for Stocks, Privacy and Picture of the Day omit widgets.enabled, which aligns test fixtures with runtime enablement behavior and reduces CI flakes and regression risk for those widgets; there is no runtime UI change for end users but widget rendering tests should be more reliable.
- Maxx Crawford removed the Sports widget from the New Tab Page and widget picker, which directly removes sports headline/cards from users’ NTP experience (users who had Sports selected will no longer see it) and slightly reduces client-side DOM/paint work and widget surface area for future NTP changes. It also removed about 1MB of image / video assets from the omni.ja / newtab XPI.
- Maxx Crawford added region/locales dynamic control for the Weather widget, allowing users to change the Weather card’s region/locale on New Tab so forecasts and localized labels update immediately.
- Herraj Luhano updated the POTD API contract to return the previous day’s POTD, enabling the New Tab image module to fetch and display yesterday’s Picture of the Day to avoid empty or stale image slots.
- Nina Pypchenko [:nina-py] re-ordered New Tab settings in about:preferences, improving discoverability by placing New Tab controls in a more consistent, prominent location for users managing Start Page options.
- Dre standardized context menu button UI across all widgets, unifying markup, CSS variables and ARIA to make context-menu hit areas and keyboard focus consistent across widget surfaces.
- Dre standardized header typography across all widgets, aligning font sizes, line-heights and tokens so widget headers render consistently on New Tab pages.
- Maxx Crawford updated WallpaperFeatureHighlight to allow for alternate strings to be injected so the New Tab wallpaper feature highlight UI can show injected copy variants (for localization or experiments), which directly changes the text users see in the wallpaper picker/highlight flow and should be monitored for clarification/regression in impressions and CTA click rates.
- David Durfee landed a meta change to enable score-based selection for sponsored tiles in the New Tab experiment, which replaces the previous selection heuristic with a ranking/scoring pipeline so experiment cohorts may see different sponsored tiles on New Tab (affects which ads/content are shown, sponsored impressions/CTR, and A/B metrics for desktop and mobile New Tab surfaces).
- Nina Pypchenko renamed the Stocks widget to “Finance” on the New Tab Page, updating the activity-stream UI/i18n label users see in the widget header.
- Brendan Birdsong adjusted the newtab score-based selection to sum day counts from remote-settings config, which can change which cards/tiles are selected and their ordering for users depending on remote config values.
- Scott Downe removed the discoverystream.optIn-region-weather-config pref from newtab, a config cleanup that does not change runtime New Tab UI or user-visible weather opt-in behavior.
- Irene Ni normalized the layout_name value in New Tab DSCard impression telemetry, ensuring consistent impression records for analytics and A/B experiments without altering the UI seen by users.
- Scott Downe removed the telemetry.structuredIngestion.endpoint pref from newtab, removing a pref-based override for structured-ingestion endpoints (affects developer/testing overrides, not regular user behavior).
- Irene Ni removed unused ImpressionStats dispatches from New Tab DSCard clicks, eliminating redundant telemetry dispatches on DSCard click paths with no UI change.
- Irene Ni normalized Top Sites telemetry keys to their Glean extra names, stabilizing telemetry naming for Top Sites without changing user-visible behavior.
- Dre fixed a slight flash when reusing a previously uploaded wallpaper in the New Tab Page, removing a visible flicker for users who set custom uploaded wallpapers.
- Maxx Crawford added a debug pref/setting to revert region controls, enabling targeted rollbacks/enabled testing for affected-region UI behaviors when the pref is toggled.
- Jared Wein fixed TypeScript errors in newtab/lib blocking inclusion in newtab’s tsconfig.json, resolving a build/tooling blocker (developer-only change; no direct user impact).
- Irene Ni made the Spaces arrow-buttons variant background panel occupy the full page height on the New Tab Page, removing a visual gap and ensuring arrow controls stay aligned with page scroll.
- Alexandre Hanot fixed Ads client initialization on Firefox 157 and older so the Ads client now initializes instead of throwing errors on legacy builds, restoring ad content on affected users’ New Tab Pages.
- Dre prevented the Clocks widget menu button from overlapping clocks on hover by adjusting z-index and hover layout, restoring visibility and correct hit targets on the New Tab Page.
- Irene Ni enabled a widget in the first content position of New Tab sections, updating New Tab rendering logic so a prioritized widget slot is populated in the first content position and becomes visible by default to users.
- Jared Wein enabled type checking for newtab/lib with exception for failing files, adding incremental static-analysis/CI checks to catch regressions in newtab code without changing UI behavior today.
- Maxx Crawford set default enabled value to false for all existing widgets, changing widget metadata/prefs so existing widgets are opt-in and will no longer render for users unless explicitly enabled.
- David Durfee added differential privacy noise to scores in newtab score-based selection, anonymizing per-user signals which will alter ranking/discovery behavior on the New Tab page while underscoring privacy guarantees.
- Brendan Birdsong moved newtab score storage to PersistentCache, persisting scores across sessions and reducing recompute/lookup latency so personalized selections are more stable and faster to load.
- Jared Wein fixed more newtab/lib TypeScript errors so 11 more files can be type-checked, enabling type-checking across newtab/lib (11 files) and lowering regression risk for New Tab Page behavior.
- Dre used useWidgetTelemetry in the Weather widget to standardize telemetry for the Weather widget (New Tab Page), improving diagnostic signals that help us find and fix user-facing widget issues faster.
- Maxx Crawford turned off all New Tab widgets in automation with one pref, allowing automation to run with widgets disabled to reduce flakiness in tests that interact with New Tab UI.
- Dre updated the Focus Timer widget to use useWidgetTelemetry, so Focus Timer telemetry now respects widget-level prefs and will avoid sending unguarded pings—privacy impact only, no UI change.
- Nina Pypchenko [:nina-py] fixed transparent New Tab dialogs when the train-hop is applied to Firefox 158 and 159, restoring dialog opacity/CSS so newtab overlays are readable again when train-hop is enabled on those releases.
Picture-in-Picture
- kpatenio fixed a bug on Windows and Linux where clicking a previous control overrides the Space play/pause shortcut.
- kpatenio landed a few patches to make keyboard navigation better when the playback speed control is enabled (Bug 2055070, Bug 2074319).
- As of Nightly 159, the PiP player UI has been updated for Nova. Aside from being visually consistent with Nova, scrubbers and settings panels now have better contrast on High Contrast Mode.
Search and Urlbar
Urlbar
- Dao landed a patch to show the “Search tabs” keyboard shortcut in the search mode switcher menu: 2078113
![]()
- Logan Rosen changed the Accel+Shift+A shortcut from the Add-ons Manager to Search Tabs: 1666654. Dao followed up by notifying people who used the old shortcut that it moved and revised the wording of that message: 2077823, 2079208
- James added an option to skip the menu when tabbing through the address bar, in both the address bar and the preferences page: 2064708, 2068609
- Dao fixed a bug so that entering an address in search mode now navigates to that URL: 2036347
- Dao fixed two urlbar.bounce telemetry bugs: 2069403, 2076827
- Caleb fixed a bug where the address bar results dropdown covered the calculator tail150 game: 2077358
- Daisuke fixed a bug where search terms in the address bar moved when pressing Enter or when edited: 2074921
- Dao fixed the search engine button being cut off in the Search dropdown with Nova enabled: 2074871
- Daisuke fixed the search switcher’s active button color being too strong with low text contrast in Nova: 2068504
- Emilio fixed the Quick Actions background button missing in the Light theme on Ubuntu in Nova: 2076191
- Moritz continued with MCAB (multi-context address bar) follow-on work: 2078231, 2078658, 2078672.
- Moritz also enabled TypeScript type checking for UrlbarView and UrlbarBaseInput: 2077545, 2077543
- Dao significantly improved the address bar docs, including how to add a new search surface end to end, how results and providers work across the process boundary, and how to debug and log the address bar:
Search
- Caleb fixed a bug where the address bar swallowed the first character typed into it if you typed too quickly: 1953361
- Mark continued working on the new search config, search-config-v3: 2063279, 2063264
Places
- Dao fixed a bug where the bookmark creation/editing panel had no keyboard shortcut mnemonic for the Save button: 1877510
Storybook/Reusable Components/Acorn Design System
- Dialogs in about: pages now match Nova designs more closely
- Moz- widgets should now have types found when querying the element with document.querySelector(“moz-button”) and TS is configured
- A11y fixes for profiles dialog, page nav keyboard handling (no longer steals Ctrl+arrows)
Development Build
Below are development builds with the latest fixes and improvements. Please test them thoroughly and report problems immediately, so that any regressions can be fixed in time for next stable release.
Latest development build: 2.8.4.25 (October 23rd 2026)
Latest stable release build: 2.8.4
https://github.com/clsid2/mpc-hc/releases/tag/2.8.4
Asterisk Release 24.0.0-rc3
The Asterisk Development Team would like to announce
release candidate 3 of asterisk-24.0.0.
The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/24.0.0-rc3
and
https://downloads.asterisk.org/pub/telephony/asterisk
Repository: https://github.com/asterisk/asterisk
Tag: 24.0.0-rc3
This release resolves issues reported by the community
and would have not been possible without your participation.
Thank You!
Change Log for Release asterisk-24.0.0-rc3
Links:
Summary:
- Commits: 1
- Commit Authors: 1
- Issues Resolved: 1
- Security Advisories Resolved: 0
User Notes:
Upgrade Notes:
Developer Notes:
Commit Authors:
- Mike Bradeen: (1)
Issue and Commit Detail:
Closed Issues:
- #2232: [bug]: Update pjsip_options.c WebSocket contacts results in PJSIP_EUNSUPTRANSPORT
Commits By Author:
- Mike Bradeen (1):
- res_pjsip: Preserve target hostname for qualified OPTIONS destination
Commit List:
- res_pjsip: Preserve target hostname for qualified OPTIONS destination
Commit Details:
res_pjsip: Preserve target hostname for qualified OPTIONS destination
Author: Mike Bradeen
Date: 2026-10-16
As Asterisk now does the endpoint resolution manually, we need to also manually
copy the hostname from the resolution target as PJProject only does this when
resolving the endpoint itself.
Fixes: #2232
v1.19.4
Core
Improvements
- Upgraded the bundled Bun runtime to 1.4.4, which includes security fixes for Brotli, TLS, HTTP/1.1, HTTP/2, HTTP/3, WebSocket, and
fetch, and updates root certificates to NSS 3.131.1.
Formula 1® United States Grand Prix™ streams live on Apple TV this weekend
