There is a significant security issue in PHP known as PHP2Shell (CVE-2026-109618 and CVE-2026-109619), that can allow take over of your server. If you have not done, you should update your PHP immediately to a patched version. If you are using docker, the images of this tag, contain an patched PHP version.
Note
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Part-DB 2.20.3
Improvements
Optimzed part table database logic
Compress PHP responses if modules are available in the webserver
Only show languages digikey actually offer for digikey settings
Bug fixes
Massively reduced query count and database retrieval time for KiCad category requests (#1610)
Removed unnecessary database query on every page load
Fix Range intersects Value range filter matching non-overlapping ranges by @SAY-5 in #1622
Correctly perform comparisons for amount filter (#1620)
Fixed Oauth authentication button on digikey settings page (#1618)
The DistroWatch news feed is brought to you by TUXEDO COMPUTERS. The UBports team has announced an update for their mobile operating system. The new releases focus on fixing certificate issues related to eMudhra, along with a number of small improvements and bug fixes. "These releases are made in response to the eMudhra Intermediate CA Compromise incident. They include....
http: restore support for HTTP2 requests (#6320) The server was not advertising the HTTP2 protocol in TLS ALPN anymore. Fix this.
forward: match destinations by configuration when reloading (#6299) ReloadConf compared the old and new destination lists by position, so removing a destination from the middle of the list shifted all the following ones, which were therefore considered changed and restarted (dropping and re-establishing their connections). Match destinations by their configuration instead: adding, removing or reordering destinations only starts or stops the affected ones, and the others keep running. The position reported by the API and used in logs is updated for the destinations that are kept.
avoid forward destination overlapping (#6324) When the configuration changes and forward destinations are changed, create new forward destinations only after closing existing ones, avoiding double publishers.
http: log outbound requests (#6325) log outbound HTTP requests with logLevel debug, in the same way as HTTP inbound requests are already logged.
fix race condition during logger recreation (#6206) (#6326) The logger can be dynamically recreated (for instance, this happens when changing the logLevel), but some components always need it, in particular hooks, which are not shut down unless the entire server is shutting down. Fix this issue by safely reloading the logger configuration without destroying it.
recorder: fix different time zones in record segment name (#5451) (#6333) Absolute timestamps of frames can have different time zones, in particular, timestamps from HLS sources arrive with their original time zone. When an absolute timestamp is not available, gohlslib uses time.Now(), which has the local time zone, resulting in streams with timestamps with different time zones. Timestamps are used in names of record segments, but they were not normalized and were written with their original time zone, causing confusion and errors in particular when the '%z' placeholder is not used. Fix the issue by normalizing every incoming date to the local time zone before using it as name of a segment.
add timezone to default recordPath and warn when not present (#6334) recordPath without %z causes segments to be overwritten or placed at wrong time during daylight saving time switches.
rtmp, recorder, stream: treat H264 recovery point SEI as random access (#6349) Streams without IDR frames use I slices with a recovery point SEI as random access points. The RTMP reader output and the fMP4 recorder only accepted IDR, and the unit remuxer only prepended SPS and PPS on IDR, so the DTS extractor never received an SPS. Use h264.IsRandomAccess, as the MPEG-TS outputs already do.
mpegts, rtmp: stop silently skipping H264 units without IDR and without non-IDR (#6354)
recorder: fix height of VP9 tracks in fMP4 recordings (#6359) The fMP4 recorder took the height of a VP9 track from the width in the key frame header, so the init segment declared a square size, for example 1920x1920 instead of 1920x804. Use the height instead.
docs: suggest to run MediaMTX in a writable folder (#6369) * when running in Docker, use /etc/mediamtx * when running in host Linux, use /usr/local/etc/mediamtx
recorder: fix timestamps of MPEG-1/2 Audio tracks in fMP4 recordings (#6361) The DTS of every sample was computed as the unit PTS plus the unit PTS, so sample durations in the recording were twice the real ones, and the frames of a unit that holds several of them got the same timestamp. Advance the PTS by the duration of each frame instead, and move the NTP of each frame by the same offset, as the Opus, MPEG-4 Audio and AC-3 cases do.
recorder: prevent a stream-time discontinuity from inflating fMP4 segment duration (#5984) When an RTP timestamp discontinuity occurs (e.g. after a burst of packet loss), the gap between two consecutive samples can be enormous. In the fMP4 recorder that gap is written as the preceding sample's duration (sample.Duration = nextSample.dts - sample.dts), which pushes the segment's endDTS -- and therefore the duration stamped into the mvhd header and reported to runOnRecordSegmentComplete -- forward by the size of the gap. The existing NTP-vs-stream-time drift detector (added in #5239) only fires on the next sample, by which point the inflated segment has already been flushed and reported (a ~1-minute clip reported as multiple hours). Detect the discontinuity one sample earlier: when the next sample's stream time has drifted from absolute time beyond the tolerance, zero the current sample's duration so the segment is not inflated. The drift detector then resets the recording on the following sample as before. mpegts is unaffected (it checks drift against the current sample before touching the segment). Complements #5126 (negative diff) and #5239 (drift reset).
close sessions when their JWT expires (#4300) (#5813) (#6389)
allow HTTP authentication to set a session expiration date (#6391)
record: fix segments never deleted when the configuration is reloaded often (#6256)
stream: fix 8-channel AAC always-available tracks refusing 7.1 publishers (#6414) With an always-available MPEG4Audio track of channelCount 8, a 7.1 AAC publisher is refused with "MPEG-4 audio configuration does not match". The track uses channel configuration 8, which is reserved, while the publisher's configuration is 7. Channel configuration 7 stands for 8 channels. Use configuration 7 for an 8-channel track. Other channel counts are unchanged.
fix routine leak in CertLoader (#6261) (#6417) make CertLoader.Close() to wait for CertLoader.watch()
mpegts: fix reading tracks with big video frames (bluenviron/mediacommon#393) (#4791) Big video frames delay audio packets, which are needed to parse tracks. Increase maximum buffer size to account for that.
mpegts: stop validating AC-3 / EAC-3 frames (bluenviron/mediacommon#395) Validating AC-3 / EAC-3 frames is not important for the MPEG-TS parser to work and decreases performance.
API
add endpoints to manage internal users (#6293) Add dedicated endpoints to manage specific users without the need of calling config/global/patch with the entire user list, in particular: /v3/config/internal-users/list /v3/config/internal-users/get/{id} /v3/config/internal-users/add /v3/config/internal-users/patch/{id} /v3/config/internal-users/replace/{id} /v3/config/internal-users/delete/{id}
prevent using internal-users/list with deprecated credentials (#6368)
fix global/patch with webrtcICEServers or credentials (#6362) (#6365) When the deprecated webrtcICEServers parameter is set, webrtcICEServers2 is filled automatically, but the latter prevents the former from being set through global/patch. Fix this. The same applies to deprecated credentials (readUser, readPass, publishUser, publishPass) and authInternalUsers.
fix channel count of 8-channel MPEG-4 Audio tracks (#6405) When a path carries an MPEG-4 Audio track with channel configuration 7, for instance AAC in the 7.1 layout, the track is listed with "channelCount": 7 in the codecProps of the tracks2 field of the path API, while it has 8 channels. Tracks with 1 to 6 channels are listed correctly. Channel configuration 7 stands for 8 channels, while the values 1 to 6 are equal to the channel count. Report 8 for configuration 7.
fix channel count of 8-channel MPEG-4 Audio tracks (#6406) A MoQ client reading a 7.1 AAC path gets "channels": 7 in the catalog, while the track has 8 channels. A MoQ source or publisher sending "channels": 8 gets channel configuration 8, which is reserved. Channel configuration 7 stands for 8 channels. Report 8 for configuration 7 and use configuration 7 for 8 channels, so a relay of a 7.1 track keeps configuration 7. Other values are unchanged.
preserve tcURL query when appending stream key (bluenviron/gortmplib#133) Parse the tcURL and stream key separately before joining their paths so existing tcURL query parameters remain attached to the final URL. Merge stream-key query parameters, preserve escaped paths, and avoid populating RawPath when no custom escaping is required.
Expose ErrReaderUnpublish to handle graceful shutdown on MediaMTX (bluenviron/gortmplib#139) * Expose ErrReaderUnpublish to handle graceful shutdown on MediaMTX * Add patch coverage to ErrReaderUnpublished
HLS
fix MPEG-TS variant failing on streams with Opus tracks (#6387) With hlsVariant set to mpegts, a stream that carries an Opus track, for instance H264 and Opus published through WebRTC, could not be read through HLS. The muxer failed to start with "the MPEG-TS variant of HLS supports MPEG-4 Audio only" and playlist requests got a 500 error, so the video was unreadable too, while other tracks that HLS cannot carry are skipped with a warning. Skip the audio tracks that are not MPEG-4 Audio when the variant is MPEG-TS, as setupDataTracks already does for KLV tracks. A stream whose only track is such an audio track now returns ErrNoSupportedCodecs instead of failing when the muxer starts.
fix MPEG-TS variant failing on streams with several audio tracks (#6394) With hlsVariant set to mpegts, a stream that carries two MPEG-4 Audio tracks, for instance H264 and two AAC tracks received through MPEG-TS over SRT, could not be read through HLS. The muxer failed to start with "the MPEG-TS variant of HLS supports a single audio track only" and playlist requests got a 500 error, so the video was unreadable too, while other tracks that HLS cannot carry are skipped with a warning. Skip the MPEG-4 Audio tracks that follow the first one when the variant is MPEG-TS, like the audio tracks of other codecs that this variant cannot carry.
prevent using webrtcICEServers and webrtcICEServers2 together (#6367)
UDP
support interface=all for multicast sources (#6253) restore support for listening for UDP multicast packets on all multicast-capable network interfaces. To do so, add the interface=all parameter to the end of a UDP multicast URL when configuring the source.
code.cloudfoundry.org/bytefmt updated from v0.92.0 to v0.95.0
github.com/bluenviron/gohlslib/v2 updated from v2.4.6 to v2.4.7
github.com/bluenviron/gortmplib updated from v1.0.4 to v1.0.5
github.com/bluenviron/mediacommon/v2 updated from v2.9.6 to v2.9.7
github.com/gookit/color updated from v1.6.1 to v1.6.3
github.com/matthewhartstonge/argon2 updated from v1.6.3 to v1.6.4
github.com/pion/ice/v4 updated from v4.4.5 to v4.4.8
github.com/pion/webrtc/v4 updated from v4.2.22 to v4.2.24
github.com/pires/go-proxyproto updated from v0.15.0 to v0.16.0
github.com/quic-go/quic-go updated from v0.63.0 to v0.64.1
golang.org/x/crypto updated from v0.57.0 to v0.58.0
golang.org/x/sync updated from v0.23.0 to v0.24.0
golang.org/x/sys updated from v0.48.0 to v0.49.0
golang.org/x/term updated from v0.46.0 to v0.47.0
github.com/pion/dtls/v3 updated from v3.1.9 to v3.1.13
github.com/pion/sctp updated from v1.11.3 to v1.12.0
golang.org/x/net updated from v0.59.0 to v0.61.0
golang.org/x/text updated from v0.42.0 to v0.43.0
github.com/bluenviron/mediamtx-rpicamera updated from v2.9.0 to v2.9.1
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:
TAIPEI, Taiwan β 23 oktober 2026 β Na een grondig onderzoek heeft het Synology Product Security Incident Response Team (PSIRT) bevestigd dat de impact
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".
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.update and keywords.remove. Both need settings:write and 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.formatDate and api.i18n.formatTime, without asking for settings:read (#1335, thanks @tobiasge)
Plugins: A new sidebar-section-actions slot 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)
β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.
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.
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!
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!Β
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
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 Windows builds to use Visual Studio 2026 and SDK 26100 [RytoEX] (#13543)
Changed clang-format version used to 22.1.3 [PatTheMav] (#13549)
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)
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.
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.
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 a SERVICE_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-proxy container name outside Swarm (#12225, fixes #7083)
sslip.io domains resolve the server hostname to an IP
noindex is 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 mc pipe
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 fqdn field rejection now points to domains on application writes (#12217, fixes #9502)
force_domain_override is honored for docker_compose_domains on create (#12032, fixes #12031)
Application updates accept dockerfile and github_app_uuid
Database updates apply redis_password and instant_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-remap Docker daemon
OS derivatives are accepted through ID_LIKE in 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
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 deploy ability 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:sensitive or root ability (#12151)
Removed the POST /api/v1/enable API endpoint (#12163)
Docker Compose files with scale or replicas greater than one are now rejected (#12213, fixes #5480)
Schrijven over haar verlies is voor Anouk de Valk een schuilplaats. Ze leest aan Matthijs voor wat zij recht vanuit haar hart op Substack heeft geplaatst.
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.
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 .
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
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!
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!
Β 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 thelog.
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.